principia/utils/README.md

1.4 KiB

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.