Skip to content

Instantly share code, notes, and snippets.

@JacobFischer
Last active April 22, 2017 21:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save JacobFischer/a371ac64402cd2c294b2d7eef7da3006 to your computer and use it in GitHub Desktop.
Save JacobFischer/a371ac64402cd2c294b2d7eef7da3006 to your computer and use it in GitHub Desktop.
BotNet creer.yaml
_parentDatas:
- twoPlayer
- turnBased
- tiled
Game:
name: BotNet
description: You need the ByteDollars, so take over the network.
attributes:
baseCost:
type: int
description: BaseCost used in the virus price formula.
scaleCost:
type: float
description: Scalar used in the virus price formula.
Player:
attributes:
byteDollars:
type: int
description: The Player's points, one with more at end of game wins.
cycles:
type: int
description: The Player's machine cycles, used to create new Virus's.
numberOfOwnedTiles:
type: int
description: The number of Tiles currently owned by this Player.
viruses:
type: Virus[]
description: All the Viruses owned by this Player.
bases:
type: Base[]
description: All the Bases owned by this Player.
Tile:
attributes:
owner:
type: Player
description: The player that owns this Tile currently.
virus:
type: Virus
description: The Virus on this Tile, null if empty.
base:
type: Base
description: The Base on this Tile, null if no Base present.
blocked:
type: boolean
description: True if the Tile is blocked and can never be pathed, false otherwise.
# new GameObjects
Virus:
description: A Virus is the dominant unit of the game. Can move, and has a level.
attributes:
owner:
type: Player
description: The player that owns this Virus.
tile:
type: Tile
description: The Tile this Virus is on.
living:
type: boolean
description: True if this virus is alive, false otherwise.
movesLeft:
type: int
description: The number of times this virus can still move this turn.
level:
type: int
description: The Virus's level.
functions:
move:
description: Move the Virus to a neighboring Tile.
arguments:
- name: tile
type: Tile
description: The Tile to move the Virus to. Must be adjacent.
returns:
type: boolean
description: True if the move worked, false otherwise.
invalidValue: false
Base:
description: A hacked computer that acts as a Base and spawns new Viruses.
attributes:
owner:
type: Player
description: The player that owns this Base.
tile:
type: Tile
description: The Tile this Virus is on.
spawnsLeft:
type: int
description: The number of Viruses this Base can still spawn this turn.
functions:
spawn:
description: Spawns a Virus on this base of a given level.
arguments:
- name: level
type: int
description: The level of the Virus to be created.
returns:
type: boolean
description: True if the spawn worked, false otherwise.
invalidValue: false
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment