Automated Battle System in a 4X Game

Started by
6 comments, last by Orymus3 10 years, 11 months ago

Hi folks,

Once again, this is related to a game I'm currently developing.

Sister threads:

http://www.gamedev.net/topic/642498-minimal-ship-customization-in-4x-games/

http://www.gamedev.net/topic/642461-research-system-in-4x-games/

http://www.gamedev.net/topic/642693-communication-in-a-4x-game/

http://www.gamedev.net/topic/642734-input-method-to-emulate-multiple-sliders/

I'm currently tinkering with one of the most 'interesting' parts of the genre: The Battle System.

Following in the legacy of some of my favorite 4X games, I want this to be a 'sit back and enjoy' type of combat, where every player decision has already been taken (how to build ships, what to bring to the conflict, etc). Therefore, I want it to be fairly simple.

I also want to avoid it being a 'cool looking' chaotic level where every ship is present and firing here and there: I want players to see how they have won or lost exactly so that they can learn from every battle.

To be perfectly in line with my current ideal, I want to prevent players using several smallers ships to easily defeat players using biggers ships. The reasoning is that, for economic reasons, the player will want to use a fleet of smaller ships to colonize/develop as many planets as they can, as quickly as possible. I want combat to balance things out by giving a slight edge to larger ships.

VGA Planets uses a system where each ship duels, in a specific order. I believe this gives too much of an advantage to the biggest ship which can, most of the times, destroy every ship one by one without taking much damage. I want it to be viable (although economically not so viable) to respond to a high-tech ship by massing smaller crafts, but I just want to dissuade the player to willingly use this strategy.

I've come up with two hybrid systems which I believe both make sense and introduce an interesting mix of strategy. I'm looking for input on the following 2 systems:

1 - "Lane System"

In the Lane system, the first 3 ships of each fleet are pitted against one another in their own dueling lanes. These battles happen at the same time, and as soon as one ship is the victor in his own lane, he gets to reinforce another lane. It appears in that lane, at a far distance, and closes on the enemy.

Other ships are in a queue, with a distance indicator. As time passes, they grow closer to the last lane and eventually reinforce it one-by-one. That way, if there is reinforcement on both sides, Lane 3 eventually leads to a new conflict. If only one player has reinforcements, it will take time, but it will reach lane 3, then lane 2 and finally lane 1.

2 - "Duel + System"

Much akin to VGA Planets, the first ship of each fleet are pitted against one another.

A queue of reinforcements is comig behind, with increasing distances.

Every ship will always target the 'oldest ship' on the other side first (ordered by their arrival into the duel) meaning the first ship to die is always the first one.

(This system is a simplified rehash of the first, minus the idea of parallel fights).

Thoughts?

Advertisement

Volumes of space vs volumes of space. Many smaller ships become grouped together in an 'operation space' while your largest classes of ship will take up an entire space to themselves. Offer bonuses like combined arms for different weapons, systems, and support functions operating in a single volume, which means your larger ships are more likely to be able to carry all the gear to get a given bonus all on their own, but the smaller ships become at risk of losing their bonus if a given ship gets taken out, while the larger ship will take damage and degrade, but is less likely to lose the system and completely lose their bonus.

Old Username: Talroth
If your signature on a web forum takes up more space than your average post, then you are doing things wrong.

Yay! I'm a great fan of auto ressolved balttles :D Note that most players will bug you and complain that there are no tactical battles (althrough I won't be one of them :)).

I was thinking a lot about this, especially what make a good auto ressolve system. And I concluded it is the representation of outcome, or to be more precise representation what happens and why. The best auto ressolve I found was in MOO2 (note it is merely an option there), I loved how I was able to pause after each salvo and examine damage dealt, evaluate damage received, compare my various ship designs.

Things like lane system or duel system is of low importance to me, the key is representation, the ease of me to learn and understand WHY I won/lost.

Will the battle be real time or turn based? Would there be an option to pause? Or to rewind? How long the battle will take on average? How many turns/phases will it have? How many ships per side there will be on average (dozens, hundreds, thousands)? Will it be presented in 2D or 3D? Would the ships use 3 dimensions to move?

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

Volumes of space vs volumes of space. Many smaller ships become grouped together in an 'operation space' while your largest classes of ship will take up an entire space to themselves. Offer bonuses like combined arms for different weapons, systems, and support functions operating in a single volume, which means your larger ships are more likely to be able to carry all the gear to get a given bonus all on their own, but the smaller ships become at risk of losing their bonus if a given ship gets taken out, while the larger ship will take damage and degrade, but is less likely to lose the system and completely lose their bonus.

To be frankly honest, giving support to the idea of 'fleet' itself should be foreign to this design. Most encounters of importance should be 1on1, or 1on2, but I want a system that can support that without having to make it complex.

The best auto ressolve I found was in MOO2

I don't remember the auto-resolve system, but the combat system itself was simply overly complex. I think that's the main flaw of MOO2 in fact: it tried to keep too big a scope while keeping it relatively streamlined, which resulted in a bunch of subfeatures you only had little control over. Checking videos on Youtube actually make me realized that VGA Planets' system, despite the dating visual, is easier to grasp. Its extremely straightforward, and while the visual is dated, its also very light, which helps even in retrospect.

I loved how I was able to pause after each salvo and examine damage dealt, evaluate damage received, compare my various ship designs.

Interesting (see below)

Things like lane system or duel system is of low importance to me, the key is representation, the ease of me to learn and understand WHY I won/lost.

The idea of lane is mostly strategic, to insure the game has enough depth. Having different lanes can insure some matchups occur, but I'm leaning more towards the other options with a straight duel + reinforcements coming slowly.

Will the battle be real time or turn based?

Realtime, and simulated.

Would there be an option to pause? Or to rewind?

Interesting features to add! And I don't see any reason not to.

How long the battle will take on average?

1v1 would take no more than a minute. There would also be a time indicator, and any fight not completed by that time marker would carry on to the next game turn (basically, they've fought for a long while, you get a chance to pull out if you wish, or pursue the fight).

Planetary invasions will take much longer though.

How many turns/phases will it have?

Its realtime with a time indicator (see above)

How many ships per side there will be on average (dozens, hundreds, thousands)?

I'm hoping something around 2. Most battles will be 1v1, but critical fights will involve up to 10 ships on each side (strong bases, outskirts encounter of battle fleet before it scatters into various sub-conquests).

Will it be presented in 2D or 3D?

2D.

Would the ships use 3 dimensions to move?

No. I'm abstracting space as a set of relative distances anyway, so for all I care, there could be 10 dimensions, it still needs to close on its enemy before shooting.

What about the classic space opera style of phases to each combat round?

1 - Fighters

2 - Bombers

3 - Capital

In phase 1 if both sides have fighters they meet and battle.

In phase 2 if there are fighters remaining they intercept enemy bombers. If the opponent has no bombers or fighters left remaining fighters are treated as bombers. Bombers that make it through the enemy lines bomb ships taking point defense damage.

In phase 3 capital ships engage each other with their heavy weapons. Capital ships try to attack in groups if they can or one on one if they are evenly matched in numbers.

If you can manage something that looks like this battle montage that would be great.

">

I was thinking of something like what Tech mentioned but more of a board game style. Consider it like a simple 1D battle field:

|x| | | | | | | | | | | | | |O|

X and O are the fleets and every "five turns" they step towards each other to meet in the middle. While at distance they start firing missiles at each other, missiles move 1 step each turn towards the opposing fleet. The missiles are counters, so there may be 100 missiles in a salvo headed for the opposing fleet. The opposing fleet can start sending out counter missiles which if they hit reduce the missile counter and if it hits 0 remove the item from the battle field. Fighters work much like missiles though if they meet opposing fighters, they melee it out in the middle and only the remainder will continue to the opposing fleet. They can be shot down also if you have any antifighter weapons (or just destroyer or smaller weapons meant for smaller ship battles) etc. Anyway, the missile exchange continues and as the fleets get closer eventually shorter range higher damage items can be used and things start getting really brutal etc. This is just a simple example of the concept in a simple form of course.

The basic idea though is that using simple rules like this you can integrate with the tech tree and make balanced fleets really important. A fleet with very high missile defense abilities will likely survive intact to closer range where missiles become more effective due to fewer chances for the opposition to shoot them down. Of course, at closer range things like shorter range high damage beam weapons can be used and the undamaged fleet will have an advantage in pure ability to absorb the increased damage longer than the damaged fleet. It's all about the trade offs, if you know the tech of another guy from a couple encounters and he has week missile defenses, a heavy missile fleet may be the answer. Or, if you know they have high missile ability and you have been concentrating on beams for close in damage, you might re-balance fleets to have a higher portion of dedicated anti-missile ships letting you get in range to use your beams.

And, as your initial complaint about the balance mentions: A single battle wagon without support would be meat for a well balanced fleet of small to mid sized ships. In fact, a balanced fleet of big dreadnaughts would not be an automatic win over a fleet of smaller ships if they showed up in large enough numbers. You could balance things such that basically the same tonnage of ships on either side be a standoff.

Anyway, the idea is simple enough you can prototype it in a script language and play with the idea in a couple hours. I did so a while back and other than details, I was able to get the basics working in a couple hours. The interesting bit was how well the very simple rules worked when throwing mixed fleets at each other, giving one side a notable benefit in any tech was a drastic change in the turn out of the battles though easy to counter with re-balanced fleets or an opposing tech advance. I had a lot of fun playing with it in fact. :)

1v1? Then make it tactical. The whole point of auto ressolve is that it makes battles faster, with 1v1 it's not an issue in the first place. Even I would prefer tactical combat in this case.

As for combat system, with 1v1 it's irrelevant, just make these ship fire at each other till one die. With just one ship all lines and formations can not exist anyway. Track relative distance between both fleets (assuming all ships fly together if there is more than 1) for the purpose of weapon range.

make me realized that VGA Planets' system, despite the dating visual, is easier to grasp. Its extremely straightforward, and while the visual is dated, its also very light, which helps even in retrospect.

If you are talking about complexity and confusion, there is no problem. As I have seen majority of 4X players already played MOO1/2 so they won't find it confusing. This level of complexity is perfectly acceptable among these gamers.

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

What about the classic space opera style of phases to each combat round?

1 - Fighters

2 - Bombers

3 - Capital



In phase 1 if both sides have fighters they meet and battle.

In phase 2 if there are fighters remaining they intercept enemy bombers. If the opponent has no bombers or fighters left remaining fighters are treated as bombers. Bombers that make it through the enemy lines bomb ships taking point defense damage.

In phase 3 capital ships engage each other with their heavy weapons. Capital ships try to attack in groups if they can or one on one if they are evenly matched in numbers.

That's more or less how this will happen.

Fighters are launched early and move faster than the ships, which means they get a chance to strike at the opponent first, or do some dogfighting against the enemy's fighters.

One element missing was the Bombers. I've toyed with the idea of bombers before and dismissed them because of the added complexity, which at the time, didn't bring enough to justify its inclusion. That said, I'm willing to revisit this at this point because I've simplified a lot of concepts up to a point where I feel it may be a viable option.

Regarding capital ships though, missiles and beams have a different AI. Beams will automatically seek to incercept enemy fighters that remain while missiles will be fired at the enemy ship.

I'll check your ref video, thanks for the input, much appreciated!

I was thinking of something like what Tech mentioned but more of a board game style. Consider it like a simple 1D battle field:



|x| | | | | | | | | | | | | |O|



X and O are the fleets and every "five turns" they step towards each other to meet in the middle. While at distance they start firing missiles at each other, missiles move 1 step each turn towards the opposing fleet. The missiles are counters, so there may be 100 missiles in a salvo headed for the opposing fleet. The opposing fleet can start sending out counter missiles which if they hit reduce the missile counter and if it hits 0 remove the item from the battle field. Fighters work much like missiles though if they meet opposing fighters, they melee it out in the middle and only the remainder will continue to the opposing fleet. They can be shot down also if you have any antifighter weapons (or just destroyer or smaller weapons meant for smaller ship battles) etc. Anyway, the missile exchange continues and as the fleets get closer eventually shorter range higher damage items can be used and things start getting really brutal etc. This is just a simple example of the concept in a simple form of course.

That does look like a lot like the system I have in mind, although missiles will be fired in salvo, which means they won't all get fired in the first round. Missile launchers will thus have a cooldown and reload.

And, as your initial complaint about the balance mentions: A single battle wagon without support would be meat for a well balanced fleet of small to mid sized ships. In fact, a balanced fleet of big dreadnaughts would not be an automatic win over a fleet of smaller ships if they showed up in large enough numbers. You could balance things such that basically the same tonnage of ships on either side be a standoff.

Just to clarify, I'm actually looking at ways to make it more viable to field less, more capable ships, not the other way around. There is already an inherent advantage in going for large quantities of ships from an economic standpoint (covering space is a difficult matter afterall) so I need to emphasize the worth of going for small quantities of high quality ships for encounters. Currently, one of my other implementations to insure that is that I'll give point defense capabilities only to the larger ships, which means they'll get a chance to survive missile onslaughts whereas smaller frigates/interceptors won't be able to.

Anyway, the idea is simple enough you can prototype it in a script language and play with the idea in a couple hours. I did so a while back and other than details, I was able to get the basics working in a couple hours. The interesting bit was how well the very simple rules worked when throwing mixed fleets at each other, giving one side a notable benefit in any tech was a drastic change in the turn out of the battles though easy to counter with re-balanced fleets or an opposing tech advance. I had a lot of fun playing with it in fact.

Yes, I usually do that, but I believe there is some "theoretical groundwork" to have made before trying things just for the sake of it. One idea can be rather well fleshed out before requiring code and tests, which is why I've documented some different systems and collected theoretical feedbacks. The "surviving" systems which will stand the test of criticism will be implemented and honed up to a point where I'm satisfied with their prototyped gameplay.

I was hoping to use Dark Basic for this early prototype, but quite possibly Unity.

1v1? Then make it tactical. The whole point of auto ressolve is that it makes battles faster, with 1v1 it's not an issue in the first place. Even I would prefer tactical combat in this case.

I most certainly wouldn't. Don't get me wrong, I like tactical battles, but this isn't the focus of this game. Besides, as any good DM will tell you with reason regarding tactical battles: they are boring with a single enemy. The fact that the target is a no-brainer makes it uninteresting. I'd rather automate as much of it as possible.

It is also not part of the scope of this project to reward the player for excellent micro-tactics. In fact, I believe that the best way to measure quality of fleet is to remove the player input in this equation. I'd rather have the player know that his ship X can defeat the opponent's ship Y in all circumpstances if they are outfitted the same, than realize its because his gameplay is uneven that he sometimes win/lose. I'm not saying it wouldn't be fun, but its simply not the gameplay/feel I'm after here.

As for combat system, with 1v1 it's irrelevant, just make these ship fire at each other till one die. With just one ship all lines and formations can not exist anyway. Track relative distance between both fleets (assuming all ships fly together if there is more than 1) for the purpose of weapon range.

There is no tactical placement, just a distance. The idea of lanes is to insure that not all ships duke it all at once as this wouldn't make much sense and would be confusing.

If you are talking about complexity and confusion, there is no problem. As I have seen majority of 4X players already played MOO1/2 so they won't find it confusing. This level of complexity is perfectly acceptable among these gamers.

There is a distinction between VGA Planets and other 4x games where a lot of VGA Planets die hards have absolutely no interest for MOO2. Knowing my target audience has been something I've worked towards, and I've come to understand that, though from the same genre, these games bear very little resemblance, and cater to different subcrowds. So much in fact that these two crowds don't naturally crossover to the other game! While I appreciate your input, I do believe you belong to the category of MOO2 lovers, and thus, I need to pay careful attention to insure this makes sense with what I'm trying to achieve for this other crowd of people. I'm not against hybridization, but not on elements that would potentially cripple gameplay for the crowd I'm initially building this game for.

This topic is closed to new replies.

Advertisement