The most complete tool for modding, decompiling and unpacking Undertale (and other Game Maker: Studio games!)
(seeing such an amazing tool...
... fills you with DETERMINATION.)
heya. i heard you like digging deep into Undertale data so i made a tool just for you!
Downloads are HERE: :pointright::pointright::pointright: https://github.com/krzys-h/UndertaleModTool/releases :pointleft::pointleft::pointleft:
Have questions? Want to talk? Join us on Discord! https://discord.gg/RxXpdwJ
Included are some test scripts. They are: * Universal: * EnableDebug: does just that, makes the global variable 'debug' be enabled at game start. If you don't know about Undertale's debug mode, check out https://tcrf.net/Undertale/Debug_Mode * DebugToggler: similar to the above, but instead toggles the debug mode on and off with F1 * GoToRoom: Replaces the debug mode functionality of the F3 button with a dialog that lets you jump to any room by ID * ShowRoomName: Displays the current room name and ID on screen in debug mode * Search: Simple search for text in decompiled code entries * Undertale only: * BorderEnabler: lets you import the PlayStation exclusive borders into the PC version and patches all version checks so that they display properly * testing: nothing important, just displays random text on the main menu - the first script I ever made * TTFFonts: Makes the game load fonts in TTF format from current directory instead of using the spritesheet fonts. You will need to track down all the font files yourself, I can't host them here for licensing reasons :( * RoomOfDetermination: Adds a new room to Undertale 1.08. I wanted to add something more to it but never got around to it, so I guess I'm releasing it as is. Just start the game and you'll see. Probably the most complete sample of adding stuff you'll find. * Deltarune only: * DeltaHATE: HATE-inspired script for corrupting Deltarune * DeltaMILK: Replaces every non-background sprite with the K.Round healing milk. Don't ask why. * TheWholeWorldRevolving: The world is spinning, spinning
Additionally, included are some community-made scripts, "experimental scripts." For more information, consult the README file inside that directory.
All contributions are welcome! If you find a bug, a data file that does not load etc. please report it on the issues page. Pull requests and help with decoding the format is welcome too! Here is a current list of stuff that needs to be worked on: * Add missing chunk editors for Timelines and Extensions * Add support for YYC games - you won't be able to edit code, but everything else should technically work * Add support for latest versions of GameMaker (notably, 2.3) - decompiler cannot function in most cases currently
Interested in the file and instruction format research I've done while working on this? Check out these: * https://github.com/krzys-h/UndertaleModTool/wiki/Corrections-to-Game-Maker:-Studio-1.4-data.win-format-and-VM-bytecode,-.yydebug-format-and-debugger-instructions * https://github.com/krzys-h/UndertaleModTool/wiki/Changes-in-Game-Maker:-Studio-2 * https://github.com/krzys-h/UndertaleModTool/wiki/Extensions,-Shaders,-Timelines-format * https://github.com/krzys-h/UndertaleModTool/wiki/Bytecode-version-differences * https://github.com/krzys-h/UndertaleModTool/wiki/YYC-games
Special thanks to everybody who did previous research on unpacking and decompiling Undertale, it was a really huge help: * https://pcy.ulyssis.be/undertale/ * https://github.com/donkeybonks/acolyte/wiki/Bytecode * https://github.com/PoroCYon/Altar.NET * https://github.com/WarlockD/GMdsam * @NarryG for helping me figure out the missing stuff for GMS2 and Nintendo Switch release * @colinator27 for lots of things, including the gml compiler, Shaders and a bunch of other stuff * @Kneesnap for improving the decompiler a bunch
And of course, special thanks to Toby Fox and the whole Undertale team for making the game(s) ;)
How about a random screenshot because I'm bad at writing READMEs? NYEH HEH HEH HEH!