Disturbo

Male
Seen 2 Hours Ago
Posted 4 Days Ago
18 posts
2.6 Years
Decomp Trainer Editor - DTE
A wild tool appeared!


DTE allows you to modify every trainer's properties (and there are around 850 of them), as well as their Pokémon parties dynamically. What does this mean? You can add new items, Pokémon or moves to your repo and the tool shouldn't have any problem loading them, as long as you keep the few things that the tool uses as a base for loading everything. This will be further explained later.
The tool has been tested, but I recommend taking precautions when using it.

Functionalities
The tool is formed by two main parts; the trainer list and the editor tabs.

Spoiler:
As you can see, every trainer in the game (well, in "src/constants/trainers.h") is listed here. The blank space below the list can be used to search for specific trainers.

Spoiler:
You can find the most visible info of the trainer, as explained here:
  • The trainer name has a maximum of 11 characters and the tool will not allow more than that.
  • The trainer class only affects the money after winning and the "prefix" shown at the beginning of the battle.
  • The double battle check box makes just that. A double battle.
  • The items are those the trainer can use in a battle.
  • The trainer pic shown at the beginning and end of the battle.
  • The gender has almost no effect.
  • The trainer encounter music allows for changing the song that plays when being challenged by or challenging that trainer.

Spoiler:
All the different artificial intelligences that can be given to a trainer. Not all the flags listed here are designed to be assigned to a trainer, but I felt like it was a good idea to give the user the chance to do as they please.

Spoiler:
This tab contains allows you to edit the properties of a trainer's Pokemon, ranging from level to moves, including species and items. It is important to keep in mind that, in the case you assign a move to a party member, you will also have to manually choose the moves of the other Pokémon since they'll have no moves otherwise. Theres is an obvious limit of six party members which you can add, delete or change the order of using the buttons below the Pokémon list.



~ Disturbo

ThomasWinwood

Age 32
Male
Seen 19 Hours Ago
Posted 2 Weeks Ago
99 posts
6.9 Years
Nice work. It might be worth making a table like this one so the user knows what they need to be careful about when editing source code.

The trainer name has a maximum of 11 characters and the tool will not allow more than that.
I'll push to make this a named constant, so you can do the right thing if someone decides they want longer trainer names.
The rival in Red and Blue is called Green. Gary is some character from a lame cartoon.

Disturbo

Male
Seen 2 Hours Ago
Posted 4 Days Ago
18 posts
2.6 Years
Nice work. It might be worth making a table like this one so the user knows what they need to be careful about when editing source code.
Ah yes, I should have done that. That'll come alognside specificactions about what you can edit before the tool stops working.


I'll push to make this a named constant, so you can do the right thing if someone decides they want longer trainer names.
Sounds good. I'll be making some overall improvements to the code, I'll look for more things like this one.

pokefreak890

The One that will make everything great

Male
Seen August 4th, 2020
Posted June 16th, 2020
850 posts
5.9 Years
i dont know if its happening to anyone else but when i use this program and DTE overworld they take forever to do everything to load up a trainer took 6 minutes in counting and saving took 20 minutes not sure if its just me but is there anyway to speed it up just wondering?

One other question I have when I try to give a trainer a Pidgeot it always autosaves or autoselect Pidgeotto after I go to the next trainer or click any button anyone know how to fix this issue
3DS FREIND CODE : 2724-3540-0898

Disturbo

Male
Seen 2 Hours Ago
Posted 4 Days Ago
18 posts
2.6 Years
Hey! Yes the tool can be very slow as it is not optimal in any shape or form, it depends on your hardware sadly (gotta look into parsing and alladat, it will take time to fix it). As for the autosave, I think I understand what you mean (whenever you select a different trainer, it saves all previous changes, correct?) This is something I should look into, since it can lead to confusion, thanks for noting it.
Male
Seen 1 Week Ago
Posted 3 Weeks Ago
3 posts
8.5 Years
This is super useful, thanks for sharing!

I have a question that I couldn't find an answer to through poking around. Does the tool support adding new trainers to `trainers.h`. I tried to do so (and added a new corresponding flag to `opponents.h`) and the tool began appending empty new lines to the files it writes to instead of actual data.

The quick fix I employed was simply using existing trainers (ex. `TRAINER_MAY_PLACEHOLDER `) and modifying them, but it'd be a bit easier to keep track of if renaming or adding new trainers was supported. If not, it's not a big deal.

Thanks again!

Disturbo

Male
Seen 2 Hours Ago
Posted 4 Days Ago
18 posts
2.6 Years
The most recent commit is a lot quicker than the current release. Any chance we can get an official release of the new version? I'm having a lot of trouble trying to build the jar myself. I can only get it to run in the IDE
Said and done! I just saw your comment a couple hours ago and decided to give the tool the refactor I wanted to give it a while a go. Still a long way to go before it's where I want it to be, but it's a start. Same link as in the post, or you can use this one.

Disturbo

Male
Seen 2 Hours Ago
Posted 4 Days Ago
18 posts
2.6 Years
I'm back again with another update! Y'all's complaints about loading times have been heard and it turns out that there was some rather large optimizations (and that I'm pretty surprised I didn't catch on earlier) I could do, so the loading times, at least in my pc, are basically gone! Link in the main post or here.