Snake is an environment for evaluating agents on the classic multiplayer snake game. This environment wraps the Snake implementation from TextArena, a framework for text-based game environments.
- Spatial navigation and path planning
- Collision avoidance with walls, trails, and opponents
- Real-time strategic decision making
- Evaluation across multiple grid size variants
Snake does not require a sandbox. It has minimal compute requirements.
MIT.
There are two splits: train (450 tasks) and test (450 tasks). Each split contains 50 tasks across each of 9 variants:
- Snake-v0
- Snake-v0-large
- Snake-v0-large-raw
- Snake-v0-large-train
- Snake-v0-raw
- Snake-v0-standard
- Snake-v0-standard-raw
- Snake-v0-standard-train
- Snake-v0-train
Each task is seeded for reproducibility.
This is a sparse reward environment. Rewards are mapped from TextArena's native range of {-1, 0, 1} to {0.0, 0.5, 1.0} via (raw + 1) / 2.
We do not use LLM graders for this environment; reward is determined programmatically.
Game state is generated procedurally by the TextArena engine using seeded randomness. No external data files are required.
Agents are given a single tool:
move(direction): Move your snake in the specified direction (up/down/left/right).
Snake is a multi-turn environment.
Medium - requires spatial awareness and planning ahead.
This environment requires an OpenAI API key (passed via secrets) to power the LLM opponent.
Agents in Snake interact only with a multiplayer game and have no access to external systems, the internet, or sensitive data. The environment does not present safety risks.
@software{textarena2024,
author = {Guertler, Leon and Banting, Wilfried and Pignatelli, Eduardo},
title = {TextArena},
year = {2024},
publisher = {GitHub},
url = {https://github.com/LeonGuertler/TextArena}
}