https://github.com/sphinxc0re/rpg-rs
A very basic RPG engine written in Rust
https://github.com/sphinxc0re/rpg-rs
engine rpg rust wip
Last synced: about 2 months ago
JSON representation
A very basic RPG engine written in Rust
- Host: GitHub
- URL: https://github.com/sphinxc0re/rpg-rs
- Owner: sphinxc0re
- License: mit
- Created: 2016-11-23T01:04:47.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-03-16T19:28:31.000Z (about 8 years ago)
- Last Synced: 2025-04-12T11:59:30.349Z (about 2 months ago)
- Topics: engine, rpg, rust, wip
- Language: Rust
- Homepage:
- Size: 59.6 KB
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# rpg-rs [](https://crates.io/crates/rpg) [](https://travis-ci.org/raven-rpg/rpg-rs) [](https://coveralls.io/github/raven-rpg/rpg-rs?branch=master) [](https://docs.rs/rpg)
Welcome traveler! Don't be frightened by that *cryptc* name above. This project aims to implement the **very basic** data and mechanics of an RPG. Of course, there are a lot of ways to interpret and implement an RPG and I guess there will always be someone who disagrees with my implementation. So feel free to contribute and share the code and if this doesn't feel right to you, create a fork and create your own better variant.**THIS LIBRARY IS STILL UNDER HEAVY DEVELOPMENT AND IN NO WAY STABLE OR COMLETE.**
**I HIGHLY RECOMMEND TO NOT USE IT IN PRODUCTION!**
## Roadmap
The next goal for me is to let you do this:
```rust
extern crate rpg;use rpg::{Engine, EngineContext};
fn main() {
let mut engine = Engine::new();engine.setup(|context| {
// Setup your game
// ...
// ..
// .// Return the altered/non-altered context
context
});engine.update(|context| {
// Implement your update mechanics// Return the altered/non-altered context
EngineContext { invalid: true, ..context }
});engine.draw(|context| {
// Implement your output// Return the altered/non-altered context
EngineContext { running: false, ..context }
});// Start the engine => run the game
engine.start();
}
```
Also asset management will be part of the next *release*.If you have any questions regarding the progress or the technology of the project, you can join me on IRC: `#rpg-rs @ freenode`