

== RTS gameplay




Wiki: link:http://en.wikipedia.org/wiki/Real-time_strategy[http://en.wikipedia.org/wiki/Real-time_strategy]


Mindmap: 


Slide: 
You can view full Gameplay Design document in Googledoc ( with more images, less text)



=== Gameplay: Core and additional elements


Gameplay element will lead to requirements in AI and other components. Here we look around to review others famous game within RTS genre. The most obvious feature can have recognize a RTS game is number of units and its tech tree.



==== Battle

Battle are most obvious activities of wars and also the distinc of RTS with civilazation game genre which have slow peace and mainly in Economic. War between planets and universe races like in StarCraft or between Countries like in Age of Empires. Battle in each game have its own “style and “form, mainly cause by the theme of the game, the skills of each units, number of them and the enviroments. 


Also we can see this gameplay element will require AI, network system to tightly corporate.



==== Economic

Economic in RTS can be seen as “build order, “tech tree or “resource locating problem, because almost every game have economic just as secondary gameplay to support battle. 



==== Fog of war - Reconnaissance

The lack of full view of the world also need to differences between RTS and board game (chess etc).. as Player don't have full awareness of opponents. Also in some games, player have to go explore or build houses to expand their map.



==== History and agriculture

Each race or country have its own history and agriculture which will affect assets and can cause different tech tree of course.

'''


=== RTS Core


===== Player

Every player have an Account that they can use to log in to lobby and find Game and invite other Players to join a hosted Match



===== Match

A Match have 2-8 Players who have their Team and Races. Team have Color as visual indentification. A Match have specific settings, configuration and most important a choosed Level and Type of GamePlay (Campain, FlagRush, Defeat,…)



===== Race

We have 3 Races : Human, Mech (as Protos), Bug (as Zerg). Their have different Skills, Attributes and TechTree which form different way of playing.



===== Game

A Game start with basic pieces: Players attented, a Level(Map), a GameplayType and Goal. 



===== Level (Map)

A Level is a world with a map with Enviroment, Terrain, Items, specific Entities, Routines, Activities..



===== Techtree

It's a possible sequences of actions can take to revolve the game. Essentially it form a tree with hierarchy or pre-dependency.


Read more
link:http://en.wikipedia.org/wiki/Technology_tree[http://en.wikipedia.org/wiki/Technology_tree]

'''


=== Actions & routines


===== Game routines

In the Game, various of GameActions are taken by Players to envolve the game. Beside of that the Level also offer specific Rountines.


The Map first cover with Fog of War than be revealed and expand as the Unit moving around ( common in RTS game).


The main gameplay elements - most 2 things, actions you always do in an RTS game is:


*  Build construction
*  Control units to fight against opponents


===== Build

Building is built with a specific cost, after finish its provide its functions like: Procedure troops, Upgrade skill-weapon, etc…


In general speaking, it provides more GameActions, then in turn expand the TechTree.



===== Fight

Fights happend when you attack your Enemies targets: Unit and Building. The results are:


*  Your units get damaged , get killed or kill others. 
*  Building get damaged or destroyed.

More aspects of a fight should be concern is range, type of an Attack, abilities to defend againts each Attack. About visual aspects, different skills appear as different effects.


By default the fight routine are controled by the AI.



===== Rewards

Fight also resulted in points, golds… rewarded to your result/property . As in normal RTS game, like starcraft2, no more bonus if you kill several target at once. but in DotA like game genre, you got bonus if combos happen. So our reward stragegy should be flexible enough to deal with the changable gameplay.



===== Declare Win-Lose

The final conclusion of the game (gameover) is reached as one Team complete the Goal - specific by the GameType, in our game we implemented a few gameplay type as describled below:

'''


=== GameplayType - Objectives & Goals


===== Defeat enemies

By default, a game normally ended when a team defeat all it enemies, as they killed and destroyed all/every or almost opponents units/constructions. Or in some games, win-lose declared as the MainHouse is destroyed.



===== FlagRush

An intesting gameplay, as the motivation of the game is to capture something call a flag. Every team of players try to take control of an item, area in particular.


Win-lose usually declared as one complete a routine take the flag from imdependent platform or opponents home.



===== Campains

Usually a scripted goal means a specifics special, story based goal with specific routines and items in the Map. Teams or players try to reach the goal as in intruction as fast as possible to declare win.



===== DotA like (RPG)

The rising gameplay recently ( ehr, not really :p ) …

'''


==== Gameobject & Entites


===== Unit
'''


=== Devices & Inputs & Controls


===== PC


===== Mouse & Keyboards


===== Move , build, mirco
'''


=== More Gameplay aspects


===== Economy

In Age of Empire (few others), when you just focus in expanding your empire without fighting and the game said that you reach a limit, where you can not expand your economic base futher. Consider this point, you will see the different between RTS game and the game genre just focus in building things in long term like civilazation and city tycoons.


So the things you want to concern in our gameplay is the way to watch, aware and manage the status of economy of every players.


Beside of that, the players can trade or exchange things in between team, allies. That's an interesting point of gameplay, open possiblites but also technical problems come later, so it's worth to be carefully concerned, designed.



===== Balance

What if a race have dominance, advantages that superior to others. How can we balance between the race without annoying players by too much restrictions. This point should be considered carefully, even worth researchings. I will also offer some paper in this topic but to help you get an overview, the solutions lying in flowing categories:


*  Unit attributes
**  Techtrees, aka sequences of action can be taken
**  Speed/cost of evolving : speed/cost of each actions, speed/cost of upgrading…
**  The Map!
**  Specity contrainsts of each race nature/culture


===== Cheating

People always try to find way to cheat around. And if you don't take care of your AI, it can also be consider treated. The implementation such central system (server) and communication protocol should also be well designed to reduce or prevent cheating as much as possible.



===== Modding

Starcraft, Warcraft, AOE come with its editor helps modder make their map and game, which is open a whole new world of gaming as we've seen today. This can also be consider of a sub gameplay as player customize their game and publish it.

