Jump to content

Nar Shaddaa: Ratrin and the hidden compartments


Recommended Posts

*SPOILERS*

On Nar Shaddaa, you encounter a guy named ratrin on the central hub who claims that the Ebon Hawk is his. I agreed, being lightside, after asking him for proof ; he mentioned two hidden compartments, including one in visas cabin. I read that this should trigger a cutscene upon re-entry to the Ebon Hawk, and also make the compartment show up (like the one with the peragus miner's hidden cache). Unfortunately, while I get autosaved and the screen goes briefly blank upon entering the Hawk, nothing happens. Also the compartment doesn't show up. Any ideas/fixes?

Link to comment
Share on other sites

*SPOILERS*

On Nar Shaddaa, you encounter a guy named ratrin on the central hub who claims  that the Ebon Hawk is his. I  agreed, being lightside, after asking him for proof ; he mentioned two hidden compartments, including one in visas cabin. I read that this should trigger a cutscene upon re-entry to the Ebon Hawk, and also make the compartment show up (like the one with the peragus miner's hidden cache). Unfortunately, while I get autosaved and the screen goes briefly blank upon entering the Hawk, nothing happens. Also the compartment doesn't show up. Any ideas/fixes?

Ah, I didn't know about this bug. I've attached a fix. It seems there was a comparison in the original script that checked whether the EnteringObject of the Ebon Hawk was the FirstPC. This comparison would fail and the secret compartment would never spawn.

 

 

Edit: Decided to remove the GetLoadFromSaveGame() condition from fix. v1.1 reuploaded.

hidden_compartement_fix1.1.zip

Edited by tk102
Link to comment
Share on other sites

*SPOILERS*

On Nar Shaddaa, you encounter a guy named ratrin on the central hub who claims  that the Ebon Hawk is his. I  agreed, being lightside, after asking him for proof ; he mentioned two hidden compartments, including one in visas cabin. I read that this should trigger a cutscene upon re-entry to the Ebon Hawk, and also make the compartment show up (like the one with the peragus miner's hidden cache). Unfortunately, while I get autosaved and the screen goes briefly blank upon entering the Hawk, nothing happens. Also the compartment doesn't show up. Any ideas/fixes?

I've had the same problem, but it's an oddball issue - in that some people don't have trouble getting access to the compartment, and others do.

 

 

It seems there was a comparison in the original script that checked whether the EnteringObject of the Ebon Hawk was the FirstPC.  This comparison would fail and the secret compartment would never spawn.

For me, it was because a_ebo003_load is not called at all when entering the Ebon Hawk, unless loading from a save game in which your character is already on the Ebon Hawk... but, if it is loading from a save game, execution of that script is aborted (due to the GetLoadFromSaveGame() preventative check in the original script) :) ...At least, that's what I observed after reconstructing the original script, placing debug output calls at every point of interest, and going in and out of the Ebon Hawk from various locations after talking to Ratrin/getting 003EBO_Hatch set to 1.

 

And, because I don't know if I'm the only one having this problem due to this particular issue I explained above, I can only say that, for me, the fix works only upon loading an Ebon Hawk save game (tested it a moment ago).

Knights of the Old Republic II: The Sith Lords Restoration Project

http://www.team-gizka.org

Link to comment
Share on other sites

For me, it was because a_ebo003_load is not called at all when entering the Ebon Hawk, unless loading from a save game in which your character is already on the Ebon Hawk... but, if it is loading from a save game, execution of that script is aborted (due to the GetLoadFromSaveGame() preventative check in the original script) :lol: ...At least, that's what I observed after reconstructing the original script, placing debug output calls at every point of interest, and going in and out of the Ebon Hawk from various locations after talking to Ratrin/getting 003EBO_Hatch set to 1.

 

 

Using a straight SendMessageToPC(GetFirstPC(), "...") for debug printouts in an OnModuleLoad script (like a_ebo003_load is) is unreliable since the player hasn't necessarily been spawned in the area yet when that script is running. GetFirstPC() will not return a valid object at that time. (GetFirstPC() do however tend to return a valid object in OnModuleLoad when you reload a savegame within that module, rather than enter it from another module.)

 

If you delay the debug printout with a few seconds to give the player time to spawn it should appear when you enter the Ebon Hawk normally too.

 

In addition, since the OnModuleLoad isn't an "OnEnter" event, the value returned by GetEnteringObject() wouldn't be reliable to use there since there is no entering object that's relevant for that event. It would likely return an invalid object in most cases (except, I guess, if the player just before has been the last entering object of another event that sets that value. At least that's my guess as to why the container gets spawned some times rather than never.)

 

I assume that script was originally designed to be used with a Trigger, where it would have worked fine, and they forgot to change it when they used it in OnModuleLoad instead.

Link to comment
Share on other sites

Thanks for the fix Tk-102! I will echo razorfish's observation as well: your fix worked (I could see the hidden compartment), but only if I loaded from a save game where the pc was on the ebon hawk, rather than if I entered the ebon hawk from the Nar Shaddaa spaceport. This is presumably because of the "if (GetLoadFromSaveGame())", but I haven't tried my hand at NWscript or KotOR scripting (are they the same?) so I wouldn't know :thumbsup: Thanks again! By the way, was there supposed to be a cutscene triggered on entry to the ebon hawk after speaking to ratrin? (presumably an OnModuleLoad trigger, if I understand the terminology correctly)

Link to comment
Share on other sites

Thanks for the fix Tk-102! I will echo razorfish's observation as well: your fix worked (I could see the hidden compartment), but only if I loaded from a save game where the pc was on the ebon hawk, rather than if I entered the ebon hawk from the Nar Shaddaa spaceport. This is presumably because of the "if (GetLoadFromSaveGame())", but I haven't tried my hand at NWscript or KotOR scripting (are they the same?) so I wouldn't know :) Thanks again! By the way, was there supposed to be a cutscene triggered on entry to the ebon hawk after speaking to ratrin? (presumably an OnModuleLoad trigger, if I understand the terminology correctly)

I *just* reuploaded v1.1 of this fix. So that symptom should no longer be present. :)

Link to comment
Share on other sites

Thanks, tk :lol: It seems stoffe was right about the PC not necessarily existing when OnModLoad is called. As long as both checks (game load and entering object) are removed, the hidden compartment spawns just fine.

 

 

I haven't tried my hand at NWscript or KotOR scripting (are they the same?) 

The Odyssey engine branched off from the Aurora engine, and works rather similarly under the hood (I guess...at least as far as scripting is concerned, it's similar enough that the NWScript tutorials posted on Bioware's modding forums are the same ones recommended by KotOR modders to pick up KotOR NWScripting). But, because of the point at which it branched off, many of the improvements to NWN's NWscript that were made via prior to that game's release, in addition to the plethora of NWN patches and the two expansions, aren't available for KotOR's version of NWScript, making KotOR NWScript seem more primitive/limited.

 

 

By the way, was there supposed to be a cutscene triggered on entry to the ebon hawk after speaking to ratrin? (presumably an OnModuleLoad trigger, if I understand the terminology correctly)

Nope, I've gone through the scene selection code a few times and there's nothing specific to Ratrin or the hatch, if I recall correctly. On the other hand, there is a (cut?) Ebon Hawk sequence involving

the Red Eclipse finding and capturing Ratrin on the Ebon Hawk

.

Knights of the Old Republic II: The Sith Lords Restoration Project

http://www.team-gizka.org

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...