Skip to content

BlueGhostGH/mars_bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mars Bot

A small bot for Mars Mission written in Rust.

Running the bot

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

TODO

  • 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
  • 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
  • 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]

License

This project is licensed under the MIT No Attribution License.

Releases

No releases published

Packages

No packages published

Languages