Crates.io | lemon-mbl |
lib.rs | lemon-mbl |
version | |
source | src |
created_at | 2024-12-08 12:15:14.326323 |
updated_at | 2024-12-11 20:37:41.725214 |
description | LeMon - Monster Battle Library is a rust crate which contains game logic for simulated monster battles. The goals are to be easily extendable with new monsters, moves, abilities, etc. and to explore the structure of battle systems you would find in Pokemon or similar creature collectors. |
homepage | |
repository | https://github.com/Zitronenjoghurt/lemon-mbl |
max_upload_size | |
id | 1476255 |
Cargo.toml error: | TOML parse error at line 25, column 1 | 25 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include` |
size | 0 |
WORK IN PROGRESS!
This is a rust crate which contains game logic for simulated monster battles. The goals are to be easily extendable with new monsters, moves, abilities, etc. and to explore the structure of battle systems you would find in Pokemon or similar creature collectors.
Functional battle game-loop
Install it in your rust project via:
cargo add lemon-mbl
Will be added once theres a stable API
In the following sections I will document how the overall battle system will work. This is highly work-in-progress, and therefore subject to changes, additions and removals.
The main mechanical loop in battle will be Momentum -> Energy -> Actions. Each monster will start with a bit of their maximum energy (depending on their vigilance stat). With certain actions they will be able to build up momentum and higher momentum will recharge their energy faster, which will allow them to spend their energy on more and more expensive actions.
An explanation of some of the base stats that every monster has.
Every monster will have 1 or more physical types, which describe what kind of material they consist of. These could be stuff like Organic, Slime, Ethereal, Construct, ... Attacking actions of certain damage types might have advantage or disadvantage against different kind of physical types. E.g. fire-based action might have an advantage against slime-based monsters.
Every monster will also have 1 or more elemental types, which describe what kind of power they can harness/control or what kind of power makes up their being. Similar to the physical type, different damage types might have advantage/disadvantage against certain elemental types. This creates an additional layer of complexity since now, if a slime is of elemental type frost and frost has advantage against fire-based actions, the previous fire weakness of the slime will be evened out.
Work in progress. I'll continuously extend on those ideas, it's probably a bit random but might help to give a bit of context to this little "game". Inspirations are Persona, Pokemon and Mob Psycho.
The Veil is a ubiquitous field of energy that exists independent of the physical world. Because of some kind of imbalance, veil energy infiltrates the physical world where it's able to focus into so called 'Veil Nodes' which manifest into different kinds of monsters. Veil Nodes can pose a significant threat to humans as they are uncontrollable and unpredictable.
Veil users have the innate ability to control veil energy. Perhaps there will be some kind of way to capture and manipulate Veil Nodes to fight for them.