Skip to content

Custom spells issues

MortificatorMortificator Member Posts: 21
Hello,

I'm dabbing in the creation of custom spell but I have some problems.
The first problem is that some changes (like description and name of the spell) don't remain once I restarted the NI tool. Below the steps I did:
- Select a spell and export the file (saved in the "Override" folder).
- Modify, for example, the spell name by filling out the related "Value" field, clicking "Edit" and then "Add" (a new Strref), writing the text in the appropriate field and finally clicking "Save".
- Select the related Strref and click "Update value" (I think it's not necessary) and "Save" again.
Then, when I close the program, a window appears: "String table has been modified. Save change to disk?".
Regardless of the choice, the next time I run the tool, that specific field is filled by "No such index".

The second problem is: if I want to add a spell that I created to a character, let's say as memorized or known spell, I can't find my creation among the other spells.
Post edited by Mortificator on

Comments

  • sarevok57sarevok57 Member Posts: 5,975
    for the strref reference i believe you have to manually edit the dialogue file first before adding it to the spell descriptions, when you update the strref reference the program actually just wants what number it is

    so for example;

    lets say your new spell is called "crazy fireball"

    and your description is " this fireball is indeed crazy"

    so what you would want to do is go to the dialogue file editor ( select "Edit" from the top and then select "String table" and MAKE SURE to have a back up as it suggests )

    then take the bar at the top and go all the way to the end, and click the button "add" and then in the new field you would write; Crazy Fireball ( and make sure to click on the "flags" value and select "has text" ) once you do that remember what number this new string is; ex; 100 001

    then do the same thing for your description; This is indeed crazy ( use the same steps above and remember the number; ex; 100 002 )

    then save your dialogue file

    after that, go to your custom spell, and when you fill in spell name/spell description update the string numbers ( by entering your new custom string number as appropriate then pressing update, then pressing save )

    then to make sure the spell shows up in your spell book, you need to make sure your spell type is correct and your exclusion flags are correct

    if they are correct then you might need to use EE keeper to manually add them to your book ( on a new game it should work, but if you had a save game before you made this new spell, your old save game will probably not update the new spell )

    also, you need to make sure your spell symbolic name is correct or it might not be picked up at all which also requires fiddling with your .ids

    so for example;

    lets say you want to make this a level five spell, you would go to the .ids and go to line 315

    and then you would press enter and type in; 2524 WIZARD_CRAZY_FIREBALL ( the reason why you need to do it here is because the first "2" represents wizard spells and the "5" represents its a level 5 spell and the "24" represents its the 24th on the spell list, so if you were to do it for level 6 instead you would do; 2626 for example )

    if done correctly now your spell will also have a symbolic name and ee keeper will be able to pick it up and in theory at this point everything should be fine
    Mortificator
  • MortificatorMortificator Member Posts: 21
    edited July 2020
    Thank you so much, you made it very simple and clear, much appreciated.
    Just one think is still unclear: the last two digits of the symbolic name. Can I assign randomly numbers from 01 to 99, regardless of, or...?

    Oh, and the spell symbolic name simply is the name under which I save the file, right?
  • sarevok57sarevok57 Member Posts: 5,975
    edited July 2020
    for the last 2 digits im pretty sure you need to go in order from the last spell or else you might get issues

    and for the symbolic name, pretty much yes, although you will either need a; WIZARD_ or CLERIC_ before it, and all spaces must use an underscore _
    Mortificator
  • MortificatorMortificator Member Posts: 21
    So this means that there are limited number of spells you can create. Or the digits can be more than two (I mean only to the digits after the “2” and “5” of your example)?

    But how to know which number is the last used or which numbers are free?
  • sarevok57sarevok57 Member Posts: 5,975
    im assuming there is a limit, but not sure

    and to know which numbers are free you can just see in the .ids

    so for level 6 mage spells for example WIZARD_STONE_TO_FLESH is number 2625, so if you wanted to make another level 6 spell you would just start with 2626
    Mortificator
  • MortificatorMortificator Member Posts: 21
    Again you explained it simple and clear.
    Thanks, you’ve been very helpful to me.
    I’ll try as soon as I can.

    Have a nice day, Sarevok.
    sarevok57
  • sarevok57sarevok57 Member Posts: 5,975
    Again you explained it simple and clear.
    Thanks, you’ve been very helpful to me.
    I’ll try as soon as I can.

    Have a nice day, Sarevok.

    you to :)
  • MortificatorMortificator Member Posts: 21
    I'm sorry to bother again but there must be something I'm missing.
    I did as you told me:
    - Cheked the .ids and found the 2 last digits available based on the spell level.
    - Filled in fields related to spell name and description, according to your instructions.
    - Saved the spell, a third level spell, as "2328 WIZARD_SPELL_NAME".
    Unfortunately nothing has changed.

    So I took a better look at already existing spells noting that symbolic names are "WIZARD_SPELL_NAME (2***)" where * stands for level number and last 2 digits.
    Then I repeated the same steps above but I saved the name of my custom spell as "WIZARD_SPELL_NAME (2328)" but, again, nothing has changed.
  • sarevok57sarevok57 Member Posts: 5,975
    okay, first, you dont want to save it as; WIZARD_SPELL_NAME (2328)

    that (2328) is not necessary and will probably just cause problems

    now with that being said, what is the issue at this point? is it just not showing up? did you make sure to make the "spell type" wizard (1) or is it set to something else?
  • MortificatorMortificator Member Posts: 21
    edited July 2020
    Yes, spell type is wizard (1).

    67jcgey60i7o.png
    asj7nufpkj6w.png

    Maybe it's just the spell school that unmatch the casting animation (it's not casual: I'd like to keep that animation)?
    More info, maybe they can be useful: the spell from which I copied is Chromatic Orb. I removed all the effects except the lv 12 and removed the bonus to the saving throw.

    0ztafhayjxep.png

  • sarevok57sarevok57 Member Posts: 5,975
    hokay, i think i see some discrepancies;

    first, you may be right; you may have to match the casting animation with it's school, every wizard spell that i have seen does so, so that would be a good thing to start ( and if when everything is said and done and working you can try and go back and see if it works )

    next, your minimum level and spell level are out of whack, so by the looks of it you would have to be level 12 to use this spell and or if you go to cast it, it will cast as if you were level 12? what i meant is;

    Spell level: 3 ( which shows that this is a 3rd level mage spell )

    Minimum level: 12 ( now this might be messing up your spell a bit because since you get level 3 spells at level 5, this spell may not function until you hit level 12, so i would suggest changing it to 5 instead of it being 12 )

    to be able to dig deeper, i need a screenshot of the first view page as well ( the one that has; spell name, symbolic name, spell type, ect ) that can also help show if things aren't working properly
  • MortificatorMortificator Member Posts: 21
    You're great, just by matching casting animation and school, spell name and description remain stored.

    Though the symbolic name issue still remain.

    The 3rd level spell is intended to be casted starting from lv 12. If this rule doesn't create issues, that’s how I want it. It's meant that caster level (12 fo that specific effect, as in the original spell Chromatic Orb, trying to maintain the balance unchanged) is required to be able to cast it while the spell lv itself set the maximum number of cast per lv.
    The reason why the spell lv is 3 rather than 1 lies in the saving throw bonus, decreased to 0.
    What do you think, is it reasonable?

    Here the screenshot (plus details) you asked for, after the casting animation update:
    c432xjcgt6ry.png
    fqscpfj27tgq.png
    bl7t615mhisp.png
  • sarevok57sarevok57 Member Posts: 5,975
    why is the name; WIZARD_KAIN_SPIRIT_DEATH (2328)

    when it should be; WIZARD_SPIRIT_DEATH (2327)

    also, for the ACTUAL spell name, do you mean spirit dead or spirith death? ( if you mean spirit death, your spell name is spelled incorrectly and that could be causing problems ) and if you do mean to use spirith death you need to change your symbol name to SPIRITH

    also, did you make another spell hence the reason why you are using (2328) instead of (2327)? if not, i would suggest just continuing in order and use (2327) instead

    also, the KAIN part in the symbol name, why is that there? when i look at the .ids names, not a single one has KAIN in it, so i would take that out

    also in your spell description the level of the spell is incorrect, you forgot to change it to 3, and i would also suggest changing the casting time, perhaps even all the way to 9, because to be honest a level 3 spell that can kill a creature instantly ( even if you are level 12 ) with no save bonus is pretty strong ( this spell is better than disintegrate and flesh to stone which you would get at level 12 and they are both level 6 spells )

    and lastly i just realized, what is the ACTUAL file name saved as?

    if you are going to go with the symbolic name of; WIZARD_SPIRIT_DEATH (2327)

    you need to make sure this spell file is called; SPWI327.SPL
    Mortificator
  • MortificatorMortificator Member Posts: 21
    lol I don't know where that "h" came from. Just a typing error then copy/pasted. Spell name is Spirit Death.
    "KAIN" was added in order to make the file easier to find, in case I don’t get the spell name, as it's the name of the character. I kind of took by Melf's acid arrow lol
    I didn’t think it would cause trouble but I removed it.

    The casting speed is that of the original spell. If with no save bonus it's too stong, how can I nerf it keeping both abilities and 3rd lv? Maybe by putting a HD cap on it (it's not meant to instakill bosses and champions)? But how much?
    sarevok57 wrote: »
    why is the name; WIZARD_KAIN_SPIRIT_DEATH (2328)
    and lastly i just realized, what is the ACTUAL file name saved as?

    if you are going to go with the symbolic name of; WIZARD_SPIRIT_DEATH (2327)

    you need to make sure this spell file is called; SPWI327.SPL

    I saved the spell as SPL file but under the name of WIZARD_SPIRIT_DEATH (2327). If I save it as SPWI327.SPL how can I get the right symbolic name? I'm a bit confused :p
  • sarevok57sarevok57 Member Posts: 5,975
    usually ( like 99% of the time ) casting speeds will match spell levels ( so level 1 spells usually have 1 while level 8 spells will be 8 ) for a HD cap, 8-12 HD seems pretty reasonable to me, up to you though

    saving the file name as; WIZARD_SPIRIT_DEATH (2327)

    i think that is what is causing the trouble, you have to save it as; SPWI327.SPL or else the game is going to have no clue how to look for your spell, but if you save it this way, then in theory when you add the line; 2327 WIZARD_SPIRIT_DEATH ( to the ids ) it should pick up on spirit death because it will match the symbol .ids name with the spwi327.spl name
  • MortificatorMortificator Member Posts: 21
    Excuse me, I'm slow-witted and I don't understand how to save to the ids. Should I perhaps export the SPWI327.SPL as 2327 WIZARD_SPIRIT_DEATH.ids or create a new resource (ids) to rename?
  • sarevok57sarevok57 Member Posts: 5,975
    go into NI and on the left open the folder that says "IDS"

    then you are going to see a line that says; SPELL.IDS

    click on that

    then on the left side, you are going to see the column number, go down to number 259

    this will put you at 2326 WIZARD_TRUE_DISPEL_MAGIC

    i want you to click at the end of the above ( so the flashing line thingy is at the end of the 2326 WIZARD_TRUE_DISPEL_MAGIC )

    then press enter

    now if im not mistaken you should have an empty space and this will be column 260 ( as you will see on the left )

    in that empty space i want you to put; 2327 WIZARD_SPIRIT_DEATH

    after you have filled in that space with the above, click save at the bottom

    if everything was done correctly, now your symbolic name should show up for your spell and everything should be honky doory
    Mortificator
  • MortificatorMortificator Member Posts: 21
    In my data the 2326 WIZARD_TRUE_DISPEL_MAGIC correspond to number 248 but you're guide is been very clear and useful. I followed your instruction successfully.

    Thank you Sarevok, again you’ve been very helpful, Thanks to you now I'm able to create any spell I want.
    Later, maybe, I will move on to created character dialogues and items XD

    Have a nice weekend :)

    sarevok57
  • sarevok57sarevok57 Member Posts: 5,975
    In my data the 2326 WIZARD_TRUE_DISPEL_MAGIC correspond to number 248 but you're guide is been very clear and useful. I followed your instruction successfully.

    Thank you Sarevok, again you’ve been very helpful, Thanks to you now I'm able to create any spell I want.
    Later, maybe, I will move on to created character dialogues and items XD

    Have a nice weekend :)

    right on, good to hear, you are welcome and you also have yourself a good weekend :)
    Mortificator
  • MortificatorMortificator Member Posts: 21
    Sorry, almost forgot, left for me to add the HD cap and I don't understand exactly what to do.

    I opened the wizard Death Spell, tryign to take a cue from it.
    I click wiev/edit on "Spell ability 0" and, under "Effect 0" (type: slay), I've identified "Unused: 00 b0 8c 40 00 05 04 00 h" and "# dice thrown/maximum level: 8".
    Must I copy/paste the first string and change the dice thrown/maximum level?, right? And maybe change "Dispel/Resistance: Not dispel/Not bypass resistance (2)" to "Dispel/Resistance: Dispel/Not bypass resistance (1)"?
    Otherwise I don't know how to assign immunity to higher HD than X.
  • sarevok57sarevok57 Member Posts: 5,975
    so with that effect, you are going to directly copy paste the entire thing into your spell with only two differences;

    for HD you can change it to whatever you want unless you want to keep it at 8

    and for save, you are going to change it to either spell or death ( even though its a death effect, it is a spell, so probably spell would make the most sense here? either way up to you ) because if you don't make it so there is a save, this spell will slay anyone of your desired HD or lower instantly

    and of coarse whatever you set the HD to, anyone higher than that HD will be immune to this effect

    so other than those 2 things, everything should work out fine
    Mortificator
  • MortificatorMortificator Member Posts: 21
    Once again thank you, I'll try the spell as soon as I have time.
    I renew my greetings.
    sarevok57
  • sarevok57sarevok57 Member Posts: 5,975
    no problem :)
    Mortificator
Sign In or Register to comment.