UnderminersTeam / UndertaleModTool

The most complete tool for modding, decompiling and unpacking Undertale (and other GameMaker games!)
GNU General Public License v3.0
1.19k stars 234 forks source link

UMT should be able to fix issues caused by earlier UT hacking tools #855

Open wertercatt opened 2 years ago

wertercatt commented 2 years ago

Undertale 非公式日本語化パッチ is a Japanese fan translation of Undertale v1.001 which is most notable for predating the official 8-4 translation from v1.05.

The full error message is:

Load error
An error occurred while trying to load:
Read underflow
at 00DC94DB while reading chunk FONT

The patch can be found here: https://archive.org/details/undertale-v1.001-japanese-fan-translation but it does require a v1.001 game.win to work.

Jacky720 commented 2 years ago

Does this work on older versions of the mod tool? If so, it's a problem with the new font handling to detect GameMaker 2022. If not, it's most likely because the chunk padding was corrupted by the tool used to create the mod, which is fixable but a hassle. Which is it?

wertercatt commented 2 years ago

Regression Check Results:

0.0.1 - Incorrect padding in FONT, expected 1
0.0.2 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.0.3 - Only bytecode version 16 is supported for now, you are trying to load 15 at 000005D0 while reading object UndertaleModLib.Models.UndertaleGeneralInfo in chunk GEN8
0.1.4 - Only bytecode version 16 is supported for now, you are trying to load 15 at 000005D0 while reading object UndertaleModLib.Models.UndertaleGeneralInfo in chunk GEN8
0.1.5 - Only bytecode version 16 is supported for now, you are trying to load 15 at 000005D0 while reading object UndertaleModLib.Models.UndertaleGeneralInfo in chunk GEN8
0.1.6 - Only bytecode version 16 is supported for now, you are trying to load 15 at 000005D0 while reading object UndertaleModLib.Models.UndertaleGeneralInfo in chunk GEN8
0.1.7 - Only bytecode version 16 is supported for now, you are trying to load 15 at 000005D0 while reading object UndertaleModLib.Models.UndertaleGeneralInfo in chunk GEN8
0.1.8 - Only bytecode version 16 is supported for now, you are trying to load 15 at 000005D0 while reading object UndertaleModLib.Models.UndertaleGeneralInfo in chunk GEN8
0.1.9 - Only bytecode version 16 is supported for now, you are trying to load 15 at 000005D0 while reading object UndertaleModLib.Models.UndertaleGeneralInfo in chunk GEN8
0.1.10 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.11 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.12 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.13 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.14 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.15 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.15b - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.15c - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.16 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.17 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.18 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.19 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.20 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.21 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.22 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.23 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.24 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.1.25 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.2.0 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.0 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.1 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.2 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.3 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.4 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.4.1 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.4.2 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.5 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.5.1 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.5.2 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.5.3 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.5.4 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.5.5 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.5.6 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.5.7 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.3.5.8 - Incorrect padding in FONT, expected 1 at 00DC92DF while reading chunk FONT
0.4.0.0-pre1 - Read underflow at 00DC94DB while reading chunk FONT
0.4.0.0-pre2 - Read underflow at 00DC94DB while reading chunk FONT
0.4.0.0-pre3 - Read underflow at 00DC94DB while reading chunk FONT
0.4.0.0-Release-01 - Read underflow at 00DC94DB while reading chunk FONT
0.4.0.1 - Read underflow at 00DC94DB while reading chunk FONT
0.4.0.2 - Read underflow at 00DC94DB while reading chunk FONT
0.4.0.3 - Read underflow at 00DC94DB while reading chunk FONT
0.4.0.4 - Read underflow at 00DC94DB while reading chunk FONT
Miepee commented 2 years ago

This sounds like an issue due to the tool the patch was made with and not UTMT.

wertercatt commented 2 years ago

This sounds like an issue due to the tool the patch was made with and not UTMT.

Is there a way to repair the data.win?

Miepee commented 2 years ago

@Grossley had a tool for that I think.

Miepee commented 2 years ago

Noted all issues that may or may not be affected by the same hacking tool:

586, #378, #297 (not sure about this one, lot of info missing probably assuming cause of piracy stuff), #141, #390, #602, #83.

327 seems related at first, but it can actually open the data.win file and just has compiler troubles.

@wertercatt from where did you get this japanese translation? It'd be useful for figuring out how it's different / convert it to a proper format.

wertercatt commented 2 years ago

Noted all issues that may or may not be affected by the same hacking tool:

586, #378, #297 (not sure about this one, lot of info missing probably assuming cause of piracy stuff), #141, #390, #602, #83.

327 seems related at first, but it can actually open the data.win file and just has compiler troubles.

@wertercatt from where did you get this japanese translation? It'd be useful for figuring out how it's different / convert it to a proper format.

I dug it up from the depths of the internet. It used to be hosted on a wix site which is now deleted. The readme.txt included with the patch can be read here

Miepee commented 2 years ago

So from that readme, I could gather that the earlier tools used were TranslaTale and/or UndertaleTools. Their source is luckily still open, so it's possible to view what they're doing differently that the runner still accepts but UMT doesn't.

wertercatt commented 2 years ago

It seems they might have used DetermiToolkit as well, judging by this translation spreadsheet they linked in the readme which I have mirrored to archive.org.

Dobby233Liu commented 1 year ago

This means allowing files from legacy modtools to load. @Grossley agreed to the idea for us to recreate broken files after loading them with consent from the user, perhaps this can be a part of this

Recreate broken data file?
-------------------------
This file seems to be created with a legacy mod tool (i.e. TranslaTale),
which are mostly known to create broken data files such as this one.
Recreating this file in the proper format could be beneficial,
bringing the file the ability to be edited in older UndertaleModTool versions,
and makes it less prone to unexceptional crashes during runtime.

Do you want to recreate this file? Note that this will irreversibly
overwrite the original file's contents. You can also do this
later by saving normally.
Jacky720 commented 5 months ago

UnderTale v1.0u3 Rus.xdelta.zip This is another such mod courtesy of issue #1797, as a patch to apply to the Windows Steam 1.001 version of Undertale. (That produced the smallest patch, so I assume it's the basis of the mod.)

And, here's what appears to be the same mod ported to 1.08 Steam (conveniently, the patch is smaller and it's a more common version for most people): Undertale 1.08c.xdelta.zip

I believe that's also the 1.08c referenced by #1075, so, mystery solved there.

zick190210 commented 5 months ago

UnderTale v1.0u3 Rus.xdelta.zip This is another such mod courtesy of issue #1797, as a patch to apply to the Windows Steam 1.001 version of Undertale. (That produced the smallest patch, so I assume it's the basis of the mod.)

And, here's what appears to be the same mod ported to 1.08 Steam (conveniently, the patch is smaller and it's a more common version for most people): Undertale 1.08c.xdelta.zip

I believe that's also the 1.08c referenced by #1075, so, mystery solved there.

DOESNT HELP image

Jacky720 commented 5 months ago

Which one are you applying, and which version of Undertale is your base?

edit: Also, isn't this the version you already have? I'm posting it as a resource for research, it's not "fixed" or anything.

zick190210 commented 5 months ago

Which one are you applying, and which version of Undertale is your base?

edit: Also, isn't this the version you already have? I'm posting it as a resource for research, it's not "fixed" or anything. 1 08 rus