Go to file
Alula 2f111919d6
Initial Android support and some ggez rewrite
2020-10-07 16:08:12 +02:00
.cargo Initial Android support and some ggez rewrite 2020-10-07 16:08:12 +02:00
.github/workflows Initial Android support and some ggez rewrite 2020-10-07 16:08:12 +02:00
src Initial Android support and some ggez rewrite 2020-10-07 16:08:12 +02:00
.gitignore ignore Profile.dat files 2020-09-22 21:09:51 +02:00
Cargo.toml Initial Android support and some ggez rewrite 2020-10-07 16:08:12 +02:00
LICENSE initial commit 2020-08-18 18:46:07 +02:00
README.md document/implement cs+ switch opcodes 2020-09-26 00:28:37 +02:00

README.md

doukutsu-rs

Release

Download latest Nightly builds (Requires being logged in to GitHub)

A re-implementation of Cave Story (Doukutsu Monogatari) engine written in Rust, aiming for behavior accuracy and cleaner code. Later plans might involve turning it into a fully-featured modding tool with live debugging and stuff.

The engine also contains some (might be buggy and not accurate, everything was pure guess work on data files to avoid legal issues) implementation of Cave Story+ features from both PC and Switch versions.

Note you have to ship the data files yourself if you want to play with those features, but nothing is stopping you from creating a modification of freeware files that uses those new TSC opcodes and features. I'd actually would like to see something cool created using this engine.

The project is still incomplete and might not be playable. Expect lots of breaking changes and bugs

Join the Discord server

Data files

This repo does not redistribute any copyrighted files.

The engine should work fine with CSE2-Enhanced or NXEngine(-evo) modified freeware data files and Cave Story+ data files.

Vanilla Cave Story does not work yet because some important data files are embedded inside executable and we don't have an extractor yet.

Where to get them?

Freeware

Cave Story+

  • PC release - Copy data folder from installation directory (guide for Steam) to the runtime directory.
  • Switch release - While some support is implemented, hacking consoles and extracting cartridge content is a kind of gray legal area so I will leave it to you...

Roadmap

  • Rendering
    • Backdrops
    • Tilemap
    • Player and it's animations
    • Carets
    • Bullets
    • NPCs
    • Text
    • HUD
  • Text scripts (TSC)
    • Initial implementation
    • Execution of basic subset of opcodes and game conversations
    • Full implementation of opcodes
    • Shift-JIS encoding support
  • Audio
    • Organya BGM playback
    • Text script bindings
    • CS+ style .ogg BGM playback
    • PixTone SFX
  • NPCs/entities
    • Initial implementation
    • Miscellaneous entities
    • Bosses
    • First Cave
    • Mimiga Village
    • Egg Corridor
    • Grasstown
  • Weapons
    • Initial implementation
    • Snake
    • Polar Star
    • Fireball
    • Machine Gun
    • Missile Launcher
    • Bubbler
    • Blade
    • Super Missile Launcher
    • Nemesis
    • Spur
  • Modding enhancements and built-in tools
    • Debugger
    • Level editor
    • Texture auto-reload mode for spriters
  • Optional enhanced graphics effects

(tbd)

Mandatory screenshots

Freeware data files:

freeware

Cave Story+ data files:

cs+

Credits