![]() A socketIO client / server web socket connection.There are 3 ways in which languages communicate with each other within this app. Utilizes a heuristic based depth first search algorithm to make intelligent movement decisions. ![]() GoLang: Will house all of the AI snake algorithms and will be called through Python.Also has a Rest API in order to create and retrieve data pertaining to the leaderboard. Will also be used to persistently store snake data with SQLite. Will host and run snake games and return results to the front end. Python: The back end of the project, powered by FastAPI, socketIO, and SQLAlchemy.The front end also houses a leaderboard page generated from data retrieved through back end API requests. For game playing, the initial game state is created here and then passed to the socketIO backend and handled there. This is where game creation and game configuration logic will reside. Javascript: The front end of the project, powered by React and React Bootstrap.RestAPI documentation and request building platform built in due to FastAPI (See deployment section for access).Lots of front end validation to mitagate error inputs.Leaderboard of player controlled snakes to house win / loss information.Ability to configure arena options such as grid size, food spawn rate, and map type.Ability to add and remove custom and pre-built snakes onto a game.This can be done with the "Smart Snake" type. Ability to configure your own AI battlesnake through adjusting what the snake prioritizes.Contains pre-built snake AI's that use DFS + heuristics to most optimally survive. ![]() Ability to manually control a snake yourself and play against AI snakes.PS: try maxing out all of the in game settings with one of the AI snakes and enjoy watching it fill up the board. Luckily, there is a tutorial modal that opens right when you visit the website! Please get a good read through of the modal prior to playing. The rules of the game and how to play may be confusing at first. ![]() This project is a web app and serves as both a stand alone game of snake in which you battle amongst AI's and as a testing ground to build the best snake AI for future battle snake tournaments. This project is called Snake Arena and is inspired by BattleSnake, an online AI competition in which you create your own snake AI to battle other AI's. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |