In the fall me and Jonathan worked on an update to the Engine
specifically with SnailMode in mind, and refactored SnailMode to use
this new `PreUpdate` method
This allowed us to not have to use off-board hazards as state!
However we want to use Snail Mode for our first Community Tournament!
And the web engine doesn't support PreUpdate yet, so we are reverting
Snail Mode to its old Pre-PreUpdate version :lol:
* DEV-1761: Clean up Ruleset interface (#115)
* remove legacy ruleset types and simplify ruleset interface
* remove unnecessary settings argument from Ruleset interface
* decouple rules.Settings from client API and store settings as strings
* DEV 1761: Add new BoardState and Point fields (#117)
* add Point.TTL, Point.Value, GameState and PointState to BoardState
* allow maps to access BoardState.GameState,PointState
* add PreUpdateBoard and refactor snail_mode with it
* fix bug where an extra turn was printed to the console
* fix formatting
* fix lint errors
Co-authored-by: JonathanArns <jonathan.arns@googlemail.com>
* Add snail-mode map
* snail-mode: cap max hazards to 7
- Ensure that no more than 7 hazards are added to a square. This
fixes a bug where some squares were getting way too many hazards
applied to them. There must be some other bug at work here as
well.
- Change author names to be github usernames instead of first names
* snail-mode: fix bug with eliminated snakes
- Ensure that hazard snail-trail is not added for eliminated snakes
* Update from Stream July 31
Added comments to most functions and important bits of code
Also changed the map so that instead of a fixed number of 7 hazards,
we add hazards equal to the length of the snake.
* snail-mode: add TAG_EXPERIMENTAL and TAG_HAZARD_PLACEMENT
* snail-mode: use Point as map key
Co-authored-by: Corey Alexander <coreyja@gmail.com>