principia/utils
2026-06-02 21:29:56 +02:00
..
featured-list-creator Fix up usage instructions for featured-list-creator 2026-06-02 00:38:18 +02:00
kaitai Import Kaitai Struct files into utils/kaitai/ 2026-06-02 16:52:24 +02:00
lvl-icon-extractor Add lvl-icon-extractor tool for extracting icon from level files 2026-05-31 00:17:18 +02:00
lvlbuf-decompressor Add lvlbuf-decompressor tool for decompressing level buffer 2026-05-31 01:14:08 +02:00
lvledit Add compiler flags for dead code removal in util programs 2026-05-31 00:17:48 +02:00
package-creator Add package-creator tool for making package files from JSON data 2026-06-02 16:14:56 +02:00
progress-dump Add progress-dump tool for dumping data.bin progress data 2026-06-02 21:29:56 +02:00
progress-get Add compiler flags for dead code removal in util programs 2026-05-31 00:17:48 +02:00
.gitignore Move util programs back into main repository 2026-05-30 01:04:34 +02:00
Makefile Add progress-dump tool for dumping data.bin progress data 2026-06-02 21:29:56 +02:00
prepare_release_builds.sh Add script to prepare release builds 2025-09-11 23:44:28 +02:00
README.md Add progress-dump tool for dumping data.bin progress data 2026-06-02 21:29:56 +02:00
set_version.lua set_version.lua: Update AppStream metainfo version info 2025-09-24 00:24:11 +02:00
update-sandbox-menu.sh Minor fixes to the sandbox menu texture creation pipeline 2026-03-12 21:13:00 +01:00

utils

This directory contains utility scripts and programs used for Principia development or for working with file formats.

Scripts

  • prepare_release_builds.sh: Download and prepare release builds when making a release
  • set_version.lua: Update the version number across the codebase when preparing a release (See Making a Release).
  • update-sandbox-menu.sh: Update the pre-rendered sandbox and item menu

Programs

Most of these programs rely on source files from the main Principia codebase and need to be compiled to run. Likely only works on Linux. You can use the Makefile in each directory or run make in the utils directory to build all of them.

  • featured-list-creator: Generate a fl.cache file for use on the Principia community site
  • lvl-icon-extractor: Extract the embedded level icon in a Principia level file
  • lvlbuf-decompressor: Decompress the level buffer of a Principia level file
  • lvledit: Edit metadata of Principia level files
  • package-creator: Create a Principia package file from JSON data
  • progress-dump: Dump the contents of a data.bin file to a human-readable format
  • progress-get: Get leaderboard score for a given level from a data.bin file

Kaitai Struct files

The kaitai directory contains Kaitai Struct files that describe some of Principia's file formats.