WHAT IS THIS?
"A Battlesnake is a programmed web server that implements the Battlesnake HTTP API to play the game snake against other Battlesnakes. When a game is running, the Battlesnake Game Engine will make HTTP requests to your server, sending you game information and asking for your next move." -BattleSnake
In simpler terms, Battlesnake is a great way to kick in the door with AI, web servers, deployment, and networking.
WHAT I GOT OUT OF IT
I. Learned. In. Excess.
This for me was an entry into deployment, git, python, web servers, and hackathons. It was a very cool experience, I met droves of really amazing people and companies. Moreover, since I went in solo I met a lot of competitors that were more than willing to help out.
That being said, my software skills and problem solving skills were tested. In hindsight I went about the problems totally backwards. My heavy reliance on physics and vector math tied my hands when trying to solve more complex tasks. Whilst there I heard about BFS, a pathing algorithm, and it baffled me. After further reading I understand why everyone and their dog used this method of pathing.
In summary, it was an amazing opportunity and I am glad I took it. I would recommend if you believe you don't have enough experience for an event, the worst case is you're right and you learn. I am super excited to apply all of my knowledge to the 2020 competition.
Cya y'all there!
To start, I made a function to parse the json returned from the response given by the api of the game server. Secondly, I applied the sorted data to a 2d array to better visualize the data and increase speed of algorithms in future functions. Furthermore, I applied strategy taught by meetings before the event in a game state way [no memory of past turns]. After ~1000 lines code preformed perfectly though logic of strategy was flawed.
- Python 2.7.13
Quotes: Battlesnake [Link]
BY RYAN BARCLAY