Author Topic: Balance in the sequel  (Read 10823 times)

Offline Draco18s

  • Resident Velociraptor
  • Core Member Mark V
  • *****
  • Posts: 4,251
Re: Balance in the sequel
« Reply #15 on: December 10, 2016, 12:19:03 pm »
The more I think about it, the more I think maximizing alpha-strike is going to be more important.

Consider a 20 second fight survived by a cap of fleetships.  If the fleetships fire once every second, they'll fire at t=0, 1, 2, ... , 20, which is 21 times, so they'll inflict 21 seconds worth of dps.  If they fire once every 10 seconds, they'll fire at t=0, 10, and 20, which is 3 times, so they'll inflict 30 seconds worth of dps.  So the lower rate of fire lets them inflict 43% more damage.  Plus, by inflicting 10 seconds worth of dps right at the start of the battle, they'll inflict enemy casualties early, quickly reducing enemy dps and therefore friendly losses.

This is countered by a mechanic called overkill.

If you have a ship that does 1 billion damage per shot, but does so once every 26 days, then yes, it's alpha strike will hit one target very very hard, but it'll waste most of that DPS doing so, and the "net" DPS for the 20 second engagement is only however much HP the one target had.  If it had only 5000 hp, then a ship doing 445 damage once per second wins out, as after killing the 5000 hp ship it can retarget and deal another 3560 to a second target.

(And yes, my super ship's numbers there work out: its DPS is approximately 445).

Offline TechSY730

  • Core Member Mark V
  • *****
  • Posts: 4,570
Re: Balance in the sequel
« Reply #16 on: December 10, 2016, 01:01:11 pm »
The more I think about it, the more I think maximizing alpha-strike is going to be more important.

Consider a 20 second fight survived by a cap of fleetships.  If the fleetships fire once every second, they'll fire at t=0, 1, 2, ... , 20, which is 21 times, so they'll inflict 21 seconds worth of dps.  If they fire once every 10 seconds, they'll fire at t=0, 10, and 20, which is 3 times, so they'll inflict 30 seconds worth of dps.  So the lower rate of fire lets them inflict 43% more damage.  Plus, by inflicting 10 seconds worth of dps right at the start of the battle, they'll inflict enemy casualties early, quickly reducing enemy dps and therefore friendly losses.

This is countered by a mechanic called overkill.

If you have a ship that does 1 billion damage per shot, but does so once every 26 days, then yes, it's alpha strike will hit one target very very hard, but it'll waste most of that DPS doing so, and the "net" DPS for the 20 second engagement is only however much HP the one target had.  If it had only 5000 hp, then a ship doing 445 damage once per second wins out, as after killing the 5000 hp ship it can retarget and deal another 3560 to a second target.

(And yes, my super ship's numbers there work out: its DPS is approximately 445).

Yes, but overkill effects in AIWC was moderately reduced by "overkill refund".

This didn't help the case you were describing (1000 damage on a 10HP ship caused 900 damage to be "lost", just as described), but it did play a big impact in a similar situation.
If a unit fires on something, and that something dies before the projectile hits is, then the unit is "refunded" some of its reload time.
There was a restriction that this could only happen to units that fired only one projectile per volley (otherwise, the math got too out of hand to keep track of), and not missile type ammo (missile ammo used a different mechanic; a missile in flight, if its target dies, would just find another target to go to).

Offline ptarth

  • Arcen Volunteer
  • Hero Member Mark III
  • *****
  • Posts: 1,166
  • I'm probably joking.
Re: Balance in the sequel
« Reply #17 on: December 10, 2016, 02:00:12 pm »
Sorry I  missed out on this earlier and the other discussions, I've been busy with other things.

I'm not sure your math and designs are what you intended.

Fighter DPS
Fighter spec provides anti-armor? IIF fighters are anti-bomber, then they shouldn't(?) have this modifier. Mind you I don't know anything about what fighters are intended to do, but it sounds as if the should function as anti-bombers.
This shifts then to:
DPS = ( base_hp_scale / seconds_per_fight ) * strength_per_cap * 0.9 (MildTank) * 0.85 (evasion) * 0.9 (low metal)
= ( 100 / 20 ) * 200 * 0.6885
Which is a 250% DPS increase against unarmored targets.

Bomber DPS
Rate of Fire rof_modifier was flipped to use dps_multiplier.
Rate of dps_multiplier is absent from calculation.
<rof name="ExtremelyLow" rof_multiplier="0.125" dps_multiplier="1.5" />
This then shifts to:
DPS = ( base_hp_scale / seconds_per_fight ) * strength_per_cap * 0.9 (MildLowCap) * 0.125 (ExtremelyLow rof_multiplier) * 1.5 (ExtremelyLow rof dps_mult) * 0.8 (armor) * 1.15 (high fuel) * 1.1 (high metal)
= ( 100 / 20 ) * 200 * 0.170775
Which is a 87.5% DPS decrease against unarmored targets.
Note: This post contains content that is meant to be whimsical. Any belittlement or trivialization of complex issues is only intended to lighten the mood and does not reflect upon the merit of those positions.

Offline Draco18s

  • Resident Velociraptor
  • Core Member Mark V
  • *****
  • Posts: 4,251
Re: Balance in the sequel
« Reply #18 on: December 10, 2016, 02:10:52 pm »
Yes, but overkill effects in AIWC was moderately reduced by "overkill refund".

This didn't help the case you were describing (1000 damage on a 10HP ship caused 900 damage to be "lost", just as described), but it did play a big impact in a similar situation.
If a unit fires on something, and that something dies before the projectile hits is, then the unit is "refunded" some of its reload time.
There was a restriction that this could only happen to units that fired only one projectile per volley (otherwise, the math got too out of hand to keep track of), and not missile type ammo (missile ammo used a different mechanic; a missile in flight, if its target dies, would just find another target to go to).

The overkill rules might not apply to AIW2.  We'll certainly have to wait on Keith to weigh in there.

Also, the "oops, it died, refund the shot" mechanic only applied to shots that didn't hit (the unit died first).  It was a way to allow units to overkill regenerating units (shoot even though its probably dead, just to make sure) without harshly penalizing ships for doing so, in the even that shot-travel-time meant that the ship died before the shot reached it (because accurately calculating the overkill-or-not determination is Hard).

Which wasn't what I was referring to, either. I was referring to a shot that kills (because it dealt damage) but dealt too much damage and most of the shot was wasted.  Small weak units in high numbers tend to cause big guns to overkill "wasting" their potential DPS that could have been better spent on beefier targets.  Likewise, front-loading your damage does the same thing: if you were going to kill it in 2k+1 seconds, and you double your damage and halve your reload, you now kill it one second sooner, but waste 1/2 a shot.  Was half of your shot worth one salvo from the enemy?  Maybe.  Maybe not.

Point is:
Front-loading your damage (alpha striking) is not necessarily a winning strategy.

Offline ptarth

  • Arcen Volunteer
  • Hero Member Mark III
  • *****
  • Posts: 1,166
  • I'm probably joking.
Re: Balance in the sequel
« Reply #19 on: December 10, 2016, 02:29:20 pm »
Relationship between costs and gains.

This is probably a question that someone with better math can address, but since I'm around...

In the current proposal, in order to provide a balance metric, ship improvements are linked decrements (if you go up on A, you go down on B).

Example for Rate of Fire
3.5) Rate of fire: spectrum from geologic-time-scale bombs to frequent rocket salvos. Examples:
<rof name="ExtremelyLow" rof_multiplier="0.125" dps_multiplier="1.5" />
<rof name="VeryLow" rof_multiplier="0.25" dps_multiplier="1.25" />
<rof name="Low" rof_multiplier="0.5" dps_multiplier="1.15" />
<rof name="Normal" rof_multiplier="1" dps_multiplier="1" />
<rof name="High" rof_multiplier="2" dps_multiplier="0.85" />
<rof name="Misery" rof_multiplier="4" dps_multiplier="0.75" />

Great. This makes sense.
The question I have is:
What should the relationship be between gains and costs? I see three options.

Option 1. A linear relationship, which is multiplicatively neutral.
  • 1=1/x
For each gain x, the cost should be 1/x, so that the gain exactly counters the loss, i.e., x * 1/x = 1. In other words modifiers are a neutral proposition. This would encourage a player to use a wide variety or ships OR to not really care about what they build, because every ship is roughly the same in effectiveness. Assuming that the enemy doesn't focus on one type of ship or strategy. There are still gains to be had by tactical/micro play.

<rof name="ExtremelyLow" rof_multiplier="0.125" dps_multiplier="8" /> #net: 1
<rof name="VeryLow" rof_multiplier="0.25" dps_multiplier="4" /> #net: 1
<rof name="Low" rof_multiplier="0.5" dps_multiplier="2" /> #net: 1
<rof name="Normal" rof_multiplier="1" dps_multiplier="1" />  #net: 1
<rof name="High" rof_multiplier="2" dps_multiplier="0.50 /> #net: 1
<rof name="Misery" rof_multiplier="4" dps_multiplier="0.25" /> #net: 1
<rof name="ExtraMisery" rof_multiplier="8" dps_multiplier="0.125" /> #net: 1


Option 2. A non-linear relationship, in which extremes are more costly.
Illustrative Formula Example:
  • x = 1/(x^2)
For each gain in X, the cost of X is higher, and ratio gets worse as you get more extreme. This encourages the player to build 'neutral' baseline ships, except when a strategy allows for a reduction in the impact of the penalties (i.e., bombing runs, sniping from distance, cloak strike, decoy tanking ships, etc). This approach really encourages tactics/micromanagement.

<rof name="ExtremelyLow" rof_multiplier="0.125" dps_multiplier="3" /> #net: 0.375
<rof name="VeryLow" rof_multiplier="0.25" dps_multiplier="2" /> #net: 0.50
<rof name="Low" rof_multiplier="0.5" dps_multiplier="1.5" /> #net: 0.75
<rof name="Normal" rof_multiplier="1" dps_multiplier="1" /> #net: 1
<rof name="High" rof_multiplier="2" dps_multiplier="0.375 />  #net: 0.75
<rof name="Misery" rof_multiplier="4" dps_multiplier="0.125" /> #net:
<rof name="ExtraMisery" rof_multiplier="8" dps_multiplier="0.047" />


Option 3: A non-linear relationship, with a more gentle curve.
Illustrative Formula Example:
  • x = 1/x  for values of x <= 2
  • x = 1/x^2 for values of x > 2
Use the 1:1 approach for modifiers close to 'neutral' and then switch to less favorable ratios as you get more extreme. This would promote some countering behaviors, unless the opponent invested heavily into a specific trait, in which case a hard counter is available. This promote a mixture of ships and to tactical/micromanagement when your opponent over commits.

<rof name="ExtremelyLow" rof_multiplier="0.125" dps_multiplier="4" /> #net: 0.50
<rof name="VeryLow" rof_multiplier="0.25" dps_multiplier="3" /> #net: 0.75
<rof name="Low" rof_multiplier="0.5" dps_multiplier="2" /> #net: 1
<rof name="Normal" rof_multiplier="1" dps_multiplier="1" />  #net: 1
<rof name="High" rof_multiplier="2" dps_multiplier="0.50 /> #net: 1
<rof name="Misery" rof_multiplier="4" dps_multiplier="0.1875" /> #net: 0.75
<rof name="ExtraMisery" rof_multiplier="8" dps_multiplier="0.0625" /> #net: 0.50


Mind you, the actual values provided here are meant for illustration purposes, but the underlying question about the relationship should be solid.
Note: This post contains content that is meant to be whimsical. Any belittlement or trivialization of complex issues is only intended to lighten the mood and does not reflect upon the merit of those positions.

Offline ptarth

  • Arcen Volunteer
  • Hero Member Mark III
  • *****
  • Posts: 1,166
  • I'm probably joking.
Re: Balance in the sequel
« Reply #20 on: December 10, 2016, 02:43:12 pm »
The Ideal Alpha Strike ship is the stereotypical missile boat or glass cannon, high damage/cost, high salvo, low rate of fire, and as cheap as you can get. Effectively, you design a missile that shoots many tiny missiles.
Counters to front loaded alpha strikes are evasion, armor, chaff, pickets, or glass cannons.
  • If the alpha strike consists of few high damage shots, then you want evasion or point defense to completely nullify X shots.
  • If the alpha strike consists of many low damage shots, then you want armor to block X damage from each shot.
  • If the alpha strike is mixed, then you want to block the damage with expendable or durable ships (chaff).
  • If the alpha strike can avoid firing at chaff, then you want to use non-priority targeted picket ships. They aren't good enough targets to be shot at, but they can start taking down the missile ships while the missile ships close on your higher value targets.
  • If you want to counter with glass cannons there are two routes.
    • A cheaper glass cannon ship, that has just enough damage to kill 1 enemy glass cannon and costs less than 1 enemy glass cannon. (enemy losses X resources, you lose less than X)
    • A slightly tougher glass cannon, that can absorb 1 round of fire from the enemy and kill 2 glass cannons with its own shots (while being cheaper than 2 enemy glass cannons). (enemy loses 2X resources, you lose less than 2X).

You can also do things like AOE attacks or ships with short range effectively higher DPS weapons that can close without being fired upon (stealth, surprise, warp, etc).
Note: This post contains content that is meant to be whimsical. Any belittlement or trivialization of complex issues is only intended to lighten the mood and does not reflect upon the merit of those positions.

Offline Vyndicu

  • Sr. Member
  • ****
  • Posts: 319
Re: Balance in the sequel
« Reply #21 on: December 11, 2016, 01:05:57 pm »
The Ideal Alpha Strike ship is the stereotypical missile boat or glass cannon, high damage/cost, high salvo, low rate of fire, and as cheap as you can get. Effectively, you design a missile that shoots many tiny missiles.
Counters to front loaded alpha strikes are evasion, armor, chaff, pickets, or glass cannons.
  • If the alpha strike consists of few high damage shots, then you want evasion or point defense to completely nullify X shots.
  • If the alpha strike consists of many low damage shots, then you want armor to block X damage from each shot.
  • If the alpha strike is mixed, then you want to block the damage with expendable or durable ships (chaff).
  • If the alpha strike can avoid firing at chaff, then you want to use non-priority targeted picket ships. They aren't good enough targets to be shot at, but they can start taking down the missile ships while the missile ships close on your higher value targets.
  • If you want to counter with glass cannons there are two routes.
    • A cheaper glass cannon ship, that has just enough damage to kill 1 enemy glass cannon and costs less than 1 enemy glass cannon. (enemy losses X resources, you lose less than X)
    • A slightly tougher glass cannon, that can absorb 1 round of fire from the enemy and kill 2 glass cannons with its own shots (while being cheaper than 2 enemy glass cannons). (enemy loses 2X resources, you lose less than 2X).

You can also do things like AOE attacks or ships with short range effectively higher DPS weapons that can close without being fired upon (stealth, surprise, warp, etc).

Somehow I get the feeling that you are semi-officially describing a "neinzul railpod" in AI War 2 without the self-damaging shots.

Offline TechSY730

  • Core Member Mark V
  • *****
  • Posts: 4,570
Re: Balance in the sequel
« Reply #22 on: December 11, 2016, 05:31:19 pm »
Yes, but overkill effects in AIWC was moderately reduced by "overkill refund".

This didn't help the case you were describing (1000 damage on a 10HP ship caused 900 damage to be "lost", just as described), but it did play a big impact in a similar situation.
If a unit fires on something, and that something dies before the projectile hits is, then the unit is "refunded" some of its reload time.
There was a restriction that this could only happen to units that fired only one projectile per volley (otherwise, the math got too out of hand to keep track of), and not missile type ammo (missile ammo used a different mechanic; a missile in flight, if its target dies, would just find another target to go to).

The overkill rules might not apply to AIW2.  We'll certainly have to wait on Keith to weigh in there.

Also, the "oops, it died, refund the shot" mechanic only applied to shots that didn't hit (the unit died first).  It was a way to allow units to overkill regenerating units (shoot even though its probably dead, just to make sure) without harshly penalizing ships for doing so, in the even that shot-travel-time meant that the ship died before the shot reached it (because accurately calculating the overkill-or-not determination is Hard).

Which wasn't what I was referring to, either. I was referring to a shot that kills (because it dealt damage) but dealt too much damage and most of the shot was wasted.  Small weak units in high numbers tend to cause big guns to overkill "wasting" their potential DPS that could have been better spent on beefier targets.  Likewise, front-loading your damage does the same thing: if you were going to kill it in 2k+1 seconds, and you double your damage and halve your reload, you now kill it one second sooner, but waste 1/2 a shot.  Was half of your shot worth one salvo from the enemy?  Maybe.  Maybe not.

Point is:
Front-loading your damage (alpha striking) is not necessarily a winning strategy.

I would like to point out that I did point out that what I was describing wasn't what you originally mentioned. I was trying to make the point that some overkill effects were reduced in AIWC, even though those ones were not the ones you explicitly describing. (see the part I italicized in the above quote chain)

Sorry, I should of made that clearer, instead of burrowing it in the middle of two paragraphs.

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,505
Re: Balance in the sequel
« Reply #23 on: December 12, 2016, 04:02:08 pm »
On the cost of countering evasion (for example) being too high, yes, I think my next step would be to halve the dps "cost" of countering a defense.

On alpha striking, yes, I should have realized that low ROF (with the same DPS) is still an asset, not a penalty, despite high-ROF no longer being a penalty. So probably going with something like ptarth's suggestion of having either extreme have a dps cost, like:
- base rate of fire is one shot every 2 seconds; dps unchanged
- doubling or halving rate of fire (either by seconds_per_salvo or by shots_per_salvo) costs 10% of dps, cumulative (so going to 8x or 1/8x costs 30%)

On "overkill refund", I hope to not have to bring that back. Very bandaid-y. But we'll see. I think the better solution is to avoid stuff regening HP in the middle of combat.

Quote from: ptarth
I'm not sure your math and designs are what you intended.
(...)
Fighter spec provides anti-armor? IIF fighters are anti-bomber, then they shouldn't(?) have this modifier. Mind you I don't know anything about what fighters are intended to do, but it sounds as if the should function as anti-bombers.
I think there's some confusion:
- Bombers have armor.
- Fighters are intended to kill bombers fast.
- Therefore, Fighters have an anti-armor weapon.

Quote from: ptarth
Rate of Fire rof_modifier was flipped to use dps_multiplier.
"DPS" != "Attack Power", it's already factoring in rate of fire. So the rof_multiplier="0.125" doesn't change dps at all by itself; it just makes the gun fire 1/8th as many shots in a given window of time but makes each of those shots do 8x as much damage. The dps_multiplier="1.5" is a separate effect, and as said above I realize that's the wrong direction for it to go due to alpha strike.


Anyway, in January I hope to put together an in-engine model for crunching and spitting out balance numbers, and we can each fiddle with it and see if those are good models and mechanics or not. I'm pretty open to doing whatever seems best to y'all once we can really evaluate stuff.
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline ptarth

  • Arcen Volunteer
  • Hero Member Mark III
  • *****
  • Posts: 1,166
  • I'm probably joking.
Re: Balance in the sequel
« Reply #24 on: December 12, 2016, 05:27:52 pm »
Ah. Crazy. DPS being used as the balance point with attack and reload rate being purely descriptive is so weird to me. That makes my brain do interesting things. I have no idea what this means in the larger scale of thing. Regardless we are just talking about what type of spices to use in the sausage, so it sounds good to me.

Note: This post contains content that is meant to be whimsical. Any belittlement or trivialization of complex issues is only intended to lighten the mood and does not reflect upon the merit of those positions.

Offline Nodor

  • Sr. Member
  • ****
  • Posts: 254
Re: Balance in the sequel
« Reply #25 on: December 19, 2016, 12:36:05 pm »
I remain very fond of the hull type mechanics.    The rock/paper/scissors mechanic of the fighter, bomber, frigate is a core part of my strategy decisions playing AI War.    I think this can be slotted in the balance system described above by calling armor "Polycrystal", Evasion "Close Combat" etc.  Have a "neutral" hull with no bonus/drawback, and use the hull types to denote weaknesses/strengths for players.   


Facing a Mad Bomber AI, I load up on fighters... vs, a Fortress Baron, more bombers.    AI War made me use different ships to counter different threats.    I think the balance ideal should lean more on the "powerful, but can't handle X, Y, or Z"  rather than interchangeable meaningless statblocks that have identical DPS values.




Offline NichG

  • Full Member
  • ***
  • Posts: 125
Re: Balance in the sequel
« Reply #26 on: December 19, 2016, 06:56:11 pm »
Since you're making long-term choices when unlocking ships, I also think that 'what it feels like to use' should be a large factor in the orthogonal-to-balance directions. That is to say, rock-paper-scissors isn't a very good game to be playing if you have an unlock system that binds you to particular choices. If you have a bunch of ship lines, rather than just 'X counters Y counters Z counters X' it might be nice to explore how to maximize the difference in feel of using those ships when it comes to strategy and deployment.

That way, choosing long-term unlocks is sort of like choosing your favorite characters in a fighting game - you pick the moveset that feels comfortable to use, rather than strictly just what counters your immediate strategic objective.

Offline MaxAstro

  • Sr. Member Mark II
  • ****
  • Posts: 345
  • Love, Peace, and Calvinball
Re: Balance in the sequel
« Reply #27 on: December 19, 2016, 09:21:58 pm »
The numbers in this thread have been fairly overwhelming for me, but I will say that I wholeheartedly agree with Nodor.  Part of the fun for me has always been starting at some AI hardpoint and trying to figure out "what ships do I have that work best against that?"

Also I can't stress enough how strongly I am opposed to interchangeable meaningless statblocks with identical DPS values.  :)

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,505
Re: Balance in the sequel
« Reply #28 on: December 19, 2016, 10:40:33 pm »
Also I can't stress enough how strongly I am opposed to interchangeable meaningless statblocks with identical DPS values.  :)
Yes, because that's obviously what we've been discussing ;)

That said, I have been leaning more back in the direction of multipliers, but in a grid of weapon types vs defense types, rather than ship types vs hull types. The math of making the whole "structure is the absence of defense, but the presence of a ton of hp" has proven more complex than I anticipated.
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Draco18s

  • Resident Velociraptor
  • Core Member Mark V
  • *****
  • Posts: 4,251
Re: Balance in the sequel
« Reply #29 on: December 19, 2016, 10:54:00 pm »
That's a system everyone's at least familiar with.  Pokemon uses it, and they're up to huge numbers of Types at this point and I don't think most people have a problem with it (other than really weird assignments...Sudowoodo--a tree--is type rock!?, Gyarados is not Dragon, Psyduck isn't psychic...)