Skip to content

Latest commit

 

History

History
25 lines (19 loc) · 1.55 KB

README.md

File metadata and controls

25 lines (19 loc) · 1.55 KB

LibTEngine

A code library for games that derive from Turok 2's game engine which currently supports Turok 2 and Turok 3

What is this?

This is a code library for games that derive from Turok 2's game engine.
The library contains structures and function signatures which I have defined from reverse engineering games which are or derive from Turok 2.
This means that you can write C code that will run in the context of one of the Turok2-engine games, thus the name "libtengine," or Library for Turok[2] Engine, you can find example code here

If you are just here for the mneonics:

  • Documentation on the mneonics of Turok 2 can be found here
  • Documentation on the mneonics of Turok 3 can be found here

How was this done, what tools did you use?

To do this, I have used various tools:

  • Project64 for the great in-dev debugger
  • ModLoader64 for some debugging utilities I wrote
  • Ida for the disassembler and opcode utilities
  • Ghidra, and by extension N64LoaderWV to keep track of how the games utilize structures (and to help define them)
  • Mips To C for the excellent pseudocode

Special Thanks

Kaiser has been very helpful!
Badger and DoomMarine from the Turok community for testing my shenanigans