https://github.com/wyatt-herkamp/dumbledore
An ECS designed with Async calls in mind
https://github.com/wyatt-herkamp/dumbledore
Last synced: about 1 month ago
JSON representation
An ECS designed with Async calls in mind
- Host: GitHub
- URL: https://github.com/wyatt-herkamp/dumbledore
- Owner: wyatt-herkamp
- License: mit
- Created: 2022-06-28T14:00:16.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2022-10-18T18:29:44.000Z (over 2 years ago)
- Last Synced: 2025-01-27T13:50:29.028Z (3 months ago)
- Language: Rust
- Size: 63.5 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Dumbledore
[](https://docs.rs/dumbledore/)
[](https://crates.io/crates/dumbledore)
[](LICENSE-MIT)
[](https://doc.rust-lang.org/book/ch19-01-unsafe-rust.html)ECS for the game server
## Performance
Dumbledore sacrifices some performance for allowing async calling. However, the performance seems to be comparable to other projects such as [hecs].## Warning! Seriously read this!
This project is experimental and is designed to be used in a server environment.
Basically using async calls on a normal game client might not be optimal.
##### This is also my first attempt at unsafe Rust code.
If you have any suggestions, please let me know. I am open to any feedback on this project.#### Other Projects I recommend:
- [hecs], Which I used as a reference for this project and is a great
starting point for maintained ECS
- [bevy]
- [specs]
- [legion][bevy]: https://github.com/bevyengine/bevy
[specs]: https://github.com/amethyst/specs
[legion]: https://github.com/TomGillen/legion
[hecs]: https://github.com/Ralith/hecs
## Why is it named Dumbledore?
I used a random name generator also known as [peterhenryd](https://github.com/peterhenryd).
"it makes sense. an ecs is magical + controls everything" - peterhenryd
### Thanks!
Special thanks to [SanderMertens](https://github.com/SanderMertens) for his resources on ECS design.