The Tiny Terminal RTS with programmable AI
Find a file
2014-12-16 13:12:57 +00:00
game header game types 2014-12-16 13:12:57 +00:00
maths Add more code to units to help distinguish between types and visual values 2014-12-16 13:12:55 +00:00
net Add readme and directories for other libraries 2014-12-16 13:12:52 +00:00
player Add readme and directories for other libraries 2014-12-16 13:12:52 +00:00
test Add new creation method from a visual representation 2014-12-16 13:12:56 +00:00
ttrts Initial commit with ttrts base main.cpp 2014-12-16 13:12:48 +00:00
ui Add readme and directories for other libraries 2014-12-16 13:12:52 +00:00
.gitignore Add gitignore with build forlder ignored 2014-12-16 13:12:51 +00:00
CMakeLists.txt Actually build with debug symbols in debug configuration 2014-12-16 13:12:56 +00:00
README.md Update the README.md 2014-12-16 13:12:53 +00:00

TTRTS

The Tiny Terminal RTS where the players write their AIs


Introduction

We aim to create a simple terminal based rts where a user can program an AI to control their army


Gameplay

  1. TTRTS clients are run from the command line
  2. clients will connect and confirm initial board state
  3. clients output a text file with game data for this turn
  4. a player, or program, reads the game data file and outputs an instructions file
  5. clients read the instructions file, simulates the turn
  6. game state is verified between clients and output
  7. repeat until an end state is reached
  8. once game is finished, host and clients disconnect and a winner is notified

see the game directory for full game rules


Source

Targets

ttrts

Main TTRTS executable , runs from the command line and can act as host or client

ttrts-test

Test executable, to be compiled and run to test various functionality

player

Custom player AI code, this should contain examples and test code to help newcomers begin their journey

Libraries

game

Implementation of the RTS rules and simulation. game has full information on it's implementation.

net

Net code for hosting the server and communicating with clients

ui

Wrapper for user interface for the terminal, this only really needs three stages

  • Initialise the game with settings and connect the clients
  • Run the game simulation to it's conclusion
  • Display the game result
  • Acsii Colour wrapper for separate teams
maths

simple maths library for 2D calculations and types