Jump to content

Home

Handmaiden for a female PC


The Lone Badger

Recommended Posts

Originally posted by stoffe -mkb-

 

I'll leave the file up for a day or so and then remove it:

Downloaded and playing. A huge thanks for the effort you have put in this. :)

 

Originally posted by Xcom

@Tupac, thanks for that info.

Do you by any chance know what dialog/script actually sets this 303NAR_HANHARR_SIDE variable?

It is done in the dialog hanboun.dlg on reply #19. (Edit: Damn, my original post was all wrong. I hope no one read it.) It would probably be more logical to add an option where you tell that fleabag to jump into the pit there. Suspicious looking scripts are 'a_hanharrconv.ncs' and 'a_miraconv.ncs' in the module 303NAR.
Link to comment
Share on other sites

  • Replies 244
  • Created
  • Last Reply

Found a bug with one of the scripts I posted earlier. Well, not as much in the script as how it will affect the game, since stuff in the Override folder replaces on a global scope.

 

Appears that, for some odd reason, the area enter script for the Ebon Hawk area in the module 004EBO is also called k_003ebo_enter. :rolleyes:

 

004EBO is the Ebon Hawk used when you'll need to cleanse the ship from Red Eclipse slavers. Without the below fix it would probably cause trouble when you enter the ship to kill slavers and have any Ebon Hawk cutscenes ready to trigger.

 

To fix this problem, replace the main() function in the (rather long) k003_ebo_enter script I posted earlier with this altered version:

 

void main() {
object oEnter = GetEnteringObject();

if (oEnter == GetFirstPC()) {
	// ST: Fix since 004EBO has a script with the same name :/
	if (GetTag(GetArea(oEnter)) == "004EBO") {
		SetBackground();
		return;
	}

	SetNPCSelectability(NPC_KREIA, TRUE);
	SetNPCSelectability(NPC_ATTON, TRUE);

	SetBackground();
	SetHologramWorld();

	if (GetLoadFromSaveGame()) {
		DelayCommand(1.0, RebuildPartyTable());
		return;
	}

	object oDoor = GetObjectByTag("CargoDoor");
	AssignCommand(oDoor, ActionOpenDoor(oDoor));

	ClearPlayerParty();
	ClearEbonHawk();

	SetGlobalBoolean("003_cutscene_mode", TRUE);
	SetGlobalBoolean("003_PARTY_SPAWN", TRUE);

	SpawnAllAvailablePartyMembers();
	UpdateSomeNumbers();
	DelayCommand(1.0, DoCutscenes());
}
}

 

This should (hopefully) fix any problems this causes and run the proper script for the area you are in. I've updated the file I posted before with all stuff I changed to include this fix, and I'll leave the file up one day longer.

Link to comment
Share on other sites

Originally posted by stoffe -mkb-

Found a bug with one of the scripts I posted earlier. Well, not as much in the script as how it will affect the game, since stuff in the Override folder replaces on a global scope.

 

Appears that, for some odd reason, the area enter script for the Ebon Hawk area in the module 004EBO is also called k_003ebo_enter. :rolleyes:

 

004EBO is the Ebon Hawk used when you'll need to cleanse the ship from Red Eclipse slavers. Without the below fix it would probably cause trouble when you enter the ship to kill slavers and have any Ebon Hawk cutscenes ready to trigger.

 

To fix this problem, replace the main() function in the (rather long) k003_ebo_enter script I posted earlier with this altered version:

 

void main() {
object oEnter = GetEnteringObject();

if (oEnter == GetFirstPC()) {
	// ST: Fix since 004EBO has a script with the same name :/
	if (GetTag(GetArea(oEnter)) == "004EBO") {
		SetBackground();
		return;
	}

	SetNPCSelectability(NPC_KREIA, TRUE);
	SetNPCSelectability(NPC_ATTON, TRUE);

	SetBackground();
	SetHologramWorld();

	if (GetLoadFromSaveGame()) {
		DelayCommand(1.0, RebuildPartyTable());
		return;
	}

	object oDoor = GetObjectByTag("CargoDoor");
	AssignCommand(oDoor, ActionOpenDoor(oDoor));

	ClearPlayerParty();
	ClearEbonHawk();

	SetGlobalBoolean("003_cutscene_mode", TRUE);
	SetGlobalBoolean("003_PARTY_SPAWN", TRUE);

	SpawnAllAvailablePartyMembers();
	UpdateSomeNumbers();
	DelayCommand(1.0, DoCutscenes());
}
}

 

This should (hopefully) fix any problems this causes and run the proper script for the area you are in. I've updated the file I posted before with all stuff I changed to include this fix, and I'll leave the file up one day longer.

 

what exactly happens *scratches head*

Link to comment
Share on other sites

I believe it's the same mistake as with envida's mods, when encountering the slavers you are put on the hawk sometimes you get to kill them sometimes you don't but it's particullary buggy with visas' cutscene where you are unable to leave the hawk then.

Link to comment
Share on other sites

Originally posted by Keneth

I believe it's the same mistake as with envida's mods, when encountering the slavers you are put on the hawk sometimes you get to kill them sometimes you don't but it's particullary buggy with visas' cutscene where you are unable to leave the hawk then.

 

Which brings up a question...

 

How can this work together with Envida's mods?

Link to comment
Share on other sites

Originally posted by mortis42

Which brings up a question...

 

How can this work together with Envida's mods?

 

Without changes, it won't work together with any other mod that modifies the same files.

 

You'll need to modify the files that are part of the other mod to include the modifications described in this thread, rather than the default files in the game.

 

However, since I don't have the mods in question I'm afraid I can't help you with what files need to be modified. Check which files have the same names in the mods, and then compare them to see what has changed.

 

If you don't know how to change things yourself to make it compatible, maybe whoever makes this into a complete mod will make it compatible with some other mods.

Link to comment
Share on other sites

I forgot to look at the end-game before. Apparently there were gender checks for who of your companions Kreia speaks about near the end too.

 

The following changes will need to be made to the conditional scripts in that dialog to trigger the correct speech for Handmaiden/Disciple depending on who you've brought along:

 

904kreia.dlg:

EntryList --> 150 --> RepliesList --> 1 --> Active = st_nohandmaiden

EntryList --> 150 --> RepliesList --> 2 --> Active = st_hashandmaiden

EntryList --> 153 --> RepliesList --> 0 --> Active = st_nohandmaiden

EntryList --> 153 --> RepliesList --> 1 --> Active = st_hashandmaiden

EntryList --> 155 --> RepliesList --> 0 --> Active = st_nohandmaiden

EntryList --> 155 --> RepliesList --> 1 --> Active = st_hashandmaiden

EntryList --> 157 --> RepliesList --> 0 --> Active = st_nohandmaiden

EntryList --> 157 --> RepliesList --> 1 --> Active = st_hashandmaiden

EntryList --> 159 --> RepliesList --> 0 --> Active = st_nohandmaiden

EntryList --> 161 --> RepliesList --> 0 --> Active = st_nohandmaiden

Link to comment
Share on other sites

I'm already trying to get it compatible with as many mods as I can (well actually just 4 for now since I don't use others) so if anyone has a request please do ask. The only problem is, scripts and dialogues are not like 2da files, they are always active so I'm splitting things that I think could not work on their own into sections, and I'll do another run through after it's done. I still have to edit the handmaiden's dialog to make her joining you optional, after that I'll probably put the first version on pcgamemods, and I'll update it with my or stoffe's new corrections and additions for as long as we'll be working on this. Just bear with me a little while longer so I can finish my schoolwork I doing it as fast as I can.

 

Also to make it compatible with envida's mods you'll need to change the script name to what envida is using, meaning k_003ebo_enter.ncs to 003_ebo_enter.ncs to allow his scripts to be run. I think this should do it but I'm not sure about the latest version of his mods, I'll check those tomorrow.

Link to comment
Share on other sites

Originally posted by stoffe -mkb-

I forgot to look at the end-game before. Apparently there were gender checks for who of your companions Kreia speaks about near the end too.

 

The following changes will need to be made to the conditional scripts in that dialog to trigger the correct speech for Handmaiden/Disciple depending on who you've brought along:

 

904kreia.dlg:

EntryList --> 150 --> RepliesList --> 1 --> Active = st_nohandmaiden

EntryList --> 150 --> RepliesList --> 2 --> Active = st_hashandmaiden

EntryList --> 153 --> RepliesList --> 0 --> Active = st_nohandmaiden

EntryList --> 153 --> RepliesList --> 1 --> Active = st_hashandmaiden

EntryList --> 155 --> RepliesList --> 0 --> Active = st_nohandmaiden

EntryList --> 155 --> RepliesList --> 1 --> Active = st_hashandmaiden

EntryList --> 157 --> RepliesList --> 0 --> Active = st_nohandmaiden

EntryList --> 157 --> RepliesList --> 1 --> Active = st_hashandmaiden

EntryList --> 159 --> RepliesList --> 0 --> Active = st_nohandmaiden

EntryList --> 161 --> RepliesList --> 0 --> Active = st_nohandmaiden

 

Was wondering if someone could point me to what script this references? Is it a script or one of the dlg files? And if so, which ones.

Afraid I'm not very fluent messing around with the scripts, but would really like to use this mod.

Thanks.

Link to comment
Share on other sites

Originally posted by vustare

Was wondering if someone could point me to what script this references? Is it a script or one of the dlg files? And if so, which ones.

Afraid I'm not very fluent messing around with the scripts, but would really like to use this mod.

Thanks.

 

Oops. Just figured it out. Used the GFFEditor to modify those values.

Link to comment
Share on other sites

There was one more script I overlooked in regard to the cutscenes on Ebon Hawk. The k_003ebo_enter script only fires the first cutscene in line when you enter the ship, though there may be many in sequence waiting. Those others are fired by the script a_next_scene.ncs which is run at the end of all the Ebon Hawk cutscenes.

 

Since this script is very similar to k_003ebo_enter I won't post it all again to avoid spamming the forum. Make a copy of the k_003ebo_enter script and delete the functions main(), UpdateSomeNumbers(), and DoCutscenes() from it. Then paste in this new main() function in their place, and you have the a_next_scene.ncs script. :)

 

(I assume the functions shared by these two scripts used to be in an include file in the source code that both included.)

 

// ---------------------------------------------------------------
// ST: Main function of a_next_scene.nss (in 003EBO_s.rim)
// ---------------------------------------------------------------
void main() {
SetGlobalFadeOut();
SetFadeUntilScript();	

object oPC = GetFirstPC();
object oWP = GetObjectByTag("WP_from_outside");
int nParam = GetScriptParameter(1);

switch (nParam) {
	case 0:
		AssignCommand(oPC, ClearAllActions());
		AssignCommand(oPC, ActionJumpToLocation(GetLocation(oWP)));
		AssignCommand(oPC, TriggerCutscenes());
		break;
	case 1:
		if (GetGlobalBoolean("003EBO_CLEANUP_VISAS")) {
			SetGlobalBoolean("003EBO_CLEANUP_VISAS", FALSE);
			SpawnIndividualPartyMember(NPC_VISAS, "WP_gspawn_");
		}
		ResetEbonHawk();
		AssignCommand(oPC, ClearAllActions());
		AssignCommand(oPC, RunCutscene(0));
		break;
}
}

 

If I'm too poor at explaining things for this to make sense, I've included the complete script in the RAR archive that contains all the files I've modified that I linked to earlier. :)

Link to comment
Share on other sites

:confused: I'm lost but can I ask a follow up to the 2nd post of this thread? Are there any bad side effects to having a female PC and setting the gender to male the second I can create a save (I think its when the exile falls out of the kolto tube); and just leave it set to male for the rest of the game? I can live with the messed up pronouns and the romantic overtones might actually be fun playing a female PC ;). But i really don't want to get stuck, yet again, in a bugged scene I can't get out of and have to start the game over. Thanks!
Link to comment
Share on other sites

In regards to Xcom's post... that you're referring to:

 

Setting the gender of the PC is half of the issue. The other half is setting the 000_PLAYER_GENDER accordingly (No=Female, Yes=Male).

 

For some reason Obsidian chose to use both this Global Boolean as well as the actual gender field of the player to determine gender-based behavior. There are scripts that use GetGlobalBoolean, and others that use GetGender. :giveup:

 

(Btw, The global boolean is set at the very beginning of the game when you are T3M4, see a_bet3m4.ncs).

 

As long as you keep both of these in-sync, I can't see how the game would crash on you since for all intensive purposes, you are that other gender. (I would not suggest setting the Gender to something other than male/female however despite the KSE temptation.)

Link to comment
Share on other sites

Originally posted by stoffe -mkb-

There was one more script I overlooked in regard to the cutscenes on Ebon Hawk. The k_003ebo_enter script only fires the first cutscene in line when you enter the ship, though there may be many in sequence waiting. Those others are fired by the script a_next_scene.ncs which is run at the end of all the Ebon Hawk cutscenes.

 

Since this script is very similar to k_003ebo_enter I won't post it all again to avoid spamming the forum. Make a copy of the k_003ebo_enter script and delete the functions main(), UpdateSomeNumbers(), and DoCutscenes() from it. Then paste in this new main() function in their place, and you have the a_next_scene.ncs script. :)

 

(I assume the functions shared by these two scripts used to be in an include file in the source code that both included.)

 

If I'm too poor at explaining things for this to make sense, I've included the complete script in the RAR archive that contains all the files I've modified that I linked to earlier. :)

 

stoffe -mkb-,

So I made those changes to K_003EBO_ENTER as you suggested.

 

But do I need both the modded K_003EBO_ENTER as well as the A_NEXT_SCENE scripts in the override?

Thanks.

 

Edit: Oops. Once again, after playing around with these files on my own, I figured out what was wrong. Didn't realize that the changes were already made to the files.

Link to comment
Share on other sites

(I would not suggest setting the Gender to something other than male/female however despite the KSE temptation.)

 

LOL! :D

 

Thanks tk102! I am going to do that. I'll report back if I run into any problems.

 

Edit: BTW, not to hijack this thread at all but thanks alot for the savegame editor!

Link to comment
Share on other sites

Originally posted by vustare

stoffe -mkb-,

So I made those changes to K_003EBO_ENTER as you suggested.

 

But do I need both the modded K_003EBO_ENTER as well as the A_NEXT_SCENE scripts in the override?

 

 

You shouldn't change k_003ebo_enter.nss with what I posted yesterday or there will be serious problems. What I posted about above was changing another script called a_next_scene.

 

However, since this new script (a_next_scene) contains much of the same code as the k_003ebo_enter since they both deal with running cutscenes, and since it's so long that it won't fit into one forum post, I merely posted the differences between the two scripts.

 

Make a copy of k_003ebo_enter.nss, rename this copy to a_next_scene.nss. In this a_next_scene.nss script, delete the functions main(), UpdateSomeNumbers(), and DoCutscenes() in the code. Both the functions and the prototypes if present.

 

Then paste in the new main() function I posted above where the main() function you just deleted used to be, in the a_next_scene.nss script.

 

You'll then have two scripts, k_003ebo_enter.nss which is the one I posted about a week ago, and a_next_scene.nss, which you just created. Compile and put both in the Override folder.

 

I'm not very good at explaining things but hopefully this makes a bit more sense? :)

Link to comment
Share on other sites

Stoffe,

 

I installed your mod and so far I haven't run into any problems. I have already

 

 

had my cutscene with Visas, converted Handmaide to a sith, completed Nar Shadar (with Mira conversion as well), and have completed Dantooine.

 

 

 

Is there anything I should be aware of that is coming up that could cause conflicts. I realize you didn't put those files up for a mod, per se, but I wanted the Handmaiden and not that library guy.

 

The only other mods I have installed are some item mods and a couple of items that I have "modified"

 

By the way, you have done a good thing as you can see by this threads popularity.

Link to comment
Share on other sites

Originally posted by nacho35

Stoffe,

 

I installed your mod and so far I haven't run into any problems. I have already

 

 

(gone through more than half the game)

 

Is there anything I should be aware of that is coming up that could cause conflicts.

 

No idea, haven't gotten that far yet in my full playthrough with it. :) But unless there are any more scripts/dialogs with same names in different modules, there shouldn't be any problems.

 

If you run into any problems this may be the cause of though, please post about them here and I'll look into it.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.


×
×
  • Create New...