Thread: [Tool] Nerketur's Pile of Tools
View Single Post
Old June 18th, 2012 (7:20 PM). Edited January 1st, 2015 by Nerketur.
Nerketur's Avatar
Nerketur Nerketur is offline
Join Date: Nov 2010
Location: Cyberspace
Gender: Male
Nature: Quirky
Posts: 103
I thought I'd make this thread to help with showcasing my own tools. Plus, so my tool won't clutter up the research I'm doing on PMD EoT. The tool I'm making isn't finished yet... but Alphas of it are out!. =D

  • BETA 1 still in the works!
  • Happy New Year!
  • Pre-beta out! (to solve a few bugs)

Pokemon Mystery Dungeon Script Editor
Have you ever wanted to hack PMD, but felt discouraged by the lack of tools and info on it? Ever wanted to have your partner say a few choice words to Team Skull? Well, with my tool, you finally can!

(Image in spoiler shows current screenshot)
Things may change with time... but as of yet, the features are as follows:

Current features:
  • Strings, constants, and groups are shown below the files tree-view, and are editable!
  • Overlap checking. The program will NOT let you save a file that overlaps a pre-existing file.
  • Can read in the entire ROM, and parse the script files inside it.
  • Hex (in words) and partial assembly are shown in the same textbox. A checkbox is used to change between them
  • The file you are looking at in the ROM is Bold in the tree view!
  • Can read .kao files, and limited support for AT4PX files
  • Code database now included as a text file.

Features not fully implemented:
  • ONLY .NDS roms can be parsed (and of those, only the PMD era of games are allowed.)
  • It currently only allows for loading of PMD: EoT, PMD: EoD, PMD: EoS, and PMD: BRT, english versions. Other versions could possibly work, but are not currently supported.
  • Files supported (alpha3): .SSB files
  • Files supported (Beta 1 upcoming): .SSA, .SSB, .SSE, .SSS, .LSD, .KAO
  • (prebeta) limited .at4px support
  • (prebeta) limited .kao support (will only load a portion, and view only)
  • (prebeta) editable names for commands in dict.txt (only change if you know what you're doing)

Known bugs (Prone to change closer to release):
  • PMD: BRT will appear to have no script. This is because of how the script is stored. It's in ARM9.bin and the overlay files, which the program does not currently check.
  • In double textbox mode (if I implement it (unlikely)) scrollboxes get out of sync easily if you use the arrow keys to move around the text boxes. If this happens, click the active scrollbar, and they will re-sync. (I have an idea of how to fix this, now. Might do so later.)
  • In certain rare cases, if the commands don't parse correctly (or key ones are missing) then the strings and "constants" will get messed up which will prevent the script from loading properly. This is currently only fixable by adding the unknown command to the parser. (Later I may make it so it can safely ignore this and still parse strings and constants properly, but for now it's a bug that I don't care to fix, as it helps me to easily identify problem areas. (It's a trivial fix now, but eh.))
  • Some commands are KNOWN incorrect and will be changed before beta.
  • If it can't parse the dict.txt file properly, the program ceases to work.
  • Saving assembly not working yet (will be implemented in full beta).
Planned fixes/tweaks before next release (crossed out when done):
  • UI enhancements (optional)
  • Create documentation (optional)
  • Allow for searching via "goto" (optional)
  • Allow for searching via double/right clicking a string/constant (optional)
  • learn more commands (stalled)
  • remake "actions" to more accurately reflect what I know. (almost complete)
  • make the code more efficient by removing redundancy (working on)
  • filter out files (and folders) in the NDS file that can't be opened (Can do, but now it seems silly)
Download link of alpha:
Download link of alpha 2:
Download link of alpha 3:
Dowenload link of pre-beta!
(If the link doesn't work, please inform me. Apparently Dropbox has limits. Also, for obvious reasons, there are NO ROMs included with this download. Find them elsewhere. Do not ask for them. =) )

For more info on what I'm doing, exactly, you can check on my research thread, here, or click the link in my signature.

If you find anything wrong, please tell me so I can fix it. If the program crashes, please tell me so I can fix it. If you want the source, please tell me. I'll likely release the source once it gets into beta stage. It's still changing a lot, but I'll put it on GitHub later. Any questions, don't hesitate to ask. =D

Also, one last thing. There are a lot of question-marks. If there's a question mark, that means I'm not positive about the command. Names are prone to change, UI is prone to change, and if there are any needed updates, I'll update the program.

And now, for your viewing pleasure... a video of what I did with the tool:
Want my help in PokéScripting? PM me =)
I use XSE v1.1.1 (HackMew = awesome) and Advance Map 1.92.
Thanks to Diego and HackMew for their tutorials, helping me learn how to script!

Hacks I support 100% (MUST SEE!):

Very well made hacks:

My work:
Figuring out scripting in PMD
Entire script map of LeafGreen
PMDSE (Pokémon Mystery Dungeon Script Editor)
Reply With Quote