Jump to content

Sword Coast Stratagems v34 (edit: 34.3) now available


Recommended Posts

To add to the above, now that I’ve finally used the spell in the same playthrough, Project Image clones also get all HLAs, against expectations.

In addition, when using PI, the original caster is not selectable or directly controllable as expected, but still seem to be reacting as per their AI script. Example: Imoen casts PI. Original Imoen cannot be given commands and clone can be. Enemy comes into sight range of original Imoen. Original Imoen walks to enemy and starts attacking with melee weapon as per AI script settings. As long as clone exists, original Imoen still cannot be directly controlled so this cannot be prevented manually. Does not happen if party AI is turned off.

Not clear that this is an SCS problem, but I am using the SCS Ease of Use AI so flagging it in case it is related.

Link to comment

With PI active, the original character is considered helpless; attacks auto-hit them, though taking damage will break the spell and end the condition. This can be downright suicidal in certain circumstances; if you cast PI while you have Stoneskin protection and then meet an SCS illithid, that very smart enemy will notice the presence of a helpless party member (even if they're several screens away), teleport over, and start attacking the helpless victim. A round later, you've been hit four times for zero physical damage and 20 Int drain. Sorry, you're dead now.

I've only noticed the clone acting on its own once, though it was a rather wild moment. While taking on the (Insane difficulty) forces of Ust Natha in my "Kill It With Fire" run, I set up with a defensive line on the innkeeper's platform in the tavern. My Dragon Disciple protagonist stayed up there and sent clones down to cast Incendiary Clouds and Dragon's Breaths and Planetars (which then cast Fire Storms) and Wishes. Then, about halfway through the marathon battle, the original decided to come down the stairs and attack with his Firetooth dagger. I think his target was a magical sword.

It didn't turn out to be fatal. I got control back, sent him back home, and continued the battle. One hundred enemies killed with fire that we got credit for, plus nine enemies killed by "friendly" fire from their archmage and their Balor and six uncredited kills from lingering Incendiary Clouds after an image got popped. And some enemies killed by non-fire means.

This clone thing is ... not an SCS problem. SCS doesn't actually change how either the clone spells or the player combat scripts work. Why does a helpless character take actions? I don't know. Though I'm pretty sure you could stop it by adding a "if helpless, do nothing" block to the start of all the combat scripts for PCs and recruitable NPCs.

Link to comment

Right - I accept this might not be an SCS problem at all, but I believe you are incorrect when you say SCS does not change clone spells or combat scripts. I'm only a dabbler with the game files and modding tools, but in the TPA file for the Make HLAs Innate component there is a block that touches Project Image and Simulacrum:

         ACTION_FOR_EACH copy_spell IN projimag simualcr BEGIN
            ACTION_IF FILE_EXISTS_IN_GAME "%copy_spell%.spl" BEGIN
               COPY_EXISTING "%copy_spell%.spl" override
                   LPF ADD_SPELL_EFFECT INT_VAR opcode=172 target=1 timing=1 STR_VAR resource="%resref_new%" END
               BUT_ONLY
            END
         END

Referring to  https://gibberlings3.github.io/iesdp/opcodes/bgee.htm#op172 - this appears to be a loop intended to update both spells so that the clone will not receive HLA spells by removing them from the spellbook, as per the documentation I highlighted in my earliest post. But it has not worked on my current install - and if it is not functioning it could be having unexpected side-effects on those spells, but that's based on the idea that any code that is not performing its intended purpose without reporting errors is possibly doing something else unintended rather than any knowledge of how the game/mod tools would work in this scenario. Maybe I'm in the "a little knowledge is a dangerous thing" zone on this one though and barking up the wrong tree.

As for player combat scripts - I know even less about how these work, but I am using the SCS Ease-of-Use AI for all my characters, which I assume does affect my party combat scripts - unless we're talking about 2 entirely different things here?

Anyway, I tried some more rigorous testing of PI behaviour and made some observations:

  1. This does not occur every time - sometimes the original character will not display this behaviour. Can't pinpoint what makes it occur
  2. Does not occur when party AI is turned off
  3. Does not occur if I switch to other scripts with auto-attack (e.g. the Standard Attack script), although with the trigger being erratic this is not conclusive.
  4. If the original is attacked, hits are not automatic and enemies will definitely miss, and the clone will only disappear if the original takes damage (so a successful hit taking out a stoneskin won't dispel the clone - can't remember if this is vanilla behaviour or not, maybe not based on the mind flayer int drain behaviour you describe). This seems to be one of the more reliable ways of triggering the original AI behaviour - if attacked directly the original seems more likely to respond by fighting back, but not always.
  5. Seems to follow AI rules (e.g. if under some sort of invisibility the original seems to not want to break that so won't start attacking, won't target creatures that are imossible to damage such as those under Prot from Magic Weapons).

Again, I could be wrong, it just looks like SCS is at least a factor to me. If there's any information that would be useful to test this, or help find the real cause, I'd be happy to investigate and provide.

Edited by Labyrinthitis
Link to comment
On 9/17/2022 at 3:09 AM, Labyrinthitis said:

when using PI, the original caster is not selectable or directly controllable as expected, but still seem to be reacting as per their AI script.

My best wild guess with almost zero information and without looking at the game files: PI applies a Hold effect (probably Hold2) to disable the caster, but you used one of the “more free free action” mods which was overzealous and so your Ring of Free Action protected you from all Hold effects, even the times when you are really supposed to stay Held. 

Link to comment

I doubt it's any sort of Free Action variant. From my example ... minimal changes to the spell system, just SCS itself really. And no changes to Free Action, plus I wasn't using it anyway. Checking the portrait icons I had from that incident - Chaotic Commands, Death Ward, Stoneskin, Improved Haste. Also, I didn't use the "ease of use AI" component - that component alters the player combat script bddefai and assigns it to all companions as well. All scripts using bddefai (standard and advanced) or the equivalent ally scripts like bdimoenc would be affected. The script I was using was "Advanced" with auto-attacks on and ranged weapons preferred - nothing very complicated.

I also definitely remember hits happening against the original without any attack rolls involved, but I've checked the pictures from that run and I don't seem to have any screenshot evidence of that. The Stoneskin behavior I reported - stoneskins absorbing damage but still taking the non-damage effects of the hit and not breaking the clone - is perfectly consistent with what you observed.

Then again, that's all from 2.5. Patch 2.6 definitely changed some things around clone spells, and I haven't installed SCS in 2.6 just yet. So I'll just do a vanilla test ... create two characters new in ToB. Dragon Disciple "Bag" casts Stoneskin and then Project Image. Monk "Punchy" starts attacking - eight swings, no attack rolls, Stoneskin down. The ninth swing has no attack roll, deals damage, and breaks the image. The tenth swing has an attack roll (19) and hits normally.

Checking the IESDP ... opcodes 236 and 237 are the key here. Opcode 236 (creating a clone) applies opcode 237 to the original, which in the case of "Project Image" mode maintains STATE_HELPLESS. And if the original is hit for damage of any type, the clone is banished to end the effect. Okay, this part is all vanilla behavior.

---------

That code snippet you posted definitely implies intent to remove HLA spells on the part of SCS. But it's not happening properly. Looking at more of that tpa ...

COPY_EXISTING "%resref%.spl" "override/%new_resref%.spl"

I think I found the problem. %resref_new% is undefined, and the variable that block needs to create the proper effect is %new_resref%.

Link to comment
6 hours ago, jmerry said:

Checking the IESDP ... opcodes 236 and 237 are the key here. Opcode 236 (creating a clone) applies opcode 237 to the original, which in the case of "Project Image" mode maintains STATE_HELPLESS.

...

Then again, that's all from 2.5. Patch 2.6 definitely changed some things around clone spells,

Ah yes, I see it now.  So some scripts seem capable of overriding the op237 helplessness. I think I recall that the 2.5 patch included some major upgrades to player scripts; maybe Beamdog tried to get too fancy and somehow made their new scripts capable of attacking even when helpless.

Feh, just one more reason PI is stupid and I mod it right out of the game.

On 9/17/2022 at 11:48 PM, jmerry said:

This can be downright suicidal in certain circumstances; if you cast PI while you have Stoneskin protection and then meet an SCS illithid, that very smart enemy will notice the presence of a helpless party member (even if they're several screens away), teleport over, and start attacking the helpless victim.

Doesn't a hit through Stoneskin count as a "hit" for contingency purposes? So it should wake up the mage?

Link to comment

I haven't knowingly installed a mod that changes free action, but its possibly a side-effect of another component. I've attached my WeiDU log in case anyone would like to take a look and see if anything jumps out as related. I don't think it's a particularly heavily modded game, it was a set of mods/components I'd hoped would work together without many issues aimed at making ToB and high-level gameplay a bit more fun since it's been a while I've played through til the end of ToB.

To be clear, neither the issue with clones getting HLAs or the PI-specific issue are game-ruining for me. I usually don't use PI, it's badly designed imo and too ripe for abuse so tbh @subtledoctor if you have a mod that just removes it I'd be interested for future use. I only used it on my current game as I wanted to test if HLA duplication was impacting both sorts of clones when I noticed Imoen displaying the behaviour. I'm more than happy to not use it for the rest of my current game, and try to have self-control around the Simulacrum HLA spells. To your question around stoneskin - in my current game, a hit that only removes a stoneskin doesn't wake up the mage or cancel the PI.

So at this point, I think I've reported the HLA as Innate bug sufficiently for investigation and fixing (assuming its not local to me), and the PI scripting issue looks less and less like its SCS-specific, or better fixed upstream by modifying PI than updating all scripts that might lead to the errant behaviour, but I am more than happy to provide more information and run tests in my current game if it would help identify/fix any problems. In the meantime, thank you both @jmerry and @subtledoctor for your help and insight.

WeiDU.log

Link to comment
3 hours ago, Labyrinthitis said:

if you have a mod that just removes it I'd be interested for future use.

Component 13 of Tome & Blood changes various Illusion spells. Shadow Door turns into the old Mislead, but without the cheesy uber-invisibility; the  6th- through 8th-level clone spells re changed into variations of Simulacrum, in which the clones get progressively more powerful and the caster gets turned invisible. And Illusionists get a 9th-level version of Simulacrum that can be cast on others (like your party tank... or a dragon... or a planetar...) Also these simulacra can cast any spells you memorized that morning, regardless whether you have already cast them. So the clones are just as useful if this is the last spell you cast as if it were the first spell you cast.

As far as removing the innate HLAs: it seems that jmerry identified a bug in SCS, which will need to be fixed. I don't know if there is a reasonably easy way to remove the innate HLAs in a game-in-progress. If you want to do it manually, I can tell you how: open PROJIMAG.SPL in Near Infinity, and inside the main ability header add opcode 172 effects with timing mode 1 to it, with the filename of an HLA spell (SPWI925 et al.) in the resource field. Add one such op172 effect for each HLA to be removed. (There already is an op172 effect there, for the Pocket Plane spell - you can right-click and copy it, then right- click and paste, and change the resource in the new effect to an HLA. Repeat this for each HLA.)

If Simulacrum has the same problem, then you can highlight all your new op172 effects you made, right-click and copy the bunch, and then go into SIMULACR.SPL and right-click and paste them inside its ability header.

Link to comment
10 hours ago, subtledoctor said:

Doesn't a hit through Stoneskin count as a "hit" for contingency purposes? So it should wake up the mage?

What op237 actually cares about is damage, not "being hit". If that's a hit with some added elemental damage, dealing damage through the stoneskin, it will end the clone spell and wake up the mage. If it's a hit with an added non-damage effect such as an illithid attack, it won't wake the mage.

Normally, helplessness is a secondary effect of some other condition like Hold or Sleep or Stun which prevents action. The op237 version isn't; it may be the only case of that in the game. So it may just be an oversight in the scripts and the code; there's nothing stopping the "helpless" original caster from acting, so it does.

Link to comment
Guest Diogenes

Hi all!

It's great to see such continuous love and work for this wonderful game! Thank you DavidW, all those who help you, and all those who love BG - the best game I've ever played!

I got BG 1&2 EE v 2.6.6 recently and started playing again after many years (surely more than 10). So I remember very few things about the game. I'm not even sure if I had played more than once through BG 1&2. I know I had started it a 2nd time with some mods installed (but not SCS) but I don't remember if I had finished a full 2nd playthrough. And I'm not even sure if I have played ToB even once (probably yes, but I really don't remember now, lol) Now I've reached chapter 5, but haven't gone into Baldur's Gate city yet. It's a great experience :)But the game felt pretty easy so far, and I was wondering why even Garrick hasn't failed to learn a spell even once... I just realised that I was playing on Normal difficulty, duh! I intended to play on Core, cause I'm not very confident about harder settings.

Anyway, I went through some forums regarding BG and I frequently came across posts/recommendations about SCS, the name of the mod even rang a bell, so I decided to install it. I want to make a fresh start, but haven't decided what class to play this time. So I haven't even started an SCS-run yet, but I have some questions already.

1) Having said all that, do you think I can handle SCS on Tactical? Or maybe I should play on Improved? I know I can fine-tune specific components' difficulty, maybe I'll do that. Well, maybe I just have to test it myself and decide, but I don't like running the same things over and over, so maybe some of you could help me with that. (I consider myself kinda good BG player, I enjoy playing slowly and strategically, but I'm not very fond of min-maxing and meta-gaming.)

2) On a more technical note, I installed most of the components, and in the end it said that everything was installed succesfully, except of the first one, arcane IWD spells (I haven't played IWD, btw), which said "Installed with a warning" (or something like that). Is it safe to start a new campaign, or could something go wrong? Maybe I should try re-installing this component?

3) I have a lot of space now on two hard drives, so I decided to make a 2nd installation of BG:EE with SCS on the other drive where I don't have BG:EE (in case something went wrong, you never know..) But I noticed that the new BG:EE+SCS game can see my previous saves from the non-SCS game on the other drive. Is this normal? Could anything go wrong with what I did?

Link to comment

1. Maybe. SCS Tactical is a step up from vanilla Core, or even from vanilla Insane with no damage increase. Just remember that you have saves, and you can always lower the difficulty to Improved for a stretch if something is giving you too much trouble.

2. "Installed with warning(s)" means that the installation process ran into a problem, but had enough of a backup plan that it could keep going instead of failing outright. It's ... probably OK.

3. Saves, game settings, and the like are stored in the game's "home" folder, which should be named something like "Baldur's Gate - Enhanced Edition" under your Documents folder. If you only have one Documents folder between the two drives, then naturally both versions of the game will see the same list of saves. As long as you don't try to play with a save in the wrong version of the game, you'll be fine. Maybe put some kind of marker in your save names to keep track?

Incidentally, you don't need a separate drive to have multiple instances of these games installed. I have (for mod-making reasons) three versions of BGEE and four versions of BG2EE all under the same "Applications" folder. At around 3 gigs each, it just isn't that big an investment to clone the game.

Link to comment

I found that if I edit the file engine.lua in the game directory,  changing the value of

Quote

engine_name

The game changes the location of the saves.

Actually, I didn't find it by myself, i just experimented after I saw EET managed to have a distinct save (and others) directory.

I don't know if it's always applicable, I'm under linux, maybe that's OS dependent?

Link to comment
Guest Diogenes
1 hour ago, jmerry said:

1. Maybe. SCS Tactical is a step up from vanilla Core, or even from vanilla Insane with no damage increase. Just remember that you have saves, and you can always lower the difficulty to Improved for a stretch if something is giving you too much trouble.

2. "Installed with warning(s)" means that the installation process ran into a problem, but had enough of a backup plan that it could keep going instead of failing outright. It's ... probably OK.

3. Saves, game settings, and the like are stored in the game's "home" folder, which should be named something like "Baldur's Gate - Enhanced Edition" under your Documents folder. If you only have one Documents folder between the two drives, then naturally both versions of the game will see the same list of saves. As long as you don't try to play with a save in the wrong version of the game, you'll be fine. Maybe put some kind of marker in your save names to keep track?

Incidentally, you don't need a separate drive to have multiple instances of these games installed. I have (for mod-making reasons) three versions of BGEE and four versions of BG2EE all under the same "Applications" folder. At around 3 gigs each, it just isn't that big an investment to clone the game.

Thank you very much for the answers!

1. I guess I'll find out and adjust accordingly

2. Maybe it's better to try installing this component again? Can I run the installer again and tell it to only install this one (arcane IWD spells) "on top" of the 1st SCS install, or should I first unistall the whole mod and install from the beginning if I choose to re-install it?

3. Oh, I see, yeah I have one Documents folder only. It will be easy to distinguish my saves, the marker(s) will be the different name(s) of my character(s) between the modded and unmodded game(s).

4. Well, I made the 2nd in another drive just to keep them even more separate (just because I could) - I didn't know that they would share the same folder for saves etc, though 😛 

 

21 minutes ago, mickabouille said:

I found that if I edit the file engine.lua in the game directory,  changing the value of engine_name

The game changes the location of the saves.

Actually, I didn't find it by myself, i just experimented after I saw EET managed to have a distinct save (and others) directory.

I don't know if it's always applicable, I'm under linux, maybe that's OS dependent?

Thank you, too!

I don't want to fiddle with editing files atm, it seems OK as it is now, but it's good to know. Maybe someone else will make use of your info.

Cheers!

Link to comment
Guest Diogenes
2 hours ago, jmerry said:

3. Saves, game settings, and the like are stored in the game's "home" folder, which should be named something like "Baldur's Gate - Enhanced Edition" under your Documents folder. If you only have one Documents folder between the two drives, then naturally both versions of the game will see the same list of saves. As long as you don't try to play with a save in the wrong version of the game, you'll be fine. Maybe put some kind of marker in your save names to keep track?

Oh, wait a minute... Couldn't there be a conflict if the modded and unmodded game share the same folder to store the settings? I can see only one file there that might do that (store settings), "Baldur.lua", which shows it was created probably when I made the modded installation. Or am I mistaken and the settings are stored within the saves?

[To the moderator(s) : Feel free to merge this post with my previous one if you feel it's better <-- and to delete this line here if you like]

Link to comment

Difficulty level is stored in the save as the global difficulty GAMEDIFFICULTY (integer-valued, so when SCS assigns new names to each difficulty that isn't a problem). Party formations are stored in the save too, as integers. Most other game settings aren't stored in the saves, and are in baldur.lua.

On reinstalling a particular component - the way WeiDU handles things, it rolls back to a state from before that component was installed, then proceeds forward. Reinstall that component, then reinstall what comes after. The IWD spells components affect later parts of the mod like enemy spellcaster scripting, so you'll have to reinstall most of SCS if you go this route.

Link to comment
Guest
This topic is now closed to further replies.
×
×
  • Create New...