[edit: File has been updated so that the resolution isn't fixed to 1024x768]
I apologize for the length of the following post... I can't seem to help myself! I'll try to format it so that it's a bit easier to read.
Anyhow, I've been giving some thought lately to the combat system in GC2. To be honest, it's pretty dry... simple to understand, but it doesn't allow for a lot of variety or very interesting interactions between ships. It's pretty easy to find dominant strategies: just load up the largest hull you have with the best weapons and a proportionate number of defenses, and you have the most cost-effective, dangerous ship you can build. There's no need for mixed fleets, using different hull sizes, or even mixing up defenses and weapons (though I recognize that the latter is by design), and the battle viewer just isn't that interesting to watch... round after round of ships randomly flying in circles and hammering away at each other.
The system I would propose instead is more of a simulation of the combat instead of such a high level abstraction of it. Before I go into more detail, I realize that Joe Schmoe rattling off on an internet forum about what would make the "AWESOMEST GAME EVAR" is not particularily convincing, and that untested ideas are worthy of a fair bit of skepticism.
To that end I've prototyped my ideas for a GalCiv3 combat system in C++ to illustrate how they'd work out (you can grab the .zip at http://www.mediafire.com/?elmbc7r4zip.) It's 2D, but it still gets the point across. Since I neglected to stick a README into that, I'll put the controls up here:
You can also create new scenarios and change the weapon/ship definitions if you'd like... the file formats should be pretty straight forward (plain text, edit them in notepad, etc.), and this post is going to be monstrous ENOUGH without a tutorial for them!
Design Goals
Implementation
Ship Movement
The playing field is an infinite space, where every major gridline (which has 10 subdivisions) represents a single lightsecond. Ships have a maximum speed (currently set to 0.01c) which mainly serves to keep them from getting into relativistic territory and removes most edge cases where the simulation would "hang" because two opponents were having trouble catching each other. Aside from that, movement is handled completely by newtonian physics, with a maximum acceleration determining ship agility.
A wrinkle in here that I've experimented with: every ship is assumed to be doing evasive manuevers to avoid incoming projectiles, and this is factored into most weapon calculations as an abstracted feature. Long story short, a quickly accelerating target is hard to hit at a distance if the weapon itself has a slow projectile speed.
Don't worry about the large distances and high speeds being problematic: it's all "under the hood". Ships and weapons fire are rendered large, the realism is only there to provide an underlying consistency to the simulation.
Weaponry
I really liked the GalCiv2 dichotomy between beam, kinetic, and missile weapons. However, I think it should be tossed up a little bit. The three basic weapon types should be in a rock/paper/scissors dynamic with each other: beam weapons can shoot down torpedos mid-flight, mass drivers will overpower beam weapons, and mass drivers will provide no anti-missile capabilities. This encourages ship and fleet variety, as a fleet armed with only one type of weapons will be easily countered.
I would also suggest light, medium, and heavy versions of each weapon, with the heavier weapons being more effective versus large targets while the lighter ones are better suited to taking out smaller fighters and corvettes, further encouraging variety in ship design. I'll explain how this would be achieved shortly. I've also experimented with a couple "odd" weapons. In the .zip, most of the heavier ships are armed with "Interceptor Missiles" which are high speed missiles with low yields, but the ability to take down enemy torpedos... it's really cool to watch, and they do the job pretty decently!
There are a few other wrinkles in the system that I have implemented in my simulator: beams and mass drivers have a chance to miss the target depending on the target profile (ie, how much surface area there is to hit), the projectile speed, and the maximum acceleration of the target. Beams will almost always hit, but mass drivers will miss a great deal at long range against small targets. Additionally, missiles spawn their own object when fired which then must obey newtonian physics to reach its target... once it gets close enough to the target, it deals its damage. Finally, beam weapons may be almost perfectly accurate, but their maximum damage degrades linearily over range. It's usually still enough to take down missiles at a distance, but closer range is preferable for dealing damage.
Defenses
Again, I really liked how GalCiv2 handled defenses. The only thing I've changed is to remove the off-type defenses (since they were a complicating factor that didn't make a lot of sense... how's chaff going to throw off a mass driver?) and to remove the concept of "defense degradation". Every weapon hit needs to go through the armour/shields/point defense fresh.
This effect has the result of making weapons with higher per-hit damage more effective against well defended targets. As long as the defenses (shields, armour, point defense) are all too large to mount on the smaller ships, the larger vessels will thereby be characterized by their strong defenses. Heavy weapons will have the damage-per-shot to break through this, but the light weapons will mostly just glance off. On the flip side: lighter weapons will be most cost and space effective, so you'll have to bring lighter weapons to bear if you want to take on smaller ships effectively. Balanced correctly, this would strongly encourage the use of multiple hull sizes, since your dreadnaughts wouldn't be cost effective versus the swarm of fighters with anti-capital ships weapons! However, care must be taken to not allow ships to bring their defenses to too high a value, since without defense degradation it would become extremely difficult to pierce them with anything... a few points of defense will go a long way.
In the simulator I've provided, I've also implemented a concept of "weapon neutral armour" that defends equally against all weapon types (and presumably would be less cost effective). However, experimentation has revealed that it just doesn't work... it doesn't add anything useful, and different weapon types tend towards different damage outputs (ie, 3 points of deflectors are going to save you more HP than 3 points of point defense, since beam weapons tend to do their damage in small hits while missile weapons deliver one big blast.) The same effect would be better achieved by simply allowing components in GC3 to improve multiple defense values in differing amounts.
AI
While I don't doubt that this'd make strategic decisions more difficult, the AI on the simulation side is surprisingly simple. The results I've already got are more than adequate, and in my case the ships are following a few simple rules:
One can easily imagine extending this to formations or flocking behaviours, or even race specific tactical personalities.
Potential Problems
The typical battle takes about 800 ticks (where 1 tick represents 4 seconds of "in-game" time), and that can be calculated very quickly. However, I've seen battles take upwards of 3000 ticks when two ships are unable to do damage fast enough. At some point, there will need to be a cutoff where the battle is simply left unresolved, and any surviving combatants get to live for another day.
Processing time is also increased over the GalCiv2 combat system. While it can still be resolved in only a few seconds in the most cases, it's still something to take note of. Ships loaded down with missile launchers can make things a little laggier!
Potential Extensions to the Concept
Detailed stat tracking during the battle is one thing to attempt: what types of damage are crippling your fleet, average survival time of a specific ship class, etc are all very useful tools for adjusting ship design and fleet composition.
Also, I haven't really looked at how "escorted" ships like troop transports would be handled. Having them flee the battle while everyone else fights would cause its own problems, but keeping them in the battle would mean they'd be vulnerable to a chance flyby... my guess is that the best thing to do is simply to keep them in the fray and let them potentially be destroyed. However, this is something to experiment with.
Congrats to anyone who made it through that monster of a post. I hope you like the prototype... I had a ton of fun making it!
Also had a ball creating my own weapons and ship types, and trying them all out.
Maybe we could make Galciv III now and save Brad the trouble
The problem with a complex simulation with more input from players is that both human and computer players must have a clear understanding of what their input will do to change the battle. At the moment input is determined by the characteristics of the ships you send into battle, and it isn't hard to figure out that in the course of one battle, better ships stand a better chance of surviving. However one could also say that fleets of cheap throwaway ships with sufficient firepower can overcome even the best ships, despite being destroyed in the process.
Despite having fairly simple inputs for one battle, strategy in GC II requires the human player at least to consider what will happen if a recently victorious fleet engages in another battle (because so long as a fleet has movement points, it can continue fighting) or if an enemy fleet engages it next turn. You can't fight a war for long if you're losing military assets faster han you can replace them.
In other words, you need to take reinforcements or ambushes into consideration, unless the current limiting factor of fleets (logistics) is abandoned.
Actually, I think the player and AI should only have a vague notion of how their parameters will affect the battle. It can only be a 'guess' at some level. If you set missiles to be fired at range 10 instead of range 5, will that mean more effect or less? Well it depends on whether the enemy has set his ships to avoid missiles or to try and suck up the damage. I want a chaotic complex simulation, where 'just bigger and better' is avoided at all costs.
Of course, the point of research is to make things bigger, faster, more impact, more defence, etc. But these should be subtle changes, and complex ones, with many variations. Just for a ship's movement, I can think of slightly improving the: Turn rate, acceleration, deceleration (may be different?), maximum speed, others? For a weapon, you could slightly improve the range, damage, arc, recharge rate, accuracy, etc. If these changes are subtle, one cannot really be sure what will make the critical difference in a combat. Especially when combined with different tactics.
Sure. That is mainly a strategic factor though, not a tactical one. Different tactical stances (acceptable losses, etc) are required to meld with different strategic situations.
I wonder if Starstriker is still amongst us?
I like the new one.
I think there is room for both levels. I see a screen full of parameters that I can set, per fleet, or squadron in a hierarchy (that is, set it for all, or a subset). If you want a particular fleet to be aggressive, to stay closer to enemy, or to provide escorts for another fleet, or to concentrate on anti-missile work, then you set it. I think there is some joy to be had in seeing small differences in settings produce large differences in tactical results. Especially in a rock/scissors/paper world which you are constructing.
I agree there is a ton of fun there. I just see smaller increments than you maybe? I see an interceptor missile as one branch, with the ability to improve its damage, acceleration, turn rate, AI routines, recharge rate all separately. Many, many choices that way about what to improve.
Had some fun inventing my own weapons and ships. Would have more fun if I could set some parameters that influenced the AI and other things (leading targets, distance from enemy, bunching/anti-bunching of friends, etc).
There are of course many refinements possible. One would be to have damage inflict progressive random damage to systems (played starfire or Star Fleet Battles? Gosh I am old school!). A hit could knock out a weapon, or the ability to turn left, or reduce acceleration, etc, etc.
I can see the elements of a great tactical game
Also interesting how the quality of the game changes with the ratio of acceleration to top speed. If you lower max speed by 5 or 10, the approach looks very different.
I haven't experimented too much with the max speed... it's basically just there to keep the ships from entering relativistic territory. At 0.01c, it doesn't come into play often... despite the utterly ridiculous accelerations involved (something like 400-4000Gs... I did the math at one point.)
My thoughts on tech progression are similar... instead of unlocking new weapons with each tech, you'd, say, improve the yield of missile warheads, or build a range extender for particle beams, or introduce faster charging capacitors for your railguns. A weapon could itself be a combination of several researched components... maybe even designed or configured by the player! Lets also not forget the possibilities with race specific tech trees, which I'm sure any GC3 would involve.
Take this far enough and you could have a great tactical game for sure, though I'm inclined to keep that as minimal on the user end as possible. I'm not so opposed to user control as I am to micromanagement: discrete control options, for example, are preferable to sliders and numbers. This is proposed as a tactical system for a game that is otherwise strategic in nature, after all. It needs to be simple to control, and easy enough to disregard the details of. To me, "stances" seem to be the best compromise.
The greater the fraction acceleration is of max speed, the more 'linear' and 'like a warship in the ocean' becomes the simulation. When the fraction is low, it shows off the newtonian notions more clearly, and fleets 'fly by' each other, pop off a few shots, and then turn around for another run.
When I increased acceleration, the ships look a lot more controlled.
I did some work on scale, and figuring out how big planets and stars would be using your scale.
Earth would be 4 little squares on your map in diameter, but be 50,000 little squares away from the Sun. The Sun would be 46 Big Squares in Diameter.
One would have to decide whether to go for tiny planets in order to scale it so that movement between elements of a system is possible in battle, or whether to simply base a combat around one element or another (the sun, a planet, an asteroid belt, empty space, etc). I prefer the second of these.
Choosing the second option means we could actually lower the G forces, maximum speed by another order or mag or 2, and still keep everything in scale.
There are many great features available to you once you register, including:
Sign in or Create Account