How to measure ship upkeep to allow for chaff strategy

For what's not in 'Top Priority Game Design'. Post your ideas, visions, suggestions for the game, rules, modifications, etc.

Moderators: Oberlus, Oberlus

Post Reply
Message
Author
User avatar
Oberlus
Cosmic Dragon
Posts: 1130
Joined: Mon Apr 10, 2017 4:25 pm

How to measure ship upkeep to allow for chaff strategy

#1 Post by Oberlus » Sun Apr 14, 2019 7:25 pm

I'm really interested on making possible the strategy of many small (low HP) ships versus few big (high damage) weapons. The "chaff" strategy in Stars!.

As long as we keep the current ship upkeep system, the chaff strategy is impossible (cost-inneficient, you'll always be better with big ships), and that's sad because it really fits well within the weaponry system. The multi-shot weapons are very good versus chaff and drones strategies and bad versus shield and big hulls strategies, as opposed to single-shot weapons... If we remove chaff defense, some of the weaponries lose what differentiate them from others.


Once influence gets into master, it will be that meter what pays for the ship upkeep. Nevertheless, with either system (requiring more building cost as currently or requiring a per-turn influence upkeep), the way the upkeep is calculated must be improved to allow for a balanced chaff defense.

It was suggested long ago to change the ship upkeep mechanic to consider other variables instead of the number of ships:
  1. Total structure of the fleet.
  2. Filled slots of the fleet.
  3. Slots of the fleet (empty ones too).
  4. Base cost of the fleet (including hulls and parts).
  5. New data slot for hull upkeep.
All this has been suggested or quoted from this post and onwards.

Cons of each one (from the linked thread or my own harvest):
1: encourages more weaponry and less armour, does not completely solve the comsat spam problem.
2: does not solve at all the comsat spam problem.
3: encourages to use all slots (personally, I don't think that's a problem, I already use all slots unless some internal if I haven't research fighters yet), does not completely solve the comsat spam problem.
4: encourages to get asap higher tier weapons (because those are more cost-efficient; not sure if this is really a problem).
5: none? It completely solves the comsat problem and allows for chaff strategy, and all alternatives require some C++ coding.

Ophiuchus
Programmer
Posts: 780
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: How to measure ship upkeep to allow for chaff strategy

#2 Post by Ophiuchus » Sun Apr 14, 2019 7:55 pm

Related could be to add a policy which changes ship upkeep so a chaff strategy would be viable even if it usually would not.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Furthermore, I propse... we should default to four combat rounds instead of three ...for the good of playerkind.

o01eg
Programmer
Posts: 283
Joined: Sat Dec 10, 2011 5:46 am

Re: How to measure ship upkeep to allow for chaff strategy

#3 Post by o01eg » Sun Apr 14, 2019 7:56 pm

There part-based upkeep rule, I suppose it could be tuned required way: https://github.com/freeorion/freeorion/pull/2100
Gentoo Linux x64, gcc-8.3, boost-1.65.0
Ubuntu Server 18.04 x64, gcc-7.4, boost-1.65.1
Welcome to slow multiplayer game at freeorion-lt.dedyn.io. Version 2019-05-13.bbb72e1.
Donates are welcome: BTC:14XLekD9ifwqLtZX4iteepvbLQNYVG87zK

User avatar
Oberlus
Cosmic Dragon
Posts: 1130
Joined: Mon Apr 10, 2017 4:25 pm

Re: How to measure ship upkeep to allow for chaff strategy

#4 Post by Oberlus » Sun Apr 14, 2019 10:01 pm

o01eg wrote:
Sun Apr 14, 2019 7:56 pm
There part-based upkeep rule, I suppose it could be tuned required way: https://github.com/freeorion/freeorion/pull/2100
Ah, I had forgotten that. That's really helpful.
Part-based upkeep should be good at least to allow for chaff. The comsat spam problem could be solved later.

Anyway, unless I've missed something (as usual), the hull-based upkeep should be the best alternative (which I don't think is doable by just tweaking the game rule, so I think we're good for now with this game rule).

I'd like part-based upkeep to be the default behaviour (instead of ship-based). I'm already designing/balancing hulls and parts as if that is the default.

User avatar
Oberlus
Cosmic Dragon
Posts: 1130
Joined: Mon Apr 10, 2017 4:25 pm

Re: How to measure ship upkeep to allow for chaff strategy

#5 Post by Oberlus » Sun Apr 14, 2019 10:35 pm

Ophiuchus wrote:
Sun Apr 14, 2019 7:55 pm
Related could be to add a policy which changes ship upkeep so a chaff strategy would be viable even if it usually would not.
Yes, Geoff also mentions that in o01eg's PR.
But I haven't figured out how that would work. So with one policy you would be penalising (annulating) the chaff strategy ("don't think about it and just rush for bigger hulls, pal"-strategy only) and with the other you would be balancing small and big hull costs? If that is what you mean, I would prefer to make it so that depending on the policy one way is more efficient than the other but none is useless, and so the current upkeep system should still be revisited, because currently it is completely off roads: there is no way you can get a benefit from spreading 16 death rays among 8 2-slot ships instead of putting them all in a single titanic hull. And spreading among fewer but bigger (medium size) hulls won't get enough overkill effect so that's off the table. We need that 8 ships are not noticeably more expensive than 1.

Currently we have:

Code: Select all

FLEET_UPKEEP_MULTIPLICATOR
'''(1 +
    (1 - (GameRule name = "RULE_SHIP_PART_BASED_UPKEEP")) * 0.01 * ShipDesignsOwned empire = Source.Owner + // the ship-based upkeep
    (GameRule name = "RULE_SHIP_PART_BASED_UPKEEP") * ((0.002 * ShipPartsOwned empire =  // the part-based upkeep, that also includes number of ships
        Source.Owner class = ShortRange) + (0.002 * ShipPartsOwned empire = Source.Owner class =  // Notice that it does not count shields, stealth, detection or bomb parts
        FighterHangar) + (0.002 * ShipPartsOwned empire = Source.Owner class = Armour) + (0.002 *
        ShipPartsOwned empire = Source.Owner class = Troops) + (0.002 * ShipDesignsOwned empire =
        Source.Owner)))'''
Some numbers for ship-based upkeep:
Titan with half armour and half death rays, vs disposable mini asteroid swarms with 2 death rays and same cost of damage points and structure points (this is not true in current system, for which structure points are far cheaper than damage points, but that must be changed to allow for more diversity of choices regarding ratio of weapons and armour).
1 titan (100% base cost) vs 8 MAS: 103.5% base cost of the 8 ships. Fine. Both fleets have enough power to kill the opponent on round 1. This means that the empire with MAS can send less than 8 MAS and get and advantage over the other empire.
10 titans (104.5% base cost) vs 80 MAS (139.5% base cost). Now that's bad, the 10 titan fleet will be considerably cheaper, so as to add 3 more titans. Now it's 104 death rays that require more hits to kill. Still doable for the MAS empire.
30 titans (114.5% base cost) vs 240 MAS (219.5% base cost). Impossible to chaff. Now the MAS empire can't afford to get enough fleet to kill the titans in combat unless it is already wining the production race, and even then he will be losing more PPs than the titan empire unless it uses something like 1:15 or 1:20 (to be sure to kill all titans on round one), but such a fleet would cost 10x or more the cost of the 30 titans.

With the part-based the numbers, I pressume, are more balanced, even with it including a term for number of ships.
Therefore, what the policy could do here is to adjust the factors of each term. Making the last 0.002 bigger (for more chaff penalisation) or smaller (for the opposite). And thus I would leave the ship-based only upkeep as optional or even disable it for good.

Ophiuchus
Programmer
Posts: 780
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: How to measure ship upkeep to allow for chaff strategy

#6 Post by Ophiuchus » Mon Apr 15, 2019 7:27 am

Oberlus wrote:
Sun Apr 14, 2019 10:35 pm
Ophiuchus wrote:
Sun Apr 14, 2019 7:55 pm
Related could be to add a policy which changes ship upkeep so a chaff strategy would be viable even if it usually would not.
Yes, Geoff also mentions that in o01eg's PR.
But I haven't figured out how that would work.
E.g. it could work like this: committing to the cheap-hull-maintenance-policy means that you base the hull-based upkeep on the square root of the number of ships. With the policy quadrupling the number of ships doubles your hull maintenance cost.

With the policy 100 ships cost the same amount of hull maintenance like 10 ships without policy.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Furthermore, I propse... we should default to four combat rounds instead of three ...for the good of playerkind.

User avatar
Oberlus
Cosmic Dragon
Posts: 1130
Joined: Mon Apr 10, 2017 4:25 pm

Re: How to measure ship upkeep to allow for chaff strategy

#7 Post by Oberlus » Mon Apr 15, 2019 7:39 am

Ophiuchus wrote:
Mon Apr 15, 2019 7:27 am
E.g. it could work like this: committing to the cheap-hull-maintenance-policy means that you base the hull-based upkeep on the square root of the number of ships. With the policy quadrupling the number of ships doubles your hull maintenance cost.

With the policy 100 ships cost the same amount of hull maintenance like 10 ships without policy.
I shall check numbers. A 10x difference in upkeep seems insane, so as to make that policy mandatory and forget about what was the alternative for it.

User avatar
Voker57
Space Squid
Posts: 54
Joined: Sat Aug 13, 2016 4:46 pm

Re: How to measure ship upkeep to allow for chaff strategy

#8 Post by Voker57 » Mon Apr 15, 2019 7:47 am

Freeorion does not have upkeep, only a weird kludge production multiplier thing. Make actual currency and upkeep mechanics (possibly with supply storage), and scaling the likes of which you are talking about could work.
Team S.M.A.C.: play multiplayer with us!

User avatar
Oberlus
Cosmic Dragon
Posts: 1130
Joined: Mon Apr 10, 2017 4:25 pm

Re: How to measure ship upkeep to allow for chaff strategy

#9 Post by Oberlus » Mon Apr 15, 2019 9:11 am

Voker57 wrote:
Mon Apr 15, 2019 7:47 am
Freeorion does not have upkeep, only a weird kludge production multiplier thing. Make actual currency and upkeep mechanics (possibly with supply storage), and scaling the likes of which you are talking about could work.
Yes. Influence (better than currency in a sense) is around the corner.
I think it's not too soon to start thinking on what that per-turn influence upkeep should be.

As far as I know (or think I know), Influence will be produced by population and certain buildings (and maybe by planets if there is some inflence flat bonus) with diminishing returns as your empire grows.
I can't remember if it's supposed to be storable or not.
Some game mechanics will require a constant per-turn influence upkeep. Currently, the mechanics affected by "upkeep" factors are building new ships, outposts and colonies. With influence in place, also maintaining certain policies or taking out certain actions (influence projects about espionage, diplomacy, trade or anything related) will require influence. Recently built colonies would take up influence until infrastructure and population goes high enough. Such a system would slow down colonisation and impose a soft limit on the fleet of empires with surplus PPs: at some point, you won't be able to build a new colony nor a new armed ship until you raise up your influence production. In such a situation, surplus PPs should go straight into the stockpile (or you risk building something that will incur in influence red numbers with undesirable consequences). Thus, you would be switching some colonies' foci to influence (probably from industry): less PP surplus and more influence. Eventually, all colonies will be set to influence, and at some point the time required to get enough influence to pay for a new colony will be so great that you won't be able to expend not even the PPs that flat bonuses will be producing (Stockpile will grow up until end of game or until enough ships are destroyed in a battle to allow for the building of new ones; in that case having better stockpiling abilities will be a great advantage, that is a good point from this influence upkeep system, it gives more relevance to that mechanic which currently is underused).
I haven't realised that last point until now: so, to avoid/alleviate the steamrolling problem of exponentially growing empires, we are introducing a resource that won't grow exponentially and that will limit the growing mechanics up to a point where we won't be able to use the surplus PPs. I'm not sure, but that way seems a bit clumsy.
Hmmm...
I guess we can make it so that such situation only arises in certain weird galaxy configurations and not until very late game, an so it will be a good solution for the steamrolling problem, nevertheless.

Post Reply