Skip to content

Releases: UnderminersTeam/UndertaleModTool

Bleeding Edge

29 Nov 12:53
0ca898a
Compare
Choose a tag to compare
Bleeding Edge Pre-release
Pre-release

This is an automatically updating bleeding edge build of UndertaleModTool. There will be bugs! If you encounter any, please make an issue on GitHub or join the Underminers Discord for more help!

UndertaleModTool v0.6.1.0

23 Aug 16:39
Compare
Choose a tag to compare

This is the 0.6.1.0 UndertaleModTool release, for 64-bit Windows. Downloads can be found at the bottom of this release.

Changelog

Note: This is a minor release. To see the changes in major release 0.6.0.0, click here.

Changed

  • The RunSwitchOnPC.csx script now helps with running the Switch and Xbox versions of Undertale on PC. It has thus also been renamed to RunSwitchAndXboxOnPC.csx

Fixed

  • Fixed the EmSize field on font assets always being loaded as the number 0, in games where it was a floating point number.
  • Fixed GameMaker version 2023.1 getting misdetected when loading, due to some unnecessary leftover code.

Full Changelog:

0.6.0.0...0.6.1.0

UndertaleModTool v0.6.0.0

12 Aug 01:37
Compare
Choose a tag to compare

This is the 0.6.0.0 UndertaleModTool release, for 64-bit Windows. Downloads can be found at the bottom of this release.

Changelog

Added

  • Added GameMaker 2023.4, 2023.6, 2023.8, and 2024.2 support.
  • Added GameMaker 2022.0.2+ LTS support.
  • Added partial save/load support for GameMaker 2024.6.
  • The GUI will now show extension options from GameMaker 2022.6.
  • A new tooltip explains what the asset index shown in the bottom right corner means.
  • Profile mode support has been added for GameMaker 2.3+ games.
  • YYSWF support has been added for GameMaker 2022.1 games
  • The "ImportGMS2FontData" script is now able to handle font data from GameMaker 2023 IDEs.
  • A "TouchControlsEnabler" script has been added, which allows enabling touch controls in an Undertale game.
  • Added Spine sprite support for GameMaker 2023.1.
  • Struct support has been added.

Changed

  • The "ImportGraphics" script has been changed to accept sprites with zero-padded indices (e.g. spr_abc_001.png).
  • The "SpriteOriginCopy2_3" script has been removed, as its behavior was merged into the "SpriteOriginCopy" script.
  • The "ApplyBasicGraphicsMod" script will no longer tell you that image dimensions are not the proper size, as the check for it was faulty.
  • The "NewTexturePacker" script has been improved to bin pack better, as well as have the ability to change the bin sizes for both dimensions.
  • Decompiling and disassembling code entries will now be slightly faster and use a lot less RAM.
  • The "ImportAllEmbeddedTextures", "ImportAllStrings", "ExportAllStrings", "ExternalizeAllOGGs", and "ExportAllSounds" scripts are no longer Windows-only.
  • The "TTFFonts" script now makes it clearer that it's only meant for Undertale.
  • Removed redundant .NET localization folders (e.g. "cs", "de", "es"...) for the non-single file version.
  • When failing to fetch a localization comment for Undertale or Deltarune, it is now shown as // <localization fetch error>.
  • More assets in Deltarune will now be shown correctly rather than as numbers.
  • When using scripts with the CLI, the "Newtonsoft.Json" library is now added as a reference.
  • The "ExportAllSprites" script will now ask you if you want each sprite in a subfolder.
  • The "DebugMsg" script can now be used again.
  • A message box is no longer shown when saving a profile for profile mode.
  • Updated GitHub URLs to point to the new organization's version of the repository.
  • Some discrepancies between Debug and Release builds have been removed, when loading data files.
  • The Git commit hash is now shown in the title bar of bleeding edge builds produced by GitHub Actions.
  • Exception messages in the GUI, as produced by C# scripts, have been improved to look better with multiple scripts in the stack trace.
  • The line numbers in search results are now clickable.
  • API: Multiple public lists now have a setter.
  • API: Add a lot more documentation.
  • API: Small documentation revisions made to some models in the library.

Fixed

  • UTMT will no longer duplicate function names.
  • UTMT will no longer randomly crash when attempting to save.
  • The "ImportGMLFile" script will not prompt you to enter an object name when importing collision event scripts.
  • UTMT will no longer sometimes open an incorrect tab, as opposed to the one you clicked on.
  • UTMT will no longer scroll the tab view if the current tab is already fully visible.
  • Some code entries which contained switch statements will no longer freeze the decompiler.
  • The CLI will no longer crash when attempting to dump code from a YYC game.
  • The warning that appears when a file has unexpected padding will no longer be shown in the CLI, when verbose is off.
  • Fix edge case where pasting new code on top of a code entry that had an exception in its output will crash UTMT.
  • Fix UTMT crashing in certain cases when exporting a room as a PNG ("ExportAllRoomsToPng.csx").
  • Adding a new shader now properly allows you to edit it.
  • The disassembly tab will no longer freeze on large code entries.
  • UTMT will now properly discover GameMaker 2.3+ runtimes.
  • When decompiling code, return statements will now be properly shown again.
  • When decompiling certain code entries, parentheses will now be placed to prevent inaccurate decompilation.
  • Fix decompilation errors from code entries using the Boolean type introduced in GameMaker 2.3.7.
  • Fix an edge case where compiling a code entry that had boolean expressions inside of a binary operation would cause games to crash.
  • Detecting GameMaker 2.2.2.302 no longer fails on certain edge cases.
  • Fixed cases where games using shaders and bytecode 13 would not load correctly.
  • Fixed background/tileset parsing for bytecode 12 games.
  • Renamed the ClearDisplayBuffer flag to DoNotClearDisplayBuffer, as that's what it's actually doing.
  • Fix the font size being inaccurately saved as whole numbers.
  • Fix the CLI crashing when a warning or an error has occurred.
  • Fixed an edge case where the built-in updater would crash.
  • When using profile mode, fetching localization comments for Undertale or Deltarune will not endlessly append them.
  • Allow some GameMaker 1.0.0.1250 games, which used builtin audio groups, to load.
  • Fix a regression that led to GameMaker 2.3.1 detection not working correctly in some games.
  • Fix external textures producing warnings when loading data files.
  • Fix false-positive GameMaker 2022.1 version detection, which led to some early 2.3 games failing to load.
  • Fix GameMaker 2.0.6 version detection occurring too late in the load process.
  • Fixes in the decompiler involving parentheses and correctness of the right sides of arithmetic.
  • Fix C# scripts being unable to use relative paths when using the #load preprocessor.

New Contributors

Full Changelog: 0.5.1.0...0.6.0.0

UndertaleModTool v0.5.1.0

05 May 17:11
9d7767d
Compare
Choose a tag to compare

Overview

Additions:

  • The dark mode setting (@VladiStep in #1141, #1221, #1273, #1336, #1342).
  • Tabs content state saving and restoring (tab sessions) (@VladiStep in #1152).
  • More ways of opening an object in a new tab (@VladiStep in #1232).
  • The "Find all references" feature and the new "Find" menu: (@VladiStep in #1246)[0]
    Allows you to search for references of any common type asset by right-clicking:
    - An asset in the main list
    - An object reference in the "Object definition" fields
    - A tile on the GMS 2 tileset image (@VladiStep in #1288)
    - A texture page item on the embedded texture image (@VladiStep in #1293)[0]
  • A support for the tile layer exported data (.csv) from "Tiled" (@VladiStep in #1280)[0].
  • A proper support for code with multiple functions (@Jacky720, @VladiStep in #1191).
  • Proper code editors for shaders (@VladiStep in #1294).
  • A support for sequence text tracks (GM 2022.2 - e.g. "Dono’s Tale") (@VladiStep in #1197).
  • New scripts - "SpriteOriginCopy.csx", "SpriteOriginCopy2_3.csx" (@fixdude in #1144).
  • A support for GM 2023.1 games (e.g. "HoloCure", "Alien XENOCIDE") (@VladiStep in #1206).
  • A support for some GMS 2.0 games (@VladiStep in #1205, #1329).
  • A support for GM 2023.2 games (and particle systems) - e.g "The Slormancer", "Nova Drift" (@VladiStep in #1238, #1353, #1361).
  • An indication for the sub-functions cache building on first decompilation and 3 minutes timeout for it (@VladiStep in #1241).
  • Proper sequence model names for debugging and the "Find all reference" results (@VladiStep in #1254).
  • A support for games with room path layers (@VladiStep in #1256, #1268).
  • A possibility to delete room objects through context menu (@zivmaor, @VladiStep in #1301).
  • The "Run other script..." option on missing "Scripts" folder (@VladiStep in #1364).
  • An option to export one sprite with padding (@VladiStep in #1367).

Fixes:

Changes:

  • The version flags cleanup and proper GM(S) version in the title (@Jacky720, @Miepee, @VladiStep in #1047; @VladiStep in #1213).
  • Game data loading is noticeably faster and uses less RAM (@VladiStep in #1161).
  • Made the embedded texture image zoomable and more interactable (@VladiStep in #1293)[1].
  • A lot of the font editor improvements: (@VladiStep in #1328, #1331, #1332, #1346)
    - Added the red marker for the selected glyph, made the font texture clickable.
    - Made the glyphs table show and accept actual characters.
    ... and more! See the PR description.
  • Disabled room layers are highlighted with gray color (@VladiStep in #1201).
  • The "Timestamp" value (in "General info") is in human-readable format (@VladiStep in #1226).
  • An optimization of the "data.win" file context menu options - e.g. "Run game normally" (@VladiStep in #1245).
  • An optimization of "ExportAllCode2_3.csx" script (@VladiStep in #1239).
  • Room object names improvements (@VladiStep in #1246)[2].
  • Made the room instance layer objects resolving safer - adds a support for a "Pizza Tower D3 v3.1" mod and "Heroine Conquest" (@VladiStep in #1266, #1299).
  • Made the GMS debugger related things more distinguishable from the debug mode in some games; the GMS debugger file option is hidden by default (@VladiStep in #1330).
  • Improved the object reference fields clarity (@VladiStep in #1363).

New Contributors

Full Changelog: 0.5.0.0...0.5.1.0


The CLI version has been moved to the Bleeding Edge release, if you need command line tools get it there, otherwise select "UndertaleModTool_v0.5.1.0.zip".

UndertaleModTool v0.5.0.0

02 Feb 19:14
Compare
Choose a tag to compare

The long awaited UndertaleModTool v0.5.0.0 is here! There are many many changes since the previous version. That should make sense since it has been about a year. Well, lets get started!

Go to the bottom to get the download.

Additions:

Fixes:

Changes:

0.4.0.4

15 Mar 20:38
Compare
Choose a tag to compare

UndertaleModTool v0.4.0.4 has support for the newest Deltarune update. It can also do decompiled editing of code scripts for GMS 2.3+.

General changes:

  • Fixed version detection for older games

Room editor changes:

  • GMS 2 sprite instances and (basic) tile layers support.
  • Fixed horizontal/vertical lines between tiles.
  • Backgrounds and background layers are now working properly.
  • Re-added "Save as PNG" button.
  • Fixed room object selection (always opens clicked object properties).
  • Following features now work with GMS 2 games: drawing with room object, room object order changing (with + or - key), automatic grid size calculation.
  • When selected room object is not in the currently displayed room region, it shows that object by scrolling to it.

Other changes:

  • Fixed various memory leaks.
  • Fixed and optimized "ExportAllRoomsToPng.csx" script.
  • Optimized font editor, so it opens faster.

All files in this release are for x64 computers and includes .NET bundled (no install necessary). This release contains UndertaleModTool single file, UndertaleModTool non-single file, and UndertaleModCLI. If you are encountering strange issues or glitches with the regular single file version, use the non-single file version (abbreviated to NSF).

0.4.0.3

24 Feb 15:29
f0c3581
Compare
Choose a tag to compare

UndertaleModTool v0.4.0.3 has support for the newest Deltarune update. It can also do decompiled editing of code scripts for GMS 2.3+.

All files in this release are for x64 computers and includes .NET bundled (no install necessary). This release contains UndertaleModTool single file, UndertaleModTool non-single file, and UndertaleModCLI. If you are encountering strange issues or glitches with the regular single file version, use the non-single file version (abbreviated to NSF).

0.4.0.2

05 Jan 21:28
Compare
Choose a tag to compare

UndertaleModTool v0.4.0.2 has much better support for newer games in general and many new features.

All files in this release are for x64 computers and includes .NET bundled (no install necessary). This release contains UndertaleModTool single file, UndertaleModTool non-single file, and UndertaleModCLI. If you are encountering strange issues or glitches with the regular single file version, use the non-single file version (abbreviated to NSF).

You can use CTRL+K to compile decompiled code you are editing without clicking out of the editor window.


Changelog

Additions:

  • Added UndertaleModCLI.
  • Added "NewTextureRepacker.csx".
  • Added "SearchLimited.csx" (Search for terms within a limited code scope).
  • Added "SearchASM.csx" (Search disassembly for text).
  • Added "UndertaleRunButton.csx" (allows you to running faster in Undertale using the backspace button).
  • Added "ScaleAllTextures.csx" (upscale or downscale all textures in a game).
  • Added "SafeBlaster.csx" (make the Gaster Blaster more easily moddable into more battles).
  • Add a README.txt file, additional opt out of file associations are available.
  • Added "ExportAllTexturesGrouped.csx" (exports textures by texture group).
  • Added "UndertaleDialogSimulator.csx", mod by Lil'Alien (thank you).

Improvements:

  • Implemented FEDS chunk.
  • Added support for new QOI+BZip2 image format.
  • Allow opening files by drag and dropping them onto the window.
  • Added (dis)assembler support for nullish operator.
  • Changed all tab characters to 4 spaces.
  • UndertaleModLib is now buildable into a Nuget package.
  • Preserve temp file to mitigate data loss.
  • Added a "Don't show me this again" option to the GMS 2.3 warning.

Decompiler Improvements:

  • Rudimentary 2.3 (de)compiler fixes
  • 2D array get/set fix
  • "with (other)" + duplicate fixes
  • Fixed decompiler fails on switch statements with conditionals.
  • Fixed other objects' array "+=".
  • Fixed stacktop/ternary operator combo decompilation.
  • Fixed a typo TempVarAssigmentStatement => TempVarAssignmentStatement.
  • Resolved local variable problems causing slowdown with AM2R modding and other games.
  • Change type resolution rules in ExpressionConstant.ToString().

General search and script improvements:

  • Improved speed of search scripts.
    • Code searching can be accelerated even more by enabling the code caching feature in Settings.
  • Optimized script progress updating.
  • New "ClickableTextOutput" window allows clicking on the code names for the search scripts.
  • Improved scripts error handling, including line numbers.
  • Use of the main UI after Search script results is now allowed.
  • Added support for Scripts and GlobalScripts in "DumpSpecificCode.csx".
  • Truncated exception output in general.
  • Added "SyncBinding()" for possibilty to add/remove game resources from another thread.

Bug Fixes:

  • Old scripts are now backwards compatible.
  • Fixed error where certain text causes hard crash of tool.
  • Fixed crash when attempting to run a new game using temp run feature
  • Fixed erroneous attempt to write to protected areas using ImportGraphics.
  • Fixed bugs in "EnableDebug.csx".
  • Fixed regex error in "ExecutionOrder.csx"
  • Fixed "DeltaruneClearShaderData.csx" to mitigate crashes.
  • Fixed long file name issues in scripts.
  • Adding a code entry from the context menu no longer crashes the app.
  • Fixed "Delete" in the context menu of code entries.

0.4.0.1

07 Oct 04:30
c9188a6
Compare
Choose a tag to compare

UndertaleModTool v0.4.0.1 has much better support for Deltarune Chapter 2.

Release 1 of 0.4.0

18 Sep 19:33
Compare
Choose a tag to compare

This version can load and save Deltarune Chapter 2 to disk successfully.