Sign in to follow this  
Eternal

Turn System for Empire Building Game

Recommended Posts

I'm currently working on a multiplayer (no, not massively multiplayer :)) empire building game, in the spirit of master of orion 2. A classic turn system like in MoO or Civilization probably gives a small advantage to the player moving first and it more or less forces everyone to sit around and do nothing when it's not their turn, which leads to boredom, frustration and endless games. Then there is the option of "synchronous" moves, where everyone moves at the same time, which gives a huge advantage to the fastest clicker and might bring general confusion, because you can never be sure that your opponent isn't going to move the fleet you plan to attack in the same second that you move your own fleet. Games like Imperium Galactica (2), Rebellion or Hearts of Iron used "real" time. In IG stuff would happen so fast on the galactic map, that you could never keep up with everything that was happening, let alone reacting to it or recovering the loss of a fleet or planet. The system used in HoI or Rebellion actually is great for single player games, but it relies heavily on the ability to adjust the game speed to the game situation. In a multiplayer game everybody probably likes a different speed best and you can even guess what a player is doing based on the game speed he wants (Someone building stuff with long build times will want a fast speed, someone coordinating his forces for a "surprise" attack will suddenly decide he wants a slower speed). Then you could also do "game speed bluffing", for example by choosing a slower game speed, making everybody think you want to attack, while you're basically doing nothing. All that considered it might be best to stick with fixed game speeds, but if the game speed is too slow you get long boring periods where nothing happens and if the game is too fast you get a click-fest. I also considered some sort of self-adjusting speed, where the game would gradually get slower when the game gets longer or when there are more units in the game. Somehow I also think this wouldn't work too well and might still be open to some form of abuse to control the game speed. I would really like to have a real time game, but it seems there are too many problems with it. My favourite idea so far was to have a planning phase and an execution phase, like in the board game diplomacy. In the planning phase every player can set orders for his units and manage his planets, in the execution phase units are moved, etc, and conflicts are resolved. The problem with this is that if each turn covers a larger amount of time the interactions between units and opposing orders quickly become very complex and hard to manage. For example if Player A has a fleet with speed 5 and orders it to attack Player B's fleet which is 2 'squares' away and Player B decides that his fleet is in danger and runs it away with speed 4, then A can't catch B's fleet in this turn, but he would catch up on the next turn. But Player A might not want to follow the fleet once he sees that it is moving away, because he thinks it is a trap. Or what if Player B brings in reinforcement and A decides he'd rather run his fleet away when he sees this ? So you would either need a very complex (scripted ?) system for ordering your fleets around or frequent intermissions, allowing players to change their orders if something "unexpected" happens, or maybe a very smart AI, which tries to guess what the player wants to happen in that situation and rarely fucks up (yeah, right, maybe in 20 years :/ ) You can get around most of those problems if you make the turns shorter, so that everything only moves a very short distance each turn. But I feel this would lead to lots of "empty" turns, where everyone is just busy hitting "End Turn" until something interesting happens. My latest idea is to make the game run in real-time and have regular pauses, where everyone can manage his colonies and think about his fleet movements. The real-time part would then be spent making short-term corrections to your plans and reacting to new information. This could be combined with options for changing the real-time speed and the frequency of pauses, maybe through majority votes. I haven't found the negative sides of this system yet, but I'm sure there are a few points that can be adressed, before I start implementing and testing this, so I'd like to read your comments.

Share this post


Link to post
Share on other sites
The 2 phase system, "orders" and "execution" are not a bad idea at all. In fact the main improvement in TBS since the invention of Civilization and Master of Orion is this system.

Imperialism uses this system, Stars! uses this system. In fact, it is almost the only sensible system for multiplayer turns.

It basically takes a game like Civilization, where you issue each order, and see the results immediately in combat (oh, first unit failed, try second ... oh that didn't work, wait with other 3 units till next turn), and makes it (send in these five units to attack).

Interestingly, this is exactly how the build phases of all these games work, when you pick a building to build, nothing happens till you hit end turn, you can change your mind ... UNLESS you pick a building worth less than your previous savings, or you switch to a wonder and pay the 50% loss. These stupid exceptions make playing the game highly annoiying. If they just did NOTHING until end-turn, it would be fully self consistent.

In Imperialism, there is nothing that is not undoable, you can say, issue these orders, move these units, offer this diplomatic agreement. And then the game will solve it during the turn processing phase.

Stars! is actually the perfect example of this. Stars! is the absolute best SciFi 4X play-by-email game I've ever seen (and I've played a lot). Its so good that you can still play it today, even though its like 9 years old. And its 3rd version never came out (company died).

Share this post


Link to post
Share on other sites
There is an old game called Stars! which was a TBS over BBS. In other words the usual turn time was 24 hours. The initial turns were sometimes shortened to 1 hour because there was less to do.

Let's face it. If you don't want hurried clicking, you won't be able to play the game in 20 minutes. Think of most TBS games you have played. Did you play the game beginning to end in one sitting? Try coming up with a system to let people have time to ponder their strategy.

EDIT:
Quote:
Original post by Xai
..., Stars! uses this system. ...
Stars! is actually the perfect example of this. Stars! is the absolute best SciFi 4X play-by-email game I've ever seen (and I've played a lot). Its so good that you can still play it today, even though its like 9 years old. And its 3rd version never came out (company died).


Apparently great minds think alike.

Share this post


Link to post
Share on other sites
While they're not empire building games, two games you might look at for inspiration would be Laser Squad Nemesis (I know there's a demo floating around out there), and Jagged Alliance 2. They are both turn-based, but the former follows somewhat closely to your planning phase and execution phase. You give certain strategies to units to get the desired reaction when situations change mid-turn (such as "run away if you spot someone while walking"). You still have to keep the turn length short enough to give the player flexibility, but it is reasonably capable.

Jagged Alliance 2 is turn-based for all the time that is relevant to your game (it is real-time when enemies aren't present, but that doesn't really apply very well in a multiplayer game). It would have problems in multiplayer with everyone having to wait for their turn to come around, and the other problem of unrealistic actions because one person can do a lot on their turn, while all other players are just stuck and can't react. However, to remedy this problem (somewhat), they added interrupts, such that if one of your units has action points left, and they are agile and quick enough to react, their player gets an interrupt if they spot an enemy doing something on the enemy's turn. The interrupting player then gets to continue using that units action points, and the enemy has to wait until the interrupt is complete. This allows a player to leave a guy waiting, because the player suspects something might happen mid-turn. If something does indeed happen, they can then react to it. It's not perfect, but it's better than nothing.

Also, if you haven't played it before, you might consider checking out MOO3 (despite its poor reviews and all). It has planning and execution phases too, and you don't generally run into problems with wanting more control during the execution phase, simply due to how the game mechanics work in general. Combat is real-time, so during the execution phase, players will have the option to manually interact when combats need resolving, but other than that, no orders can be given, and generally, no orders need to be given.

I've personally considered this whole issue myself quite a bit, and I've been interested in doing an auto-pausing real-time system, where pauses are based on events that are relevant to players. The game would run continuously up until an event occurred that a player is interested in possibly reacting to. The game then pauses, (only for the person receiving the event), and they can do stuff (give orders, rather than perform actual actions such as moving a unit). All other players think that the game is still calculating, unless they also received an event that is relevant to them. To avoid the problem of people just waiting around for others, however, you could also have a timed event, that fires on a regular basis, and pauses the game for everyone, or otherwise try to design the system so that different players' events would frequently fire at the exact same time. Also note that under this system, you might restrict players actions to only those objects that are relevant to the event, to speed up most manual event handling, but let all actions occur under the game-wide timer event. Additionally, each user could dynamically choose what events to respond to or ignore as they thought was appropriate. (Unfortunately, micromanagers could subscribe to all events, no matter how trivial, and really slow down the game for others.)

Share this post


Link to post
Share on other sites
Personally, real time with pauses seems like the worst of both worlds. You're bored during the pause just so you can frantically click once it unpauses.

I am patterning my turn structure in my hobby project after Imperialism (an excellent game by the way). I've not come up with a nice clean way to do synchronous orders though. Hell, I've not even come up with a fairly nasty way with bunches of exceptional cases. It's all super ugly, so I'm probably going to go with iterative turns.

Share this post


Link to post
Share on other sites
Quote:
My favourite idea so far was to have a planning phase and an execution phase, like in the board game diplomacy. In the planning phase every player can set orders for his units and manage his planets, in the execution phase units are moved, etc, and conflicts are resolved. The problem with this is that if each turn covers a larger amount of time the interactions between units and opposing orders quickly become very complex and hard to manage. For example if Player A has a fleet with speed 5 and orders it to attack Player B's fleet which is 2 'squares' away and Player B decides that his fleet is in danger and runs it away with speed 4, then A can't catch B's fleet in this turn, but he would catch up on the next turn. But Player A might not want to follow the fleet once he sees that it is moving away, because he thinks it is a trap. Or what if Player B brings in reinforcement and A decides he'd rather run his fleet away when he sees this ? So you would either need a very complex (scripted ?) system for ordering your fleets around or frequent intermissions, allowing players to change their orders if something "unexpected" happens, or maybe a very smart AI, which tries to guess what the player wants to happen in that situation and rarely fucks up (yeah, right, maybe in 20 years :/ ) You can get around most of those problems if you make the turns shorter, so that everything only moves a very short distance each turn. But I feel this would lead to lots of "empty" turns, where everyone is just busy hitting "End Turn" until something interesting happens.


I don't see there is that much of a problem with restricting units to speed 1 if you just design the game around it. It neatly removes all the need for scripting and such, and you don't really need things to move at different speeds in order to provide strategic and tactical depth when you think about it.

Another issue which I think is related and which often comes up with strategy games is the handling of large numbers of units. I happen to play Freeciv a lot. Here, players write hacked interfaces to move hundreds of stealth fighters at once. If you don't play with the hacked client, you lose. A perfectly designed TBS game in terms of rules and interface would not provide any benefit to hacked interfaces.

Now, I don't think a cap on the number of units you can have is a very good solution. I also don't think the Diplomacy system of one unit per tile would work well. I think it is necessary to specifically design the rules and the interface to deal with this issue. My suggestions are:

1. Provide weapons that can kill multiple units on the same tile: Dragons breath, artillery or some such.

2. Have a small upkeep, not so big that it effectively caps the number of units you can have, but big enough that players will sometimes decide to disband outdated units.

3. Have an AI that sets "suggested moves and actions" at the beginning of each turn, and allow the player to go through and change them. Basically, the game can play itself - the results should merely be very defensive and suboptimal play.

4. Let the length of turns be determined by having each player tick off their preferred turn length (can be changed at any time), and setting the actual turn lengths to be the average of that.

Share this post


Link to post
Share on other sites
Some interesting ideas here. Just thought I'd mention that turn-based games don't always offer an advantage to the player who goes first, or at least not only to them: a well designed turn-based game will give the player who goes last a chance to respond to what's already happened that turn, compensating a bit by allowing them to react, even though they are less likely to be able to seize the initiative themselves. See Julian Gollop's masterpiece Chaos for example.

There's also the fact that the order a turn is resolved does not have to be the same each time. Some tabletop wargames like Games Workshop's Lord of the Rings have a "priority phase" at the start of the turn, that determine who goes first for the rest of the current turn. (LOTR is also a good example of allowing the player who goes second to respond - the player with priority goes first in each phase, but the phases are divided, such that player A will move then B will move, and only then are fights resolved - so although A gets to charge first, B gets to respond to the charge and gang up on important enemy fighters). Such a priority system tends to work best with only two players, though.

I do like the idea of separate planning and execution phases, though there should be some way of interrupting execution to react based on initiative. If your lone Scout unit has been ordered to explore a forest, and suddenly an entire horde of enemies emerge from the cover of the forest, the Scout should be able to enter an automatic "panic" state, rather than mindlessly attempt to continue into the woods, and certain doom.

Share this post


Link to post
Share on other sites
Quote:
Original post by Thermodynamics
There is an old game called Stars! which was a TBS over BBS. In other words the usual turn time was 24 hours. The initial turns were sometimes shortened to 1 hour because there was less to do.

EDIT:
Quote:
Original post by Xai
..., Stars! uses this system. ...
Stars! is actually the perfect example of this. Stars! is the absolute best SciFi 4X play-by-email game I've ever seen (and I've played a lot). Its so good that you can still play it today, even though its like 9 years old. And its 3rd version never came out (company died).


Apparently great minds think alike.

I'll definately check out Stars!, if I can get it somehow. The demo links in the FAQ seem to be down. It's age shouldn't be too much of a problem, after all I still play StarCraft, which will also be 9 years old in a few days (I think) ;)

Quote:
Original post by Thermodynamics
Let's face it. If you don't want hurried clicking, you won't be able to play the game in 20 minutes. Think of most TBS games you have played. Did you play the game beginning to end in one sitting? Try coming up with a system to let people have time to ponder their strategy.

Hehe, well, the most multiplayer TBS games I played were actually finished in one (very, very long) sitting or never finished at all. My situation is probably special, because I have a group of close friends who are still insane enough to forget about everything else, just to play a computer game for a weekend ;)

Quote:
Original post by Agony
I've personally considered this whole issue myself quite a bit, and I've been interested in doing an auto-pausing real-time system, where pauses are based on events that are relevant to players. The game would run continuously up until an event occurred that a player is interested in possibly reacting to. The game then pauses, (only for the person receiving the event), and they can do stuff (give orders, rather than perform actual actions such as moving a unit). All other players think that the game is still calculating, unless they also received an event that is relevant to them. To avoid the problem of people just waiting around for others, however, you could also have a timed event, that fires on a regular basis, and pauses the game for everyone, or otherwise try to design the system so that different players' events would frequently fire at the exact same time. Also note that under this system, you might restrict players actions to only those objects that are relevant to the event, to speed up most manual event handling, but let all actions occur under the game-wide timer event. Additionally, each user could dynamically choose what events to respond to or ignore as they thought was appropriate. (Unfortunately, micromanagers could subscribe to all events, no matter how trivial, and really slow down the game for others.)

I feel this might cause an endless stream of interruptions, when the number of events gets large. And this would especially be true for me, because I will micromanage _everything_, as long as it helps me to get an edge in the game.
Hmm, I don't know, maybe I'll still try it out, the implementation shouldn't be too different from the other real-time-with-pauses system.

I played JA 2, but again I think you would get very many interruptions, when you have more than a handful or so of units on the map. I will try to find the Laser Squad Nemesis demo tho.

Quote:
Original post by Telastyn
Personally, real time with pauses seems like the worst of both worlds. You're bored during the pause just so you can frantically click once it unpauses.

The way I imagine it, there would be so much to do that you can't do everything in the real-time phase and after all if everyone is bored during the pauses, because there is nothing to do you can still hit "end turn", so the pauses are short or increase the real-time speed or decrease the frequency of pauses.
You will still get some fast clicking (more Total War/Medieval "fast" than Starcraft fast) and that will probably drive away some players, but it might also get others interested and after all I should worry about actually finishing the game before I think about it's popularity :)

Quote:
Original post by Telastyn
I am patterning my turn structure in my hobby project after Imperialism (an excellent game by the way). I've not come up with a nice clean way to do synchronous orders though. Hell, I've not even come up with a fairly nasty way with bunches of exceptional cases. It's all super ugly, so I'm probably going to go with iterative turns.

And now I'll also have to try out Imperialism (I'm glad I don't have any deadlines on this project).

Quote:
Original post by Wiggin
I don't see there is that much of a problem with restricting units to speed 1 if you just design the game around it. It neatly removes all the need for scripting and such, and you don't really need things to move at different speeds in order to provide strategic and tactical depth when you think about it.

Hmm, I think speed and mobility in general can add lots of strategic and tactical depth, especially in a space scenario (or really any game), where large fleets could be self-sustaining and supply lines might not be necessary. Such a sytem might also be more suited or even lead to a WW1 style game with lots of entrenching. But I'll still think about it, as I haven't really decided how inter-system travelling should work in the game. Hyperspace/Warp ? Jumpgates ? Everything moved closer together than in reality and "standard" FTL travel ?

Quote:
Original post by Wiggin
Another issue which I think is related and which often comes up with strategy games is the handling of large numbers of units. I happen to play Freeciv a lot. Here, players write hacked interfaces to move hundreds of stealth fighters at once. If you don't play with the hacked client, you lose. A perfectly designed TBS game in terms of rules and interface would not provide any benefit to hacked interfaces.

Units are/can be packed into fleets, which should remove most stacking issues. The game will also have "move all" and maybe "move all of same type/with same speed" buttons.

Quote:
Original post by Wiggin
Now, I don't think a cap on the number of units you can have is a very good solution. I also don't think the Diplomacy system of one unit per tile would work well. I think it is necessary to specifically design the rules and the interface to deal with this issue. My suggestions are:

1. Provide weapons that can kill multiple units on the same tile: Dragons breath, artillery or some such.

2. Have a small upkeep, not so big that it effectively caps the number of units you can have, but big enough that players will sometimes decide to disband outdated units.

3. Have an AI that sets "suggested moves and actions" at the beginning of each turn, and allow the player to go through and change them. Basically, the game can play itself - the results should merely be very defensive and suboptimal play.

4. Let the length of turns be determined by having each player tick off their preferred turn length (can be changed at any time), and setting the actual turn lengths to be the average of that.

First of all I currently only have "tiles" as a way to speed up calculations, without any (atleast so far) impact for the players. In space, where stars and planets provide natural points of interest, tiles in my opinion don't add anything besides maybe some artificial restrictions to movement.

1: I will have manual or simulated combat between fleets, not individual units and I don't know if I like the idea of strategical weapons that can wipe out entire "stacks".

2: Yep, certainly. (Although I will make sure that you don't get any "Our engineers decided to scrap the Deathstar, because we couldn't pay the maintenance costs" messages, like in Rebellion ;) )

3: This might be a good idea, if I ever decide to implement AI players. For now it's probably way too much work for very little benefit.

4: Yes, good idea. I also think that the average should be biased towards the lowest selected choice, because not being able to do something, is worse than getting "too many" turns/pauses.

Share this post


Link to post
Share on other sites
here's the gamespot page for imperialism:

http://www.gamespot.com/pc/strategy/imperialism/index.html

i think you can still find Imperialism II on ebay.

I'll look for stars! links that still work when i'm at home.

Share this post


Link to post
Share on other sites
Actually Imperialism II actually had two systems. At the strategic level it was "issue all orders then execute all orders for all players simultaneously". But when you invaded a province, it was standard turned based "issue order and execute immediately". The thing with Imperialism II though is combat didn't take place on the main map, but on a seperate minimap. The world map was actually a combination of a region based system and hex grid tild based. The hexes were used for economic improvements. You controlled entire regions at a time. The sea combat was rather primitive and the open ocean was pretty much useless once everything was discovered. When you invaded a province, you battled the enemy army in the province in its entirety, and had to ddestroy the enemy army or at least drive them off the map. If there was a fort there, I believe you would have to reduce the fort as well (destroy all its guns). I loved that game, and still have the manual. Its too bad my brother took it and never gave it back :-(

It doesn't sound like you want a minimap idea though, so I'm not sure if that system would help too much. I was also thinking about doing a large scale game that combined strategic and operaitonal level elements, as well as economy and diplomacy. I was actually thinking of breaking up game days into hour-by-hour turns, and all movement during the turn would be completed, and then the next . Who moves first during a game turn would be dependent on things like initiative and the speed of the unit, plus a random factor. As for the "unit is retreating so I don't want to pursue them because it might be a trap" or "there are way too many enemy units near me, I should pull back" problem, I was thinking of having stances for units that affected how aggressive they were. But problems like these are the reason I sheleved and tried to do something simpler to start, as I haven't programmed in a while.

As for tiles - depending on the complexity of your system, tiles will help out alot. They make collision detection and path finding a heck of alot easier. And they are alot easier to work with from a players perspective, when there are lot of units involved. What you could do is have very fine grained "invisibile" tiles like they did with Starcraft.

Share this post


Link to post
Share on other sites
I believe that the best example of a turn based strategy game are the Total War games. You have a big map and everyone takes turns making moves, attacking, moving units, etc. Then if a battle takes place, both players go into RTS mode and control their armies.

Share this post


Link to post
Share on other sites
Quote:
Original post by Adriac Veras
I believe that the best example of a turn based strategy game are the Total War games. You have a big map and everyone takes turns making moves, attacking, moving units, etc. Then if a battle takes place, both players go into RTS mode and control their armies.


Yes, that works quite well for that context, because in the old days forces were very concentrated and you had huge battles(for the time) where opposing armies would face each other for a few days at most, fight each other, one army would be either retreat or be forced to withdraw(in a few cases, totally defeated), and then neither side would do much for a few months or so. This system works quite well in giving you the feel of military engagements durign those time periods. But by the 20th century it became unwwise to concentrate force to that degree, because of a few factors: The accuracy and range of artillery and later, airpower, the development of mechanized infantry, and the advancement of signals equipment (radio) made it possible for a general to give orders to forces that were very far away (and in turn, the ability of the field general to report the progress of his forces) So what you had in the 20th century in large engagements between great powers was multiple armies that are distributed throughout a broad front, whether spread out(WWI) or concentrated(WWII). I'm not saying that there weren't 'battles' but they were spread out to such a large area that a Total War or Imperialism II style mini-combat is probably does not make sense in the scale of the map (i.e the battle would take place over multiple tiles)

Share this post


Link to post
Share on other sites
I am not really sure if this will fit into your design, but here are some ideas around the topic.

1. Enable an Option where maximum Time per Round is fixed: 1/2/5 Minutes per turn.

2. Dont let the people control too many things. This will decrease the time for the other players to wait. This may be possible with different design aspects. i.e.:
- High Upkeep cost for units and/or Towns to limit Units/Towns
- Fewer decisions to be made in a Town. (Like in Civ: Specialists/Ressource Management) If you dont want to remove such features completly make them more simple maybe with 2 Buttons:
*Optimize for foodproduction*
*Optimize for industrielproduction*
...

3. Helpful tools and automatics for the players like:
- The possibility of setting up a buildorder
- Auto-Building functions, (like in Civ) "Auto-Build"- Army/Economy/Research
Maybe with a notice what happens next round:
"Town X produced: 'Town-Hall' - AUTO-BUILDER will start building a Library next round. <Click here to change manually>"
- Let a player do more things with one click. i.e.: Selecting 5 Armies around and sent them all together to your town or next to an enemy town. In Civ you had to click for every field with an army and send it.
- Introduce waypoints for army production. "If-Army-Production-Ready -> Send it to my town XYZ"

4. To introduce some actions while still using turn based system you may pop-up a tactic-window for both players 5-10 Seconds befor a fight starts. Both now have the option for give some special orders maybe "Fight defensive/offensive/split army and try to attack from 2 Sides"
This can be made very simple and like r-p-s. If you choose the right thing your army gets a 10%-Bonus or something like that.

5. If anyone is waiting for the other player he should be able to do something. Maybe setting up a build order. Do some town management etc.

6. Introduce a Button "Auto-Skip-Next-Round (if nothing important happens)"

Share this post


Link to post
Share on other sites
Don't know if this has been implemented before but how about this:

Preliminary move planning during the other player's turn? e.g. if you're training units you can queue them to be trained when your turn comes around. Same goes for building etc. Maybe have the ability to move units at this time as well, but obviously this would be undo-able come your move, if the opponent's tactics make the move inappropriate.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
I don't remember what game I saw it in in, but a neat gimmick is imposing a flexible time limit. When half or more of players clicks end turn a countdown starts and everybody else's turn is automatically finished after the time is up. This way you do have time for longer turns but can't annoy people by taking ages to finish a turn when there's nothing happening.

Share this post


Link to post
Share on other sites
Play-by-email games operate on the "everyone issues orders, then everyone executes orders" mechanism. This is a necessity of using email for issuing orders. See Atlantis (http://www.prankster.com/project/), which I wrote, or Olympia (http://www.pbm.com/oly/), which I played, for some examples of empire building games in this style. There are others too.

You can gain some insight from these games by examining how they handle the sequence of orders. For instance, what happens if a unit tries to move in the same turn as it is attacked? Issues like this abound, and there are different ways of handling them.

Geoff

Share this post


Link to post
Share on other sites
How about allowing each player only a single action per turn? Like in chess, each player moves a piece per turn. So in a TBS, a player would either build or move units, and then the next player would go. If you wanted to allow more moves, you could give each player a fixed amount of "action energy" at the start of their turn and assign a cost to the kinds of actions a player could do.

This would make players' turns go by faster as they wouldn't be able to do more than one or a few things per turn.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this