Help - Search - Members - Calendar
Full Version: SpellNoDec!
The Black Wyrm's Lair - Forums > Mod development resources & discussion > Modder's Workshop
Sikret
In the "bg2actions" document of iesdp (at least in the version I have), it is said:

QUOTE

SpellNoDec(O:Target*,I:Spell*Spell)
If I were to lengthen the name of this action, it would be called SpellNoDecrease. In short, it works the same way as Spell does--it will only cast a spell if it's in memory...

I checked it and noticed that the spells are cast even if they are not memorized or even known by the spellcasters. Not that it is a bad thing. On the contrary, It's much better in this way, because unlike "ForceSpell", "SpellNoDec" respects the usual delay needed for the aura being cleansed (between successive spells) and again unlike "Forcespell" the spells cast by "SpellNoDec" are interruptable (both of which are great and useful features).

However, I wonder if the iesdp document is incorrect or rather I have missed some essential point in my tests. As I tested it, SpellNoDec doesn't seem to require that the spell is memorized or even known. I wrote a simple script (for testing purposes) as follows:
CODE

IF
 Detect([PC])
THEN
 RESPONSE #100
   SpellNoDec(Myself,WIZARD_MINOR_GLOBE_OF_INVULNERABILITY)
END

And the mage began to cast the spell infinitely once he saw the PC, despite the fact that he neither had the spell memorized nor even known in his spellbook.

Any idea?
Baronius
Then it seems that it works in a different way in BG2 than in BG1. Interesting, because most IESDP information about BG1 was taken from the BG2 research, and not the opposite.
In BG1 TotSC, these actions don't work "properly", but it is not surprising because they are not really used in the original TotSC (more information here: http://forums.blackwyrmlair.net/index.php?showtopic=929). In the matter of these BG1TotSC actions, IESDP originally also contained inaccurate information -- I'm not sure if it has been updated since drake127 and myself published the information I've linked to above.

Your test results are interesting. If someone else (preferably more people) who have BG2 installed and also tested it, we could be sure that it always works in that way as for you. (I don't doubt that your tests are accurate, especially if made on an "unmodded" or slightly modified BG2 install -- it's just the general practice that more independent tests are needed.)
Sikret
Yes, my test was performed on a clean installation of the game. I also think that if more people try the test and confirm the result, it would be a very useful tool to cast spells through scripts, especially because spells cast by "SpellNoDec" are interruptable (unlike spells cast by "ForceSpell") and also because they respect the needed delay between seccessive spells (again unlike "ForceSpell").

Some modders use SetTimerGlobal variables in conjunction with "ForceSpell" to make the needed delay between spells; and most of them wrongly think that the delay between successive spells should always set to "6", becuase they think that it is the regular delay between spells in the game for the aura to be cleansed (which is a myth, of course.)

If others' tests approve what I have found, we can use SpellNoDec in BG2 scripting even for when the spell is not memorized by the caster and can have the "correct" needed delay between successive spells.
CamDawg
Mistakes/research in the IESDP are generally better served being reported in the IESDP update forum.
devSin
I noted this here. igi just hasn't updated the IESDP yet.

SpellNoDec() in BG2 does not require the spell to be known nor memorized, and is interruptible and respects the spell range (if the target is outside the range, the caster will move until it is within range).
Sikret
Thank you, devSin!

SpellNoDec seems to be excellent in all respects, then.
Baronius
QUOTE(CamDawg)
Mistakes/research in the IESDP are generally better served being reported in the IESDP update forum.
First of all, Sikret posted it here because he needed confirmation, and something couldn't be considered as an IESDP problem until it is proved. Secondly, this information isn't exclusively IESDP-related, and Sikret shared it in the best place.
igi
QUOTE
I noted this here. igi just hasn't updated the IESDP yet.


And the fact that it's now int he archive forum most definately implies that it's been added to the local copy of the IESDP, awaiting upload.
There is an update due soon, but, I have been a little busy with other projects.

Do note though, the next update has a fair amount of updates (mainly thanks to devsin) smile.gif
Baronius
Do you plan to add the BG1 TotSC action updates as well (made my drake127 and myself)? I wrote new descriptions for those actions too which had an incorrect IESDP description.
Sikret
QUOTE(igi @ Jun 20 2006, 08:59 PM)
QUOTE
I noted this here. igi just hasn't updated the IESDP yet.


And the fact that it's now int he archive forum most definately implies that it's been added to the local copy of the IESDP

Don't forget to also add that SpellNoDec respects the required delay between successive spells. This is another difference between this action and "ForceSpell".
igi
QUOTE(Baronius @ Jun 20 2006, 05:31 PM)
Do you plan to add the BG1 TotSC action updates as well (made my drake127 and myself)? I wrote new descriptions for those actions too which had an incorrect IESDP description.

I thought I'd already added that?
Baronius
With some old descriptions, it seems. The most important things are missing, e.g. a note about the unreliability of SpellRES and SpellPointNoDecRES (with concrete facts in case of the latter). In case of several other actions, the restriction that the filenames cannot be numbers etc. are also not mentioned -- I suppose you've just added the newly "discovered" actions, but without using the results of drake127's and my research. smile.gif
Sikret
QUOTE(Sikret @ Jun 21 2006, 09:39 AM)
QUOTE(igi @ Jun 20 2006, 08:59 PM)
QUOTE
I noted this here. igi just hasn't updated the IESDP yet.


And the fact that it's now int he archive forum most definately implies that it's been added to the local copy of the IESDP

Don't forget to also add that SpellNoDec respects the required delay between successive spells. This is another difference between this action and "ForceSpell".

This important difference between "SpellNoDec" and "ForceSpell" is missed (and not mentioned) in the archive forum you referred to, igi! So please add it to your local copy before you forget it.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2024 Invision Power Services, Inc.