Jump to content

Shar-Teel killed *again*, dang it


berelinde

Recommended Posts

Was Shar-Teel ever given a min-hp item to keep her alive through the duel? This time, Khalid killed her, even with AI *turned off*.

 

I figured that Ajantis was the most likely to spring into action, so before approaching Shar-Teel, I took away his weapons and turned off AI. At that point, he and Khalid were the only males in the party. It never occurred to me to take Khalid's swords away from him, since he usually isn't that agressive.

 

Well, Shar-Teel went hostile, and before I knew what was going on, Khalid killed her. At least this time she wasn't chunked, but she was still toast, and you can't join a corpse.

 

Posting here because DavidW said he was going away for a couple days. If you're going to be releasing an updated version anyway, would this be worth including?

 

Thoughts?

Link to comment

I'd suggest monhp1, not minhp1. The former simply keeps hit points from reaching zero (a la trolls) whereas the latter protects against every form of death including stat drains and disintegrations for mission-critical creatures (a la Irenicus at Spellhold).

Link to comment

No, it got lost... or else I thought it was a generic Tutu thing and thought someone else had it. My bad :)

 

EDIT: Edited with "lift" from archived fixes for BG2 Fixpack, thread

http://forums.gibberlings3.net/index.php?s...ost&p=52654

 

OK, I'm on it now:

ACTION_IF FILE_EXISTS_IN_GAME ~FW0100.are~ THEN BEGIN
 /* Stop Shar-Teel's Premature Death */
 COPY_EXISTING  ~_SHARTE.CRE~ ~override~			~_SHARTE4.CRE~ ~override~				~_SHARTE6.CRE~ ~override~
  ADD_CRE_ITEM ~monhp1~ #0 #0 #0 ~NONE~ ~AMULET~ // either adds it new, or forces into inventory (and unequipped)
BUT_ONLY_IF_IT_CHANGES
END ELSE BEGIN /* BGT Version */
 /* Stop Shar-Teel's Premature Death */ <<<I am guessing at BGT cre name here, can someone confirm, please?
 COPY_EXISTING ~SHARTE.CRE~ ~override~
				  ~SHARTE4.CRE~ ~override~
				 ~SHARTE6.CRE~ ~override~
ADD_CRE_ITEM ~monhp1~ #0 #0 #0 ~NONE~ ~AMULET~ // either adds it new, or forces into inventory (and unequipped)
BUT_ONLY_IF_IT_CHANGES
END

 

then a script to remove it on joining:

 

in tp2 Required Fixes section,

ACTION_IF FILE_EXISTS_IN_GAME ~FW0100.are~ THEN BEGIN
 EXTEND_TOP ~_HARTEEL.BCS~ ~BG1NPC/Core/BAF/X#SHARFIX.BAF~
END ELSE BEGIN /* BGT Version */
 EXTEND_TOP ~SHARTEEL.BCS~ ~BG1NPC/Core/BAF/X#SHARFIX.BAF~
END

 

in X#SHARFIX.BAF, for both Tutu and BGT sides (no difference in file)

IF
InParty("sharteel")
Global('X#SharteelKillable","LOCALS",0)
THEN 
RESPONSE #100
DestroyItem("monhp1")
SetGlobal('X#SharteelKillable","LOCALS",1)
END

 

This is what we need coded, right?

Link to comment

OK, never mind.. should have done my research before asking. "Lifted" devSin and CamDawg's fixes for code syntax and useful tidbits. Above post edited; it is being put in immediately (will also go in on BGT side if someone can confirm SHART.CRE...)

Link to comment

Tightened code. Final version (and i am truly praying i have the right cre names -- isn't there a resource anywhere that lists these? )

/* Stop Shar-Teel's Premature Death */
ACTION_IF FILE_EXISTS_IN_GAME ~FW0100.are~ THEN BEGIN
 COPY_EXISTING  ~_SHARTE.CRE~ ~override~
			~_SHARTE4.CRE~ ~override~
			~_SHARTE6.CRE~ ~override~
  ADD_CRE_ITEM ~monhp1~ #0 #0 #0 ~NONE~ ~AMULET~ // either adds it new, or forces into inventory (and unequipped)
BUT_ONLY_IF_IT_CHANGES
 EXTEND_TOP ~_HARTEEL.BCS~ ~BG1NPC/Core/BAF/X#SHARFIX.BAF~
END ELSE BEGIN /* BGT Version */
 /* Stop Shar-Teel's Premature Death */
 COPY_EXISTING ~SHARTE.CRE~ ~override~
			~SHARTE4.CRE~ ~override~
			~SHARTE6.CRE~ ~override~
   ADD_CRE_ITEM ~monhp1~ #0 #0 #0 ~NONE~ ~AMULET~ // either adds it new, or forces into inventory (and unequipped)
BUT_ONLY_IF_IT_CHANGES
 EXTEND_TOP ~SHARTEEL.BCS~ ~BG1NPC/BGT/BAF/X#SHARFIX.BAF~
END

and as above in the X#SHARFIX.BAF, in both BGT/BAF and CORE/BAF

IF
 InParty(Myself)
 Global("X#SharteelKillable","LOCALS",0)
THEN 
 RESPONSE #100
DestroyItem("monhp1")
SetGlobal("X#SharteelKillable","LOCALS",1)
END

Link to comment

and finally bit the bullet and downloaded BGT to investigate. NPCLEVE:L.2DA patching in BGT-WeiDU tp2 indicates

Sharteel Sharte Sharte Sharte4 Sharte4 Sharte6

 

so it is all good. Y'know, I really need to go take some programming courses. After looking at Cam's and Ascenscion64's stuff, I can't help thinking we are mud-puddling in a place where there is some serious ocean-cruising possible...

 

although my brain now huts from trying to decipher the end of BG 1 cutscene in bgt.

Link to comment

The lengths you go to to make this a quality playing experience are phenomenal, but you may save yourself or someone else some trouble down the road once everything else is nailed down. I bet I'm not the only person who keeps accidentally killing Shar-Teel.

Link to comment

I think that for the BG1 NPC side, we are safest just patching in the existing .cres -- your point is correct (in a regular Tutu game the cre should be set at the appropriate joining level, then set back to the 0 level by the mod component so that there is an actual duel, rather than a first-blood option), but I am leaving that kind of involvement in TutuFix, EasyTutu, and Sword Coast Stratagems' courts. We want BG1 NPC users to avoid chunking SharTeel, but we also assume most folks want her to only fight 'til "first blood"; that means at this level, most of the time SharTeel will be available to join the party. On a regular game, some players might just want to chunk her and be done with it! This code means that until someone on the global side of tutu modding puts the necessary fix in place, BG1 NPC content can move forward. WizWom, berelinde, go for dropping this post as reference on Tutufix, DavidW, and Macready, please!

Link to comment

I've got a bit behind on this...

 

Can I clarify: I'm very happy to fix this but is it actually an SCS issue? I don't see why the same thing can't also happen in the vanilla game. The only SCS consequence I can see is that she'll reliably have 20 hp rather than however-many she has at whatever level she'd normally be...

Link to comment
Won't her being level 0 affect her THAC0 as well, making her more of a pushover?

 

Sorry, I should have said that the only affect SCS has on whether you chunk her rather than defeating her is to adjust her hp.

 

Actually SCS compensates for her level being 0 by lending her a THAC0-boosting item, which she loses on level-up (a little crude, but then I didn't regard the Shar-Teel battle as one of the great tactical challenges of the game...)

Link to comment

Archived

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

×
×
  • Create New...