fix: preserve gameplay data and correct duel evaluation
- Preserve snake customizations across database migrations and merges. - Lazily load optional storage backends for SQLite maintenance scripts. - Match Apex territory and nearest-food tie-breaking semantics. - Resolve duel occupancy after simultaneous movement and food growth. - Recompute simulated head-to-head danger after body growth. - Add regression coverage and declare the aiofiles dependency.
This commit is contained in:
@@ -1,17 +1,14 @@
|
||||
# Battlesnake Python Starter Project
|
||||
|
||||
An official Battlesnake template written in Python. Get started at [play.battlesnake.com](https://play.battlesnake.com).
|
||||
|
||||

|
||||
|
||||
This project is a great starting point for anyone wanting to program their first Battlesnake in Python. It can be run locally or easily deployed to a cloud provider of your choosing. See the [Battlesnake API Docs](https://docs.battlesnake.com/api) for more detail.
|
||||
This project is a great starting point for anyone wanting to program their first Battlesnake in Python. It can be run locally or easily deployed to a cloud provider of your choosing. See the [Battlesnake API Docs](https://docs.battlesnake.com/api) for more detail.
|
||||
|
||||
## Technologies Used
|
||||
|
||||
This project uses [Python 3](https://www.python.org/) and [Flask](https://flask.palletsprojects.com/). It also comes with an optional [Dockerfile](https://docs.docker.com/engine/reference/builder/) to help with deployment.
|
||||
|
||||
## Run Your Battlesnake
|
||||
|
||||
Install dependencies using pip
|
||||
|
||||
```sh
|
||||
@@ -19,7 +16,6 @@ pip install -r requirements.txt
|
||||
```
|
||||
|
||||
Start your Battlesnake
|
||||
|
||||
```sh
|
||||
python main.py
|
||||
```
|
||||
@@ -39,19 +35,16 @@ Open [localhost:8000](http://localhost:8000) in your browser and you should see
|
||||
```
|
||||
|
||||
## Play a Game Locally
|
||||
|
||||
Install the [Battlesnake CLI](https://github.com/BattlesnakeOfficial/rules/tree/main/cli)
|
||||
* You can [download compiled binaries here](https://github.com/BattlesnakeOfficial/rules/releases)
|
||||
* or [install as a go package](https://github.com/BattlesnakeOfficial/rules/tree/main/cli#installation) (requires Go 1.18 or higher)
|
||||
|
||||
Command to run a local game
|
||||
|
||||
```sh
|
||||
battlesnake play -W 11 -H 11 --name 'Python Starter Project' --url http://localhost:8000 -g solo --browser
|
||||
```
|
||||
|
||||
## Next Steps
|
||||
|
||||
Continue with the [Battlesnake Quickstart Guide](https://docs.battlesnake.com/quickstart) to customize and improve your Battlesnake's behavior.
|
||||
|
||||
## Included Competitive Snake
|
||||
@@ -62,13 +55,11 @@ This repo now includes `snakes/BestBattleSnake.py`, a stronger default snake tha
|
||||
- tail access checks for better long-term survival
|
||||
|
||||
Run it explicitly with:
|
||||
|
||||
```sh
|
||||
SNAKE=BestBattleSnake python main.py
|
||||
```
|
||||
|
||||
Optional duel tuning (when only 2 snakes are alive):
|
||||
|
||||
```sh
|
||||
BATTLE_SNAKE_DUEL_STYLE=balanced python main.py
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user