A small bot for Mars Mission written in Rust.
The bot can be run with an optional path to the marsMission
folder containing the game
folder.
cargo run -- path/to/marsMission/out/build/x64-Debug
- Path finding
- Compute weighted distances to all tiles
- Take wheel level into account
- Mine the tile ahead if in the way
- Resource gathering
- Upgrading
- Go through a queue of upgrades
- Get battery before everything else
- Take a heal upgrade if hit points are low
- Go through a queue of upgrades
- Keep opponent cache
- Determine opponents wheel level
- Determine opponents rifle level
- Handle opponent encounters
- Fight back if stronger or can't run away
- Run away
- Place block behind
- Acid handling
- Count turns
- Update internal map accordingly with acid level
- Run to the center of the map
- Final phase (a.k.a caging)
- Assemble cage
- Block corners around entrance and clear centre
- Move to centre, clear around and move to third spot
- Block remaining corners and move back to center
- Handle oncoming players
- Handle players coming into empty spots
- Handle players mining corners
- Assemble cage
- Make use of knowledge that there is only one Osmium per chunk
- Implement a graphical interface
- Display bot state
- Display bot logs
- Display map known by the bot
- Display opponents
- Display path finding
- Colour code weights
- Allow changing constants/parameters(fine-tuning) of the bot
- Implement profiles
- Write unit tests
- WIP...
- Transition the
mars_bot
lib to#![no_std]
This project is licensed under the MIT No Attribution License.