ttrts/game
Marc Di Luzio 7e2fd0a8d1 Fix a few more bugs and implement more tests
Bug in infinite recursion on move assignment operator.
Bug in adding the wron units ID to the kill list.
2014-12-16 13:13:02 +00:00
..
CMakeLists.txt remove unit inheritence, twas a silly idea, and remove usage of shared ptr and unique ptr not needed anymore 2014-12-16 13:13:01 +00:00
game.cpp Fix a few more bugs and implement more tests 2014-12-16 13:13:02 +00:00
game.h Fix a few more bugs and implement more tests 2014-12-16 13:13:02 +00:00
gametypes.h Add invalid coord variables 2014-12-16 13:13:00 +00:00
orders.cpp More skeleton code for simulating a turn 2014-12-16 13:13:01 +00:00
orders.h Finialise the full game step 2014-12-16 13:13:01 +00:00
README.md Update the README.md 2014-12-16 13:12:53 +00:00
unit.cpp Fix a few more bugs and implement more tests 2014-12-16 13:13:02 +00:00
unit.h Fix a few more bugs and implement more tests 2014-12-16 13:13:02 +00:00

ttrts Game Design

The game takes place in a series of simultanious turns on an arbitrarilly sized 2D board.

Each player is in control of a set number of starting units, each turn recieves data on the status of the board.

Each player must then issue a single command to each unit in thier control.

The engine then takes all commands, evaluates all movement first simultaniously, then all other commands.

All attempted movement to the same square by two or more units will fail.


Units

Currently only one unit, this will be expanded in the future.

Units have a set of properties, and commands than can be issued. Commands take the form of a single char literal. All units have 1 health.

V

V is your basic slow melee unit. It has very basic data and controls, basically acting like a turtle. Can be represented based on direction by < ^ > v

properties
property type description
pos char[2] x,y position on the board
dir char compass direction unit is facing
commands
command description
L/R turn left/right
F move forward
A deal 1 damage to unit directly in front

The Board

As an example, let's start with a basic starting [10,5] board

0000000000
0000000000
0000000000
0000000000
0000000000