Add shapeshifter (JonathanArns' champion snake) - #7
Open
byte-the-bot wants to merge 1 commit into
Open
Conversation
JonathanArns/shapeshifter is one of the strongest snakes ever fielded
in competitive Battlesnake — bitboard-based minimax, with an MCTS
variant also served under /mcts.
The upstream Dockerfile is broken: ENTRYPOINT ./shapeshifter doesn't
exist after cargo build --release (the binary lands at
target/release/shapeshifter), so the container fails to start with
'stat ./shapeshifter: no such file or directory'. The manifest
therefore points at a byte-the-bot fork with that one line fixed —
same pattern as graeme-hill-snakebot.
Verified end-to-end on linux/arm64 via the snake-zoo CLI itself:
snake-zoo run shapeshifter
GET / -> 200 {"apiversion":"1","author":"JonathanArns",...}
POST /move -> {"move":"up"}
POST /start, /end -> 200
Note: shapeshifter expects the current official API payload shape
(game.map and game.source are required fields on its deserializer).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds JonathanArns/shapeshifter — bitboard minimax, one of the strongest snakes in Battlesnake competitive history, and the first true top-tier strategy snake in the zoo.
The catch: upstream Dockerfile is broken
ENTRYPOINT ["./shapeshifter"]— butcargo build --releaseputs the binary attarget/release/shapeshifter, so the stock image fails to start:The manifest therefore points at byte-the-bot/shapeshifter, a fork with exactly one changed line (the ENTRYPOINT fix) — same pattern as
graeme-hill-snakebot.Verified end-to-end (linux/arm64)
Built and ran through the actual
snake-zooCLI from this branch:/startand/endalso return 200.cargo testpasses (14/14).One quirk worth knowing: shapeshifter is written against the current official API —
game.mapandgame.sourceare required fields on its deserializer, so very old game engines that omit them will get 422s. Fine against the real engine.Also noted while here:
graeme-hill-snakebot(merged in #6) is missing from the README's Community Snakes table — left alone to keep this PR focused.