mirror of
https://github.com/Xevion/Pac-Man.git
synced 2025-12-06 03:15:48 -06:00
v0.2.1
Pac-Man
If the title doesn't clue you in, I'm remaking Pac-Man with SDL and Rust.
The project is extremely early in development, but check back in a week, and maybe I'll have something cool to look at.
Feature Targets
- Near-perfect replication of logic, scoring, graphics, sound, and behaviors.
- Written in Rust, buildable on Windows, Linux, Mac and WebAssembly.
- Online demo, playable in a browser.
- Automatic build system, with releases for Windows, Linux, and Mac & Web-Assembly.
- Debug tooling
- Game state visualization
- Game speed controls + pausing
- Log tracing
- Performance details
Experimental Ideas
- Perfected Ghost Algorithms
- More than 4 ghosts
- Custom Level Generation
- Multi-map tunnelling
Installation
Besides SDL2, the following extensions are required: Image, Mixer, and TTF.
Ubuntu
On Ubuntu, you can install the required packages with the following command:
sudo apt install libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev
Windows
On Windows, installation requires either building from source (not covered), or downloading the pre-built binaries.
The latest releases can be found here:
Download each for your architecture, and locate the appropriately named DLL within. Move said DLL to root of this project.
Building
To build the project, run the following command:
cargo build
During development, you can easily run the project with:
cargo run
cargo run -q # Quiet mode, no logging
cargo run --release # Release mode, optimized
Languages
Rust
92.3%
TypeScript
6.1%
HTML
0.7%
Dockerfile
0.4%
Just
0.3%
Other
0.2%