Skip to content
This repository has been archived by the owner on Feb 10, 2023. It is now read-only.

Latest commit

 

History

History
200 lines (161 loc) · 21.4 KB

README.md

File metadata and controls

200 lines (161 loc) · 21.4 KB

Awesome Battlesnake Awesome

A curated list of Battlesnake resources

MOVED

NOTE: This list is now officially hosted by Battlesnake, you can find its new home here: https://github.com/BattlesnakeOfficial/awesome-battlesnake

You can still contribute if you follow that link. Huge thank you to everyone who has contributed!

Contributing

Contributions welcome! Read the contribution guidelines first.

Contents

Battlesnakes

⬆️ Back to top

Developer Stories

⬆️ Back to top

Game Rules and Logic

⬆️ Back to top

Live Streamers

These people live stream their Battlesnake adventures, let's show our support!. This is definitely not an exhaustive list, just a few that I have noticed are more active. Be sure to search for the "battlesnake" keyword on Twitch, and check the #livestreams announcement channel in Battlensake's Discord to find new streamers.

  • ChaelCodes - ChaelCodes is a professional developer who likes "to live-code and play programming-adjacent games" - notably having streamed development on the snakes HettieCodes and CorneliusCodes, but has a variety of other projects.
  • coreyja - Rust, Ruby, Battlesnake!
  • defiines - Sometimes streams Battlesnake, Codewars, and more! Creator of the NES gamepad-controlled Battlesnake.
  • geehlive - Developer advocate at Twilio and passionate about open source software.
  • penelope_zone - Penelope (She/Her or They/Them pronouns) has been known to stream development of Rust battlesnakes, and has been very open about discussing interesting algorithms such as MCTS in the community

⬆️ Back to top

Machine Learning and Data Science

⬆️ Back to top

Starter Projects

Battlesnake has an official list of starter projects, including those from the community. This section is reserved for any notable project templates that haven't made that list.

⬆️ Back to top

Strategies and Algorithms

This is not exhaustive--these topics are ones that members of the Battlesnake community have decided to share that they use for their snakes. Juicy secrets!

See also Useful Algorithms from the official documentation, where folks are beginning to contribute more details on how these algorithms apply to Battlesnake specifically.

  • A* (A-star) - A graph traversal and path search algorithm
  • Flood Fill - An algorithm that helps determine areas that are open/connected
  • Minimax - A tree search algorithm popular among battlesnakes, often paired with Alpha-beta pruning
  • Monte Carlo tree search (MCTS) - A tree search algorithm with many variants, sometimes using random rollouts and Upper Confidence Trees
  • NNUE - A neural network-based evaluation function that runs efficiently on CPUs
  • Voronoi - Useful for estimating board area control

Third-Party Tools

⬆️ Back to top

Tutorials

⬆️ Back to top

Miscellaneous

⬆️ Back to top