Hendryk Posted December 18, 2004 Share Posted December 18, 2004 Is there a way to reference a newly created spell to a new entry in Spell.ids so that the new spell can be referred to in a script? Or is there a way to cast the new spell from a script without reference to Spell.ids? Link to comment
jcompton Posted December 18, 2004 Share Posted December 18, 2004 The SpellRES series of commands allows you to use resource (file) name rather than goofy SPELL.IDS. Link to comment
Hendryk Posted December 18, 2004 Author Share Posted December 18, 2004 Thank you very much! Your helpful reply also gave me something to search for in Sim's scripting guide where I find the whole question covered. Marvelous! Link to comment
jcompton Posted December 18, 2004 Share Posted December 18, 2004 The SpellRES commands are one of the features of the BG2 engine that was only partially implemented for SOA... so it's THERE, but you can't _directly_ compile the commands unless you have TOB, or if you use some code that appends ACTION.IDS for SOA players. Quest Pack and probably most of Cam's mods have it, so you'll either need to steal it or declare TOB-required if you want to use the commands in .d or .baf code with WeiDU. (Another way around the problem, which I've used in the past, is to use precompiled BCS files from TOB machines, and then EXTENDing those in. That, too, will let it work in an SOA-only environment, but is a little clunky.) Link to comment
Hendryk Posted December 18, 2004 Author Share Posted December 18, 2004 Thanks again. Happily, I only have to test that the spell works correctly off a script in my game. I'll definitely refer Domi here though as she's the one who will have to integrate it into the mod. Link to comment
Domi Posted December 18, 2004 Share Posted December 18, 2004 We already use it for a few other custom spells, so we are ToB required, Hendryk. Link to comment
Loriel Posted December 19, 2004 Share Posted December 19, 2004 If that's the only reason that the mod is ToB- required, then I would definately suggest you add the code to your tp2 to append to the action.ids. It's relatively simple on your end, and opens the mod up to everyone. EDIT: As a side note, the only other major compatibility conflicts you will run into with SoA vs ToB is if any spells use effects 300-316(?). Not sure what the ending number is but basically everything above 300 was added for ToB, so it will make a SoA-only game crash. Also, if the mod requires a player to be a Wild Mage, then that will obviously require ToB. Link to comment
Stone Wolf Posted December 19, 2004 Share Posted December 19, 2004 I'd also suggest adding the lines to Action.ids via tp2. It's quite easy. Link to comment
Domi Posted December 19, 2004 Share Posted December 19, 2004 I code the whole thing reffering only to ToB section of IESDP, so I do not even know which things may or may not require ToB. So, I'd rather put the ToB required tag to be on the safe side. Link to comment
hlidskialf Posted December 19, 2004 Share Posted December 19, 2004 Might as well be TOB only, hell even MAC users don't have the "can't get TOB" excuse anymore. Link to comment
Loriel Posted December 19, 2004 Share Posted December 19, 2004 Might as well be TOB only, hell even MAC users don't have the "can't get TOB" excuse anymore. True, but we can still say we can't PLAY it...I have TOB, but it runs so slowly that it's not worth the upgrade. I know - I've got an ancient computer, but there are still some who prefer to download a mod that is SOA-compatible, especially if it's only a matter of 25 lines or less of tp2 code (which is all it takes to append all the TOB action.ids and trigger.ids stuff for us SOA users). Link to comment
Domi Posted December 20, 2004 Share Posted December 20, 2004 Then, perhaps it is a matter of making a separate minimod that upgrades SoA's IDS to ToB's without installing ToB? Link to comment
NiGHTMARE Posted December 20, 2004 Share Posted December 20, 2004 It's pretty easy to do. I even included it in the internal-only LoI kit pack . Link to comment
Domi Posted December 20, 2004 Share Posted December 20, 2004 If you could share the code I will gladly add it ... or if you are going to release it as a separate minimod than it will take care of itself I suppose Link to comment
NiGHTMARE Posted December 20, 2004 Share Posted December 20, 2004 APPEND ~action.ids~ ~31 SpellRES(S:RES*,O:Target*)~ UNLESS ~SpellRES(S:RES*,O:Target*)~ APPEND ~action.ids~ ~95 SpellPointRES(S:RES*,P:Target*)~ UNLESS ~SpellPointRES(S:RES*,P:Target*)~ APPEND ~action.ids~ ~113 ForceSpellRES(S:RES*,O:Target)~ UNLESS ~ForceSpellRES(S:RES*,O:Target)~ APPEND ~action.ids~ ~114 ForceSpellPointRES(S:RES*,P:Target)~ UNLESS ~ForceSpellPointRES(S:RES*,P:Target)~ APPEND ~action.ids~ ~160 ApplySpellRES(S:RES*,O:Target)~ UNLESS ~ApplySpellRES(S:RES*,O:Target)~ APPEND ~action.ids~ ~181 ReallyForceSpellRES(S:RES*,O:Target)~ UNLESS ~ReallyForceSpellRES(S:RES*,O:Target)~ APPEND ~action.ids~ ~191 SpellNoDecRES(S:RES*,O:Target*)~ UNLESS ~SpellNoDecRES(S:RES*,O:Target*)~ APPEND ~action.ids~ ~192 SpellPointNoDecRES(S:RES*,P:Target*)~ UNLESS ~SpellPointNoDecRES(S:RES*,P:Target*)~ APPEND ~action.ids~ ~240 ReallyForceSpellDeadRES(S:RES*,O:Target)~ UNLESS ~ReallyForceSpellDeadRES(S:RES*,O:Target)~ APPEND ~action.ids~ ~318 ForceSpellRangeRES(S:RES*,O:Target)~ UNLESS ~ForceSpellRangeRES(S:RES*,O:Target)~ APPEND ~action.ids~ ~319 ForceSpellPointRangeRES(S:RES*,P:Target)~ UNLESS ~ForceSpellPointRangeRES(S:RES*,P:Target)~ APPEND ~action.ids~ ~337 ReallyForceSpellPointRES(S:RES*,P:Target*)~ UNLESS ~ReallyForceSpellPointRES(S:RES*,P:Target*)~ APPEND ~trigger.ids~ ~0x4031 HaveSpellRES(I:Spell*Spell)~ UNLESS ~HaveSpellRES(I:Spell*Spell)~ Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.