This is a simple overview of how to add a single new entry of content in the Eos Toolset.
Adding a new Poison
Poisons are generally self contained, while referenced as an item property they are not directly referenced by any other 2da as a dropdown so adding one is generally just available then in the toolset and for scripts.
Creating the Poison
First in our project go to the Custom tab, and right click the Poisons entry, and select New.
This opens a new poison with some defaults assigned:
We should change the poison name and its effects. We can reference poison.2da for what each thing does in game (some fields are unused by the engine and can be ignored) but the general gist is ability damage based on a fortitude save.
Let's call ours "Valiant Death" with a hefty 30 save DC, doing 3d8 constitution damage.
Testing
That's basically it! We can test it in game by exporting the hakpack and TLK to your module. If you've not set this up follow the Setting Up a New Eos Project and Exporting to your Module page now.
In the toolset it'll appear as a new poison on the Monster: On Hit item properties, check it by adding or editing a Creature Bite item:
Excellent! In game we can test it with a simple script. Open the Debug Panel to access the nwscript console.
If you've not added the Eos Constants option then remove the include line and replace POISON_VALIDANT_DEATH with the ID number (if it's the first you've added it'll be 45).
#include "eos_inc"
void main()
{
object oTarget = GetFirstPC();
effect ePoison = EffectPoison(POISON_VALIANT_DEATH);
ApplyEffectToObject(DURATION_TYPE_PERMANENT, ePoison, oTarget);
}
Execute it (you can pick the player, module or leave it as invalid as the OBJECT_SELF, it won't care) and see if it applies - if it does and you do a DC 30 check and your constitution drops if you fail it works.
If something has gone wrong:
- Check the hakpack data with NWN Explorer or similar tooling. Has a poison.2da been generated?
- Are you attaching the right hakpack to your module? Double check if the item property matches.
- Make sure you don't use save games to test, instead load the module from scratch
- Have you added some mistake adding the poison? For instance having a DC too high or a negative DC may mean it fails to load it, typos can cause issues.




