Player { brainId: ResourceId, x: uint256, y: uint256}: player data,brainIdpoints to the Brain system that "controls" the playerPlayerIndex { index: uint256, brainId: ResourceId }: index => playerPlayerCount: uint256: tracks the number of playersTick { systemId: ResourceId, updatedAt: uint256 }: keeps track of the last time thetickfunction was called in each registered system
- PlayerSystem: spawns new players and allows brains to run actions on their respective players.
- TickSystem: allows registering systems and then batch calling multiple systems through their
tickfunctions. - BrainRandom: moves its player randomly.
- Brain
ticks are open, they should be only called by the Tick system. - For now, players just move around.
- The Tick system is simple, only allows calling each tick once per block.