Skip to content
This repository has been archived by the owner on May 6, 2022. It is now read-only.

Creating Custom Decks, Characters and Duels: The Full Guide

MoonlitDeath edited this page Sep 23, 2020 · 7 revisions

Introduction

nzxth2 here, welcome to the full guide for creating custom content in Link Evolution. At the end of this guide you will have hopefully learned how to create your own "DLC". I assume here that you know how to unpack and repack the game files. If not, check out the guide on the home page. The bit about always creating backups is relevant here too!

The game stores most of its editable data in the following binary files:

(Assuming you want to edit the english content of the game, otherwise go for the respective _F, _G, _I, _J, _S files)
Note that not all of these files are self-sufficient. For example, deckdata_E.bin really only lists all decks and defines some of their values, like the deck name. The actual decks that are referenced here can be found in main/decks.zib . Same goes for packdefdata_E.bin, the actual packs can be found in main/packs.zib .
The images aren't stored inside these files either, but we will get to that in the individual sections below.

Editing decks - deckdata_E.bin

Download the DeckData Editor from my repo. Open the deckdata_E.bin file by pressing FILE > Open in the top menu bar. The editor should show you something like this:

Screenshot
You can either choose an existing deck to modify, or create a new deck by pressing EDIT > Add Deck Slot in the top menu bar. Either way, here are some explanations for the fields that you can edit:

  • Series ID: to what Series this deck belongs to. Not sure what the point of this is, I would set this to the same value as the owner's Series ID
  • Signature Card ID: Signature Card for this deck (list of all card IDs)
  • Character ID: ID of the character that owns this deck. Refer to the end of the chardata_E.bin section for more info
  • ID String: very important ID string, as this determines how you have to name your .ydc deck files in decks.zib/ (further information below)
  • Name: the actual name of the deck

When you are done with your modifications, save your file by pressing FILE > Save in the top menu bar. Overwrite the original file, but make sure you made a backup first.
But wait, we didn't even edit a deck list yet?! That's because the deck lists are stored in the decks.zib/ directory as .ydc files. Editing them is pretty easy, use this converter from my repo to convert .ydc files to text files or text files to .ydc files. Just make sure that in the end the .ydc file name matches the ID String mentioned above. The way that the text files have to be formatted is detailed in the homepage of that repo.
If you modified an existing deck, we are already done. If you created a new deck slot, the deck now exists in the game, but isn't really used. Usually you want to set the deck as the challenge deck of a character or as a deck in a duel. First we take note of the deck ID number. If you want to set it as a challenge deck, then head to the chardata_E.bin section and fill this ID into the Challenge Deck ID field. If you want to set it as a deck in a duel, go to the dueldata_E.bin section. Here we put the ID into the Left/Right Char Deck ID field.

A deck creating guide made by Skulled is here- (https://www.youtube.com/watch?v=KWmdqK1Shl0)

Editing characters - chardata_E.bin

Download the CharData Editor from my repo. Open the chardata_E.bin file by pressing FILE > Open in the top menu bar. The editor should show you something like this:

Screenshot
You can either choose an existing character to modify, or create a new character by pressing EDIT > Add Character Slot in the top menu bar. Either way, here are some explanations for the fields that you can edit:

  • Series ID: to what Series this character belongs to
  • Challenge Deck ID: the ID of the deck that the character will use in his duel challenge. Refer to the deckdata_E.bin section for more info. Note: Every character can have their own challenge, so one for each duelist up to the max number of duelists, which should be around 235.
  • Playable Flag: Is the character playable? Not sure what the implications of this is, I would always tick it on
  • Challenge Arena ID: the ID of the arena/field that the challenge duel will take place on (list of IDs)
  • Character ID name: very important ID string, as this determines how you have to name your images in busts.zib/, pdui/dialog_chars/ and in the pdui/chars.dfymoo file (further information below)
  • Character name: the actual name of the character

When you are done with your modifications, save your file by pressing FILE > Save in the top menu bar. Overwrite the original file, but make sure you made a backup first.
If you want to create completely new characters, we aren't done yet though! Usually when you create characters, you want to use custom images too. As mentioned above, you want to edit images at the following three locations:

  • busts.zib/ (avatar in deck edit and other screens?)
  • pdui/dialog_chars/ (used for story mode)
  • pdui/chars.png and pdui/chars.dfymoo (avatar in duel)

For the first two, just take a look at the pattern of how other images are named. You usually want an image named Character ID name_neutral.png in both locations. In pdui/dialog_chars/, you can put other images than neutral in there if you want to use multiple "emotions" in story mode, but we talk more about that in the scriptdata_E.bin section. If you don't care about story, you only need a neutral image. Note: don't forget to edit the .toc file!
For chars.png/chars.dfymoo, things are different. Here we have a single image that holds all duel avatars in the game. But how does the game know where each avatar is located on that image, how does it know where to slice the image up? That's where the corresponding .dfymoo file comes in. It is actually just a text file, so you can open it with the text editor of your choice. If you do that you will see that each character has its own entry seperated by a row with the '~' character. Each character entry needs at least two rows, one name row (starts with n) and one size row (starts with s). The name row follows the naming pattern detailed above, the size row holds the x and y coordinates of the individual avatar inside the big image, as well as its size.
So when you edit chars.png and put an additional avatar in there, you have to tell the game its location and size by creating an entry for it in the .dfymoo file. If you change the size of chars.png (because you want to fit in more characters), then you have to update the image size at the top of the .dfymoo file as well (the w and h row, for width and height respectively).

Okay, we have now modified chardata_E.bin and maybe even added new images for our character. Now we are done, right? If you only modified an existing character, then yes. Else, not quite. Our new character now exists in the game, but isn't really used. Usually you want to see your character in a duel. This is where we take note of the character ID number and head to the dueldata_E.bin section. This is the ID that we fill into the Left/Right Char ID field.

Skulled made a character editing video here- https://youtu.be/CvpQdSjIFvk

Editing duels - dueldata_E.bin

Download the DuelData Editor from my repo. Open the dueldata_E.bin file by pressing FILE > Open in the top menu bar. The editor should show you something like this:

Screenshot
You can either choose an existing duel to modify, or create a new duel by pressing EDIT > Add Duel Slot in the top menu bar. Either way, here are some explanations for the fields that you can edit:

  • Series ID: in what Series this duel should show up
  • Number in Series: this defines in what order the duels show up in a series. When creating a new duel, make sure to give it the highest value in its series to make sure it shows up at the end of the list
  • Left/Right Char ID: the ID numbers of the characters that will duel. Refer to the end of the chardata_E.bin section for more info
  • Left/Right Char Deck ID: the ID numbers of the decks that the characters will use in the duel. Refer to the end of the deckdata_E.bin section for more info
  • Arena ID: the ID of the arena/field that the duel will take place on (list of IDs)
  • Reward Pack ID: the ID of the pack that is unlocked as a reward (?). Refer to the end of the packdefdata_E.bin section for more info
  • Duel ID name: not important unless you want to add a story script to the duel, refer to the end of the scriptdata_E.bin section in that case
  • Left/Right Char Alt ID: some characters have alternate versions, which you can control with this additional ID string. For example, if you check the character images at busts.zib/, yusei has two images: yuseifudo_neutral.png and yuseifudo_notatoo_neutral.png . So notatoo is the additional Alt ID string that discerns the two versions
  • Duel name: the name that shows up for the duel in the story mode

When you are done with your modifications, save your file by pressing FILE > Save in the top menu bar. Overwrite the original file, but make sure you made a backup first.

Editing packs - packdefdata_E.bin

Download the PackDefData Editor from my repo. Open the packdefdata_E.bin file by pressing FILE > Open in the top menu bar. The editor should show you something like this:

Screenshot
You can either choose an existing pack to modify, or create a new pack by pressing EDIT > Add Pack Slot in the top menu bar. Note: adding new packs was not tested in-game. Either way, here are some explanations for the fields that you can edit:

  • Series ID: to what Series this pack belongs to
  • Price: The price of the pack
  • ID String: very important ID string, as this determines how you have to name your .bin pack files in packs.zib/ as well as your images in packs/ (further information below)
  • Name: the actual name of the pack

When you are done with your modifications, save your file by pressing FILE > Save in the top menu bar. Overwrite the original file, but make sure you made a backup first.
To actually edit the contents of a pack, you have to edit the corresponding bin file in the packs.zib/ directory. Editing them is pretty easy, use this converter from my repo to convert .bin files to text files or text files to .bin files (does not work for battle packs). Just make sure that in the end the .bin file name matches the ID String mentioned above. If you take a look at the pattern of how the other files in that directory are named, that means you set the .bin file name to packdata_ID String.bin. The way that the text files have to be formatted is detailed in the homepage of that repo.
If you are attempting to add a new pack, don't forget to add some new images for it as well! The workflow here is the same as for new character images. You want to add a reward wrap image to the packs/ directory, following the pattern of the other file names there. That means you want to name your file reward_wrap_ID String.png. Don't forget to edit the .toc file if you added a new image! You also want to edit the image pdui/PackWrappers.png and the respective PackWrappers.dfymoo file. For details check out how we added new images in the chardata_E.bin section. Just make sure that when you create a new entry in the .dfymoo file, the entry name follows the existing pattern (wrap_ID String).
If you only edited an existing pack, we are already done. But if you wanted to create a new pack, we have to make it unlockable through a duel. This is where we take note of the pack ID number and head to the dueldata_E.bin section. This is the ID that we fill into the Reward Pack ID field. But as I've said, adding new packs was not tested in-game.

Editing story scripts - scriptdata_E.bin

In this final section, you learn how to edit the existing story or create a story for a new duel that you created. You can even add stories to the existing Vrains duels!
First we need to unpack the scriptdata_E.bin file. For that you download the ScriptData Packer from my repo. This tool unpacks each story, be it intro or outro to a duel, to the unpacked/ directory as an individual file. You can then edit these files with the text editor of your choice. The way that the script files have to be formatted is detailed in the homepage of that repo.
When you are done, you use the same tool to repack that folder back into a single .bin file. Overwrite the original file, but make sure you made a backup first.
The tool repacks every file, even new ones that you added. That means you can create stories for new duels by creating an intro and outro file for it, following the same naming pattern as the other files. In other words, you need a Duel ID name_INTRO and a Duel ID name_OUTRO file. If you don't know what Duel ID name refers to here, you should check out the dueldata_E.bin section first.