Add player and board size meta data to all game maps (#84)

* WIP: initial data model for new meta props
* WIP: implemented new props
* test and bug fix:
- add coverage of players and sizes
- fix unlimited map size bug
* FIX: update supported players for arcade to 6
* fix: test should be min -> max, not max->max
* Change some naming and the FixedSizes function
* update comment to reflect API changes
* improve comment clarity
* rename field for improved clarity
* change some more "map" -> "board" wording
This commit is contained in:
Torben 2022-06-19 20:09:17 -07:00 committed by GitHub
parent cb014e7b37
commit 3180429688
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 146 additions and 5 deletions

View file

@ -30,6 +30,9 @@ func (m InnerBorderHazardsMap) Meta() Metadata {
Description: "Creates a static map on turn 0 that is a 1-square wall of hazard that is inset 2 squares from the edge of the board",
Author: "Battlesnake",
Version: 1,
MinPlayers: 1,
MaxPlayers: 8,
BoardSizes: AnySize(),
}
}
@ -67,6 +70,9 @@ func (m ConcentricRingsHazardsMap) Meta() Metadata {
Description: "Creates a static map where there are rings of hazard sauce starting from the center with a 1 square space between the rings that has no sauce",
Author: "Battlesnake",
Version: 1,
MinPlayers: 1,
MaxPlayers: 8,
BoardSizes: AnySize(),
}
}
@ -105,6 +111,9 @@ func (m ColumnsHazardsMap) Meta() Metadata {
Description: "Creates a static map on turn 0 that fills in odd squares, i.e. (1,1), (1,3), (3,3) ... with hazard sauce",
Author: "Battlesnake",
Version: 1,
MinPlayers: 1,
MaxPlayers: 8,
BoardSizes: AnySize(),
}
}
@ -139,8 +148,11 @@ func (m SpiralHazardsMap) Meta() Metadata {
Name: "hz_spiral",
Description: `Generates a dynamic hazard map that grows in a spiral pattern clockwise from a random point on
the map. Each 2 turns a new hazard square is added to the map`,
Author: "altersaddle",
Version: 1,
Author: "altersaddle",
Version: 1,
MinPlayers: 1,
MaxPlayers: 8,
BoardSizes: AnySize(),
}
}
@ -230,6 +242,9 @@ func (m ScatterFillMap) Meta() Metadata {
Name: "hz_scatter",
Description: `Fills the entire board with hazard squares that are set to appear on regular turn schedule. Each square is picked at random.`,
Version: 1,
MinPlayers: 1,
MaxPlayers: 8,
BoardSizes: AnySize(),
}
}
@ -278,6 +293,9 @@ func (m DirectionalExpandingBoxMap) Meta() Metadata {
Name: "hz_grow_box",
Description: `Creates an area of hazard that expands from a point with one random side growing on a turn schedule.`,
Version: 1,
MinPlayers: 1,
MaxPlayers: 8,
BoardSizes: AnySize(),
}
}
@ -389,6 +407,9 @@ func (m ExpandingBoxMap) Meta() Metadata {
Name: "hz_expand_box",
Description: `Generates an area of hazard that expands from a random point on the board outward in concentric rings on a periodic turn schedule.`,
Version: 1,
MinPlayers: 1,
MaxPlayers: 8,
BoardSizes: AnySize(),
}
}
@ -461,6 +482,9 @@ func (m ExpandingScatterMap) Meta() Metadata {
Name: "hz_expand_scatter",
Description: `Builds an expanding hazard area that grows from a central point in rings that are randomly filled in on a regular turn schedule.`,
Version: 1,
MinPlayers: 1,
MaxPlayers: 8,
BoardSizes: AnySize(),
}
}
@ -538,8 +562,11 @@ func (m RiverAndBridgesHazardsMap) Meta() Metadata {
Name: "hz_rivers_bridges",
Description: `Creates fixed maps that have a lake of hazard in the middle with rivers going in the cardinal directions.
Each river has one or two 1-square "bridges" over them`,
Author: "Battlesnake",
Version: 1,
Author: "Battlesnake",
Version: 1,
MinPlayers: 1,
MaxPlayers: 8,
BoardSizes: FixedSizes(Dimensions{11, 11}, Dimensions{19, 19}, Dimensions{25, 25}),
}
}