Skip to content

nturley/cherub-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

cherub-bot

Very simple experiments with a starcraft 2 bot. The main experiment is using the pysc2 api, py_trees, and owl-bt.

image

owl-bt is a behavior tree editor so I can quickly visualize and change my behavior tree construction.

py_trees is the behavior tree runtime and implements the general purpose nodes like some of the composites and decorators. It also has an ascii display which I can use to display the behavior tree at runtime as an overlay on the game

pysc2 is a nice starcraft 2 api that includes some high level functionality and some simple example bots.

Some more principles I plan on following

  • Voronoi Diagram path planning for swarming and multi agent pursuit
    • To simplify the math, I'll probably use discrete approximation. A lot of traditional voronoi algorithms are difficult to adapt for barriers and concave shapes.
  • Planning
    • Hard coded build order openings (like chess)
    • Using a general purpose SAT solver, probably Z3, for tightly constrained optimization problems (economy and build order planning)
    • hardcoded heuristics for approximating large complex optimizations and simulations (opponent modeling, large battle prediction)
  • Logging should read like a story. "Walter finished building a proxy barracks in Colter's Ridge"
    • All non-structure units have randomly generated names from census data like "Bill" or "Juan"
    • All map regions will be given randomly generated names like "Dead Horse Valley" and "Colter's Ridge"
    • Game state observations and interpretations should also be logged. "Colter's ridge appears to be a good candidate for a proxy barracks"
  • Run a debug webserver
    • display observations and interpretations that would be difficult or too crowded to view as an overlay
    • allow running commands and queries to change behavior or test different behaviors at runtime.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published