Site Tools


tutorial:how-to-create-a-new-spell-in-ds3

This is an old revision of the document!


How To Create New Spells In DS3

Authors: JeNoVaViRuS

Tools

  • Unordered List Item Witchy
  • Smithbox
  • hkxpack-souls (v0.3)
  • DS Anim Studio
  • paint.net
  • Notepad++

This tutorial will show how to add a spell from scratch but we will be using an existing animation (you can use your own one that you created instead). You normally have a cast and a fire animation for a spell and we will only use one but still cover how to implement both. Be aware that you should invest time to create a proper and fitting sfx for your spell or be prepared to have a mediocre one.

All text that is within quotation marks is meant to be literal so it's already existing exactly like this or meant to be like this. The file names sometimes include the sub-folder (in the game folder) at the start of its name so you can easily find them. Always create/have a backup ready of the original files. You should always use ModEngine 2/3 and copy the files into the mod folder.

Parts of the game that need to be modified to create a spell

Add new params, bullet, attack

The spell needs to be created as a usable magic item and as an item (goods) to be found.

Param editor → Magic

  1. Ordered List ItemOrdered List ItemDuplicate an existing spell.
  2. The SortId determines how the spell is sorted in the attunement menu.
  3. The iconId references the icon on a sheet in “menu/01_common-tpf.dcx” OR “menu/menu_knowledge_0XXXX.dcx” where XXXX is the id.
  4. Each entry has the 3 sfx param fields “CastSfx1”, “CastSfx2” and “CastSfx3”. Normally you only set the first one since you start showing a special effect when casting starts. Feel free to add other ones.
  5. Each spell has a “refType” field which determines the animation ID. Use the next free ID “51” or pick one from the existing ones.
  6. Set the bullets in refId fields. You can go to the ID of an existing one, duplicate it and change it.

Optionally you can set a replacement status type for a stat like INT or FTH. Then you can set the threshold at which amount it should pick another spell when executing this spell. You add its ID into the replacement Magic ID field below. This way you can let the spell execute in another way depending on a stat of the player.

Param editor → Bullet

  1. The IDs for bullets have the same as the spell but with a prefix “1”. Set an “sfxIDBullet” ID so your projectile has a visible special effect, same for “sdxIdHit” when your spell hits something.
  2. The duration(life) is the max lifetime of the bullet after which it stops existing.
  3. The other fields are mostly self explanatory.
  4. With “hitBulletId” you can set another bullet which fires after your first one hits (fitting for wave or AOE spells).

Param editor → AtkParam_PC

  1. Duplicate an existing attack from another spell
  2. Then set this atkBullet_Id to your bullet so your spell (bullet) deals damage. The attacks normally have the same IDs as the bullets.

Param editor → EquipParamGoods

  1. Duplicate an existing spell.
  2. Set the exact same ID as the Magic ID.

Add new text

Text editor → Goods

  1. Duplicate an existing entry and change the ID to the same as the Magic param ID.
  2. Set your summary and description for your spell. This sets the name and other fields in the inventory.

Text editor → Spells

  1. Duplicate an existing entry and change the ID to the same as the Magic param ID.
  2. Set your summary and description for your spell. This sets the name while it is equipped and in the attunement menu.

Add an icon

  1. Unpack “menu/01_common.tpf.dcx” with Witchy
  2. If you aren't good with texture editing I recommend using an LLM (AI) like Copilot, provide a clean spell page and some spells that use it (as .png) and describe what you want your spell page to look like. Results are alright most of the time.
  3. Edit “MENU_Icon_04000.dds” with e.g. Paint.net (the IDs on the picture are mapped out from left to right and top to bottom so you can identify them by looking at existing spells and their icons)
  4. If you got a generated spell image you need to open it in Paint.net, use the magic wand to mark the background and then remove it (delete key). Then some manual editing to clean it up. Then you can import it as a new plain and then merge it.
  5. Repack with Witchy
  6. Duplicate an existing file from “menu/knowledge” e.g. “menu_knowledge_04117.tpf.dcx”
  7. Change the folder name, the file within and the Witchy xml content to fit your spell ID from the params
  8. Edit the .dds file itself to fit your new spell.
  9. Repack with Witchy

Add new sfx

WIP

tutorial/how-to-create-a-new-spell-in-ds3.1777393880.txt.gz · Last modified: by jenovavirus