Hello.
ShaDoOoW wrote...
Dispell will be probably too, but I don't know how the dispell should work yet. Right now the MD is unbeatable and other dispells are unusable at higher levels.
To change the Dispel system of NWN is to write an alternate one, and make your spellscripts use that, instead of the core functions EffectDispelMagicAll() and EffectDispelMagicBest().
It is a mammoth job, beware!
The current rules of the Dispel system of NWN are fine. The problems are in its implementation.
It leaves much to be desired
For example, it targets and removes *single* spell effects -along with what is linked to them-.
But if a spellscript applies 2 sets of linked effects? The NWN dispel system may remove only 1 of them, leaving the other 1 in place.
This would make such spell count as if it was cast 2 times, not just 1.
Also, in case of Area Dispel, any leftover from a previously not-completely-removed spell could then be considered a valid spell to be removed... de facto reducing to zero the amount of Best spells to be removed from each target. A nasty side effect.
By current design the spell-effects applied by a single spell are not being seen as a whole.
So maybe in your report you read that Mage Armor was removed... and you think the whole spell is gone... while in truth maybe only a VFX_DUR_* effect was removed. Leaving the actual boost to AC in place.
Just an example. Mage Armor per se has no such problem. But many more spells *do*.
It gets even worse when it is about multiple Area of Effect spells and the spell-effects they apply.
Other than that, the 1 rule I changed about the dispellers is that a caster receives automatic success at dispelling his own spells. That is the correct D&D 3E behavior.
According to D&D the automatic success is *forced* in Targeted Dispel mode.
In Area Dispel mode the caster may *choose* to auto-win or not the dispel check for each of his spells.
But the NWN engine can not offer this functionality to Players. So, for balance, I force the automatic success in Area Dispel mode as well.
This in turn forces you as a spellcaster to think before throwing a dispeller into the fray. You may end up unsummoning your own minion (but then again, there are ways to give your minions more chances to survive a dispel magic you cast).
Another TODO thing is to introduce a proper dispel check for Area of Effect spells (and also a proper dispel report to output to the console). The current BioWare scripts just do this on a random roll that has little to do with your caster level. A proper dispel check has to be run. Which in turn makes AOE spells more useful, for they become much harder to remove.
I have changed the Mordenkainen's Disjunction greatly.
It allows full Caster Level bonus (+40), like the original. But it no longer performs a Greater Spell Breach before that.
In short, my MD behaves like the other dispel magiks, and is subject to the same rules.
As for the Greater and Lesser Spell Breach spells, I have changed them completely.
They do not exist in D&D 3E. The Greater Spell Breach was a BioWare invention to introduce a surrogate of the superability of MD to suppress each and every ongoing magical effect on the spell target.
The idea was good. But the implementation was bad.
The NWN engine just does not offer enough functionality to handle that in proper way (if you want to stay true to what D&D 3E says).
And it is an overpowered mechanism in NWN any way you look at it.
So I have changed the breachers.
In my modification their purpose is now to suppress those spells who provide protection vs. other spells.
They will seek and target specific spells, by Innate Level, and if any is found -> it is removed.
For balance I have made the breachers subject to Spell Resistance, but with a special rule: if the target is protected by a spell mantle, the breacher is absorbed completely, but the mantle is instantly killed.
ShaDoOoW wrote...
For HA - the fixed caster lvl 10 was very bad idea, however it cannot be changed without some very heavy workaround like 5itemproperties so I will probably keep it as it is. I guess there was some special reason why patch 1.69 changed it into this state anyway.
Good or bad I do not know.
But anwyay if you want to address the glitches of the Dispel system, you also have to address the dispel magic cast by the HA, for it has the same glitches. Else, it will interfere with all your hard work.
The positive side of it is that you may get total control of the Caster Level bonus granted by HA.
ShaDoOoW wrote...
Polymorphing - i know about this bug and I got fix for this.
Do you also know how to specify a different VFX effect to play for when the polymorph is ended?
(this implies the ability to create a polymorph effect that plays no VFX at all -- if so you wish)
ShaDoOoW wrote...
Spell decrease? Tell me more, never heard of it.
The Diamond Soul feat (Monks receive it for free at level 12) is a bug from begin to end.
First, it says it grants to a Monk character a Spell Resistance equal to Monk Level +10.
It is not entirely correct.
If you have a Monk(20), Diamond Soul gives him 20+10 = 30 Spell Resistance. Correct.
If you have a Fighter(20), Diamond Soul gives him 0+10 = 10 Spell Resistance. Bug. A character that has no levels in Monk class is no Monk to begin with. Even if you give him the Feat via Toolset, he should gain no Spell Resistance from it.
Second, a character with the Diamond Soul feat becomes immune to any Spell Resistance Decrease effect.
Such character will retain what Spell Resistance was given to him by the Diamond Soul feat, even if you try and apply a Spell Resistance Decrease of 90 (the absolute maximum for a NPC Monk(60) with all 10 Increased Spell Resistance epic feats).
The solution here is to turn the 11 original feats unavailable.
Then introduce your 11 substitute feats who will look & feel like the originals.
But *your scripts* will take care to apply and maintain the Spell Resistance bonus, so that the NWN engine stays out of it.
My HTML is lame. How do you write hyperlinks in your sig?
Tell me and I link you to my project. There you can download it and look at my source code.
Seeing things in action speaks better than a pile of words.
-fox
Modifié par the.gray.fox, 19 août 2010 - 02:26 .