I'm a new game developer and I have already finished Pong, Breakout and Snake. I want to start with strategy games, where do I read up on that? What ideas should I wrap my head around? I like games like civilization, master of Orion, etc.

Edit: I use objective-c and cocos2d. My question is more general and broad, for example how would one start with such games, e.g. I want to make a very simplified civ game. I have a tile map, one town and one attack unit. Town gives me x money every turn, i can build more units in town. How do I store said town, units? Do i use classes for them? Where does my combat function go? In units, or in separate entity? Do I use inheritance for digferent units, how do I handle makinf more units in towns? How so I implement turn-based turn? Some sort of state machines? General read about those topics would be nice.

  • \$\begingroup\$ Since we have no idea about your existing knowledge, we can't answer this question. Do you know how to design the basics of such a game on paper? Do you have problems with implementing the AI logic? Are you going to use an existing framework, or write your own? Please tell us where you're stuck. \$\endgroup\$
    – Marton
    Aug 8, 2012 at 9:08
  • 1
    \$\begingroup\$ @Marton updated question \$\endgroup\$
    – Dvole
    Aug 8, 2012 at 9:21

3 Answers 3


Theres a few things I would start looking at:

First you will need to decide on the best structure of the game: One method would be to use a Entity/Component/System Architecture (Here is a link for a great answer from Byte56)

One advantage of this is that your entity is pure data and new units can be added by configuration alone, which means there is no inheritance and any number of units can be added with no code changes.

This also answers another part of your question:

Where does my combat function go?"

In a Entity system it would be its own system acting on the data within the entity.

To implement turned based one method would be to simply maintain a list of players which are looped through pausing on the Actual Player until they click end turn (or equivalent), then repeat. This would have the advantage of allowing multi-player by adding another player to the list you wait for.

Another point of interest could be path finding, for example A* path finding Algorithm

As for:

how do I handle making more units in towns?

I believe the simplest would be to let the town keep track of what it is currently constructing/training and on each turn negate one from its time to build till equals 0.

Hope this helps


I see no problem in simply starting. When you have concrete problems, then ask quesitons, at this point there are literary dozens of directions you could take...

These more complex projects just last longer and usually require a bit more planning, but there's nothing stopping you from getting an engine (which you already have), making some sketches, and building early prototypes. Remember not to over-think stuff, for example, you might not need an Entity System in your first try (it's a good paradigm in games, but you still need to learn OOP)...

As where you can read up on RTS games, well, as I said, there's no better way to learn than getting your hands dirty. 1 finished game, no matter how simple, is worth more than simply reading articles on the subject.


Depends Entirely on what game you want to make

i would start however by making a tile engine either top down (like a 2D RPG) or side on (like a platformer)

then try getting a player to walk around in it

  • \$\begingroup\$ I have an engine with tile maps, it is not the hard part! \$\endgroup\$
    – Dvole
    Aug 8, 2012 at 9:31

Not the answer you're looking for? Browse other questions tagged .