Modding Dust to the End

Modding Dust to the End

Introduction

This guide is intended to provide official, base level information that will be helpful for you to begin modding. If you'd like to contribute to this official guide, please contact us or leave your message. Thank you for your contribution!

Good luck !

Enabling Mods Within The Game


Modding Dust to the End image 4
Modding Dust to the End image 5

HOW TO TURN MODS ON/OFF IN THE GAME:

① Subscribe to any mods you wish

② Launch the game

③ Select the "Mods" option in the start page

④ After opening the Mods interface, you can tick the Mods and activate them.

⑤ Mods at the top of the list take priority

⑥ After closing the Mods page, the game will restart, and the ticked mods will take effect in the game.

Recommended Software

Dust to the End's CSV files can be edited in EXCEL or Notepad++ ( saved in UTF-8 format), we'll highlight some of the recommended software that can be used. Please note that, of this list, only DragonBones is absolutely necessary for skeleton editing or creation.

EXCEL / Notepad++

Since most of the numerical and editing files are in CSV format, we recommend using EXCEL(or WPS), another fantastic editor is Notepad++ due to its versatility, functionality, and availability. You'll have access to many unique and helpful features, and all for free.

Link: https://notepad-plus-plus.org/downloads/

DragonBonesPro

Dust to the End uses DragonBonesPro to create skeletons and animations for characters.

Link: https://docs.egret.com/dragonbones/en

In addition, the we currently use version 5.6.2.001

Photoshop

Perhaps the most featureful and powerful photo editor is one of the best ways you can jump into editing or creating art assets for Dust to the End.

Link: http://www.adobe.com/products/photoshop.html

Modding Summary

You can subscribe to weapon sample / character sample for reference, they contain all files that can be added/replaced currently.

• Characters folder stores character/monster battle skeleton animation

• A single skeleton animation needs to be stored in the corresponding folder, such as: Characters/Player8/Player8_ske.json

• The Configs folder stores all configuration tables

• The file name of the configuration table placed in this folder should be written in the configs/csvnames file

• The Equipments folder stores all weapon animations

• A single skeleton animation needs to be stored in the corresponding folder, such as: Equipments/weapon2/weapon2_ske.json

• The skeleton animation configuration corresponding to the weapon is in the mPrefab column in EquipmentConfig, and just fill in the number after "weapon", that is: if you need to call the "weapon2" bone, this column needs to be filled in "2"

• The weapon appearance picture is configured in the View column of EquipmentConfig, and the corresponding appearance picture needs to be added to the skeleton animation

• HeadIcon folder stores characters/monster avatars

• The corresponding file name can be found in the ICON column in the playerheadconfig configuration file

• Store replacement portraits in the Portrait folder

• The file name is the specified speaker id

• A png file with a size of 1024*1024

• Preview file, a preview of the MOD

• PNG file with an image ratio of 16:9

• Languageconfig.csv and ConversationConfig.csv contain every single words in the game.(In the Configs folder)

About Items

Add Items

Add the basic information of the item in bigtableConfig.csv under the Configs folder

① ID, must be unique and not repeatable

② Increase morale (AddMoral), increase immunity (AddMoral), fill in when adding food, fill in 0 for non-food

③ Item name (kName), the added item name will index the corresponding value (Value) of the same ID in the language.csv file

④ Item type classification (ItemType), 0-food 1-water 2-weapons and equipment 3-medicine 4-other commodities

⑤ Item category description (k2), 0-food 1-water 3-fuel 100-general cargo 200-weapon 201-helmet 202-armor 203-accessories 204-bullet 301-vehicle 400-treatment item 600-male labor 601 -Female labor

⑥ Commodity Type (commodityType), 0-planting products 1-livestock products 2-drinking water 3-life products 4-industrial and mining products

⑦ Frame Type (FrameType), 0-commodity 1-supply 2-equipment 3-labor 5-green gear 6-blue gear 7-purple gear 8-orange gear

⑧ Item icon (kIcon), the icon name must be placed in the ItemIcon folder (create it if not available), and a png file with a size of 128*128

⑨ Item unit weight (kWeight), The weight of the item

⑩ Can be sold (k8), 0-yes, 1-no

⑪ Can be discarded (CanDrop), 0-no, 1-yes

⑫ Label (label), separated by;

· First number, 0-Goods tab, 1-Consumables tab, 2-Weapons tab, 3-Armour tab, 4-War supplies tab, 5-Other items tab, 6-Workers tab

· Second number, -1- all tabs in the market

· Third number, -3-All tabs in all trading interfaces

⑬ Item description category (ItemTypeDesc), 0-drinking water 1-food 2-weapons 3-armor 4-accessories 5-war supplies 6-medical supplies 7-medicine commodities 8-agricultural commodities 9-livestock commodities 10-daily commodities 11 -Industrial Products 12-Mineral Commodities 13-Fuel 14-Books 15-Task Items 16-Labors 99-Bullet Carrier-Vehicle 17-Tent

⑭ Item additional description (k26), the added item description will index the corresponding value (Value) of the same ID in the Languageconfig.csv file and display it on the item tips

⑮ The purchase price percentage of the goods in each town (c30001 to c603006 are the town IDs and the corresponding town name can be found in Languageconfig.csv), the purchase price = base price * purchase percentage, the purchase price percentage must be greater than bigtablePriceConfig.csv % Of the selling price in and 3% more than it.

The Price of the Item

Add item price information to bigtablePriceConfig.csv in the Configs folder

① ID, must be unique and the same as the item ID of bigtableConfig.csv

② Item standard price (kPirce), fill in the basic price of the item, the basic price will participate in the calculation of the purchase/sale price of the item

③ The selling price percentage of the goods in each town (bigtablePriceConfig.csv), selling price = base price * selling percentage, the selling price percentage must be less than the buying price percentage in bigtableConfig.csv and 3% less than it

Sales Location and Quantity

Add the selling location and quantity of the item to the bigtableNumConfig.csv file under the Configs folder

① ID, must be unique and the same as the item ID of bigtableConfig.csv and bigtablePriceConfig.csv

② For the sales location and quantity, fill in the corresponding quantity in the column of towns sold, -1 means unable to sell

Add Equipments

The same operations as adding items in the previous chapter

Equipped Skeleton

To edit the Equipments skeleton, you can subscribe to the weapon sample and refer to the weapon skeleton animation in the Equipments folder

①Animation size

Please refer to the following weapon skeleton animations to ensure that the object presents the appropriate size in the game:

weapon9001

weapon9002

② Armature(skeleton setup)

· Weapon attack effects and weapon textures are all in the weapon skeleton animation.

· In order to play the animation correctly, please name each weapon's appearance map, and edit the Appearance (View) column in the EquipmentConfig.csv table (for example: 10504).

· The origin of the animation is the weapon holding point.

· If you need to adapt to the original character actions in the game, you need to reserve the character's hands to hold points when drawing remote weapons.

· The index finger of the character's left hand is the weapon holding point (ie the origin of the weapon skeleton animation), and the holding point is 82-134 pixels to the left of the holding point and 0-20 pixels above it.

· For details, please refer to weapon skeleton animation weapon3, the blue box is the grip point of both hands.

③Animation production

In order to ensure that the character animation plays correctly, please refer to the following animation naming rules:

Take weapon9001 as an example:

weapon9001_idle (standby)

weapon9001_attack1 (attack)

Take weapon9002 as an example:

weapon9002_idle (standby)

weapon9002_attack1 (attack)

· There is no time limit for each action, but if you want to fit the original character animation, please show the attack action and special effects at the beginning of the weapon attack animation. The duration of the attack action and special effects should not exceed 0.83 seconds.

④ File naming

Please refer to the following rules for naming:

weapon+ weapon number

The first letter is lowercase, there is no space or symbol between the letter and the number

For example: weapon1025;weapon9007

· In order to avoid conflicts or overwriting with other workshop documents, please try to name the number with four digits or more.

Other Equipment Information

Equip relevant information in the EquipmentConfig.csv under the Configs folder. The modified/added weapon can appear in the black market of the corresponding town or in the drop of a specified monster (the drop configuration will be explained in Adding a monster)

① ID (mId), must be unique and the same as the item ID of bigtableConfig.csv, bigtablePriceConfig.csv, bigtableNumConfig.csv

② Weapon configuration file (mPrefab), just fill in the number after "weapon", that is: if you need to call "weapon2" bone, this column needs to fill in "2"

③ Appearance (View), fill in the name of the appearance picture added in the skeleton animation

④ Fill in the basic attributes, including HP (mBaseHP), Attack (mBaseAtk), Defense Armor (mBaseDef), Hit (mBaseHit), Attack Speed (mBaseAtkSpeed), Critical Hit Rate (mBaseCritical), Dodge (mBaseDodge), Load Load (mBaseCarry) Limited etc.

⑤ Equipment fixed attributes (mAttrType), fixed attributes added to equipment of blue quality and above, 0-strength 1- agility 2- physique 3- dexterity 4- luck 5- perception 6-life 7- attack 8- armor 9- hit 10 -Dodge 11-Attack Speed 12-Critical Strike 13-Abnormal Resistance 14-Critical Hit Damage 15-Toughness; Equipment Increased Attribute Value (mAttrNum) Fill in the corresponding attribute

⑥ Add equipment random attribute 1 (mAttrType2), the random attribute added to equipment above green quality, the type is the same as the fixed attribute

⑦ Add equipment random attribute 2 (mAttrType3), the second random attribute added to equipment of purple quality and above, the type is the same as the fixed attribute

⑧ Equipment activation skill ID (mSkill), the skill ID of the same type of weapon must be the same

⑨ Weapon Type (WeaponType), first place, fill in from 0 to 9, second place, 0-knife 1-hammer 2-axe 3-crossbow 5-rifle 6-submachine gun 7-shotgun 8-sniper gun 9-machine gun

⑩ The weapon belongs to (SlotType), 1-gun, 2-melee

⑪ Range Type (RangeType), 0-melee 1-long range

⑫ Attack sound (AttackSound), the attack sound for the same type of weapon must be the same

⑬ Weapon label (WeaponLabelType), 0-knife 1-hammer 2-axe 3-crossbow 4-sniper rifle 5-rifle 6-shotgun 7-submachine gun 8-machine gun 9-helmet 10-armor 12-accessory 14-bullet

⑭ Weapon corresponding bullet (BulletType), 3-bowbolt 4-sniper gun bullet 5-rifle bullet 6-shotgun bullet 7-submachine gun bullet 8-machine gun bullet

⑮ Unlock ID (Unlock), fill in the upgrade ID corresponding to the weapon, which is consistent with the equipment of the same level.

⑯ Extra attribute (ExEffect), extra attribute value (ExEffectNum), fill in the corresponding value of the additional effect attached to the weapon: -1-No; 0-Increase its own mood; 1-Increase the mood of the whole team; 2-Increase the immunity of the whole team; 3- Increase the initial AP at the beginning of the battle; 4- Increase the weight percentage of the team; 5- Gain AP for each hit; 6- Each attack has a probability of piercing back and forth; 7- All attacks ignore the armor reduction effect; 8 -The specified skills do not consume AP (the value 0 is the basic attack and 1 is the first skill); 9- direct damage is converted to life; 10- the blood volume is restored after the action.

⑰ Bullet Warning (BulletWarning), if it is a long-range weapon, fill in the warning notice of "Not enough bullets" here, separated by ";", the first is the yellow warning quantity, and the second is the red warning quantity. Such as 5;0

⑱ The number of times the weapon can be upgraded (UpgradeSlotNum), fill in the number of times that each quality of the weapon can be upgraded, in order of white, green, blue, and purple. Split with ";". Such as 1;1;2;3

About Character Model(1/2)

Add/Replace Character Model(1/2)Edit character skeleton, you can subscribe to character sampleRefer to the character skeleton animation in the characters folder

① Animation size

Please refer to the following standard body animation to ensure that the object appears in the game with the right size:

Mercenary_MineOwnCraft_1 (big guy)

Mercenary_MineOwnCraft_2 (standard female)

Mercenary_MineOwnCraft_3 (standard male)

Enemy_MineOwnCraft_4 (Hyena)

Enemy_MineOwnCraft_5(Insect Beast)

· The PNG image in the corresponding animation file contains an undivided standard body shape for reference. You can also create body shape and bone animations yourself.

② Armature (skeleton setup)

· Add weapon bones to the character's hand. The mouth (or other suitable parts) of hyenas and beasts. Please follow the naming rules below to ensure that the weapons can be retrieved and displayed correctly:

weapon1_back (range weapon_standby)

weapon1_hand (range weapon_attack)

weapon2_back (melee weapon_standby)

weapon2_hand (melee weapon_attack)

weapon3_back (dagger_standby)

weapon3_hand (dagger_attack)

· If the character does not have a corresponding attack method (for example, the hyena has no long-range attack), you still need to add the above weapon bones to ensure that the animation plays correctly, but you can hide the weapon bones that do not need to be displayed.

· If you need a character to randomly replace multiple sets of clothing or appearances, when adding textures to each bone, please add them in the order of the suits, for example:

When the clothes and arms need to be replaced in sets (to avoid the sleeve and body color styles are different), when the bone body is under the map sequence:

1.body_red

2.body_green

3.body_blue

Then the texture order under the arm bone l_arm1 should also be:

1.l_arm1_red

2.l_arm1_green

3.l_arm1_blue

· In order to display the suit replacement effect correctly, or present a richer suit, you also need to edit the corresponding table, please refer to the PlayerHeadConfig.csv table editing document.

③ Animation production

In order to ensure that the character animation plays correctly, please refer to the following animation naming rules:

idle (melee_standby)

idle2 (remote_standby)

idle3 (remote no ammunition_standby, that is, standby with a dagger)

attack1 (range_attack)

attack2 (melee_attack)

attack3 (range no ammunition_attack, that is, dagger attack)

hurt (melee_ hit)

hurt2 (remote_ hit)

· If the character does not have a corresponding attack method (for example, the hyena does not have a long-range attack), you still need to add the above animation to ensure that the character's actions are played correctly (you can just copy the melee attack of the hyena). Please edit the MonsterConfig.csv table to equip the character with corresponding weapons.

There is no time limit for each action, but in order to fit the frame event (and the corresponding special effect playback time), please launch the attack action at the beginning of the attack animation, instead of attacking after the forward swing action (but you can have a back swing action)

Please pay attention to the display timing of the texture under the weapon bones to ensure that the weapon standby animation corresponds to the character standby animation (the same is true for the attack animation)

④ File naming

· In order to avoid conflicts with other creative workshop works, resulting in file reading errors or being overwritten, please try to adopt a personalized naming method, such as:

· When you create a new enemy, it should be Enemy_25 in order. You can name it Enemy_MineOwnCraft_10025 etc.

Add AvatarAdd relevant information in PlayerHead.csv under Configs folder

① Avatar ID, must be unique and cannot be repeated, mercenary ID must be greater than 1000

② Gender, 0-male 1-female

③ Profession, -1-General 3-Doctor 4-Mechanic 5-Businessman

④ Head image (Icon), the name of the filled-in image must be placed in the HeadIcon folder (if not, you need to create it)

⑤ Prefab, fill in the edited animation name

⑥ Fill in the edited slot

· Head slot (HeadSlot), if you have created multiple avatars for a skeleton animation and randomly generated them, you need to fill in the head bone name here (for example: head)

· Hair slot (HairSlot), if you have made a hair bone and generated it as a set with the head, you need to fill in the hair bone name here (for example: Hair)

· Paired pendant slot (PairSlots0), if you have made a bone that needs to be generated as a set, you need to fill in the corresponding bone name here (for example: left_arm;right_arm;left_cloth;right_cloth)

· Paired pendant slot1 (PairSlots1), here you can create another set of generated parts (such as lower body dress), fill in the same way as above, if there is no set of replacement parts, fill in -1

· Single-part slots (SingleSlots), if you have made multiple maps for some bones and generated them randomly, you need to fill in the corresponding bone name here (e.g. body; bag)

⑦ Blood BarPos position height (BloodBarPos) 0-medium 1-low 2-high, (determines the position of the blood bar on the head of the character in battle)

Add ValueFill in the monster-related values in MonsterConfig.csv under the Configs folder (fill in by adding a new monster)

① ID (uiid), must be unique and not repeatable

② The name key (mNameKey), the added name will index the corresponding value of the same ID in the Languageconfig.csv file

③ Initial character preset (mPrefab), fill in the corresponding ID configured in the PlayerHead.csv file

④ Scale (mScale), the standard size is 1

⑤ Initial secondary attributes (mSecondAttrs), the order is: life; attack; defense; hit; attack speed; crit; dodge, separated by ";"

⑥ Initial second-level added attributes (mSecondAddAttrs), additional attributes added according to the level, such as the attack of a third-level monster = initial second-level attack attributes + 3* initial second-level added attributes, the same order as the initial second-level attributes

⑦ Weapon ID (WeaponID), fill in the weapon ID in the EquipmentsConfig.csv file, the weapon ID determines which weapon the model holds in battle

⑧ Drop ID (DropID), fill in the edited ID in the DropConfig.csv file

⑨ Drop Chance (DropChance), 100 means 100% drop

About Character Model(2/2)


Modding Dust to the End image 192

Add/Replace Character Model(2/2)Add to the Corresponding GroupFill in the monster team data in MonsterTeam.csv under the Configs folder. Currently, only the monster team in the game can be replaced, and the replaced model will appear in the monster in the corresponding area. Underground Ruins. In battles such as plot battles

① ID, must be unique and not repeatable

② Team name (Name), the filled-in name will be indexed by the corresponding value of the same ID in the Languageconfig.csv file. The filled-in name will display the model when the monster moves on the big map

③ Sight (Sight) determines the field of vision of the monster when it moves on the big map. The more likely the field of vision is to lock the player and its hostile units

④ Appearance (Prefab), fill in MapUnit_0 for neutral units and Enemy_0 for monster units

⑤ Speed, which determines the speed of the monster when it moves on the big map

⑥ Level (level), the monster is random among the filled levels

⑦ The number of people in the front row (level) and the number of people in the back row (Back), random between the filled numbers

⑧ Front ID (FrontID), Back ID (BackID), fill in the ID in MonsterConfig.csv

⑨ FrontChance and BackChance, which determine the probability that the filled-in front and rear IDs will be brushed out, and the number of probabilities must correspond to the ID

⑩ FrontSort (FrontSort) and BackSort (BackSort), if you fill in the sort, the fixed random probability of the station position will not take effect. The number must be corresponding to the ID, [0] [1] [2] corresponds to [上] [ Middle] [Down] Position

⑪ Faction ID (GuildID), you can customize the camp ID of the monster group and fill in the enemy ID (AgainstID) and cold ID (ColdID) columns of other monster groups

Add Item DropEdit the drop group of the monster in DropConfig.csv under the Configs folder

① ID, must be unique and not repeatable, configured in the drop ID (DropID) column of MonsterConfig.csv

② Item ID (ItemID), fill in the ID in bigtableConfig.csv, you can fill in multiple items separated by " ; "

③ Item Num (ItemNum), fill in the quantity after the item ID is brushed out, and it needs to correspond to the filled ID

④ Item Chance (ItemChance), fill in the probability that the item ID is brushed out, which needs to correspond to the filled ID

About MercenaryAll mercenaries can only be replaced , cannot be added for now.

To be continued...

Portrait Replacement① The replaced png file with a size of 1024*1024

② After editing the name of the new portrait (please find the number in the figure below), put it in the Portrait folder

③The image of the character corresponding to the speaker id

Uploading To Steam Workshop


Modding Dust to the End image 216

Once your mod is ready to go, follow this procedure:

① Place your mod folder under this path:

\steamapps\common\Dust to End\d2e_Data\Mods

② Open the game and enter the Mods page

③ Click the button“Upload Mod” in the lower right corner, select the mod to be uploaded in the list, and click Upload.

④ Open STEAMWORK , since the default visibility after uploading is "Hidden", you need to manually adjust "Change Visibility" to "Public".

⑤ Mod location:X:steam\steamapps\workshop\content\1074070

Source: https://steamcommunity.com/sharedfiles/filedetails/?id=2571106550					

More Dust to the End guilds