Jump to content

Mod Order/Feedback request


Recommended Posts

On 10/17/2022 at 5:18 AM, Oloriniel said:

She didn't drop a wardstone.

I ran a changelog on Mage18Z.CRE:
00000: /* created or unbiffed */ ~COWLEDMENACE\SETUP-COWLEDMENACE.TP2~ 0 1000 // Main Component0.2.1
00001:  ~COWLEDMENACE\SETUP-COWLEDMENACE.TP2~ 0 2100 // Appropriate Items for High-Level Spellcasters0.2.1
00002:  ~MIH_EQ\SETUP-MIH_EQ.TP2~ 0 0 // Revised Corporal Undeadv5.1
00003:  ~UNOFFICIAL ITEM PACK\SETUP-UNOFFICIAL ITEM PACK.TP2~ 1 4 // New Items
00004:  ~TOMEANDBLOOD\TOMEANDBLOOD.TP2~ 0 16 // Improved Identify spell (usable by Arcanist/Multi Sorcerers)0.9.33
00005:  ~EET_TWEAKS\EET_TWEAKS.TP2~ 0 2051 // XP for killing creaturesDecrease to 75%1.12
00006:  ~STRATAGEMS\SETUP-STRATAGEMS.TP2~ 0 3505 // Wider selection of random scrolls34.3
00007:  ~STRATAGEMS\SETUP-STRATAGEMS.TP2~ 0 5900 // Initialise AI components (required for all tactical and AI components)34.3
00008:  ~STRATAGEMS\SETUP-STRATAGEMS.TP2~ 0 6030 // Smarter Mages34.3
00009:  ~STRATAGEMS\SETUP-STRATAGEMS.TP2~ 0 6100 // Potions for NPCs34.3
00010:  ~TNT\TNT.TP2~ 0 59 // Fair fightsAlso remove undroppable items granting unfair advantages from all enemies | POWER USER component, consult readmev8.19
00011:  ~METWEAKS\METWEAKS.TP2~ 0 3210 // Make Infravision actually do somethingBoth 1 and 2
00012:  ~MIH_TWEAKS\SETUP-MIH_TWEAKS.TP2~ 0 6 // Give Monsters Bonus HPv2
00013:  ~ZGTWEAKS\ZGTWEAKS.TP2~ 0 12 // Add random arcane spell scrolls to arcane casters up until their highest memorized level1.4
00014:  ~ZGTWEAKS\ZGTWEAKS.TP2~ 0 22 // Add random arcane spell scrolls to divine casters up until their highest memorized level1.4
00015:  ~ZGTWEAKS\ZGTWEAKS.TP2~ 0 10000 // Bag of Spilling (move bugged supposed-to-be-available items to a bag in the creature's inventory)1.4
00016:  ~SKILLS-AND-ABILITIES\SKILLS-AND-ABILITIES.TP2~ 0 312 // Overhaul Proficiency System - Add New Proficiencies and Weapon StylesAccelerated Proficiency Progressionv0.8.1-alpha
00017:  ~KLATU\SETUP-KLATU.TP2~ 0 1050 // Appropriate XP Rewards for Cowled Enforcers1.7

Maybe this will help. The TNT component stands out as something that might remove a min 1 hp item?

 

00003:  ~UNOFFICIAL ITEM PACK\SETUP-UNOFFICIAL ITEM PACK.TP2~ 1 4 // New Items

I inspected the code for this mod, the author overwrites the entire mage18z.cre file in override with their own mage18z.cre file (destructive editing). I advised many people against using that mod. I would still advise not to ever use that mod. It's 100% incompatible with my mod due to shitty coding practice.

If by any chance you have a different version of the mod installed, or skipped the component, then not sure, any of those mods could be overwriting the whole file instead of editing it in a "best coding practice" manner and be responsible for this. I know that KLATU is 100% fine. Stratagems too, I tested the mod with SCS. The known tweak mods are probably ok.

Most likely it's the unofficial item pack though. Like I said, I inspected the code. It's probably what simultaneously broke the last encounter of the cowled wizards because her dialog file has been overwritten, and prevented her from dropping the wardstone too since it's no longer in her inventory due to overwriting. If you want to add it to your inventory, it's called "Zallanora's Wardstone". You can search for it either in NearInfinity or EEKeeper, then add it in your inventory through console.

I will edit my compatibility section on my mod to specify never to install my mod with Unofficial Item Pack

Edited by Daxtreme
Link to comment
12 hours ago, Daxtreme said:

If you want to add it to your inventory, it's called "Zallanora's Wardstone". You can search for it either in NearInfinity or EEKeeper, then add it in your inventory through console.

I will edit my compatibility section on my mod to specify never to install my mod with Unofficial Item Pack

Thanks for both the suggestion, to salvage the rest of your mod's content, and the scrutiny re: the code, so I can avoid this and (probably other) issues in future installs.  I'm already plotting what to add and remove for my next run.  I've been thinking about a ranger/druid, a sorcerer/monk, or a barbarian/shaman.  But with the release of the Gorgon's Eye and its rogue focus, perhaps I'll go with a svirfneblin cleric/thief....

Link to comment

Day 800

Completed: Bodhi's offer rejected, Collect the fee for Gaelan Bayle, Recover Dennis' mother's gong, Restore Kangaxx's body, Mage Stronghold, Defense of Targos: Goblins at Docks, Logs for the Palisade, Interrogate the dead; Hedron's Mother, Wounded soldier, Rest in Jorun's House, Ghost in the Inn, Drink more Guthewulfe, Traitor's scroll, sick diviner, Repair the Catapult, Bet with a Soldier, Wine for Niles, Chear Shaengarne Bridge, Emma Moonblade, Orc hostages, Message to Yquog, Meal for Pondmuk, To the Western Pass, Repair Oswald's ship, Oswald's ship: Boring Beetles; Captain Yurst, Beodaewn's Cult, Help Zack, Find Spider Aocha, Glacier: Barricade, Aurilite Ice Temple: Abishai, Prisoners of Aurilites, Nathaniel; Fell Wood:  Will o'wisps, Dark Treants; Barrow Wight; Remains from the Fell Wood; Lost children; Ghost of Kyosti; Pass through teh Fell Wood; Frostrose for Venla; River Caves: Kill the beasts; Hellhole; Black Raven Monastery:  Entry to the Underdark, Thief in the Monastery, Sersa's training, Nomin's ring; Underdark: Making Driders, Ginafae, Band of Assassins, Illithid's Stone, Imphraili's Laboratory; Priest of Bane in the Pass; Ghost of Mother Egenia; Close Portal to Chult; Tower Key; Wounded dwarf Gerbash; Shemish and Conlan; Elemental in Orrick's Tower; Time Loop; Histachii Transformation; Get Nheero out of jail; Clear the Fields of Slaughter; Send Puddy Home; Slaves in Severed Hand; Food for the Slaves; Death of Zaem Astyr; Fake drawings; Problems with Vylu Prehv; Tower of Deception - Back in Athkatla; Innershade: The Enemy Below, Help in the woodland, Round, golden tragedy; Buried Love; Let's Travel; Deep Gardens: Epilogue; A Bhaalspawn's best friend; some bloke I met down the pub...; The Book Club; Taira's father, Quest for Lady Jwennilyn; Elminster's pipe; the Chef of the Blue Unicorn; Book delivery; Calandra and Talon; Thieves' guild stronghold; Aran's 'delicate errand.'


New or In Progress: Solve the riddle in the Sewers (can't complete, did lover's ring instead), Inside the Planar Sphere (can't complete, talked to a knight who told me about the sahuagin after I'd finished the main quest), Finish the leather armor begun by Reljek Hidesman, Solve the "Skinner murders in the Bridge District" (completed and then Aegisfield gave it to me again), Icewind Dale (didn't install framing sequence), Defense of Targos: Defense of the Palisade, Bottle of Spirit, Horde Fortress, Portals Puzzle (IWD2 quests, not sure why they didn't close properly), You Can't Escape the Past (didn't clear when completed), Neil from Southern Edge; Selence Hillstar: Owed Money, I Shall Never Forget (didn't clear when completed), A Very Long Holiday/An ally for a price (Alternatives--chose Aran Linvail instead),  Moomik's Request (didn't clear when I completed), The Cowled Menace, The Summoner from the Bridge's Block, An Ancient and Restless Spirit, in Pursuit of Moira's assassins (bugged), Imoen found a job, Pirate Legacy, the Lover's Ring (didn't clear when completed), Book Delivery (didn't clear when completed), Calandra and Talon (didn't clear when completed), to be heir, kale's father (bugged), Foundling and the Black Curse, A matter of some cabbages (completed? not sure if there were follow-ups to Hubelpot's quest), Proving Kova's Innocences (incl. Noble's Murders & Enforcer Murders) Golem Construction Workshop ,Brandock and his Half-Ogre Twin, Brandock Wants to Restore his Book, Increase Brandock's Lore Wisdom, Brandock Changes the Book of Infinite Spells; Aran's tasks to receive the Shadow Thieves' aid; Beshaba's curse, A missing fence?

Yes, I've finally moved into Chapter 15!
Party:  Sirene, Xan, Branwen, Kivan, Fade, Brandock, Grey, Afaaq

I'm recovering from the use of Ceinwen's potion, that let me bypass the traps in the caves below Portpentyrch.  I've cleared out Cerendor Hold and have ventured into the Cloudpeaks to find the Red Wizards and their Black Lotus caravan.  I think I'll detour to the Stormhorns to face another dragon--after Firkraag, Tapanascar, Dran Draggore and the Shadow Dragon, I'm getting quite good at this dragonslaying thing!--and then back to Aran Linvail to tell him I've destroyed the vampire guild, though its leader Bodhi got away.  And *then* I should finally set off to find Irenicus, the mage who tortured me!



XP:  3,247,501 each (20/19/20)
Body Count:  12,340 for Celebrindal
Gold:  470,243 (finally sold a bunch of stuff)

Link to comment
4 hours ago, Oloriniel said:

Thanks for both the suggestion, to salvage the rest of your mod's content, and the scrutiny re: the code, so I can avoid this and (probably other) issues in future installs.  I'm already plotting what to add and remove for my next run.  I've been thinking about a ranger/druid, a sorcerer/monk, or a barbarian/shaman.  But with the release of the Gorgon's Eye and its rogue focus, perhaps I'll go with a svirfneblin cleric/thief....

 

Let us know when you're in Throne of Bhaal and you've created the wardstone so you can properly finish Cowled Menace

Link to comment

Day 817

I've finished "Fishing for Trouble," barring the 7 day wait to show up at Portpentyrch for the finale.  And subdued "Velvetfoot" up in the Stormhorns.  And completed my tasks for Aran Linvail.  His romance never triggered, but I did get the Beshaba's Curse quest, as well as one to find a missing fence.

I recruited Fade as the earliest opportunity, but I'm not sure how / when she gets kidnapped.  So I haven't been to the Slaver Compound yet.

I'm swapping out the entire party now--Kivan and Fade for Koya and Kiyone, Sirene and Xan for Yoshimo and Kachiko, and Branwen for Imoen. 

I'm stuck at the docks however.

When Saemon says, "Hold fast, the adventure begins," I get a "no valid replies or links."  Game doesn't crash, I can click him or Aran Linvail again and run through the dialogue chain again, up to that point.

But in NI, the responses should be: 
Response 108, Dialog: PPSAEM.DLG
  Flags
  (Trigger(1)Action(2)Terminates dialogue(3))
     Response trigger 46
          !IsValidForPartyDialgue("vpkachi")
     !IsValidForPartyDialogue("vpsime")
     Global("Sime_Meet","GLOBAL",1)
     Action 43
     StartCutSceneMode()
     StartCutSceneEx("vp41dsm",FALSE)

OR:
Response 109, Dialog: PPSAEM.DLG
  Response trigger 47
       !IsValidForPartyDialogue("vpkachi")
  Global("Sime_Meet",)GLOBAL",0)
Response 109: (No text) [VPKACHIJ.DLG]
State 38:  Wait a minute!  The ship is ours to take anywhere, right?  <CHARNAME>, can we go to Kara-Tur now?

followed by a lengthy dialogue chain that (usually) ends with Saemon casting a spell from a scroll that (I presume) transports the party, Saemon and his ship and crew, etc, to Kara-Tur.

OR: 
Response 110, Dialog: PPSAEM.DLG
Flags
(Trigger(1)Action(2)Terminates dialogue(3))
Response Trigger 48
  !IsValidForPartyDialogue("vpkachi")
Global("Sime_Meet),"GLOBAL",0)
Action 44
StartCutsceneMode()
StartCutSceneEx("Cut41d",FALSE)

Now, I've checked at "Sime_Meet" does not exist (that's the same as it being 0, or no?)
All three have that ! in front of ) "IsValidForPartyDialogue".  Doesn't that mean that it's checking to make sure that character's not in the party, so you only proceed with that action if the character is not there?  And therefore, she'll never say her lines, because she can only say her lines if she's not there to say them?  In other words, an error solved by removing the "!" here?

Link to comment

A variable not existing is the same as being zero, yes. As long as checks for it are concerned. Timers are something of an exception here; GlobalTimerExpired and !GlobalTimerNotExpired aren't the same check, with the former returning false and the latter true if the timer doesn't exist.

As is common with logical expressions in code, that ! means negation. The IsValidForPartyDialogue check is a little different than you're thinking; it looks not only at whether the character is in the party and the area but also for status conditions that could prevent them from speaking.

As an example, consider the dialogue when returning from Dorn's ToB quest. Dorn has something to say, and then other NPCs chime in. But not right away. The other characters need a certain variable to be set before they'll speak, and that variable is set with this block in the ambush area's script:

IF
	Global("OHD_finished","GLOBAL",1)
	Global("OHD_homeagain","OH5400",0)  // Dorn - Forest Clearing
	!IfValidForPartyDialog("dorn")  // Dorn
THEN
	RESPONSE #100
		Wait(1)
		SetGlobal("OHD_homeagain","OH5400",1)  // Dorn - Forest Clearing
END

If you're just bringing Dorn temporarily for his quest, that block will trigger when you drop him and return to your usual party. For my recent run with Dorn as the protagonist, that wasn't an option. So instead, I silenced Dorn, and that got everyone else to speak up.

Link to comment
6 minutes ago, jmerry said:

A variable not existing is the same as being zero, yes. As long as checks for it are concerned. Timers are something of an exception here; GlobalTimerExpired and !GlobalTimerNotExpired aren't the same check, with the former returning false and the latter true if the timer doesn't exist.

As is common with logical expressions in code, that ! means negation. The IsValidForPartyDialogue check is a little different than you're thinking; it looks not only at whether the character is in the party and the area but also for status conditions that could prevent them from speaking.

As an example, consider the dialogue when returning from Dorn's ToB quest. Dorn has something to say, and then other NPCs chime in. But not right away. The other characters need a certain variable to be set before they'll speak, and that variable is set with this block in the ambush area's script:

IF
	Global("OHD_finished","GLOBAL",1)
	Global("OHD_homeagain","OH5400",0)  // Dorn - Forest Clearing
	!IfValidForPartyDialog("dorn")  // Dorn
THEN
	RESPONSE #100
		Wait(1)
		SetGlobal("OHD_homeagain","OH5400",1)  // Dorn - Forest Clearing
END

If you're just bringing Dorn temporarily for his quest, that block will trigger when you drop him and return to your usual party. For my recent run with Dorn as the protagonist, that wasn't an option. So instead, I silenced Dorn, and that got everyone else to speak up.

Thanks for your reply.

Not sure, though, if it means I should try to remove that ! in the hopes that the dialogue would then fire properly.  And, aside from doing things like turning off a "droppable" flag--and some perhaps ill-advised copying of an item's properties to another item--I haven't used NI for editing and am not sure how to go about it.

Edited by Oloriniel
Link to comment

... Wait. Now that I've actually looked at the code you posted, it seems like there's a response by Kachiko conditioned on Kachiko being unable to speak. That looks like a bug with the mod, and response #109 (the one that leads to dialogue from VPKACHIJ) should have its condition inverted to IsValidForPartyDialogue("vpkachi").

Without that change, the dialogue only works if Kachiko is either unable to speak or not present at all. You had her in the party, so things broke with none of the replies available.

Link to comment

You have Near Infinity, which you've been looking at the dialogue in. You've already found the relevant numbers in the tree view. Switch over to the edit view, and go to the relevant piece - response trigger 47. That lets you edit the trigger as text - delete the !, and you're set.

This one's easy enough to do in NI, as it's a local change to a single trigger. More complicated changes to the flow are a lot harder to do in the program. When I fixed up an existing but unused dialogue tree for my mod, I exported the whole thing to .D format, edited that as text, and recompiled it - because my edits led to trigger numbering changing, and that would have been way to easy to break if I was just editing it in NI.

Link to comment

 

44 minutes ago, jmerry said:

You have Near Infinity, which you've been looking at the dialogue in. You've already found the relevant numbers in the tree view. Switch over to the edit view, and go to the relevant piece - response trigger 47. That lets you edit the trigger as text - delete the !, and you're set.

That worked!  Thanks for walking me through it.  Now to find the right place to enter a bug report :)

Link to comment

Finished "Tortured Souls," and have made my way to Brynnlaw.

After Imoen was kidnapped, I teleported back to pick up Driz'zt, through the power of the console, and met with Brother Martin, who took us to the Spirit Soaring, which brought us first to the Hells and then another dragon, prerequisites for dealing with the crystal shard and Entreri/Jarlaxle.

Then I sought to pick up Branwen, as I'm presently without a healer.  Only to find that, as I tp'ed a party member through the various zones in which I've stashed former companions, to watch them disappear as I arrived at their location.  Sirene, Anomen, Jaheira, I watch them all blink out as I zoned in.  I wonder if something about the chapter system is removing them from the game?

I used the 

C:Eval('MoveGlobalObject("former party member",Player1)')

trick to recover Kova and Kiyone when I left for Brynnlaw, because they weren't where I thought I remembered leaving them.  But this isn't working for Branwen.

And on another front, my journal is hosed.  Not only are new quests not being added, but hitting the 'back' arrow, I see a succession of blank pages.  They don't even have chapter headings.

 

 

Link to comment

Yes, it definitely appears related to the transition to chapter 4 (EET 16).

My last save on Yoshimo/Kachiko's island, my journal was intact, and my former party members were in their stashed locations.  As soon as I transition to Brynnlaw, the NPCs disappear from their stashed locations, and the journal is completely flushed.

Guess I'm moving the ones I'm most likely to want back--Kivan, Xan, Branwen and Sirene--to locations like the Copper Coronet that might be safer, and seeing if that makes a difference.

 

Link to comment

Reloaded last save from Chapter 15.
Moved Sirene to the Order of the Radiant Heart.
Moved Branwen to the Temple of Helm (Temple district).
Moved Xan to the Planar Sphere.
Moved Kivan to the Five Flagons playhouse.

Completed transition from Chapter 15 to Chapter 16.
Journal is erased, quests and journal entries.
Teleported someone to the Planar Sphere, and Xan blinked out.

Link to comment

Join the conversation

You are posting as a guest. 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.

×
×
  • Create New...