Lurker Posted November 1, 2023 Author Share Posted November 1, 2023 (edited) SOD2BG2_IU: installs partially redundant spells with its main component; broken StringRefs @Daeros_Trollkiller The spells (all of them, not only the ones named here) should really be optional, and not silently be installed alongside the main component. The spells mentioned below, which appear at their intended slots, aren't problematic (with the exception of occupying a spell slot), but the cleric version is exposed to players at cleric level 2 with mismatching text and icon, and isn't working. Faerie Fire: StringRef needs +200k Mods affecting SPPR219.SPL: 00000: /* created or unbiffed */ ~SOD2BG2_IU/SOD2BG2_IU.TP2~ 0 0 // SoD to BG2:EE Item upgrade by Daeros_Trollkillerv2.0.5 00001: ~D5_RANDOM_TWEAKS/D5_RANDOM_TWEAKS.TP2~ 0 1202 // Make Barkskin Block One Attack Each Round1.6 00002: ~STRATAGEMS/SETUP-STRATAGEMS.TP2~ 0 5900 // Initialise AI components (required for all tactical and AI components)34.3 00003: /* acted upon in an undefined manner */ ~GENERALIZED_BIFFING/GENERALIZED_BIFFING.TP2~ 0 1 // Generalized BiffingBiff all files (recommended by the Big World Dudes)v2.6 also, this is a "triplicate" Mods affecting SPPR116.SPL: 00000: /* created or unbiffed */ ~SOD2BG2_IU/SOD2BG2_IU.TP2~ 0 0 // SoD to BG2:EE Item upgrade by Daeros_Trollkillerv2.0.5 00001: ~MIH_EQ/SETUP-MIH_EQ.TP2~ 0 0 // Revised Corporal Undeadv5.1 00002: ~D5_RANDOM_TWEAKS/D5_RANDOM_TWEAKS.TP2~ 0 1152 // Improve Faerie Fire1.6 00003: ~D5_RANDOM_TWEAKS/D5_RANDOM_TWEAKS.TP2~ 0 1202 // Make Barkskin Block One Attack Each Round1.6 00004: ~STRATAGEMS/SETUP-STRATAGEMS.TP2~ 0 5900 // Initialise AI components (required for all tactical and AI components)34.3 00005: /* acted upon in an undefined manner */ ~GENERALIZED_BIFFING/GENERALIZED_BIFFING.TP2~ 0 1 // Generalized BiffingBiff all files (recommended by the Big World Dudes)v2.6 Mods affecting SPPR100.SPL: 00000: /* created or unbiffed */ ~EET/EET.TP2~ 0 0 // EET core (resource importation)V13.4 00001: ~ASCENSION/ASCENSION.TP2~ 0 0 // Rewritten Final Chapter of Throne of Bhaal2.0.26 00002: ~D5_RANDOM_TWEAKS/D5_RANDOM_TWEAKS.TP2~ 0 1202 // Make Barkskin Block One Attack Each Round1.6 00003: ~STRATAGEMS/SETUP-STRATAGEMS.TP2~ 0 5900 // Initialise AI components (required for all tactical and AI components)34.3 00004: /* acted upon in an undefined manner */ ~GENERALIZED_BIFFING/GENERALIZED_BIFFING.TP2~ 0 1 // Generalized BiffingBiff all files (recommended by the Big World Dudes)v2.6 Dancing Lights: same as above, StringRef needs +200k Mods affecting SPWI226.SPL: 00000: /* created or unbiffed */ ~SOD2BG2_IU/SOD2BG2_IU.TP2~ 0 0 // SoD to BG2:EE Item upgrade by Daeros_Trollkillerv2.0.5 00001: /* acted upon in an undefined manner */ ~GENERALIZED_BIFFING/GENERALIZED_BIFFING.TP2~ 0 1 // Generalized BiffingBiff all files (recommended by the Big World Dudes)v2.6 same as above, this is a "triplicate" Mods affecting SPWI121.SPL: 00000: /* created or unbiffed */ ~SOD2BG2_IU/SOD2BG2_IU.TP2~ 0 0 // SoD to BG2:EE Item upgrade by Daeros_Trollkillerv2.0.5 00001: /* acted upon in an undefined manner */ ~GENERALIZED_BIFFING/GENERALIZED_BIFFING.TP2~ 0 1 // Generalized BiffingBiff all files (recommended by the Big World Dudes)v2.6 Mods affecting SPWI100.SPL: 00000: /* created or unbiffed */ ~EET/EET.TP2~ 0 0 // EET core (resource importation)V13.4 00001: /* acted upon in an undefined manner */ ~GENERALIZED_BIFFING/GENERALIZED_BIFFING.TP2~ 0 1 // Generalized BiffingBiff all files (recommended by the Big World Dudes)v2.6 Darkness, 15' Radius: same as above, StringRef needs +200k Mods affecting SPWI328.SPL: 00000: /* created or unbiffed */ ~SOD2BG2_IU/SOD2BG2_IU.TP2~ 0 0 // SoD to BG2:EE Item upgrade by Daeros_Trollkillerv2.0.5 00001: ~STRATAGEMS/SETUP-STRATAGEMS.TP2~ 0 5900 // Initialise AI components (required for all tactical and AI components)34.3 00002: /* acted upon in an undefined manner */ ~GENERALIZED_BIFFING/GENERALIZED_BIFFING.TP2~ 0 1 // Generalized BiffingBiff all files (recommended by the Big World Dudes)v2.6 same as above, this is a "triplicate" Mods affecting SPWI227.SPL: 00000: /* created or unbiffed */ ~SOD2BG2_IU/SOD2BG2_IU.TP2~ 0 0 // SoD to BG2:EE Item upgrade by Daeros_Trollkillerv2.0.5 00001: ~STRATAGEMS/SETUP-STRATAGEMS.TP2~ 0 5900 // Initialise AI components (required for all tactical and AI components)34.3 00002: /* acted upon in an undefined manner */ ~GENERALIZED_BIFFING/GENERALIZED_BIFFING.TP2~ 0 1 // Generalized BiffingBiff all files (recommended by the Big World Dudes)v2.6. Mods affecting SPWI200.SPL: 00000: /* created or unbiffed */ ~EET/EET.TP2~ 0 0 // EET core (resource importation)V13.4 00001: ~STRATAGEMS/SETUP-STRATAGEMS.TP2~ 0 5900 // Initialise AI components (required for all tactical and AI components)34.3 00002: /* acted upon in an undefined manner */ ~GENERALIZED_BIFFING/GENERALIZED_BIFFING.TP2~ 0 1 // Generalized BiffingBiff all files (recommended by the Big World Dudes)v2.6 (reported) Edited November 1, 2023 by Lurker Quote Link to comment
Graion Dilach Posted November 1, 2023 Share Posted November 1, 2023 (edited) Regarding Faerie Fire, that's actually more complex and the responsibility isn't that clean cut. Faerie Fire is a Beamdog SoD spell. It is SPPR116 in SoD, but it isn't exposed to the player. EET, trying to be friendly to modders here tries to free up that locked spellslot and moves it from 116 to 100. SoD2BG2IU sees that it was moved and attempts to move it back via relying on a broken weidu ADD_SPELL workaround - literally installing a level 2 variant first then installing a level 1 variant afterwards immedaitely, so taht the level 2 overwrites SPPR100 in spell.ids and the level 1 variant overwrites the resulting sppr2XX. It's basically one solution trying to be too nice for his own good and another on top of this being an absolute hulabaloo. Fun fact - EET only moves out Faerie Fire (alongside Darkness 15" Radius and Dancing Lights, the other two SoD-specific spells) from the available-from-player slots, if it doesn't detect the spells already existing in BG2EE. So, because EE Fixpack adds the three spells in a disabled copied form from SoD to BG(2)EE, EET won't even move it out when the game's fixpacked, and SoD2BG2 IU could only need to resort to enabling the spells in HIDESPL.2da. Other mods also add Faerie Fire back (DSotSC-Trilogy, SR to name a few). None of them does this though. DSotSC-Trilogy only handles HIDESPL.2DA on EET, because I assumed EE Fixpack will be already rolled out by now and I wanted to simplify my code here (the DSotSC-Trilogy spell components assume that if a spell they'd add is already added. then the existing spell should be kept and it shouldn't overwrite). SR probably does a full rewrite but skips the level 2 spell addition. So that above hulabaloo is dedicated to SoD2BG2 IU on EET pretty much. Edited November 1, 2023 by Graion Dilach Quote Link to comment
Lurker Posted November 1, 2023 Author Share Posted November 1, 2023 (edited) @Graion DilachThe wizard spells I discovered more as a by-product. From what I can tell, the "helper spells" aren't exposed to sorcerers. But the broken Faerie Fire shows up in the cleric spell selection. My other gripe is the missing feature that the spells from SOD2BG2_IU aren't optional, but part of the main component. Other's users have also already expressed their wish for better modularity regarding this mod. And the current content offered by this mod has clearly passed the initial scope it was originally intended for. Edited November 1, 2023 by Lurker Quote Link to comment
Lurker Posted November 1, 2023 Author Share Posted November 1, 2023 (edited) Some mod modifies the names of some existing wizard spells, by adding a prefix, without checking of the original string. I'm vaguely suspecting MIH_SP. (EDIT: Yep.) Symbul's Spell Sequencer Symbul's Spell Trigger Alustriel's Improved Mantle Sylune's Absolute Immunity And since I reused my dialog.tlk, this is the first time that I get bitten by modified-instead-of-added-strings: Symbul's Symbul's Spell Sequencer Symbul's Symbul's Spell Trigger Alustriel's Alustriel's Improved Mantle Sylune's Sylune's Absolute Immunity Edited November 1, 2023 by Lurker Quote Link to comment
subtledoctor Posted November 1, 2023 Share Posted November 1, 2023 I’m sympathetic to the idea that SoD2BG2IU (god that’s a mouthful) uses those spells for its items, and so wants them in the game. But I don’t see why it needs to put them in limited player-accessible slots. That could certainly be an optional component. And I don’t get using a 2nd-level slot to try to fix a 1st-level spell. 8 minutes ago, Lurker said: Some mod modifies the names of some existing wizard spells, by adding a prefix, without checking of the original string. I'm vaguely suspecting MIH_SP. Symbul's Spell Sequencer Symbul's Spell Trigger Alustriel's Improved Mantle My guess would be either MiH or SoDBG2IU. Changing the string instead of just renaming the spell is an odd choice. Quote Link to comment
Lurker Posted November 1, 2023 Author Share Posted November 1, 2023 (edited) Can this be traced somehow? I did a recursive grep for those prefixes on all tra, tp2 and tpa files, but the only partial match is "Symbul's Spell Matrix" from MIH_SP. I guess weidu --change-log is of not much help here? EDIT: Found the prefixes in "mih_[is]p/shared/lore/tables/spell_devs.2da" thanks to hints from @Graion Dilach's comment below. Edited November 1, 2023 by Lurker Quote Link to comment
Graion Dilach Posted November 1, 2023 Share Posted November 1, 2023 (edited) The prefixes are part of MiH's implementing P&P aspects - that's how the spells are called there exactly. 9 minutes ago, subtledoctor said: Changing the string instead of just renaming the spell is an odd choice. Quote If Spell.ids already contains a spell named idsName, but of of different type and/or level than the one you’re adding, then the current reference is removed from spell.ids, and then the action proceeds as usual. In this case, if there is the ON_DISABLE section, the patches declared there will be applied to the older spell. That's supposed to be the trick behind the idea. Edited November 1, 2023 by Graion Dilach Quote Link to comment
subtledoctor Posted November 1, 2023 Share Posted November 1, 2023 13 minutes ago, Lurker said: Can this be traced somehow? I did a recursive grep for those prefixes on all tra, tp2 and tpa files, but the only partial match is "Symbul's Spell Matrix" from MIH_SP. I guess weidu --change-log is of not much help here? Given how small the result is, I’m not sure what the point would be. Might as well just manually fix things in NI. Or alternatively, if this is an install method you plan to repeat, might be a good idea to create your own personal hotfix mod. I’ve got one and it gets stuff added to it every time I do an install. But it installs more easily than manual changes in NI, and prevents duplication of effort every time I make a new game. Quote Link to comment
Lurker Posted November 1, 2023 Author Share Posted November 1, 2023 What's up with "Impervious Sanctity of Mind"? I can remove a truckload of buffs from my cleric with a quick combination of Spellstrikes and Breach, cast by a sorcerer, but the same spells, coming from an item, just result in "Spell Ineffective", while the same combo strips a fully buffed (including SI:Abjuration and Spell Trap) mage naked in seconds. "Impervious" is a bit too literal? Quote Link to comment
subtledoctor Posted November 1, 2023 Share Posted November 1, 2023 (edited) 39 minutes ago, Lurker said: What's up with "Impervious Sanctity of Mind"? I think SCS has ISoM cast a Spell Shield on you as a secondary effect. So you would need two Spellstrikes, or a Spell Thrust/Spellstrike/Breach sequence. EDIT - also, I constantly see people recommend you have SI:Abjuration up as a defense, but I’m not sure it does much? Opcode 204 does not block magic attacks, and SI:Abj is a spell protection, so it will be wiped away along with any other spell protections… I guess it blocks Breach? And Dispel? So it is another layer between you and Breach, requiring an extra Spell Thrust to remove? Edited November 1, 2023 by subtledoctor Quote Link to comment
Lurker Posted November 1, 2023 Author Share Posted November 1, 2023 (edited) 22 minutes ago, subtledoctor said: I think SCS has ISoM cast a Spell Shield on you as a secondary effect. That's why I wrote 1 hour ago, Lurker said: I can remove a truckload of buffs from my cleric with a quick combination of Spellstrikes and Breach, cast by a sorcerer, but the problem is that 1 hour ago, Lurker said: the same spells, coming from an item, just result in "Spell Ineffective", while the same combo strips a fully buffed (including SI:Abjuration and Spell Trap) mage naked in seconds. I could unload 99 Spellstrikes, Ruby Rays and Breaches, as long as the origin is "item", nothing gets removed from a cleric with active ISoM: 1 hour ago, Lurker said: "Spell Ineffective" EDIT: Partial item description, generated by AutoDescription: Charge ability (3x per day): - Remove Magic (as a level 30 spellcaster) - Breach (as a level 30 spellcaster) - Spellstrike (as a level 30 spellcaster) - Khelben's Warding Whip (as a level 30 spellcaster) - Breach (instant) (as a level 30 spellcaster) - Spellstrike (instant) (as a level 30 spellcaster) Mages cry, clerics with active ISoM shrug. Edited November 1, 2023 by Lurker Quote Link to comment
morpheus562 Posted November 1, 2023 Share Posted November 1, 2023 44 minutes ago, subtledoctor said: EDIT - also, I constantly see people recommend you have SI:Abjuration up as a defense, but I’m not sure it does much? Opcode 204 does not block magic attacks, and SI:Abj is a spell protection, so it will be wiped away along with any other spell protections… I guess it blocks Breach? And Dispel? So it is another layer between you and Breach, requiring an extra Spell Thrust to remove? In non-SCS SI:Abjuration does nothing to block Breach and can be safely ignored. SCS requires SI:Abjuration to be taken down with a spell remover prior to a Breach. It is also helpful as you mention for when the enemy throws remove/dispel magics at the party which seems to be the more likely occurance. Quote Link to comment
subtledoctor Posted November 1, 2023 Share Posted November 1, 2023 (edited) 1 hour ago, Lurker said: could unload 99 Spellstrikes, Ruby Rays and Breaches, as long as the origin is "item", nothing gets removed from a cleric with active ISoM It is of course possible that the SCS implementation is buggy, or was affected by some other mod. ISoM casts DW#ISSS so you could look that up and see if it works the same way the actual Spell Shield does. 1 hour ago, Lurker said: Partial item description, generated by AutoDescription: Charge ability (3x per day): - Remove Magic (as a level 30 spellcaster) - Breach (as a level 30 spellcaster) - Spellstrike (as a level 30 spellcaster) - Khelben's Warding Whip (as a level 30 spellcaster) - Breach (instant) (as a level 30 spellcaster) - Spellstrike (instant) (as a level 30 spellcaster) What item is this? It doesn’t look like any that I am aware of. Do the item headers have the proper sectypes set? (Effects simulating magic attacks should be MAGICATTACK, effects simulating Breach should be BREACH, etc.) Maybe something is going on where the effects of the item are being treated similar to beholder rays, and all fizzle against the Spell Shield? If you want to work around this and just play your game, you could 1) set ISoM to actually cast SPWI519 instead of DW#ISSS, and/or 2) set that wand to use op146 to cast the relevant spells (Breach, Khelben’s, etc.) instead of simulating them by item effects. FWIW I find that magic attack system to be maddening… SCS makes it a little better, SR makes it a lot better, but even with those I still felt a need to tune it down. Edited November 1, 2023 by subtledoctor Quote Link to comment
Lurker Posted November 1, 2023 Author Share Posted November 1, 2023 (edited) 16 hours ago, subtledoctor said: 17 hours ago, Lurker said: Partial item description, generated by AutoDescription: Charge ability (3x per day): - Remove Magic (as a level 30 spellcaster) - Breach (as a level 30 spellcaster) - Spellstrike (as a level 30 spellcaster) - Khelben's Warding Whip (as a level 30 spellcaster) - Breach (instant) (as a level 30 spellcaster) - Spellstrike (instant) (as a level 30 spellcaster) What item is this? It doesn’t look like any that I am aware of. Carsomyr +6. I was just playing around a bit... Since the dispel on hit doesn't work vs. PfMW, and the ability to cast Dispel Magic at level 15 / 3 times per day is even more useless, I wanted to see what happens when I put a bit more oomph in that usable ability slot. That this doesn't work against ISoM isn't even problem; without SCS AI, I never noticed clerics to even cast ISoM. And against PfMW, it works more than fine. Edited November 2, 2023 by Lurker Quote Link to comment
Lurker Posted November 2, 2023 Author Share Posted November 2, 2023 (edited) SOD2BG2_IU : Foebane +5 (SW1H63.ITM): Larloch's Minor Drain not working anymore SOD2BG2_IU replaces SPIN104A.SPL in "Item ability 0" (there is only one) with DTKFBANE.SPL, but this resource doesn't exist. Mods affecting SW1H63.ITM: 00000: /* created or unbiffed */ ~UB/SETUP-UB.TP2~ 0 20 // Extended ToB Item Descriptionsv28 00001: ~SOD2BG2_IU/SOD2BG2_IU.TP2~ 0 31 // Cosmetic Enhancements for Existing Items (does not affect function)v2.0.5 00002: ~D5_RANDOM_TWEAKS/D5_RANDOM_TWEAKS.TP2~ 0 2708 // Change Mantle into 'Iron Skin'1.6 00003: ~SKILLS-AND-ABILITIES/SKILLS-AND-ABILITIES.TP2~ 0 312 // Overhaul Proficiency System - Add New Proficiencies and Weapon StylesAccelerated Proficiency Progressionv2.0 00004: /* acted upon in an undefined manner */ ~GENERALIZED_BIFFING/GENERALIZED_BIFFING.TP2~ 0 1 // Generalized BiffingBiff all files (recommended by the Big World Dudes)v2.6 00005: /* created or unbiffed */ ~AUTODESCRIPTION/AUTODESCRIPTION.TP2~ 1 10 // Standardize item descriptions0.9.30 (reported) Edited November 2, 2023 by Lurker Quote Link to comment
Recommended Posts
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.