
About
Celeste Classic is the original PICO-8 platformer about climbing a mountain, created by Maddy Thorson and Noel Berry. ccleste is a portable C source port of Celeste Classic, with its game logic (celeste.c/celeste.h) translated by hand from the original PICO-8 Lua code and built without dynamic memory allocation. It targets PC (via SDL/SDL Mixer) and 3DS as its main platforms, with an experimental web port and community-maintained ports to other platforms also available.
How it differs from the original
Most other Celeste Classic ports use floating-point numbers for physics, but PICO-8 itself uses 16.16 fixed-point math; ccleste can optionally be compiled with a preprocessor macro (requiring a C++ compiler, though not linking the C++ standard library) to replicate PICO-8's exact fixed-point behavior, which matters for frame-perfect TAS (tool-assisted speedrun) accuracy.
Getting started
On Unix-like systems, build with make (SDL2 is used by default); a 3DS build is available via devkitPro with the 3ds-sdl, 3ds-sdl_mixer and libctru packages. Controls (jump, dash, pause, save/load state, reset, fullscreen) are provided for both PC and 3DS, and game controllers are supported on PC and the web version when plugged in before launch. TAS files can be played back by passing them as the first argument to the program, or by dragging the file onto the executable on Windows.
Additional notes
- Assets
- Sound effect files are sourced from the Celeste-Classic-GBA project rather than extracted from the original PICO-8 cartridge; music was produced by converting PICO-8's own .wav dumps using Audacity and ffmpeg.