Jump to content
  • Sign Up
Sign in to follow this  
grayswandir

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?

Share this post


Link to post
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

Share this post


Link to post
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

Share this post


Link to post
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.

Share this post


Link to post
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)

Share this post


Link to post
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. :)

Share this post


Link to post
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

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...