Skip to content

THK Compiler Decompiler Notes and Workflow

AsteriskAmpersand edited this page Oct 8, 2021 · 2 revisions

The decompiler-compiler is stable: Decompiling and Compiling from a thk or an entire thkl will result in the inputs The compiler-decompiler is NOT stable: Compiling induces data loss, however the compiler-decompiler-compiler loop will match the result of a single compilation.

The decompiler can decompile individual .thk files into .nack files. In this capacity it has minimal syntactical capabilities. The decompiler can decompile a .thkl file. The .thkl is treated as a project. It will not only decompile the .thkl but also all of the .thk referenced on it that it can find. If all .thk references are correctly decompiled it can perform furhter analysis in terms of register usage and node naming (thkl missing a single thk are forced to have coerced functions on the global thk). The .thkl decompiles to an entire project (including a project folder), and the file itself produces a .fand header. A .fand file is used as a project orchestrator. The compiler uses it to generate the compilation structure.

Decompiled Compiled
.thk - Think .nack
.thkl - Think List .fand
.fexty - Forked Function Extension .py

General Tutorials

General Tutorials

Animation Tutorials

Animation Tutorials

Audio Tutorials:

Audio Tutorials

IDs:

File & In Game IDs

Model Tutorials:

Model Tutorials

Effects Tutorials:

EFX Tutorials

FSM Tutorials

FSM Editing

MRL3 Tutorials:

MRL3 Tutorials

NPC Editing:

NPC Editing

Map Editing:

Map Editing

Plugins and Memory Editing:

Plugins and Memory Editing

Quest Editing:

Quest Editing

Monster AI Editing:

Monster AI Editing

Texture Tutorials:

General Texture Tutorials
Specific Texture Tutorials

TIML Editing

TIML Editing

Asterisk's Plugin Notes:

Asterisk's Plugin Notes

Miscellaneous Tutorials:

Miscellaneous Tutorials

Outdated Tutorials:

Outdated Tutorials
Clone this wiki locally