CTExt is a replacement sqlite3.dll for the PC port of Chrono Trigger. Its main goals are to fix bugs and allow easy modding of the game.
- Fixes the diagonal movement stutter bug by reverting to the original behaviour.
- Fixes the bug with music not resuming after a battle.
- Adds modding capabilities via loose files or by loading CTP files.
- Allows users to disable linear filtering on text and sprites to achieve a pixelated look.
- Enables font replacement and forcing a fixed font size for all text.
- Adds the ability to play audio during character dialogue. This feature was developed for Echo-S CT to enable voice acting.
Check out the current issues to see what work is planned.
You can compile CTExt yourself using Visual Studio 2022 or use a pre-built release.
If you are using a pre-built release of CText, just extract the .7z archive directly into the folder where Chrono Trigger is installed.
If you choose to compile CTExt yourself, you will need to rename Chrono Trigger's existing sqlite3.dll to sqlite3.orig.dll, then copy over the compiled sqlite3.dll, ctext.dll, ctext.json, and loader.cfg files to your Chrono Trigger installation folder.
Delete sqlite3.dll from your Chrono Trigger installation folder and rename sqlite3.orig.dll to sqlite3.dll, or remove the ctext.dll entry in loader.cfg.
sqlite3.dllis a proxy DLL for the original SQLite library that is used by Cocos2d, the game engine used by the PC port of Chrono Trigger. By using a local DLL file with the same name, we can force Chrono Trigger.exe to load our code, allowing us to inject hooks into the game. These hooks change how the code in the game works so that we can do things like redirecting file loading.sqlite3.dllitself does not apply any hooks and is simply a loader for other DLLs.ctext.dllis the main part of CTExt and contains all of the code and hooks.ctext.jsonis the configuration file for CText. With it, you can choose which built-in mods to apply, configure said mods, and set the load order of mods in the\mods\directory.loader.cfgis a line-separated file that tellssqlite3.dllwhich DLLs to load. By default, this file only includesctext.dll, but other DLLs (like SpecialK) can be added to this list.
You can contribute to CTExt in many ways!