I actually really like the idea. I think it's not entirely breaking shamanic ethos... perhaps it's just a matter of namind the spell slightly differently? Like "Shamanic Pact" and in description add that for this "favour" shaman leads the dead to their final, neverending rest?
I agree, a name such as "Shamanic Pact" would be more suitable as it indicates a mutual agreement between the shaman and the target. In this case I could also change the spell type from Necromancy to Conjuration, and save type from death to spell. Maybe it's even possible to alter success rate based on "alignment compatibility" between shaman and target.
I was also wondering - do you know what happens if both this mod and my Will-o-wisp mod is installed? Does the mod modify mechanic and also new shamans with their different dances will be able to move, or does it modify only the main dance used by pure-class shamans?
I haven't had the chance to test Will-o-Wisp yet. I have just finished a long EET run where I tested some of my own mods. The mod is currently only updating the Shaman base class description (in clastext.2da) as well as the shamanic dance spell (spsh003.spl and spsh004.spl). This component, when finished, will also update the base class CLAB file to add the spell in the same way as vanilla shaman-specific spells are added. From what I've seen after a quick installation test the subcomponent that removes the "Ineligible for any stronghold" line will probably not work since I'm using the line from BG1EE, which is slightly different.
Looks cool, but I think there should be some kind of cost to the Shaman to forge such a link. -5 penalty to max hit points for an hour, or -2 STR, or something like that.
Well, the cost is the loss of spells, active skills, special abilities and possibly some fighting power (since creature loses all equipment on death). Originally I planned to add a small chance of the spirit going berserk or hostile. But I removed it since I couldn't solve the issue of resurrection failing when the creature is dying an exploding death. Although maybe I can make the "negotiation" part more challenging (I'm thinking about disabling the shaman for a while, similar to how mages gain control over summoned elementals).
Next attempt: The spell should be more in line with the shamanic nature.
Shamanic Pact (Conjuration)
Description: Level: 6 Range: 30 ft. Duration: Permanent Casting Time: 5 Area of Effect: 1 creature Saving Throw: Neg.
The spell attempts to negotiate a contract between the shaman and target. The negotiation takes 1d4 rounds to complete and prevents the shaman from moving or doing anything else. If the target fails their Save vs. Spell the shaman is allowed to command the spirit of the target after death for one hour. Afterwards the spirit will permanently leave the world of the living. Success of the negotiation is also influenced by the alignment compatibility between shaman and target. If both parties share the same moral alignment (good/neutral/evil) the Saving Throw is rolled with a bonus of +2, +4 and +6 starting at level 12, 16 and 20 in favor of the shaman. Opposite alignments apply a penalty of -3, -2 and -1 starting at level 12, 16 and 20 at the expense of the shaman. Adjacent alignments, such as good vs. neutral or neutral vs. evil, are neither penalized nor rewarded.
Spirits can't talk and won't be able to use any spells or special abilities from their former life. However, they will preserve their basic traits, such as primary stats and resistances. Spirits will attack with fists only. Attack power, accuracy and enchantment depend on the creature level. Undead, golems and summoned creatures are not affected by the spell. The target's Magic Resistance, if any, does not affect this spell.
I haven't tested the alignment part yet, but it shouldn't be too difficult to use opcode 326 to apply different subspells based on target alignment. It should also slightly reward evil shamans since most enemy encounters consist of evil creatures.
Imo, the helpless state during the negotiation part should be penalty enough for the shaman - especially since the outcome is all but certain.
I'm still undecided about this passage:
If both parties share the same moral alignment (good/neutral/evil) the Saving Throw is rolled with a bonus of +2, +4 and +6 starting at level 12, 16 and 20 in favor of the shaman. Opposite alignments apply a penalty of -3, -2 and -1 starting at level 12, 16 and 20 at the expense of the shaman.
Does the following line sound better?
If both parties share the same moral alignment (good/neutral/evil) the Saving Throw is rolled with a penalty of -2, -4 and -6 starting at level 12, 16 and 20. Opposite alignments apply a bonus of +3, +2 and +1 starting at level 12, 16 and 20.
Ignoring theme for a minute, that spell sounds unusable. I'm helpless for 1-4 rounds, there's no guarantee the spell is actually successful afterwards, I still have to kill the target, and even after all that all I'm gaining is a crappier version of said creature with no gear or skills?
I mean, the downside here is that I cast a 4-round "Hold Person" on myself with nothing to show for it, and the upside is a weaker version of Charm Person or Mammal, a spell I can already cast with a level 2 spell slot, (vs. level 6 for this one).
Admittedly, Shamanic Pact works on non-mammals, but this still seems like a massive bundle of downsides for not much in the way of upsides. Why would I ever cast this over just summoning a Fire Elemental? Am I missing something?
This is by no means the final version of the spell, but rather a first draft. There is certainly more than one way to simulate the negotiation part of the spell. I'm always open for suggestions.
...The negotiation process is very draining for the caster as it involves communicating with the spirit of the target. As a result the shaman will be unable to cast spells for two rounds, and strength as well as constitution will be halved for one turn...
...The negotiation process is very draining for the caster as it involves communicating with the spirit of the target. As a result the shaman will be unable to cast spells for two rounds, and strength as well as constitution will be halved for one turn...
That does sound much more palatable, though it still doesn't really answer the major question: why would I cast this instead of Fire Elemental?
Alternately, I was thinking you could disable the target for as long as you disabled the Shaman, but that'd be ripe to abuse the other way, (I'd spam it at tough targets just for the no-save stun, who cares if the other stuff worked.) Going down that route more, you could stun your target for one round and stun your Shaman for two rounds, preventing you from stunlocking anything, (unless you bring two Shamans).
No matter what, if you want the summon part on the back end to be the main point of the spell, he's going to have to be competitive with Fire Elementals in at least some way. Make them only last 1 round per level, but render them completely immune to damage and debuffs, say. Then you've got a Druidic version of Mordenk's Sword, and the choice between that and Fire Elemental becomes much more tactical. Plus any sort of downsides involved become much more palatable.
Or keep the stun effect on the Shaman, but have it behave more like Finger of Death. On a failed save, the enemy dies instantly and his spirit fights on your behalf, (you literally rip the spirit out of his body). Something like that would give the Shaman a unique power, (druid spells are long on summons, but short on save-or-else and instant death spells). Plus something like that would be relatively easy to balance, both by tweaking the amount of time the Shaman is stunned for and by tweaking what kind of save bonus/penalty the enemy gets.
Plus "literally rip the spirit from your enemy's body and compel it to fight on your behalf" sounds kind of badass.
That does sound much more palatable, though it still doesn't really answer the major question: why would I cast this instead of Fire Elemental?
I can think of a number of reasons. First, the resulting spirit from this spell isn't added to the summoning limit, nor is it automatically slain by a death spell. Second, you can "convert" (almost) any kind of creature into a controllable spirit. Since they lose only their active abilities you can still make use of their exceptional stats or resistances. Third, attack power of the spirits increases with higher shaman levels. The level 20 version of a spirit might be more powerful than a fire or earth elemental.
The issue with a frozen shaman is that the target can (and most likely will) be killed before you can finish the negotiation part. In that case you would have lost the spell and the target. Making the target freeze wouldn't always work since many creatures are immune to that kind of effect.
Making duration of the spirit version level-dependent is a good idea. I'll see how difficult it is to realize (since lifespan is currently controlled by a script).
Just to make clear, the spirit is not some generic creature that replaces the target after death. The spell literally resurrects the target, leaving most of his passive stats intact, and gives it a magical weapon and some combat-related bonuses based on shaman level (since killed creatures automatically lose all their equipment). A side effect that can't be prevented is that you can kill the spirit yourself to receive XP a second time.
The spell is actually a bunch of (chained or triggered) spells. I have uploaded the current state to the development branch of the mod on GitHub. The files in question are:
A7#SH61.SPL: Adds specific spell version to spellbook based on shaman's moral alignment (good/neutral/evil) A7#SH611.SPL: Shamanic Pact spell (good variant) A7#SH612.SPL: Shamanic Pact spell (neutral variant) A7#SH613.SPL: Shamanic Pact spell (evil variant) A7#SH61A.SPL: Used for targets of same moral alignments A7#SH61B.SPL: Used for targets of adjacent moral alignments A7#SH61C.SPL: Used for targets of opposite moral alignments A7#SH61W.SPL: Applies magic weapon and attack bonuses to spirit version of target A7#SH61X.SPL: Used for resurrecting spirit version A7#SH61Y.SPL: Applies effects and immunities to spirit
and can all be found in A7#ImprovedShamanicDance/spells/. Installation script is A7#ImprovedShamanicDance/lib/spell.tph.
Raise Dead seems to work as long as the target is valid (which is usually problematic for non-party characters). However, in my case the spell triggers resurrection immediately after death via opcode 232 (Cast on Condition: Target Dies or Died - both variants appear to be identical). The only downside I've experienced is that resurrection fails if the target dies an exploding death (all variants). Apart from that it worked reliably in all my test runs so far.
This release provides a new component that adds a new spell to the shaman spellbook: "Shamanic Pact". It allows the shaman to resurrect a target as a spirit after its death and control it for a limited amount of time. A more detailed description of the spell can be found in the first post or the readme of the mod.
The next release will contain some great improvements for the Shamanic Dance.
It will fix the remaining issues I had with the Shamanic Dance:
1st issue: External interruptions that take away control over your characters, such as Time Stop or cutscenes, will cause spirits to be unsummoned. This is a major annoyance, as big events (such as boss fights) are usually introduced by a cutscene, which will always render your preparations void. With this release spirits won't disappear anymore, even if a cutscene deactivates the "Shamanic Dance" icon in the character's toolbar, provided you quickly reactivate the dance after the interruption ended.
2nd issue: Saving and reloading will always cause spirits to disappear. This can also be annoying, since type and power of summoned spirits is determined randomly, and it can take quite some time to accumulate enough powerful spirits for the next battle. This issue was more difficult to solve, but thanks to @kjeron 's hints I was able to make it work.
I will release a beta version first, since these fixes required to make some big changes internally. I would appreciate if you could test it, preferrably in bigger mod installations, and see if you can find bugs or notice unexpected spirit behavior.
The beta also provides a new component "Apply Shamanic Dance improvements to Shaman kits", which attempts to modify the Shamanic Dance of all available Shaman kits (installed by other mods) to exhibit roughly the same behavior as the improved Shamanic Dance from this mod. It has been successfully tested with the Witchlight Shaman kit from @LavaDelVortel 's mod "Will of the Wisps". Let me know, if there are more Shaman kits available.
@argent77, if I have the Willowisp mod (Corpslight Shaman kit), Tome and Blood, and Faiths and Powers, what install order do you recommend to add this mod?
I haven't used T&B and F&P yet, but BWS recommends to install both mods before the Improved Shamanic Dance mod. Willowisp should also be installed before this mod if you want to install the the new component "Apply Shamanic Dance improvements to Shaman kits". So it's T&B first, followed by F&P, Willowisp and Improved Shamanic Dance.
@argent77 - have you checked if it works fine of IWD EE (with the patch beta)?
Not yet. I'm currently doing an unmodded speedrun to get a feeling for the changes. Testing Improved Shamanic Dance is next on my list. From what I've seen so far it should be more or less compatible already.
Short update: The mod already works for the most part with IWD:EE 2.5. There are only a few message strrefs to update. I'm also planning to add a new component that adds shaman-specific items to IWD:EE (items ported from BGEE and one or two new items).
You don't need to update the mod for such a detail.
I always announce the official releases of the mods I translate in the main French forum. So, French players are aware of the compatibility before downloading it from Github.
You don't need to update the mod for such a detail.
I always announce the official releases of the mods I translate in the main French forum. So, French players are aware of the compatibility before downloading it from Github.
It's not a big deal. I had to fix it anyway for future releases.
4. Apply Shamanic Dance improvements to Shaman kits (requires main component)
This component attempts to modify the Shamanic Dance of available Shaman kits to behave like the dance of the main class. It should be installed after all mods that are providing Shaman kits.
Since Shamanic Dance can be implemented in many different ways, it is not guaranteed that this component will always be successful.
The following Shaman kits are confirmed to be compatible:
- Witchlight Shaman (Will of the Wisps, by Lava Del'Vortel)
- Spiritwalker Shaman (by Ulb) - Dreadful Witch (I Hate Undead, by Raduziel)
I just got a report saying that the ISDancing is no longer working with the Dreadful Witch. Can I PM you so we can try to work on a solution together? I really love this mod and would like to have my kit benefit from it.
The Dreadful Witch now has several different dances, only one of them is being altered by ISDancing (great report by @Zaghoul , by the way).
Comments
I haven't had the chance to test Will-o-Wisp yet. I have just finished a long EET run where I tested some of my own mods. The mod is currently only updating the Shaman base class description (in clastext.2da) as well as the shamanic dance spell (spsh003.spl and spsh004.spl). This component, when finished, will also update the base class CLAB file to add the spell in the same way as vanilla shaman-specific spells are added. From what I've seen after a quick installation test the subcomponent that removes the "Ineligible for any stronghold" line will probably not work since I'm using the line from BG1EE, which is slightly different.
Well, the cost is the loss of spells, active skills, special abilities and possibly some fighting power (since creature loses all equipment on death). Originally I planned to add a small chance of the spirit going berserk or hostile. But I removed it since I couldn't solve the issue of resurrection failing when the creature is dying an exploding death. Although maybe I can make the "negotiation" part more challenging (I'm thinking about disabling the shaman for a while, similar to how mages gain control over summoned elementals).
The numbers aren't yet set in stone. I still have a lot of testing to do.
Imo, the helpless state during the negotiation part should be penalty enough for the shaman - especially since the outcome is all but certain.
I'm still undecided about this passage: Does the following line sound better?
I mean, the downside here is that I cast a 4-round "Hold Person" on myself with nothing to show for it, and the upside is a weaker version of Charm Person or Mammal, a spell I can already cast with a level 2 spell slot, (vs. level 6 for this one).
Admittedly, Shamanic Pact works on non-mammals, but this still seems like a massive bundle of downsides for not much in the way of upsides. Why would I ever cast this over just summoning a Fire Elemental? Am I missing something?
Alternately, I was thinking you could disable the target for as long as you disabled the Shaman, but that'd be ripe to abuse the other way, (I'd spam it at tough targets just for the no-save stun, who cares if the other stuff worked.) Going down that route more, you could stun your target for one round and stun your Shaman for two rounds, preventing you from stunlocking anything, (unless you bring two Shamans).
No matter what, if you want the summon part on the back end to be the main point of the spell, he's going to have to be competitive with Fire Elementals in at least some way. Make them only last 1 round per level, but render them completely immune to damage and debuffs, say. Then you've got a Druidic version of Mordenk's Sword, and the choice between that and Fire Elemental becomes much more tactical. Plus any sort of downsides involved become much more palatable.
Or keep the stun effect on the Shaman, but have it behave more like Finger of Death. On a failed save, the enemy dies instantly and his spirit fights on your behalf, (you literally rip the spirit out of his body). Something like that would give the Shaman a unique power, (druid spells are long on summons, but short on save-or-else and instant death spells). Plus something like that would be relatively easy to balance, both by tweaking the amount of time the Shaman is stunned for and by tweaking what kind of save bonus/penalty the enemy gets.
Plus "literally rip the spirit from your enemy's body and compel it to fight on your behalf" sounds kind of badass.
The issue with a frozen shaman is that the target can (and most likely will) be killed before you can finish the negotiation part. In that case you would have lost the spell and the target. Making the target freeze wouldn't always work since many creatures are immune to that kind of effect.
Making duration of the spirit version level-dependent is a good idea. I'll see how difficult it is to realize (since lifespan is currently controlled by a script).
Just to make clear, the spirit is not some generic creature that replaces the target after death. The spell literally resurrects the target, leaving most of his passive stats intact, and gives it a magical weapon and some combat-related bonuses based on shaman level (since killed creatures automatically lose all their equipment). A side effect that can't be prevented is that you can kill the spirit yourself to receive XP a second time.
A7#SH611.SPL: Shamanic Pact spell (good variant)
A7#SH612.SPL: Shamanic Pact spell (neutral variant)
A7#SH613.SPL: Shamanic Pact spell (evil variant)
A7#SH61A.SPL: Used for targets of same moral alignments
A7#SH61B.SPL: Used for targets of adjacent moral alignments
A7#SH61C.SPL: Used for targets of opposite moral alignments
A7#SH61W.SPL: Applies magic weapon and attack bonuses to spirit version of target
A7#SH61X.SPL: Used for resurrecting spirit version
A7#SH61Y.SPL: Applies effects and immunities to spirit
and can all be found in A7#ImprovedShamanicDance/spells/. Installation script is A7#ImprovedShamanicDance/lib/spell.tph.
New version: Improved Shamanic Dance v3.0
This release provides a new component that adds a new spell to the shaman spellbook: "Shamanic Pact". It allows the shaman to resurrect a target as a spirit after its death and control it for a limited amount of time. A more detailed description of the spell can be found in the first post or the readme of the mod.Changes:
New version: Improved Shamanic Dance v3.1
Changes:It will fix the remaining issues I had with the Shamanic Dance:
1st issue: External interruptions that take away control over your characters, such as Time Stop or cutscenes, will cause spirits to be unsummoned. This is a major annoyance, as big events (such as boss fights) are usually introduced by a cutscene, which will always render your preparations void.
With this release spirits won't disappear anymore, even if a cutscene deactivates the "Shamanic Dance" icon in the character's toolbar, provided you quickly reactivate the dance after the interruption ended.
2nd issue: Saving and reloading will always cause spirits to disappear. This can also be annoying, since type and power of summoned spirits is determined randomly, and it can take quite some time to accumulate enough powerful spirits for the next battle.
This issue was more difficult to solve, but thanks to @kjeron 's hints I was able to make it work.
I will release a beta version first, since these fixes required to make some big changes internally. I would appreciate if you could test it, preferrably in bigger mod installations, and see if you can find bugs or notice unexpected spirit behavior.
The beta also provides a new component "Apply Shamanic Dance improvements to Shaman kits", which attempts to modify the Shamanic Dance of all available Shaman kits (installed by other mods) to exhibit roughly the same behavior as the improved Shamanic Dance from this mod. It has been successfully tested with the Witchlight Shaman kit from @LavaDelVortel 's mod "Will of the Wisps". Let me know, if there are more Shaman kits available.
Download: Improved Shamanic Dance v3.2-beta1
New version: Improved Shamanic Dance v4.0
Changes:I always announce the official releases of the mods I translate in the main French forum. So, French players are aware of the compatibility before downloading it from Github.
I was about to test it myself.
Thanks, @argent77 !
Hi, @argent77 !
I just got a report saying that the ISDancing is no longer working with the Dreadful Witch. Can I PM you so we can try to work on a solution together? I really love this mod and would like to have my kit benefit from it.
The Dreadful Witch now has several different dances, only one of them is being altered by ISDancing (great report by @Zaghoul , by the way).
Tested in version 4.0
Thanks!