Kaidon Jorn

Modders
  • Content Count

    540
  • Joined

  • Last visited

  • Days Won

    37

Posts posted by Kaidon Jorn


  1. So I ended up just making 7 separate scripts for the party members to get their read schematic feat when they make their sabers, just like the pc. All I have left to do is remake icons again in 256, and finish the revan reborn saber texture. 

    Then I should be releasing it fairly soon.

     


  2. You were right. The TLK string ref was wrong but I fixed that but it's still doing the same thing.

    I think it has to do with it firing while in conversation. 

     

    Haaa!!! IT WORKED!!

    void main() {
    
    	int int1 = 245;
    	object oAtton = GetObjectByTag("atton", 0);
       	object oBaoDur = GetObjectByTag("baodur", 0);
    	object oDisciple = GetObjectByTag("disciple", 0);
    	object oMira = GetObjectByTag("mira", 0);
    	object oKreia = GetObjectByTag("kreia", 0);
    	object oVisas = GetObjectByTag("visasmarr", 0);
    	object oHand = GetObjectByTag("handmaiden", 0);
    	int int2 = 136379; 
    	string string1 = "if_schematic";
    
    	
    		if (((GetTag(OBJECT_SELF) == "atton")) && (GetIsInConversation(oAtton) == 0)) {
    			GrantFeat(int1, oAtton);
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));	
    		} 
    		if (((GetTag(OBJECT_SELF) == "atton")) && (GetIsInConversation(oAtton) == 1)) {
    			DelayCommand(0.5, ExecuteScript("kj_grant_read", oAtton));
            			return;
    		}
    		if (((GetTag(OBJECT_SELF) == "baodur")) && (GetIsInConversation(oBaoDur) == 0)) {
    			GrantFeat(int1, oBaoDur);
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));
    		} 
    		if (((GetTag(OBJECT_SELF) == "baodur")) && (GetIsInConversation(oBaoDur) == 1)) {
    			DelayCommand(0.5, ExecuteScript("kj_grant_read", oBaoDur));
            			return;
    		}
    		if (((GetTag(OBJECT_SELF) == "disciple")) && (GetIsInConversation(oDisciple) == 0)) {
    			GrantFeat(int1, oDisciple);
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));
    		} 
    		if (((GetTag(OBJECT_SELF) == "disciple")) && (GetIsInConversation(oDisciple) == 1)) {
    			DelayCommand(0.5, ExecuteScript("kj_grant_read", oDisciple));
            			return;
    		}
    		if (((GetTag(OBJECT_SELF) == "mira")) && (GetIsInConversation(oMira) == 0)) {
    			GrantFeat(int1, oMira);
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));
    		} 
    		if (((GetTag(OBJECT_SELF) == "mira")) && (GetIsInConversation(oMira) == 1)) {
    			DelayCommand(0.5, ExecuteScript("kj_grant_read", oMira));
            			return;
    		} 
    		if (((GetTag(OBJECT_SELF) == "kreia")) && (GetIsInConversation(oKreia) == 0)) {
    			GrantFeat(int1, oKreia);
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));
    		} 
    		if (((GetTag(OBJECT_SELF) == "kreia")) && (GetIsInConversation(oKreia) == 1)) {
    			DelayCommand(0.5, ExecuteScript("kj_grant_read", oKreia));
            			return;
    		} 
    		if (((GetTag(OBJECT_SELF) == "visasmarr")) && (GetIsInConversation(oVisas) == 0)) {
    			GrantFeat(int1, oVisas);
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));
    		} 
    		if (((GetTag(OBJECT_SELF) == "visasmarr")) && (GetIsInConversation(oVisas) == 1)) {
    			DelayCommand(0.5, ExecuteScript("kj_grant_read", oVisas));
            			return;
    		} 
    		if (((GetTag(OBJECT_SELF) == "handmaiden")) && (GetIsInConversation(oHand) == 0)) {
    			GrantFeat(int1, oHand);
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));
    		}  
    		if (((GetTag(OBJECT_SELF) == "handmaiden")) && (GetIsInConversation(oHand) == 1)) {
    			DelayCommand(0.5, ExecuteScript("kj_grant_read", oHand));
            			return;
    		}
    	}

     

     

    EDIT: Never mind it doesn't work. 

     

     


  3. Mmmmmmm I don'knowww....

    void main() {
    
    
    	int int1 = 245;
       
    	int int2 = 136393; 
    	string string1 = "if_schematic";
    
    		if ((GetTag(OBJECT_SELF) == "atton")) {
    			GrantFeat(int1, OBJECT_SELF );
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));
    		}
    		if ((GetTag(OBJECT_SELF) == "baodur")) {
    			GrantFeat(int1, OBJECT_SELF );
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));
    		}
    		if ((GetTag(OBJECT_SELF) == "disciple")) {
    			GrantFeat(int1, OBJECT_SELF );
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));
    		}
    		if ((GetTag(OBJECT_SELF) == "mira")) {
    			GrantFeat(int1, OBJECT_SELF );
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));
    		}
    		if ((GetTag(OBJECT_SELF) == "kreia")) {
    			GrantFeat(int1, OBJECT_SELF );
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));
    		}
    		if ((GetTag(OBJECT_SELF) == "visasmarr")) {
    			GrantFeat(int1, OBJECT_SELF );
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));
    		}
    		if ((GetTag(OBJECT_SELF) == "handmaiden")) {
    			GrantFeat(int1, OBJECT_SELF );
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));
    		}
    }

    Will it work? Does being in dialog matter? Will I need else's? Does my butt look big in these pants?

     

    Edit: Yeah, no. Froze my game with no UI after the dialog ended. Did i need to put breaks in after every if??


  4. Hello all

    Would it be possible to convert this script to work for all companions that can be trained as jedi, as well as the pc? So that I could just fire the script from the companion's dialog during the saber building section.

    Would that just mean changing GetFirstPC() to GetPCSpeaker() or something like that? Would I need to list them all out by tag? Or making it a case by case basis?

    void main() 
    {
        
    	int int1 = #2DAMEMORY3#;
       
    	int int2 = #StrRef4#; 
    	string string1 = "if_schematic";
    
    		if ((GetIsInConversation(GetFirstPC()) == 0)) {
    			GrantFeat(int1, GetFirstPC() );
    			DelayCommand(1.5, DisplayMessageBox(int2, string1));
    		}
    		if ((GetIsInConversation(GetFirstPC()) == 1)) {
    			DelayCommand(0.5, ExecuteScript("kj_grant_read", OBJECT_SELF));
            			return;
    		}
    		
    	}
    	

    Thanks very much!


  5. 15 hours ago, DarthParametric said:

    Also note that if you want to compatibility for M4-78, they replace the Academy with a whole other module (703KOR I believe?), so that will require a separate patch.

    Whuuuuuut?  So 702KOR becomes something else? Ok, well I'll deal with that when I get there.


  6. for dlg.erf

    Replace0=mal_door.dlg
    Replace1=termtort.dlg

    for s.rim
    Replace0=a_sion.ncs (destroys sion's default saber and equips mine)
    Replace1=a_sion_battle_cs.ncs (destroys sion's default saber and equips mine)
    Replace2=vash_container.utp (may take this out since I still need to make a M4-78 compatibility patch)
    File0=a_darthsbrs.ncs (fired from mal_door.dlg, places revan and malak sabers in footlockers )
    File1=a_spwn_ass.ncs (fired from  termtort.dlg)
    File2=n_elite_ass.utc (.utc created with a_spwn_ass.ncs)

     


  7. Aight I have to fix my 702KOR module.

    I noticed that TSLRCM doesn't include a 702KOR.mod so I went about inserting my edited files into the _dlg.erf and _s.rim for the tslpatcher op, but then when I got there it literally booted me back out to the main load/save screen. 😩

    So I went about making a 702KOR.mod to place in the modules folder....that fixed it yes, but is that how I should really do it? 

    What would make inserting or replacing files in the dlg,erf and s.rim basically crash to main load screen? Missing files in one of those modules? 

    Not sure what to do at this point.


  8. 16 hours ago, jc2 said:

    My suggestions: Vashtere; Savary; Renevault; Vaah'ere; Vininard; Veer'zeen; Valor; Tribunal; Fenrehn; Valic; Lyzander; Venerate; Devouth.

    Whut?

    I'm guessing a couple of those are maybe Mandalorian or somesuch?

    I'm sure there’s explanations behind those names, though i have no idea what they would be…

    I do like Perspective and maybe Venerate so far.

    Let me get some more from you guys

     


  9. Hey again,

    Today I'm looking to rename Vash's silver bladed saber. But I haven't a clue as to what.

    So I'm taking any and all suggestions (unless they're completely hokey) from you fine people.

    What is this saber called?

    vashsaber.jpg.95ee549aa59d22071b582a7e7deb90cc.jpg

    I will probably reskin it one more time to get the directional (turned) steel texture smaller so it'll look better.  But there it is...


  10. Oh I just mean I mixed and matched what you made me.

    As in, I might not have used something for what you labeled them as. Like your original default red I used for Darth Revan's instead, so I switched it for another one.

     


  11. Arbitrary check in.


    all sabers had their aurora light multipliers jacked up to 1.6 (single), 1.4 (double-bladed), and 1.8 (specials).

    Short sabers I’ll probably do at 1.5 when I get around to redoing the default replacement hilts mod.

    Learn Schematic is now a feat called Read Schematic…

    Kaevee now has the Padawans Lightsaber. (No its not yellow bladed)

    Crystal icons have been  massively consolidated and completly remade by SH, and me…

    aaaand thats all i can think of right now....

     

     

     

     

     


  12. OMG OMG OMG!

    It compiled and it works! Woooo!

    I just combined c_have_item with the c_have_feat that I made earlier today and it works.

    int StartingConditional() {
    
        object oPC = GetFirstPC();
            int nQuantity = GetScriptParameter (1);
           int i;
            string sItem = GetScriptStringParameter();
        object oItem = GetItemPossessedBy (GetPartyLeader(), sItem);
        
        if(nQuantity == 0) nQuantity = 1;
        if ((GetHasFeat(245, oPC) == TRUE) && (GetIsObjectValid(oItem))) { 
            return 1;
        }
        else {
            return 0;
        }
    }
        

    Can you see any reason this wouldn't work? Because i left out the part about returning int stack size from the original c_have_item script at the bottom there....

    int StartingConditional()
    {
        int nQuantity = GetScriptParameter( 1 );
        int i;
        string sItem = GetScriptStringParameter();
    
        if(nQuantity == 0) nQuantity = 1;
    
        object oItem = GetItemPossessedBy (GetPartyLeader(),sItem);
        if (GetIsObjectValid(oItem))
        {
            int nStackSize = GetItemStackSize(oItem);
            return (nQuantity <= nStackSize);
        }
        return 0;
    }

    But why is the (int i;) there? What does that do?
            


  13. Well I have a fix for it for now. I made a check script just for the feat.

    int StartingConditional() {
    
        object oPC = GetFirstPC();
        if (GetHasFeat(245, oPC) == TRUE) {
            return 1;
        }
        else {
            return 0;
        }
    }

    So i'm just using the two starting conditionals for the individual schematic nodes

    screenie.jpg.8b60465a99caad2cbc602f7d9ee88fbc.jpg

    Was thinking maybe i should put c_have_feat at the beginning of the node so it wont even show up if you haven't gotten the feat. I still need to decide if it's going to be a pickable or granted feat.

    But I really need to take a nap, I have to work tonight.