Time Compression in a 4X Game

Started by
20 comments, last by Orymus3 8 years, 5 months ago


For your more specific question, I'm not quite sure what you're doing with the population. In Civilization, making military never affects your population directly (although the focus on production rather than food limits your population growth). Damaging a city occasionally damages a population, but it's infrequent enough that it doesn't match the population growth that cities have all the time. How is your game using population in combat that's becoming a challenge?

I'm trying to use population to directly translate to crew/troops. Thus, population growth also determines the available amount of troops and ship ops crew (similar to some Star Trek games amongst others).


that's why it is legit to update long term effects on a continuously way. e.g. if you know it takes 9 month to increase the population by 50%, then it's 1.67 per year. hence every month would get ~10% more population. that's ofc when you assume females are brute machines.

But I find it hard to balance player decision-making between tactical combat and strategic planetary growth implications so that there's a decent flow here.

For example, tactical combat requires a lot of input each turn given the amount of ships, whereas population growth would also imply a lot (structures to build, etc.)

If I'm to get some clearer design space in there, I need to find a suitable means to decrease the strain on the player.

One example I like is X-COM (the new game) where you spend time dealing with the macro-level and then have a very narrow scenario that is tactical. Unfortunately, I can't replicate this model in a multiplayer asynchronous experience.


TL:DR - I guess the point is that your game-time events could be to real-world scale as long as you can accelerate through the times where nothing happens.

I would love this, but in an asynchronous game, I need to put more into each "turn". Perhaps in the form of planning?


You mean a military unit only makes one combat-move every turn ? It's more like Civilisation then, most 4X will have full-blown battles with their own combat-turns every "economic" turn.
Anyway, moving through space takes time etc, and you can asume that units that are big enough to attack planets take some time to move as well.

Actually, only one "maneuver" is planned, but it can be a complex one (such as an elongated S trying to lure an opponent into a flanking position, etc.)


time scale problems have always been an issue in strategic games - unrealistically short building construction times in RTS's being a classic example.

Asynchronous gameplay is actually a big part of my problem I believe. I'm ok with bending the rules, but I still need to convince players to play "long games together" and I can't anticipate doing so in real-time, so I must put more on the backend-side and this is putting constraints...


- focus on one side of the timescale only (like no tactics only strategic level)

I'm actually leaning towards the exact opposite (once again). I'm trying to abstract the strategic level and focus on the tactical and logistical aspect. It seems this is a duel we've started two years or so ago and it is bound to continue that way :P


- split turns (big) and then subturns (phases) which occurs on needed basis, so sometimes you have these phases and sometimes not (a concept, haven't used it yet)

How do you explain that in a multiplayer asynchronous environment though? My instinct would've been to do so:

Every "turn" is really 1 MACRO turn (economy, etc.) and 10 micro-phases of combat.

But can I realistically ask the player to choose 10 movements for each of their ship in advance and consider who they might be able to fire on, etc.?

Seems like there's not enough information in real-time for them to consider this.


- don't use any timescale and name everything "turns", like in my current in dev game the intro says "10,000 turns ago..." also imperial governors have their age listed in turns not years. So, it's a bit of "breaking the 4th wall", but also I have a more freedom since I never said that a turn is one year. Of course it depens on the game's mood, in mine it's humouristic/cartoon like so it fits, I would not use it for all games.

I'm not that invested in realism, I'm perfectly fine with turns, and to be honest, the term "weeks" would probably fit most circumstances anyway. It's really the tactical implications that are a problem.

One solution I was thinking about was doing this:

- Game server host runs every "real life" day.

On mondays, it turns a "MACRO turn" and a "Micro turn"

On all other days, it runs only the Micro turn.

That way, every week, you get new resources to play with, your buildings are constructed, etc.

But every day, you get to fight off the opponent by focusing on the ship movement only.

Perhaps this would work? (now, where do I find people willing to play 7 days a week is an altogether different story!)

Advertisement

In speed mode (minimum a basic radar map of units to visualize rough situation - cutting out the rendering processing) have an 'idle' percentage (summary) by which the player can judge whether they want to go back into 'real time' to issue more orders (assuming this isnt a game where you constantly have to keep reprogramming unit orders while playing)

Hazard Events like enemy-attacks might (automatically) force the game back to real time (lest the player look away and half his forces be destroyed in the fast-time mode).

--------------------------------------------[size="1"]Ratings are Opinion, not Fact


Perhaps this would work? (now, where do I find people willing to play 7 days a week is an altogether different story!)

There 's plenty of browser-games that give turns or actions per day.

In this case, i 'd give the resources in the night of sat/sun, so players can play with resources on their lazy sunday(or monday, if they play from work) and make micro-movement unimportant in defending and important in attacking, thus making logging-in daily only needed during an offensive.

Civilization just lets the battles play out over silly time scales, with centuries being spent marching across a continent in the early game. If the game is fun, players will forgive 500 year battles.

Another approach you could consider is using a 'battle plan'. A battle is some set number of phases, maybe 6. After each phase, units are destroyed, victory points gained, morale damaged, whatever. There are preset tactics, again, let's say 6. Each is used best in some circumstances (numerical superiority, mobile force, positional advantage,...) possibly to some different goal (win at all costs, run down the clock, damage morale) and is strong or weak to other tactics. If morale gets low enough, one side retreats after that phase, otherwise after all phases a victor (or draw) is decided.

The player looks at the battle and chooses the tactics for each phase. "Ok, he's got more units, he's probably going to press that advantage with "envelope" so I'll use the counter "fall back". Across the multiple phases you can choose a temporal strategy "I'll go all out in turn 2 and see if that wins, and if not I'll just fight a careful defensive fight to avoid unnecessary losses". If you want to get complex, you could even have conditional tactics: "If I'm leading in turn 6, play defensively to hold that lead, otherwise mount a full charge to try to force a win."

Then the players can still make tactical decisions in combat, but the whole battle can occur in a single turn.

I'm trying to use population to directly translate to crew/troops. Thus, population growth also determines the available amount of troops and ship ops crew (similar to some Star Trek games amongst others).

I haven't played them. Maybe a small percentage of population growth could be capable of joining the military. When they join, it's a very minor hit to the population of the city/planet, but the potential military population of that planet is reduced. The overall population of the location is still large enough to replenish the potential military population quickly.

Maybe something like this would also let you play with the idea of militia or other less trained militaries, as you could still recruit military from the remaining civilian population after the prime military candidates are taken. If you don't hire military from that location for a while, the percentage of the location might stay static instead of always increasing (as the military age individuals get old, or the population gets used to peaceful times and doesn't prepare their population for war). One army might do more destruction to civilian populations when attacking an area, making it harder for the population to recover but more effectively ending rebellions, where another army might attempt to convert civilian populations to their side resulting in rebellions until the conversion is complete.

Radiant Verge is a Turn-Based Tactical RPG where your movement determines which abilities you can use.


There 's plenty of browser-games that give turns or actions per day.
In this case, i 'd give the resources in the night of sat/sun, so players can play with resources on their lazy sunday(or monday, if they play from work) and make micro-movement unimportant in defending and important in attacking, thus making logging-in daily only needed during an offensive.

Possibly a better start-of-turn indeed.

That being said, within my given system I don't think all tactical maneuvers are unimportant. Those that concern moving from planet to planet certainly are, but there would be critical encounters and I feel this is penalizing players harshly for missing even 1 turn. The intent is to make a fun game, not an anti-social life experiment ;)

I must ponder this some more, at the risk of changing the entire game's focus...


Another approach you could consider is using a 'battle plan'. A battle is some set number of phases, maybe 6. After each phase, units are destroyed, victory points gained, morale damaged, whatever. There are preset tactics, again, let's say 6. Each is used best in some circumstances (numerical superiority, mobile force, positional advantage,...) possibly to some different goal (win at all costs, run down the clock, damage morale) and is strong or weak to other tactics. If morale gets low enough, one side retreats after that phase, otherwise after all phases a victor (or draw) is decided.

The key problem with my current battle implementation is tactics. Ships' dominating factors currently involve positioning and firing arcs (to allow for flanking advantages and trying to pursuit / outmaneuver). This can take many turns, obviously, and requires a level of detail similar to chess (or perhaps even more in-depth) which might heavily penalize players for skipping even one move.


The player looks at the battle and chooses the tactics for each phase. "Ok, he's got more units, he's probably going to press that advantage with "envelope" so I'll use the counter "fall back". Across the multiple phases you can choose a temporal strategy "I'll go all out in turn 2 and see if that wins, and if not I'll just fight a careful defensive fight to avoid unnecessary losses". If you want to get complex, you could even have conditional tactics: "If I'm leading in turn 6, play defensively to hold that lead, otherwise mount a full charge to try to force a win."

That would work, was it not for the fact this game will play out with small numbers of ships. So a global tactic (such as surrounding a target) won't quite work in 1 2v1 scenario.


I haven't played them. Maybe a small percentage of population growth could be capable of joining the military. When they join, it's a very minor hit to the population of the city/planet, but the potential military population of that planet is reduced. The overall population of the location is still large enough to replenish the potential military population quickly.

Maybe something like this would also let you play with the idea of militia or other less trained militaries, as you could still recruit military from the remaining civilian population after the prime military candidates are taken. If you don't hire military from that location for a while, the percentage of the location might stay static instead of always increasing (as the military age individuals get old, or the population gets used to peaceful times and doesn't prepare their population for war). One army might do more destruction to civilian populations when attacking an area, making it harder for the population to recover but more effectively ending rebellions, where another army might attempt to convert civilian populations to their side resulting in rebellions until the conversion is complete.

I feel there are a lot of workarounds for this, but that the combat aspect is the key issue in my current design (as per the above).

I'm actually leaning towards the exact opposite (once again). I'm trying to abstract the strategic level and focus on the tactical and logistical aspect. It seems this is a duel we've started two years or so ago and it is bound to continue that way
No, this time we agreed on this :) I suggested to choose one, only tactic and no strategy being viable too :)


How do you explain that in a multiplayer asynchronous environment though?
Oh boy... multiplayer. Yeah, that's problematic. I don't think that one would work in multiplayer. Sorry, no advice from me then :(

Maybe try realtime route (not that I'm the fan of it)?

Stellar Monarch (4X, turn based, released): GDN forum topic - Twitter - Facebook - YouTube

let me see if i have this right...

its 4x, online multiplayer. turn based.

by asynchronous, i assume you mean that a player logs on, enters their moves for the day, then waits til midnight for the server to "turn the crank" and resolve all player moves?

and you seem to have three concerns:

1. what if a player doesn't log in to move their ships in battle? the combat system models maneuvering and arc of fire, which really requires player input each turn, or AI to do it for them, based on some orders (tactics) the player chooses.

2. how to model short term actions (combat moves) and long term actions (population growth) at the same time in a believable way.

3. how to model military size (total troops available) as a function of population size.

is this correct?

if so...

issue #1 is the big thing. AI takes over as needed is probably the best solution. needless to say, it needs to be decent AI.

for issue #2, you can either have population and related actions trickle in a little every turn or so, or have a "strategic turn" every 10 combat turns or whatever. you should probably not start with any pre-conceived notions (1) of how much of the player's time should be spent on tactics vs strategy. just start with what makes sense, and let the chips fall where they may. from what you describe, sounds like 70-90% of the game play will tend to be tactical in nature - everything except where to fly to and what to build. but if you think about it, in a 4x, you basically fly places, build stuff, and fight - oh and negotiate - another type of strategy game play found in 4x's.

(1) pre-conceived notions are called "cognitive baggage" in generic design sciences, and are considered a bad thing. IE they create an artificial box you don't allow yourself to think outside of, therefore possibly excluding superior designs, simply because you never consider them.

issue 3 seem pretty straight forward. mil = 0.01 * pop or something like that. the only tricky part is what to do when population falls. technically, the military should not shrink immediately, only through combat losses and folks mustering out. but replacement and new recruits should not be available until the standing military falls below the cap set by pop * 0.01 or whatever. sounds like you should model folks mustering out at all times. when mil is below cap, new recruits will fill the need automatically, so nothing to model there. : )

but when mil is greater than cap, you'll want to reduce mil from time to time to reflect folks mustering out, but no new recruits available due to low population. not sure how you'd want to handle that. prompt the player to select a unit for deactivation?

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php

The key problem with my current battle implementation is tactics. Ships' dominating factors currently involve positioning and firing arcs (to allow for flanking advantages and trying to pursuit / outmaneuver). This can take many turns, obviously, and requires a level of detail similar to chess (or perhaps even more in-depth) which might heavily penalize players for skipping even one move.

An asynchronous chess game can take weeks. I'm not sure how much more contiguous time than that you can reliably expect from a player.

What if you move the strategic level up to a community thing? Have N factions that every player chooses from when they sign up. You play tactical battles against enemy factions. If you win, your faction gets some benefit: for example, maybe at any time there's multiple large scale battles being fought, and the winner chooses which one to contribute to.

There could be a voting mechanism for strategic decisions, or each player manages a planet where the production is shared among the whole faction. The strategic level could just be concerned with obtaining some sort of victory points, or the units a player gets in a battle could depend on the faction's research/production/etc. But basically there's a strategic narrative you participate in, but each tactical battle might be against a different human opponent.


What if you move the strategic level up to a community thing? Have N factions that every player chooses from when they sign up. You play tactical battles against enemy factions. If you win, your faction gets some benefit: for example, maybe at any time there's multiple large scale battles being fought, and the winner chooses which one to contribute to.

A thought that merits attention for sure.

There are many ways to go about making this kind of metagame, I'll give this some thought, thanks!

This topic is closed to new replies.

Advertisement