.cargo | ||
.github/workflows | ||
src | ||
.appveyor.yml | ||
.gitignore | ||
Cargo.toml | ||
LICENSE | ||
README.md |
doukutsu-rs
Download latest Nightly builds (Requires being logged in to GitHub)
A re-implementation of Cave Story (Doukutsu Monogatari) engine written in Rust.
The project is still incomplete and not fully playable yet.
Data files
This repository does not contain any copyrighted files.
For better user experience, pre-built binaries are distributed with slightly modified freeware game files.
doukutsu-rs should work fine with pre-extracted and tweaked data files from this repository, NXEngine(-evo) extracted freeware data files and Cave Story+ data files.
Vanilla Cave Story does not work yet because some important data files have been embedded inside the executable. and we don't have a loader/extractor implemented yet.
Where to get them?
Freeware
- https://github.com/doukutsu-rs/game-data - Freeware game data distributed with CI builds, based on those two below.
https://github.com/Clownacy/CSE2/archive/enhanced.zip - copygame_english/data
from archive to the runtime directory (place you run the executable from, usually project root)- https://github.com/nxengine/nxengine-evo/releases/download/v2.6.4/NXEngine-v2.6.4-Win32.zip - copy
NXEngine-evo-2.6.4-xxx/data
from the archive to runtime directory
Cave Story+
- PC release (Steam) - (Tested only with Steam version, both Windows and Linux builds) Copy
data
folder from installation directory (guide for Steam) to the runtime directory. - PC release (EGS) - (Untested, but the game is essentially the same as Steam release) Same thing as with Steam version.
- Switch release - (Tested once, no guarantee to work) You need a hacked Switch and physical release. Google should help you.
Gameplay support roadmap
-
Checkmarked things = fully implemented
-
Unmarked things = partially or not implemented yet.
-
Text scripts (TSC)
- Initial implementation
- Full implementation of gameplay opcodes
- Shift-JIS encoding support
- Credits opcodes
-
Audio
- Organya BGM playback
- Text script bindings
- CS+ style .ogg BGM playback
- PixTone SFX
-
NPCs/entities
- Initial implementation
- Miscellaneous entities (~40% done)
- Bosses (~30% done)
- Omega
- Balfrog
- Monster X
- First Cave
- Mimiga Village
- Egg Corridor
- Grasstown
- Sand Zone (~50% done)
- Labirynth (~10% done)
- Waterway
- Egg Corridor? (~20% done)
- Outer Wall
- Plantation
- Last Cave
- Balcony
- Hell
-
Weapons
- Leveling / XP system
- Initial implementation
- Snake
- Polar Star
- Fireball
- Machine Gun
- Missile Launcher
- Bubbler
- Blade
- Super Missile Launcher
- Nemesis
- Spur
-
Saving and loading game state
-
Support for different game editions
- Vanilla
- Modified vanilla
- Cave Story+ (PC/Switch)
- Base mod
- Mod loading
- Curly Story
- Wind Fortress
- Boss Run
- Seasonal graphics
- Co-op gameplay
(tbd)
Mandatory screenshots
Freeware data files:
Cave Story+ data files:
Credits
- Studio Pixel/Nicalis for Cave Story
- Cave Story Tribute Site - has lots of useful resources related to the game.
- CSE2 - widescreen fixes, more readable reference for game logic, mutual help in various things.
- LunarLambda for organism - which is being used by us as
.org
playback engine.