Skip to content

Releases: UnderminersTeam/UndertaleModTool

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.

Prerelease 3 of 0.4.0

24 Jul 19:48
Compare
Choose a tag to compare
Prerelease 3 of 0.4.0 Pre-release
Pre-release

This is the third prerelease of version 0.4.0 of UndertaleModTool.

Changelog

Additions:

  • Added "FindObjectsInRooms.csx".
  • Added unused sound remover scripts.
  • Added copying scripts for sprites, backgrounds, fonts, sounds, and game objects.
  • Added WASD for Undertale (thanks Lil Alien).

Improvements:

  • UndertaleModTool scripts have been reorganized and streamlined.
  • "@@other@@" and "@@this@@" now resolve to "other" and "self".
  • Added warnings for saving/loading with the GMS debugger enabled.

Bug fixes:

  • Fixed audiogroup loading/handling and add Data.AudioGroups.ByName().
  • Fixed asset resolution for some scripts and variables.
  • Disabled DebugMsg.csx for now as it doesn't seem to work properly.
  • Allowed saving of data files of up to ~2GB in size.
  • Updated NAudio to 2.0.1, fixing a crash in .NET 5.0.7.

Why 0.4.0 is split into a pre-release

Before the full release of 0.4.0, we aim to finish implementing dark mode (see the dark-mode branch) as well as solidify the profile system. But for now, we thought it would be a good idea to make the current feature set available for general usage.

Before you run

It's important to note that the .NET version that UndertaleModTool uses has been upgraded to .NET 5.0. This means you may need to download the .NET 5.0 Desktop Runtime, at https://dotnet.microsoft.com/download/dotnet/5.0/runtime. Make sure this is the same architecture as the version of the tool you download; for instance, if you choose x86 for this tool, make sure you download the x86 runtime. If this does not work, please use the "NetBundled" versions of the tools, which do not require installing the net runtime.

Also, since this is a pre-release, it may have some instability. Please report those issues, should you encounter any.

Prerelease 2 of 0.4.0

21 Jun 17:27
Compare
Choose a tag to compare
Prerelease 2 of 0.4.0 Pre-release
Pre-release

This is the second prerelease of version 0.4.0 of UndertaleModTool.

Changelog

  • Fixed an error in ImportAllStrings which caused the safety checks to always fail, also the safety checks in general are more descriptive, and it is also now profile-mode friendly.
  • Added the ReapplyProfileCode helper function.
  • Fixed some asset resolutions and some asset resolver improvements.
  • Searches of no size are now prevented with Search.csx.
  • Added bytecode 16 to 17 conversion script.
  • DeltaHATE.csx now has preliminary support for Undertale as well.
  • Created ReduceEmbeddedTexturePages.csx (experimental and may be buggy).
  • DumpSpecificCode has been fixed to dump only from the objects specified rather than any that share the name.
  • Added a script to simplify the battlegroup script in Undertale.
  • Added a toggle to disable the closing warning.
  • Fixed syntax highlighter for GM:S 1 to not recognize backslashes as escapes.
  • Updated incorrect wiki link.
  • Renamed "ExportAllTexturesWithPadding" to "ExportAllSpritesWithPadding".
  • Fixes an issue that caused games to not load when variables were added or changed.
  • Add VariableFixer script to fix a bug that prevents the game from loading.
  • Intertool communication with AUMI (by Archie).
  • Add the ability to run and/or lint a UndertaleModTool script within a script.
  • DefaultCodeKind flag in General Info was renamed to be more clear about its purpose.
  • Added new string utility scripts made by Porog.
  • ExportAllSprites.csx and ExportAllSpritesWithPadding.csx now have descriptions in the readme.
  • Added script to restore missing code locals.
  • Fixed an error causing multiple files to be erroneously bundled inside UMT instead of being external

Why 0.4.0 is split into a pre-release

Before the full release of 0.4.0, we aim to finish implementing dark mode (see the dark-mode branch) as well as solidify the profile system. But for now, we thought it would be a good idea to make the current feature set available for general usage.

Before you run

It's important to note that the .NET version that UndertaleModTool uses has been upgraded to .NET 5.0. This means you may need to download the .NET 5.0 Desktop Runtime, at https://dotnet.microsoft.com/download/dotnet/5.0/runtime. Make sure this is the same architecture as the version of the tool you download; for instance, if you choose x86 for this tool, make sure you download the x86 runtime.

Also, since this is a pre-release, it may have some instability. Please report those issues, should you encounter any.

Prerelease 1 of 0.4.0

13 May 20:59
Compare
Choose a tag to compare
Prerelease 1 of 0.4.0 Pre-release
Pre-release

This is a prerelease of version 0.4.0 of UndertaleModTool, featuring loads of internal and UI changes.

Changelog

  • GMS2.3 support has been improved: games can now be loaded and saved.
    • Decompilation has only been very lightly touched; a few of the new features are supported.
    • Compilation occasionally will work, but often does not.
    • It is recommended to use the disassembly editor to edit code for these games.
  • Overhauled code and disassembly editors. They now support (brand new) syntax highlighting as you edit, along with far greater performance. A few notes:
    • Double-clicking is no longer necessary; upon typing, the tool will recognize code needs to be compiled.
    • Syntax highlighting is based off of GMS2 editor colors.
  • Scripts rearranged into more descriptive categories: many have been renamed, and some new ones have been added. Check the SCRIPTS.md file for more detailed information on this.
  • Added a new work-in-progress profile system, which retains all code changes including formatting/comments. This is experimental and may not be compatible in the future, so it is disabled by default.
  • Code corrections (for the decompiler) for Undertale and Deltarune are now bundled by md5 hash, used by the profile system.
  • Completely new assembly syntax, which uses only necessary labels and is compatible with GMS2.3 (with sub-code entries). This makes bytecode easier to read and edit.
  • A number of scripts have been refactored to be compatible with the profile system, along with various fixes, such as the border enabler script resulting in decompilation errors.
  • Both the decompiler and compiler have undergone thorough optimizations and some refactors, leading to often at least twice the speed, and even greater gains with larger scripts. Editing large scripts is now less infuriating.
  • The codebase has been upgraded to .NET 5.0. Read the "before you run" section for more information.
  • The tool is now compiled using Release mode, rather than Debug mode, as some code that relied on debug tracing has been refactored. This allows for better performance.
  • Tool settings have been relocated to %appdata%\UndertaleModTool. The old settings files are incompatible now, but due to this it can now save settings across different tool versions.
    • (The profile system also uses this directory.)
  • Support for file format ID 13 (also known as "bytecode 13") has been added. This allows for some older games to be loaded.
    • Along with this, support for games without short-circuiting in GML has been added. These are few and far between, but do exist.
  • New asset type resolutions based on context have been added to the decompiler. This includes some blending functions, for instance, as well as user events.
  • An endless number of bugfixes and minor tweaks, among other refactors.

Why 0.4.0 is split into a pre-release

Before the full release of 0.4.0, we aim to finish implementing dark mode (see the dark-mode branch) as well as solidify the profile system. But for now, we thought it would be a good idea to make the current feature set available for general usage.

Before you run

It's important to note that the .NET version that UndertaleModTool uses has been upgraded to .NET 5.0. This means you may need to download the .NET 5.0 Desktop Runtime, at https://dotnet.microsoft.com/download/dotnet/5.0/runtime. Make sure this is the same architecture as the version of the tool you download; for instance, if you choose x86 for this tool, make sure you download the x86 runtime.

Also, since this is a pre-release, it may have some instability. Please report those issues, should you encounter any.

0.3.5.8

15 Mar 16:29
8c808ef
Compare
Choose a tag to compare

The big one
Woah! New update! With new features???? Tell me more! :O

Change log:

  • New extension editor
  • New timeline editor
  • Some new experimental scripts
  • Fix for padding issue, extension chunk issue (thank you @Mc-muffin)
  • Other changes
  • Product IDs would not display in the new UMT extension editor UI for GMS1 games, this has been corrected.
  • Fixed an issue that would cause crashes due to an unset string.

I probably will update this change log to include new things, if I remember. Better to get it out now rather than later!

Enjoy everybody

  • Grossley

0.3.5.7

05 Mar 03:53
Compare
Choose a tag to compare

Add code search sample script.