{"id":13693054,"url":"https://github.com/woofers/battlesnake","last_synced_at":"2026-04-06T03:35:57.951Z","repository":{"id":80638892,"uuid":"125577914","full_name":"woofers/battlesnake","owner":"woofers","description":"🐍 Battlesnakes for 2018, 2019 and 2020 🐍","archived":false,"fork":false,"pushed_at":"2020-04-26T05:18:25.000Z","size":6310,"stargazers_count":4,"open_issues_count":4,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-10-11T15:08:18.216Z","etag":null,"topics":["api","battlesnake","battlesnakeio","gson","java"],"latest_commit_sha":null,"homepage":"https://battlesnake-liquid.herokuapp.com","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/woofers.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"License.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2018-03-16T22:53:19.000Z","updated_at":"2022-11-12T09:34:33.000Z","dependencies_parsed_at":"2023-03-06T19:45:28.266Z","dependency_job_id":null,"html_url":"https://github.com/woofers/battlesnake","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/woofers%2Fbattlesnake","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/woofers%2Fbattlesnake/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/woofers%2Fbattlesnake/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/woofers%2Fbattlesnake/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/woofers","download_url":"https://codeload.github.com/woofers/battlesnake/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221427390,"owners_count":16819020,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","battlesnake","battlesnakeio","gson","java"],"created_at":"2024-08-02T17:01:04.982Z","updated_at":"2026-04-06T03:35:52.917Z","avatar_url":"https://github.com/woofers.png","language":"Java","funding_links":[],"categories":["Battlesnakes"],"sub_categories":[],"readme":"\n\n# Battlesnake\n\n\u003cimg height=\"120\" width=\"120\" src=\"screenshots/advanced.png\" /\u003e\n\n\nA simple [Battlesnake](https://play.battlesnake.com/) written in Java.\n\nDeployed to [https://battlesnake-liquid.herokuapp.com/](https://battlesnake-liquid.herokuapp.com/)\n\nBattlesnake documentation can be found at \u003chttps://docs.battlesnake.com/\u003e.\n\n[![img](https://www.herokucdn.com/deploy/button.png)](https://heroku.com/deploy)\n\n## Competition History\n\nVariations of this snake have participated in multiple Battlesnake competitions.\n\n* Competed in the veteran division of Battlesnake: Stay Home and Code as  🚚🦴🐶 𝗪𝗔𝗟𝗧𝗘𝗥 👑 🚒\n\n* Competed in the expert division of Battlesnake 2019 \u0026 Battlesnake 2019 Winter Classic as  🐍 ‏‏‎𝙎𝙐𝙋𝙀𝙍 𝙎𝙇𝙄𝙈𝙀𝙔 ‏🐍 - [View Snake](https://github.com/woofers/battlesnake-2019/tree/battlesnake-2019)\n\n* Competed in the intermediate division Battlesnake 2018 as **Solid Snake** - [View Snake](https://github.com/woofers/battlesnake-2019/tree/battlesnake-2018)\n\n## Strategy\n\nOur snake's strategy was aggresive. For each turn, if the snake wasn't\nthe largest on the board, or if the health was below a specific\nthreshold, the snake would navigate towards the closest food. Otherwise,\nit would try to target the other snakes' heads to either eliminate the\nopponent in a head-on collision or trap them by cutting off their path.\n\n## Tournament - Stay Home and Code\n\nThe snake beat six other competitors the second round of Group B to qualify for the Quaterfinals, where it was eliminated. There were 32\ncompetitors in the veteran division. Our games were played on a 11x11 board with 4 food spawned at start.\n\nTimestamp on the [BattlesnakeOfficial Twitch stream](https://www.twitch.tv/videos/602731416) is [2:16:32-2:25:35](https://www.twitch.tv/videos/602731416?t=02h16m32s) for Group B, and [4:04:08-4:15:18](https://www.twitch.tv/videos/602731416?t=04h04m08s) for Quaterfinals.\n\n**[Group B - Round 1](https://clips.twitch.tv/BeautifulCuteKleeResidentSleeper)**\n\n**[Group B - Round 2](https://clips.twitch.tv/CrackyElegantWaspPartyTime)**\n\n**[Quaterfinals - Round 1](https://clips.twitch.tv/WrongBitterDragonflyRitzMitz)**\n\n**[Quaterfinals - Round 2](https://clips.twitch.tv/PluckyElegantMouseEleGiggle)**\n\n**[Quaterfinals - Round 3](https://clips.twitch.tv/WanderingHonorableCurlewPeteZaroll)**\n\n\n## Usage\n\n\n### Prerequisites\n\n1.  Install JDK 11 or higher\n2.  Install Docker + Docker compose (required for [Docker container method](#orgfd68ec6))\n3.  Install Heroku CLI (required for [Heroku CLI method](#org8843ce7))\n4.  Install .war Heroku deployment plug-in `heroku plugins:install heroku-cli-deploy` ) (required for [Heroku CLI method](#org8843ce7))\n5.  Create a Heroku App online or using the Heroku CLI with `heroku create \u003cname\u003e`\n\n    (alternatively any other hosting service can be used)\n\n\n### Test Board\n\n**Online**\n\nGoto [play.battlesnake.io](https://play.battlesnake.io)\n\n\n### Run Locally\n\n**Gradle**\n\n1.  Run the project using either `./gradle run` or `gradlew run` for UNIX and Windows platforms respectively.  This will build and run the project as a \\`JAR\\` using [Webapp Runner](https://github.com/jsimone/webapp-runner).\n2.  Use `http://localhost:8080` as the snake URL.\n\n**Docker**\n\u003ca id=\"orgfd68ec6\"\u003e\u003c/a\u003e\n\n1.  Build the project using either `./gradle build` or `gradlew build` for UNIX and Windows platforms respectively.\n2.  Run the Docker Tomcat image in a container with `docker-compose up`.\n3.  Use `http://localhost:8080/battlesnake` as the snake URL.\n\n\n### Deployment\n\n**Heroku-GitHub Integration**\n\n1.  Go the dashboard for the Heroku app.\n2.  Click on the `deploy` tab.\n3.  Scroll down to the `Deployment method` and select `GitHub`.\n4.  Enter the repository name and click `Connect`.\n\n**Heroku CLI**\n\u003ca id=\"org8843ce7\"\u003e\u003c/a\u003e\n\n1.  Build .war file `./gradlew build`\n2.  Deploy to Heroku `heroku war:deploy build/libs/battlesnake.war --app \u003cname\u003e`\n3.  Use `https://[name].herokuapp.com/` as the snake URL.\n\n\n## Acknowledgments\n\n-   **Built by** [Jaxson Van Doorn](https://github.com/woofers) and [Ben Austin](https://github.com/austinben)\n-   **Adapted from** [tflinz's snake](https://github.com/tflinz/BasicBattleSnake2018)\n-   **Designed for** [Battlesnake Official's](https://github.com/battlesnakeofficial) competition\n\n\u003cimg align=\"left\" height=\"120\" width=\"120\" src=\"screenshots/advanced.png\" /\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwoofers%2Fbattlesnake","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwoofers%2Fbattlesnake","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwoofers%2Fbattlesnake/lists"}