2021 Roguelike Tutorial Jam
This (basic) roguelike is written in GameLisp on top of Rust & bracket-lib. It roughly follows the equivalent Rust tutorial.
The goal of this project is not really to make a roguelike in itself, but to learn a lisp language, embed it within a Rust binary, and make a simple and reusable API.
Run the game
a) You'll need to install Rust.
b) The MRMOTEXT tileset tileset is required. Extract the MRMOTEXT_rexpaint.png
file in the resources
folder.
Then, simply type cargo run
to execute it.
Roadmap
Tutorial
- Part 0 - Setting up
- Part 1 - Drawing the ‘@’ symbol and moving it around
- Part 2 - The generic Entity, the render functions, and the map
- Part 3 - Demo - Generating a dungeon
- Part 4 - Field of view
- Part 5 - Demo - Placing enemies and kicking them (harmlessly)
- Part 6 - Doing (and taking) some damage
- Part 7 - Demo - Creating the Interface
- Part 8 - Items and Inventory
- Part 9 - Ranged Scrolls and Targeting
- Part 10 - Saving and loading
- Part 11 - Delving into the Dungeon
- Part 12 - Increasing Difficulty
- Part 13 - Gearing up
Rust/GameLisp
- Make a barebones ECS
- Optimize
- Implement cache
- Compile a self-contained executable (actually has issues with glsp files)
- Web build
- Live reload of glsp code
Builds
Standalone binary
$ cargo build --release --features "compiler"
Web
$ cargo build --release --target wasm32-unknown-unknown --features "compiler"
$ wasm-bindgen target\wasm32-unknown-unknown\release\roguelike-glsp.wasm --out-dir wasm --no-modules --no-typescript