Research YYC game support
Currently, we don't support games that use the YoYo Compiler to embed code into the .exe. It should be possible to allow editing of everything else with some minor UI tweaks though (e.g. display IDs instead of Code object references)
What's the status for a feature like this? I have a game I would like to attempt to mod, though it is compiled with YYC so the UndertaleModTool is very limited in its capabilities.
It seems that the whole point of YYC is that it compiles into machine level code, so decompiling is a much larger task that just reading some information. Is this a feasible task for this modding tool?
To the best of my understanding, that's totally outside of UTMT scope. At that point you're trying to do C++ decompilation and then conversion back into GML and/or bytecode. This issue seems to just focus on being able to edit sprites and other non-code assets, which should be within the realm of possibility.
To the best of my understanding, that's totally outside of UTMT scope. At that point you're trying to do C++ decompilation and then conversion back into GML and/or bytecode. This issue seems to just focus on being able to edit sprites and other non-code assets, which should be within the realm of possibility.
That's about the conclusion I've come to while researching this topic. All things are possible with enough time and effort, but a decompilation tool is certainly out of scope for this tool.
To the best of my understanding, that's totally outside of UTMT scope. At that point you're trying to do C++ decompilation and then conversion back into GML and/or bytecode. This issue seems to just focus on being able to edit sprites and other non-code assets, which should be within the realm of possibility.
It not only should be, but already is, and UMT has support for the vast majority of YYC games (what data is in the data.win file for those games is editable).
Requesting this
Currently, we don't support games that use the YoYo Compiler to embed code into the .exe. It should be possible to allow editing of everything else with some minor UI tweaks though (e.g. display IDs instead of Code object references)
@krzys-h Is this still the case? The phrasing indicates that YYC games are not editable at all, which is not accurate anymore at the time of writing this. However, the specific details mentioned, I am not sure about. If this issue is outdated then I think this issue should be closed.
It's been a while since I looked at how the internals of YYC games (and UTMT itself) worked, but from what I remember, the IDs referencing objects in the CODE chunk were still set to something (probably defined in the compiled native code). UTMT UI displayed them as blank because it had no idea what to do with them, but the underlying code still preserved the values correctly. This makes UTMT usable for editing assets of YYC games, but it may be unusable for people trying to edit the code of YYC games at native code level.
It's definitely outside the scope of UTMT. Maybe it couldn't hurt to do some documentation of it though? It would be very easy to decompile a YYC game (compared to non-gamemaker games) for someone with the know-how. The reason is that the yyc library is used to create a yyc executable, and it has full debug information. Meaning it would be possible to apply function signatures for everything except the game code. Given the game code is transpiled GML though, that's barely a concern
On Sun, Apr 11, 2021, 2:34 AM krzys_h @.***> wrote:
It's been a while since I looked at how the internals of YYC games (and UTMT itself) worked, but from what I remember, the IDs referencing objects in the CODE chunk were still set to something (probably defined in the compiled native code). UTMT UI displayed them as blank because it had no idea what to do with them, but the underlying code still preserved the values correctly. This makes UTMT usable for editing assets of YYC games, but it may be unusable for people trying to edit the code of YYC games at native code level.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/krzys-h/UndertaleModTool/issues/104#issuecomment-817278231, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABSCIYN5KZHTD5NPRQNS2NTTIFUKTANCNFSM4GHQHHDA .