Jump to content

subtledoctor

Modders
  • Posts

    8,949
  • Joined

  • Last visited

Everything posted by subtledoctor

  1. This spell from IWD has a long casting time and a wide tunnel-shaped AoE and with everyone moving during combat it is easy to either miss your enemies or hit your party members. I want to make it a party-friendly effect, which is not too crazy given its power and spell level. But, I don't know how. I don't see anything in its projectile that I can change. What if I just set all its effects to 5 (everyone except party) instead of 2 (pre-set target)? Will that still be limited to people who are hit by the projectile?
  2. Yeah this is probably one of those times when EEKeeper is easier than a mod.
  3. Might be possible with a bunch of XP-related scripting, but not sure how reliable the end result would be. (Look at all of the issues SCS v33 faced with its XP scripts, and that was made by one of the most technically proficient modders around here.) All for a relatively limited benefit. Plus, it would arguably undermine the whole point of the 2E dual-class mechanism, which is that you must start from level 1 the moment you decide to take on a new class. You're supposed to be at a disadvantage for a while, as you work to catch up. With 499,000 XP in your example, you would be able to dual-class and add 249,000 to your new class, leveling up ~10 levels in an instant. if you want some interesting multi/dual-class mod possibilities, bother Beamdoog to add a script action or opcode to modify creatures' OriginalClass values... I've been asking them for that for 8 years and they haven't done it yet.
  4. I've been using IWD to test the development of some stuff recently, specifically the HoW campaign start option, for several reasons: my IWDEE happened to be mod-free at the moment can easily make a party of six to test effects of mod on various classes/kits don't need to deal with the Chateau Irenicus game start (cut-scene, talking to Imoen, etc.) starting at mid-level tests the immediate jump in levels during character generation, similar to BG2 game is at the latest v2.5.17 patch HOWEVER, some things were not working. Specifically I had a function to dynamically add certain spells to spellbooks, and I was testing it on mages, sorcerers, clerics and shamans. It wasn't working, and in frustrated me to no end because I couldn't find the error but I'm testing a mod, right? So surely the problem is with the mod? Nope, turns out if you start a HoW game, spells applied from the kit ability table with opcode 171 effects do not work. By chance, after several hours, I tried a level 1 IWDEE game start and suddenly my code was working perfectly. I don't know if it is just opcode 171, or what. The more your know...!
  5. I've looked at the tables, and they really don't have any differences until after level 25 or so. So don't expect to see much difference until TOB, if at all.
  6. Yeah, me too, it’s in my Random Tweaks mod (around line 400)
  7. That’s about what I figured. I’m not sure how it could be done well... maybe run it as a mage, set local variables for each spell level’s spell slots, decrement the value each time a spell is cast, and apply opcode 261 to restore the spell on a 10 second delay if the variable > 0. Not a big deal - I’m working on a thing to give players more flexibility in spellcasting, and it would be nice to help enemies as well. (I had the thought that if SCS handles sorcerers, I could simply change every enemy mage into a sorcerer, and let SCS handle the rest.) But even if enemies don’t get this benefit, their processes are opaque to the player so it won’t mar gameplay in a subjective sense. And the player’s advantage in flexible casting will be offset by the need to manage their resources for a whole dungeon, while every enemy caster is in a singular fight for their lives and can thus unleash their entire spellbook.
  8. Finally since I'm here thinking about a stuff and adding stuff to my Random Tweaks mod, @Bartimaeus have you had any thoughts about Spirit Ward, the shaman-only spell? It currently just seems like a worse ProEvil... desperately in need of being more useful. -2 AC vs. fey/elementals/spectral undead is awfully limited... why only spectral undead? And what do fey and elementals have to do with it (in this cosmology)? "Spirit Ward" is pretty evocative, I feel like it should be more interesting spell.
  9. @DavidNYC it occurs to me these .BAM files should really have modder prefixes if they are being copied into the game. If you don't have a reserved prefix and don't want to bother, I'm happy to use mine... your call.
  10. In my SR+SCS install, PfMW does not set this spellstate. It has 328 effects setting PRIORITY_BREACH PRIORITY_DISPEL BUFF_PRO_WEAPONS Maybe your script is not seeing any conditions valid for casting Breach; but the parts of your script checking for valid attack targets are seeing that Kahrk is protected; so they don't Breach and they don't attack either. In my BGEE install with only SCS v33, PfMW has 328 effects setting both "PROTECTION_FROM_MAGICAL_WEAPONS" and "BUFF_PRO_WEAPONS." In my BG2EE install with only SR 4b18, PfMW only sets "BUFF_PRO_WEAPONS." Good thing I looked at others, because PfNW also sets "BUFF_PRO_WEAPONS," as well as "PROTECTION_FROM_NORMAL_WEAPONS." In my completely unmodded SoD game, PfNW sets both "BUFF_PRO_WEAPONS," as well as "PROTECTION_FROM_NORMAL_WEAPONS;" PfMW only sets BUFF_PRO_WEAPONS." So it seems that the general rule is, vanilla PfMW only sets the "BUFF_PRO_WEAPONS" spellstate; SR does not change this. SCS adds the "PROTECTION_FROM_MAGICAL_WEAPONS" spellstate, but only if it does not detect SR. So the takeaway is, your script should check for a combination of CheckSpellState(LastSeenBy(Myself),BUFF_PRO_WEAPONS) !CheckSpellState(LastSeenBy(Myself),PROTECTION_FROM_NORMAL_WEAPONS) ...and then it should work across all combinations of vanilla/SR/SCS.
  11. I'm working on something that will change the way spellcasting works... but not in a scriptable way. It is only visible to players, changing the way they interact with the UI; it is useless and could be detrimental to AI enemies. Generally the way this is handled is to put abilities into the "CLAB__.2da" ability tables, because those are applied to PCs when they are created and to NPCs when they join the party. But SCS applies all CLAB abilities to all NPCs, including AI-controlled ones that fight against you. I want to protect these creatures from being affected by my changes and leave their abilities and scripts alone, since SCS already has them working pretty well. So, easy enough to distinguish joinable NPCs from non-joinable ones in Weidu and give non-joinable characters 206 protection against my CLAB ability. BUT, there are the rare cases in which a creature might be joinable, but might fight against you if they don't join you. Baeloth I think, probably Ascension Balthazar too. Maybe one or two mod-added NPCs. And I guess you can theoretically pick a fight with any joinable NPC when they are blue-circle and thereby turn them to red-circle. I know this is edge-case stuff, but can anyone think of a way to distinguish in-game between joinable and non-joinable, to make sure the changes are only applied to party members? Off the top of my head I can only think of: 1) Insert checks into BALDUR.BCS to remove the 206 protection from PLAYER1 through PLAYER6. (My mod's changes take a few seconds to kick in, so the game script should update them before it happens) 2) Pull the mod changes out of the CLAB table and into an innate ability: "Initilialize Modified Spellcasting Abilities." And have the player manually make the change when each character is created or joins the party. (This would be quite reliable, but players don't like it for breaking the 4th wall.) Any ideas?
  12. No, if SR is detected then SCS does not change player versions of the MAGICATTACK spells to target invisible characters. But IIRC enemy mages will use versions that can target invisible players. But, also IIRC, even without SR those SCS changes only affect Spell Thrust, Secret Word, Pierce Magic, etc. Not Breach. And anyway Kahrk wasn't invisible in your test (or improved invisible). So your scripts refusing to cast Breach seems to be unrelated to invisibility or improved invisibility.
  13. Agree to disagree. This is how Refinements v4 is structured right now. The biggest, uh, refinement I made to Refinements was to allow HLAs to be installed on a class-by class basis. The install procedure looks like this: Install all HLAs? [y] or [n] If [n]: Install Fighter HLAs? [y] or [n] Install Paladin HLAs? [y] or [n] Install Ranger HLAs? [y] or [n] Install Cleric HLAs? [y] or [n] Install Druid HLAs? [y] or [n] Install Wizard HLAs? [y] or [n] Install Bard HLAs? [y] or [n] Install Thief HLAs? [y] or [n] The players who just want all the Refinements HLAs have a procedure that is just as easy as it was under v3.31: press 'y' once and they are done. But the players who want more control can press 'n' and then they get several options. This is one of the benefits of immutability and encapsulation: the changes made in a mod need not be tied to this or that mod component, but can be installed by several components in combination with other changes or settings. The Refinements thing is repeated in various instances across my mods: e.g. the SoB total proficiency overhaul auto-installs proficiency category changes, but those can also be installed independently; the MnG revised archery system auto-installs the Marksman kit (a fighter-class Archer) and the Slinger kit (a halfling F/T Archer), but those can also be installed independently. Another application is Tome & Blood's "Innate Spell Sequencers:" there are four options presented as subcomponents; each subcomponent sets a single variable to a different value and then runs the same function. There are minor differences in application, like do you learn Sequencer abilities automatically or do you learn them from scrolls. But in all four options the result is the same, Sequencer spells live in the innate abilities bar and behave a certain way. If I want to check in another whether TnB has moved Sequencer spells to the innate abilities bar, I can either code a clunky check for four different-but-similar LABELS, or I can check for a single marker file. Me, I'll choose the latter option any day of the week. I don't want to check which component was installed; I want to check whether that function was run. Another thing: I have replicated TnB's "Ability-Based Bonus Spells" in SoB, a completely different mod. The components are completely identical to each other, not a single different character in the code; it is only in two different places for the sake of players' install order convenience. I cannot use LABEL for compatibility checks to see whether that code is installed, but I can use a marker file. I could go on and on. This is not to say that LABEL isn't valuable - you've convinced me of that. But the value seems to be focused on mod managers like BWS/PI, not on compatibility checks for other mods. One is not a substitute for the other... if anything, with LABELs and marker files and proper immutability/encapsulation, we could do away with DESIGNATED. But, I'll keep using that anyway for the sake of full component-order control. (Not to mention, it is already in all my mods, so removing it would be more work than keeping it. But anyone starting to mod now, using LABEL and marker files and encapsulation, could omit DESIGNATED.)
  14. Are there any in the game? If so, does SCS handle them any differently from enemy mages? As in, the main advantage of a sorcerer is their spontaneous casting. A mage might only have two Breach spells memorized, so if they cast both of them and then you cast PfMW or something, then the mage will be unable to remove your protection. Whereas a sorcerer could cast Breach again, as long as they have any 5th-level spell slots remaining. I'm curious if SCS makes use of that characteristic.
  15. Whoa. This started out as "casters don't target Improved Invisible targets when they should" (IIRC?) but I think something else entirely is going on. Here is a simple case of a mage with Shield, MI, Haste, SS, MGOI, and PfMW up. I'd have to guess it's down to either a) something about the Breach targeting conditions of the script itself, or b) something about one of those defenses, maybe a script state applied by SR or SCS or something like that. Harder to pin down now, but those six spells are what I would look at. In fact, I have ST/TnB/SCS installed in a game right now, so I can take a peek. Huh. Only thing that jumps out at me is Shield, which has an opcode 282 'Modify Script State' effect. EDIT - that 282 effect on Shield is not added by SR, though... EDIT 2 - or perhaps it's something about Kahrk in particular that is throwing the test off... man, I like m aking mods but testing stuff in this engine is super annoying. EDIT 3 - interesting, I never bothered to inspect Kahrk's .CRE file before. He wears MAGEAMUL.itm, which auto-casts MGOI, and MAGEBRAC.itm, which auto-casts a custom version of Pro Normal Missiles... I guess Beamdog's half-hearted attempt to replicate SCS-style pre-buffing. Also MAGE06.itm, which has a while-equipped Haste effect. Also his class is "ogre_mage," which I didn't know was a class. (Why not just make him a fighter/mage?) But I don't see any applied effects - at all - so nothing that would mess up the test as far as I can tell.
  16. Whoa. Which components of EET_Tweaks do you have installed?
  17. Well that's interesting. But I'm a bit confused about a couple things: 1) Why did Kahrk cast Nondetection if he was not invisible? That makes little sense... though I guess ND is a long-duration buff, so SCS is likely to have it pre-cast, and if he decides to go invisible during the fight it would be helpful. But as things stand, it is of no value. (Though, with Tome & Blood installed, Nondetection will actually protect his Mirror Images from being removed. So it's almost like SCS works better with my mod than without! ) That's nothing to do with your scripts, I just found it interesting. 2) More on-topic: you didn't mention what effects your party was under during the test. If Kahrk was totally visible, then what was stopping your casters from taking action? Like, in your second test Kahrk is not invisible, and not under Nondetection... so I don't understand what the problem is. Maybe, can I presume that you had cast True Seeing on your party? Even though Kahrk did not end up being invisible? So if you want to do a follow-up test, it would be to look at two the scripts handle a visible enemy. First, with SR True Seeing active - my assumption is, that is the test you just reported. Now, edit the True Seeing spell to remove any opcode 193 effects, and run the test again with everything else as it is now (i.e. with the opcode 69 and 282 effects removed from DWSW310.spl). If opcode 193 prevents scripted spellcasting against visible opponents... that seems important to know! Certainly something that should probably go in the IESDP.
  18. No, generally it needs to be installed before SCS, so that the changes it makes will be adopted by SCS mechanisms. Like I say though, rather than reinstall SCS, in this case you can probably just do a search in NI for spells called “nondetection” and open the ones with a “DW” prefix, and manually remove any opcode 69 effects they have.
  19. Sorry to undercut the premise of the test, but I think install order is wrong here. Tome & Blood only modifies SPWI310... not DW#310 or whatever SCS’ clone is. I’m pretty sure Kahrk casts the SCS cloned version. I think. Which means Kahrk was under the effect of opcode 69 in your test. So we still don’t know if the issue is opcode 69 or opcode 193 If TnB is installed before SCS, it will clone the modified version of SPWI310 which has the opcode 69 effect removed. Sorry I didn’t make that clear. If you still have that set up, I don’t think it needs a reinstall; just manually removing the opcode 69 effect from the DW#___ version of Nondetection will probably do the trick. EDIT - okay, you guys got there before I finished typing this...
  20. I want to strangle whoever thought it would be a good idea to have the trueclass Mage, the trueclass Sorcerer, and the Wild Mage all share a single class ability table. That is all.
  21. Neither here nor there but there are actually three invisibility-dispelling opcodes. 47 and 116 are identical, while 136 is slightly weaker. Plus you can dispel the ILLUSIONARYPROTECTION sectype with opcode 221. And for good measure, there is opcode 160 to remove Sanctuary.
  22. It's something that I've thought about for a while. At some point I went through and looked for what is dispellable but not breachable (e.g. Fire Shield, Acid Sheath, Blade Barrier) and what is breachable but not dispellable (e.g. Moment of Prescience). Those may be the only ones; I don't really remember but they are the ones that stick out in my mind. Fire Shield/Acid Sheath are an interesting case because they have characteristics of both specific protections and combat protections. Further, they plus Prismatic Shield/Blade Barrier are admittedly different from other combat protections in that they are not really "protections." More like passive offenses. But Moment of Prescience IS a traditional combat protection... OTOH I get why it shouldn't be dispellable because it is not a magical effect covering the caster, but simply knowledge in their head. Fire Shield/Acid Sheath/Blade Barrier all currently have the "OFFENSIVEDAMAGE" sectype... I don't know whether that is needed for some purpose or scripts or something. That would at least explain the weirdness. But IMHO they should all be both dispellable and breachable. TBH given Moment of Prescience's description as a divination, and given its spell level and short duration, I kind of think it should NOT be either breachable or dispellable. In a real sense there is nothing to be "breached." EDIT - in any event you can expect to see these changes added to my "SD's Random Tweaks" mod very soon. EDIT2 - @morpheus562 that may have been a typo from me copying/pasting the macro... it works fine in my mods but of course that's where I put more time into checking the syntax and testing the results... anyway good to see you've got it running.
  23. My mods will be using marker files forever, as I’ve seen nothing that can replace their functionality. But I guess I will be using marker files and LABEL and DESIGNATED. Sigh.
  24. IIRC Blade Barrier is not Breachable either. You’re just supposed to tank it or bomb from range. (I hate that too.)
×
×
  • Create New...