[Tutorial] circular/radial splash damage

Post here about all aspects of D2 mod making whether it's information, problems or whatever. Please specify whether your post is relating to Classic D2 or the Expansion.

Moderator: Nizari

Post Reply
User avatar
eleriaqueen
Posts: 54
Joined: Mon Dec 16, 2019 8:49 am
France

[Tutorial] circular/radial splash damage

Post by eleriaqueen » Fri Sep 16, 2022 8:32 pm

I hope this post will help beginner modders add a useful property to items. It is made of info I found in threads / posts / discord.
(Tested on Diablo 2 (Legacy) 1.10)

[!] After following this tutorial you'll end up with a property that adds a splash damage AoE with no need for nextDelay. Property will read "An evil force" but I'll add info later on how to add a custom string (text) for it.

--------------------------------------------------------------------------------------------------------------

Copy the following row data into the right files.
(Modify 'Id' values to match your skills/missiles files. If previous row has an id of 380 then use Id 381... etc)

skills.txt:

Code: Select all

radialsplash	357													splashmissile											4																																																																																				1	2		none												SC	SC	xx																	1																							1						1	7	5	0	1																																		1																																													0
missiles.txt:

Code: Select all

splashmissile	684	1		1	44																																																				2				255	255	255	1	0	0	null	1024	1	16					3	1		1		1							3				1	1								1									33	12	8		96																																			32																						0
Adding this data will only create the skill and associated missile but it won't spawn on any item.

--------------------------------------------------------------------------------------------------------------

To be able to add the property to some base items you need to add the following data.
(In itemStatCost.txt use an id that fits your file)

itemStatCost.txt:

Code: Select all

item_splashonhit	359		1	7	16						1			2	190	256	1024		21	0	7	0	16											1	domeleedamage	20			160	15	0	modstrsplashdmg	modstrsplashdmg									0
properties.txt:

Code: Select all

splash	1	skill/chance/level		11	item_splashonhit																									splash	radialsplash	% Chance	Level		0
automagic.txt:

Code: Select all

splashdmg		100	1	1	1		1				1	306	splash	radialsplash	100	1											weap														0
Put 306 (splash property's automod group) into the column "auto prefix" for every item base you want the property to appear on.

--------------------------------------------------------------------------------------------------------------

Customisable splash damage parameters:

skills.txt:

Code: Select all

aurarangecalc : radius of the splash (In this example it is 4 but can be an expression/calc)
missiles.txt:

Code: Select all

ResultFlags : Damage properties (Example has 33 which is 1 + 32 which mean "Deal damage + No crushing blow")
HitFlags : Addition effect properties (Example has 12 which is 4 + 8 which mean "No Life Leech + No Mana Leech")
More info about ResultFlags/HitFlags in Cypress' awesome post viewtopic.php?f=4&t=67405

automagic.txt:

Code: Select all

rare : a rare item can spawn with property
level : minimum item level required for this item property to spawn on the item
maxlevel : maximum item level on which this property can spawn
levelreq : minimum character level required to equip an item that has this item property

mod1min : chance for splash damage to trigger (In this example it is 100 %)
mod1max : level of the 'radialsplash' skill used (In this example it is 1)

itype1 : First item type on which automod is allowed (In example it is "weap")
itype2 : Second item type on which automod is allowed (In example it is blank but can be "armo" for instance)
itypex...

Post Reply

Return to “General Mod Making”