Overview

The Chameleon Twist Decompilation Project is a multi-year project, started on Mar 27, 2022, to rewrite the Nintendo 64 games Chameleon Twist 1 and 2 in C.

The games were originally written in C and compiled to MIPS assembly using an IDO compiler. The project aims to reverse engineer the assembly code so that we may write our own C code that builds an identical game.

The project is hosted on GitHub and is open source. It is currently being worked on primarily by 3 people with help from other N64 decompers.

Offshoot Projects

ctBlend

  • There is an, as yet unpublished, blender tool being worked on by me and another member of the team to allow for the creation of custom levels for Chameleon Twist 1.

Speedrun Practice Mod

  • Using the Mod hooking resources in the decompilation project, I worked with another member of the team to create a mod for the game that allows speedrunners to practice the game easier.

Languages and Skillset

C: Our source code for the game is written in C so it is used for the majority of the project; in addition the N64 sdk is written in C so we use it to interface with the hardware. Modifications for the game also now use C.

Python: Our buildsystem for the rom uses ninja. In addition, we mainly use python to create tools to aid in the reverse engineering process.

MIPS Assembly: The N64 is a MIPS based system so we need a good understanding of MIPS assembly to reverse engineer the game. Further, earlier on in the project we had write MIPS asm to create hooks for modifications to the gameas well as for the modifications themselves.