Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Check-ins with non-propagating tags:
|
2023-02-10
| ||
| 22:45 | standard initial food spawn for snail mode Leaf check-in: ce8d16d650 user: odwyerrob@gmail.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.2.3 | |
| 00:21 |
Revert SnailMode to not use PreUpdate (#121)
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: check-in: c07601343c user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.2.2 | |
|
2022-12-15
| ||
| 17:47 | README.md modified (#120) check-in: a49ba3ef9b user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.2.1 | |
|
2022-10-28
| ||
| 23:49 |
DEV-1761: New rules API (#118)
* 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> check-in: ed19c4e81c user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.2.0 | |
|
2022-10-04
| ||
| 22:53 |
DEV 1793: Track latency, status codes, and errors from CLI games (#113)
* track latency and status code from CLI games * actually track errors from snake responses check-in: f1c499c1c3 user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.21 | |
|
2022-09-22
| ||
| 23:09 |
DEV-1703: Avoid spawning food on hazards for islands and bridges map (#112)
* move PlaceFoodFixed and PlaceSnakesInQuadrants to maps package * don't spawn food on hazards in islands/rivers and bridges maps check-in: 9ab548177e user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.20 | |
|
2022-09-06
| ||
| 22:20 | map now respects 0% food spawn chance (#110) check-in: bee9dbfca7 user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.19 | |
|
2022-09-02
| ||
| 21:35 |
DEV 1666: Fix /end requests and clean up logging (#109)
* ensure /end request is always called, and refactor win/draw logic * clean up logging and error handling during initialization * automatically generate friendly snake names * title-case snake names * print out list of alive snake names instead of count * log snake names, IDs, and URLs at startup * print out state for turn zero check-in: dd47bfbab3 user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.18 | |
|
2022-08-26
| ||
| 20:37 |
New Island and Bridges variations (#107)
* Adding two new variations with hazards along the edges * Implementing code review feedback check-in: 6c076d0573 user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.17 | |
|
2022-08-19
| ||
| 17:23 |
Snail mode (#98)
* 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> check-in: b9306747dc user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.16 | |
|
2022-08-09
| ||
| 22:06 |
add 'map' cli command to provide map information (#100)
* add 'map' cli command - provides the following map information functions: - list all available maps in the global registry - display map metadata - update docs with map command examples * add list and info subcommands to map cli command * rename map command list and info factory functions * add --all flag to map info subcommand * handle cmd.Help error check-in: 3f28759287 user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.15 | |
|
2022-07-28
| ||
| 18:07 |
DEV-1558-healing-pools-map (#94)
* Adding a basic map that adds a few hazards based on fixed coordinates to the map. * Used wrong board size definitions check-in: 1dad93a0ed user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.14 | |
|
2022-07-07
| ||
| 18:14 |
change map support for large #'s of snakes (#92)
* change map support for large #'s of snakes * test square board fn * format comment * add whitespace * better support large #'s of snakes on small boards * include an intermediate xlarge size check-in: f0c1f1517f user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.13 | |
|
2022-07-04
| ||
| 17:25 |
[Custom Map] Single Player Maze (#81)
* Commit from Stream We got the maze working decently well! Started off with exploring the repo a bit and getting used to the Map stuff The Maze is working pretty well except the mazes that are generated aren't actually complete-able yet. They end up creating spaces that are blocked off from the rest of the map The maze generation algo is based off 'Recursive division method' mostly following this Wiki This looked to always create a 'valid' maze, while mine doesn't so need to figure out what my bug is, cause I'm pretty sure there is one! * I think we got maze generation working! Did a lot, should have commited more lol Got map generation working where I can see it go frame by frame, and think we squashed the last few bugs with wall generation and hole cutting Now need it to actually make a new maze when you finish this first one * We can run on a bigger board now, and we place the food randomly on the board after you grab it the first time * Make sure my health is always 100 so don't have to worry about that lol * Fix placing of food on maze to NOT be on an existing hazard and after 3 foods make a new maze * Maze generation works better now and a bit of cleanup * Committing old code * Got state saving as Hazards Bits Working well, I think whats up next is making the map grow each level * Draw maze in the center of the board, the maze grows as you complete levels until it fills the entire board * Ran go fmt * Remove my little debugging script that I added * Revert changes I made initially to the map interface * Move my copy-pasted printMap function to my map specifically * Go fmt * Write some doc comments and fix some weird code artifacts * A few more comments and one last go fmt * Cut less holes, this makes the maze more exciting * Add version to Metadata and go fmt again * Can collapse this down * Random food spawns are more fun for sure * add minimal support for serving a game to the board UI * We did 3 main things here: - Fixed the bug where hazards were getting multi-stacked - Fixed the bug where the food could spawn on top of the snake head - Fixed the lint errors * Games aren't infinite now, they end by not spawning a food when you have reached a certain number of turns at the max board size * Extract some functions to make deciding when the game is over easier * Get evil mode implemented to force the game to end * Fix small bugs about where we spawned the food in evil mode * Have the snake keep growing by adding tail segments to match the current level. We start at two length because 1 lenth snakes look weird on the board since they don't have a neck to orient themselves. Here we also fix a bug where evil mode was trying to place food off the map * Run go fmt * Add the missing meta-data pieces * Support a smaller board without the change of infinite loops and change the name of the maze * Rename the actual struct and fix the tests to not make extra snakes when the map doesn't support it * Revert "add minimal support for serving a game to the board UI" This reverts commit 0ac3592c7669ab1bccd7bd3322adffbef5e911ce. * add minimal support for serving a game to the board UI * Cleanup and extract and function to place food so we don't have basically the same body twice. This also will prevent the initial food spawn from being right next to the snake * Revert "add minimal support for serving a game to the board UI" This reverts commit c1a3b134213dabf44df56e3ca1e6d30ff8aaa516. * Fix lint * 2 length snakes are silly, so lets start with 3 each time * We start out with 3 length snakes, and a fixed set of map sizes Co-authored-by: Rob O'Dwyer <odwyerrob@gmail.com> check-in: 62e2203191 user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.12 | |
|
2022-06-30
| ||
| 19:10 | prevent negative hazard damage from healing past max health (#91) check-in: e03d2ad859 user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.11 | |
|
2022-06-28
| ||
| 23:17 |
DEV 1404: Support streaming CLI games to the browser board (#88)
* add minimal support for serving a game to the board UI * refactor into new board package * support reporting errors and author names to board * support passing an alternate board URL * avoid using IPv6 for local URL * use rules.Point instead of a custom Point type for board package * use zero for generic communication error code in cli * rename createGameEvent to buildFrameEvent * tests for conversion from boardState/snakeState to game frame check-in: e51464d9ce user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.10 | |
|
2022-06-16
| ||
| 17:26 | Add food and snake spawn locations to Arcade Maze. check-in: c81d13ef9d user: 1531419+bvanvugt@users.noreply.github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.9 | |
|
2022-06-15
| ||
| 17:42 | Add two more food spawns to Arcade Maze map. check-in: 0efc676522 user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.8 | |
|
2022-06-08
| ||
| 22:45 |
DEV 1364: Allow solo games with all rulesets through the CLI (#80)
* add support for automatic solo through RulesetBuilder * allow solo games with all modes in CLI check-in: 6c87dca4f6 user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.7 | |
|
2022-06-01
| ||
| 22:21 | reorder built-in ruleset stages so game over is checked first (#79) check-in: 0e0fa710d0 user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.6 | |
|
2022-05-31
| ||
| 14:29 |
DEV 1283: Arcade maze map (#77)
* add "namcap" map * adjust hazards and starting food positions * add food randomly, not on top of hazards * add exits on the top and bottom * rename to arcade_maze * add maps README * test for ArcadeMazeMap * adjustments to hazards in arcade_maze check-in: d0af9e1571 user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.5 | |
|
2022-05-25
| ||
| 18:24 |
DEV 953: Add basic maps support to CLI (#74)
* remove squad support and switch to using pipelines only in RulesBuilder * remove spawn_food.standard from legacy ruleset definitions * bugfix: Royale map generates Standard food * add maps support to CLI * add automated tests for all registered GameMap implementations * update README check-in: 6d94a0db18 user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.4 | |
|
2022-05-19
| ||
| 19:43 | add map to snake request body (#73) check-in: fe3d3e1f8a user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.3 | |
|
2022-05-17
| ||
| 22:45 |
DEV 1303: Add empty and royale maps and update game map interface (#72)
* move random generator into Settings * add empty and royale maps * place snakes on either cardinal or corner positions first check-in: 1a22e38342 user: noreply@github.com tags: DEV-1247-map-generator-bugfix, fix-end-request-on-draw-tests, trunk, v1.1.2 | |
|
2022-05-11
| ||
| 15:28 | add RegisterMap for testing convenience Leaf check-in: 75111c61b4 user: odwyerrob@gmail.com tags: fix-end-request-on-draw-tests, trunk, v1.1.0 | |
|
2022-04-28
| ||
| 22:20 | add seed and random number generator into Settings Leaf check-in: 57c06b4c94 user: odwyerrob@gmail.com tags: fix-end-request-on-draw-tests, trunk, v1.1.0-rc1 | |
|
2022-04-19
| ||
| 22:52 |
DEV-1096 - add a new "pipeline" concept (#67)
* add a new "pipeline" concept - added new Pipeline type which is a series of stages - added a global registry to facilitate plugin architecture - 100% test coverage * Refactor rulesets to provide and use Pipeline * fix copypasta comments * fix lint for unused method * include game over stages in ruleset pipelines * clean up unused private standard methods * remove unused private methods in squad ruleset * remove unused private methods in royale ruleset * refactor: pipeline clone + return next board state * YAGNI: remove unused Append * refactor: improve stage names * add no-op behavior to stages for initial state * refactor: no-op decision within stage functions * remove misleading comment that isn't true * dont bother checking for init in gameover stages * remove redundant test * refactor: provide a combined ruleset/pipeline type * fix: movement no-op for GameOver check IsGameOver needs to run pipeline, move snakes needs to no-op for that * add test coverage * refactor: improve stage names and use constants * add Error method Support error checking before calling Execute() * update naming to be American style * panic when overwriting stages in global registry * rename "Error" method and improve docs * use testify lib for panic assertion * remove redundant food stage * use ruleset-specific logic for game over checks * re-work Pipeline errors * rework errors again * add defensive check for zero length snake * use old logic which checks current state, not next * add warning about how PipelineRuleset checks for game over check-in: 6c4f0d03d2 user: noreply@github.com tags: fix-end-request-on-draw-tests, trunk, v1.0.33 | |
|
2022-04-11
| ||
| 16:13 |
Update CLI documentation (#69)
- Update usage section in the README with the latest flags. - Update default sample output (BoardState fields have changed, OutOfBounds has been removed). - Add section describing options for getting JSON output with the `--output` and `--debug-requests` flag. check-in: c4e1a1189c user: noreply@github.com tags: fix-end-request-on-draw-tests, trunk, v1.0.32 | |
|
2022-04-07
| ||
| 14:59 | Stop spawning food in corners in competitive play. (#68) check-in: 3c7a7e12ba user: noreply@github.com tags: fix-end-request-on-draw-tests, trunk, v1.0.31 | |
|
2022-03-28
| ||
| 17:22 | added TurnDuration option to cli (#62) check-in: b3526e3f69 user: noreply@github.com tags: fix-end-request-on-draw-tests, trunk, v1.0.30 | |
|
2022-03-16
| ||
| 23:58 |
DEV-765 pipeline refactor (#64)
Refactor rulesets into smaller composable operations In order to mix up the functionality from different rulesets like Solo, Royale, etc. the code in these classes needs to be broken up into small functions that can be composed in a pipeline to make a custom game mode. Leaf check-in: 1b36b776bb user: noreply@github.com tags: trunk, v1.0.28 | |
|
2022-03-03
| ||
| 20:21 |
Add hazardMap and hazardMapAuthor to RulesetSettings (#63)
* add HazardMap and HazardMapAuthor to RulesetSettings * test for format of hazard map properties check-in: 44b3226eba user: noreply@github.com tags: trunk, v1.0.27 | |
|
2022-01-31
| ||
| 17:43 | Fixed constrictor and wrapped names (#61) check-in: 9546848b52 user: noreply@github.com tags: trunk, v1.0.26 | |
|
2022-01-18
| ||
| 20:51 | Remove equidistant food spawns that are closer to center. check-in: fc50e72a72 user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.25 | |
|
2022-01-11
| ||
| 22:44 | Isolate and improve logic to determine default move. check-in: 66d9783969 user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.24 | |
|
2021-11-25
| ||
| 22:07 |
DEV 559: Refactor CLI and add customizations (#57)
* move snake API structs into a new client package * add customizations to snake objects * refactor and add support for passing snake customizations in games check-in: 800290c5b7 user: noreply@github.com tags: trunk, v1.0.23 | |
|
2021-08-27
| ||
| 20:28 | add turn to BoardState and remove it from RoyaleRuleset (#52) check-in: be4a483134 user: noreply@github.com tags: trunk, v1.0.22 | |
|
2021-08-24
| ||
| 19:11 |
wrapped ruleset (#30)
* wrapped ruleset * resurrect like brad suggested * introduce mode to binary * go fmt * address edge crossing collision and eating bugs * Update board_state.go * removed binary * rename variable check-in: f8825815e0 user: noreply@github.com tags: trunk, v1.0.21 | |
|
2021-08-17
| ||
| 23:47 |
Refactor RoyaleRuleset and move hazard damage into StandardRuleset (#50)
* move hazard damage into StandardRuleset * OutOfBounds -> Hazards * remove "out of bounds" in comment * add cases for eating food to hazard damage test check-in: 551a1b9721 user: noreply@github.com tags: trunk, v1.0.20 | |
|
2021-07-04
| ||
| 20:48 |
Add new arg "delay" to delay board updates by x milliseconds (#48)
Co-authored-by: Brad Van Vugt <1531419+bvanvugt@users.noreply.github.com> check-in: 3ebbb1b7e0 user: noreply@github.com tags: trunk, v1.0.19 | |
|
2021-07-03
| ||
| 03:42 |
fixed panic when printing snake out of bounds (#46)
Co-authored-by: Jiri Novotny <hello@jiricodes.com> check-in: 462194d6c8 user: noreply@github.com tags: trunk, v1.0.18 | |
|
2021-01-19
| ||
| 23:33 | Invert the Y-Axis to match modern gameplay. check-in: 4672a79c7d user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.17 | |
|
2020-12-11
| ||
| 05:11 | goreleaser github action check-in: f3ab595263 user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.16 | |
|
2020-11-20
| ||
| 20:00 | Add parameters for food spawn chance and min food. check-in: f791b1587f user: 1531419+bvanvugt@users.noreply.github.com tags: 1.0.15, trunk | |
|
2020-11-10
| ||
| 21:00 | Never spawn food within one move of any snake. check-in: 8d60225f96 user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.14 | |
|
2020-09-10
| ||
| 19:00 | Rename "EliminatedByStarvation" > "EliminatedByOutOfHealth" check-in: af01afc567 user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.13 | |
|
2020-07-29
| ||
| 20:15 | Merge branch 'master' of github.com:BattlesnakeOfficial/rules check-in: 3707a4ed4e user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.12 | |
| 17:24 | Royale: Shrink a random edge instead of the whole board check-in: 0b95e4eba5 user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.11 | |
|
2020-07-27
| ||
| 17:59 | Royale mode does damage instead of eliminating. check-in: 68400e8fba user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.10 | |
|
2020-07-26
| ||
| 00:37 | Add new royale ruleset. check-in: 157fa9d655 user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.9 | |
|
2020-07-22
| ||
| 00:11 | Prioritize self-collisions over other collisions. Fixes #16. check-in: 5a08d1b5a3 user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.8 | |
|
2020-05-28
| ||
| 18:26 | Implemented TestCreateNextBoardState (#15) check-in: 3e1717df43 user: noreply@github.com tags: trunk, v1.0.7 | |
|
2020-05-26
| ||
| 22:07 |
Made snakes spawn on odd or even diagonal points (#14). Fixes #12.
Randomly placed snakes will now always spawn on "even" squares. check-in: c74e7e79c2 user: noreply@github.com tags: trunk, v1.0.6 | |
|
2020-05-17
| ||
| 21:38 | Fix function name and interface tests. check-in: 9d7c7ecdc2 user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.4 | |
|
2020-02-01
| ||
| 18:47 | Maintain at least 1 food on board at all times. check-in: 52bce1f572 user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.3 | |
|
2020-01-16
| ||
| 00:42 | Reduce standard food spawn to a 15% chance. check-in: 738519bef8 user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.2 | |
|
2020-01-15
| ||
| 00:39 | Bump food spawn rate to better match previous algorithm. check-in: ae84698053 user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.1 | |
|
2020-01-09
| ||
| 21:59 | Merge branch 'master' of github.com:BattlesnakeOfficial/rules check-in: 423b3931e0 user: 1531419+bvanvugt@users.noreply.github.com tags: trunk, v1.0.0 | |