-
Content Count
1,408 -
Joined
-
Last visited
-
Days Won
47
Content Type
Profiles
Forums
Blogs
Forum & Tracker Requests
Downloads
Gallery
Store
Calendar
Everything posted by Salk
-
Okay. It seems that my mistake was to believe that GFF Editor would show me everything that K-GFF does. Silly me. I found out the hard way. Using K-GFF I can now see the Orientation and Position of the cameras. Not for the file I was working on (which I did save, yes).
-
Hello again. Yes, I understand we need Position and Orientation but those entries are missing from the .git file I am editing. As you can see it has five entries: ID, Field of View, Height, MicRange and Pitch. I checked many others .git files and they are all like that. How can these cameras work without the Position and Orientation entries? That's why I was wondering if the cameras' position and orientation are stored somewhere else?
-
Well, I made some progress with this and I must say it's a lot of work to learn much stuff for very little gain but I am stubborn and I am trying to make it work. The problem I am having now is with the position of the cameras in the cutscene. According to what I read in the tutorial by FG, there should be two entries for Position and Orientation but in the .git file I am working on they are missing... Does it mean that there are some "default" values for them stored somewhere? Curiously enough, the camera seems to be placed on the floor just under the Ebon Hawk (?) and it does look visible. The script switches to camera 444 and 445 which do exist in the .git file but the position is completely borked.
-
Oh I see... I did not know that. Anyway what happens if I move the .git file to the Override is that I get the cutscene with the czerka officer wanting you to pay the docking fee. I removed all triggers from the .git file just in case it was a matter of priority for which one should come first. I left only my own additions and nothing happens.
-
I have edited the post above because I realized the Trigger entry was missing from the .git file but adding that too did not produce any result. Yes, I have been on Tatooine before. The Xor plot comes usually pretty late into the game and Tatooine is the first planet I visit after Taris. Does it make a difference? Good luck with the installer.
-
Fair Strides, unfortunately it seems my attempt is unsuccessful. I will write here what I have done and perhaps you can tell me what mistake(s) I am making. The module of interest is tat_m17ab. Under Blueprint, Triggers we find kas_xor.enc.utt. Every other planet where the ambush triggers correctly contains a Trigger reference to this file in the corresponding .git file. Not Tatooine. I proceeded to add a Trigger entry to the .git file (entry 4) using GFF Editor. Under Blueprint, Waypoint we find k_xor_ambush_wp. Every other planet where the ambush triggers correctly contains a Waypoint reference to this file or similar (Kashyyyk has the same, Korriban has k_xor_ambush_spa and Manaan doesn't have any but its .git file uses sw_waypoint001 found under Templates) in the corresponding .git file. Not Tatooine. I proceeded to add an entry to the .git file (entry 25) using GFF Editor. I was not so sure about the coordinates but other than that I was hoping to have things right. I have used EFF editor to open tat_m17ab.rim and replace the original m17ab.git file. All checks out. Still, when I leave the Ebon Hawk in Tatooine, nothing happens. Can you give me some advice as to why? Thanks again.
-
From what I could understand, the first encounter with Xor uses the k_hxor.dialog.dlg (Fair Stride is correct about this - thanks!) while the next one uses the duplicate .dlg file kas_xor_dialog.dlg. I do not know why they felt the need to make things more messy but now I am done with my changes and am satisfied. The one thing I do not understand though is why the second encounter is triggered in Manaan, Korriban and Kashyyyk but not in Tatooine too, as it should. Tatooine seems to have the trigger (kas_xor_enc.uti) and the script (k_kas_xorattack.nsc)... I suppose something might not work as intended in the relevant part of k_sup_gohawk.ncs: Db_MyPrintString("Go Hawk Start"); //Do not jump to anywhere if you are on the Ebon Hawk, in the apartment or already in the spaceport/apartment building if(!GetIsObjectValid(oEbonHawk) && !GetIsObjectValid(oSpacePort) && !GetIsObjectValid(oTarisApt)) { Db_MyPrintString("Starting Return to Port Section"); //This allows the players to be ambushed in the starport outside the Ebon Hawk if(nXor == 1) { Db_MyPrintString("Xor 1 == 1"); if(GetGlobalBoolean("K_XOR_AMBUSH_FIX") == FALSE) { Db_MyPrintString("Xor 2 Ambush Fix == FALSE"); if(nPlanet == 20 || nPlanet == 25 || nPlanet == 30 || nPlanet == 35) { Db_MyPrintString("Xor 3 Ambush Choosing Planet"); SetGlobalNumber("K_XOR_AMBUSH", TRUE); SetGlobalBoolean("K_XOR_AMBUSH_FIX", TRUE); Db_MyPrintString("Xor 4 Hijack"); if(nPlanet == 20) { sPlanet = "kas_m22aa"; } if(nPlanet == 25) { sPlanet = "manm26ad"; } if(nPlanet == 30) { sPlanet = "korr_m33aa"; } if(nPlanet == 35) { sPlanet = "tat_m17ab"; } StartNewModule(sPlanet, "K_XOR_AMBUSH_SPAWN"); return; } } } I am not sure I know how things work but I did notice that there is no entry for Waypoint K_XOR_AMBUSH_SPAWN in the m17ab.git file. Can it be that that's the reason why Xor doesn't spawn the second time on Tatooine?
-
It must be like you say, surely. I will investigate. And thanks again for the help.
-
I thought of that too because it seemed to me it was the only possible explanation. But I did load the .dlg file into he editor several times, making sure it was the one in the override folder... Just out of curiosity, what changes did you make? And could I borrow your edited file and see if it does indeed play right in my game? Thanks!
-
Okay, the suggestion did work. I am now facing another problem and I thought it was better asking in this already opened thread rather than starting a new one. I need to make a few changes to the dialogue with Xor when I meet him the first time on Manaan. I thought that the .dlg file for the conversation with him was kas_xor_dialog.dlg which I find using KOTOR Tool under the Dialog tree of the manm26ad_s.rim module. But apparently I must be wrong because I changed a few lines, saved the new file and dumped it in the override folder with no result. The dialogue played is still the original one. Any advice as to what is happening? Thanks!
-
[KotOR] Rancor and Krayt Dragon bodies
Salk replied to Salk's topic in Knights of the Old Republic General
Sounds good. -
[KotOR] Rancor and Krayt Dragon bodies
Salk replied to Salk's topic in Knights of the Old Republic General
I am not sure I understand. Of course it would be ridiculous if you could walk through the bodies of the monsters. Nobody wants that. sEcOnDbOuToFiNsAnItY said (and that is also my recollection but I can verify it) that the corpses do not need to be destroyed to move past them. -
[KotOR] Rancor and Krayt Dragon bodies
Salk replied to Salk's topic in Knights of the Old Republic General
I actually would have preferred that the bodies were not destructible at all. But if you really want to make them destructible then at least let that have a meaning... For the Dragon, it would be appropriate to find the Krayt Pearls in there, I guess... For the Rancor instead, I cannot think of anything at the moment... -
Hello! There has been something that always bothered me in the game. Why making the bodies of the Rancor in Taris and of the Krayt Dragon in Tatooine destructible (with the pointer switching even to a special icon just for the two of them!) if you are going to find nothing inside? Opinions?
-
Thanks for the suggestion, Fair Strides! I will definitely give it a try.
-
About my latest post above, in case anyone might be interested. My solution had a small bug in the cutscene: kas25_mandalor07 would not decloak like the others so I took another path. I left k_pkas_mandend.ncs alone and only changed k_pkas_mand3.ncs adding the lines in bold: void sub2(string stringParam1, location locationParam2) { object oPC = GetNearestObjectByTag("kas25_mandalor02", OBJECT_SELF, 1); object oItem = GetFirstItemInInventory(oPC); CreateObject(1, stringParam1, locationParam2, 0); if ((!GetIsObjectValid(GetObjectByTag("kas25_mandtrig2", 0)))) { while (GetIsObjectValid(oItem)) { if (GetTag(oItem) == "kas25_datapad2") { DestroyObject(oItem); } oItem = GetNextItemInInventory(oPC); } } } I noticed though how in the vanilla game there is often one unit (mandalor03) in the second ambush that oftens does not charge to attack like the rest but just stays and watches until attacked first. The attack function in k_pkas_mandend.ncs is a bit too complicated for me to understand why it happens.
-
Thank you, guys. I am taking advantage of your knowledge to ask you for more help... In my attempt to make the game more polished, I would like to avoid unnecessary duplication of supposedly unique items. In this present case, I am talking of the Mandalorian Datapads in Kashyyyk as part of the Hidden Hunters quest. The unarmed party is ambushed twice. The first three enemies leave Datapad 1 (kas25_datapad1) and Datapad 2 (kas25_datapad2). In the second ambush, we obtain Datapad 1 and Datapad 2 again, plus a thirdDatapad (kas25_datapad). Datapad 1 is dropped by kas25_mandalor01 in the first ambush and by kas25_mand_end in the second. Removing the duplicate is a simple matter of removing Datapad from the inventory of the latter. Datapad 2 is dropped by kas25_mandalor02. This enemy appears in both ambushes so my idea was just to swaps him with kas25_mandalor07 (another Mandalorian warrior carrying no special item). The script that deals with the ambushes (both of them) is k_pkas_mandend and the main function is this: void main() { object oNearestKas25_mand_end = GetNearestObjectByTag("kas25_mandalor01", OBJECT_SELF, 1); object oNearestKas25_mandalor02 = GetNearestObjectByTag("kas25_mandalor02", OBJECT_SELF, 1); object oNearestKas25_mandalor03 = GetNearestObjectByTag("kas25_mandalor03", OBJECT_SELF, 1); if ((!GetIsObjectValid(GetObjectByTag("kas25_mandtrig2", 0)))) { oNearestKas25_mand_end = GetNearestObjectByTag("kas25_mand_end", OBJECT_SELF, 1); } ChangeToStandardFaction(oNearestKas25_mand_end, 1); ChangeToStandardFaction(oNearestKas25_mandalor02, 1); ChangeToStandardFaction(oNearestKas25_mandalor03, 1); AssignCommand(oNearestKas25_mand_end, sub1(OBJECT_INVALID)); AssignCommand(oNearestKas25_mandalor02, sub1(OBJECT_INVALID)); AssignCommand(oNearestKas25_mandalor03, sub1(OBJECT_INVALID)); } The IF condition checks whether or not it is the second ambush taking place (from what I understand) and if it is, it simply swap kas25_mandalor01 with kas25_mand_end. I was hoping that I could just add this line: oNearestKas25_mandalor02 = GetNearestObjectByTag("kas25_mandalore07", OBJECT_SELF, 1); but there is a problem. The new enemy that replaces kas25_mandalor02 does not become hostile for some reason and I cannot understand why. Can someone guess what is happening? Thanks! UPDATE: Well, I think I can start to understand something... The line does not work because the object has never been created during the cutscene. I suppose I need to investigate k_pkas_mand3.ncs. SOLVED: Yes, I did need to add the following also to k_pkas_mand3.ncs: if ((!GetIsObjectValid(GetObjectByTag("kas25_mandtrig2", 0)))) { string1 = "kas25_mandalor07"; }
-
A couple of questions more, if you please. 1) The .mod file works even if not all the vanilla resources in the <level>.rim and <level>_s.rim file are there? Would the game then use what it finds in the <level>.mod and take the rest from <level>.rim and <level>_s.rim? 2) If the resource found in a .mod file is also found in Override, will the latter take precedence? Thanks for your patience.
-
Okay. Thanks for the advice!
-
Great! I didn't think of checking the file path... Anyway I did go for the second solution. If you do not mind helping out with one more thing. Can you tell me when it is appropriate to create a .mod file and when a .rim file? In my C:\Program Files\LucasArts\Star Wars Knights of the Old Republic\modules folder I have both .mod and .rim files and I was wondering about the difference. I am in the process of moving some files from the Override into modules and I would like to make sure I am not making a mistake. From what I can see, the ERF -> Modules .mod files replace original resources found in the RIM -> Modules .rim files? Thanks again!
-
One question, Fair Strades. What file invokes k_pdan_endcut14? I did not find it in the dan14_cutscene.dlg (or am I blind?) I am still trying to figure out the structure.
-
Thanks a lot, Fair Strides. I have reworked the two quests (Dead Settler and Sandral/Matale Feud) to my satisfaction, removing two bugs and making the quest possible to finish even if the second one is completed first. I will investigate the k_pdan_endcut14 file!
-
Hello! I am trying to make possible to start and complete the Dantooine quest "Dead Settler" even after finishing the quest "Shen and Rahasia". The solution I thought of is simple: after the cutscene when the two families confront each other, if it does not end in blood, I would unlock the Sandrals main entrance. There the Player can talk to the droid and inform of the death of Casus. There is already unused material in the dan14_sdroid.dlg file which can easily be restored. That same dialogue file uses the script k_pdan_srdr01.ncs to unlock the door when the Player demands to meet Nurik because on a mission from the Council: void main() { object oDan14ad_door01 = GetObjectByTag("dan14ad_door01", 0); SetLocked(oDan14ad_door01, 0); } When the cutscene starts, the front door, which was unlocked and open, is closed and locked again (I do not know where this happens). Even if I use the k_pdan_srdr01.ncs in the dan14_cutscene.dlg the door remains locked and I do not understand why. A workaround I found was to add the following to the k_pdan14d_area script: if ((GetGlobalNumber("DAN_ROMANCE_PLOT") > 2) && (GetGlobalNumber("DAN_ROMANCE_PLOT") <7)) { object oDan14ad_door01 = GetObjectByTag("dan14ad_door01", 0); SetLocked(oDan14ad_door01, 0); } This does work but it requires that the player leaves the area and enters it again and I would rather go for a simpler method. Can someone help me with this? Thanks!
-
Yes, I have done that. The only small worry is that the recompiled code is not identical but I believe it is nothing that can affect the end result. I tested it and it seems to be working fine. The Dead Settler quest is a mess though and there is quite some material to restore by keeping the droid outside the estate at its original place unlocking the Sandrals front door (I also improved on the dan14_cutscene.dlg as detailed here). I am working to make it possible to finish it even if the player completes the Rahasia and Shen Romance quest first.
-
Kotor Scripting Tool v0.1.3.1 trouble.
Salk replied to Purifier's topic in General Kotor/TSL Modding
Blue, the new version does not create an entry in the Start menu-> Programs of windows XP which is something that the older, not working version did. Cheers!