A little less comsat spam

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

Moderator: Oberlus

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

Re: A little less comsat spam

#16 Post by Ophiuchus »

Oberlus wrote: Fri Nov 15, 2019 11:05 am
Ophiuchus wrote: Fri Nov 15, 2019 10:24 amThe main problem are not the comsats (at least at cost point of 6), but i but the general cost effectiveness of 1-hit-to-die decoys and how that scales.
TeamSMAC had a simple change with which they were happy after many MP games:

Code: Select all

buildCost = 4 * [[FLEET_UPKEEP_MULTIPLICATOR]]
I think it should also include the ship hull cost multiplier

Code: Select all

buildCost = 6 * [[FLEET_UPKEEP_MULTIPLICATOR]] * [[SHIP_HULL_COST_MULTIPLIER]]
If cost should be 6 (with the three internal slot version) or 4 (with the regular base hull) I don't know.
I dont know what a TeamSMAC is, but I consider that the multipliers are missing a bug.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

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

Re: A little less comsat spam

#17 Post by Oberlus »

Ophiuchus wrote: Fri Nov 15, 2019 3:35 pmI dont know what a TeamSMAC is, but I consider that the multipliers are missing a bug.
A team of regular multi-player gamers:
viewtopic.php?f=2&t=10277

Re: the lack of multipliers in the base hull (in current FO), I'm sure there was some discusion about it here in the forum, about why they were the only hulls that do not pay upkeep. Something about the colony/outpost parts already paying colony upkeep, but I'm not sure and can't find it right now. I can say I agree with you and see the current state (no multipliers) as a bug more than an intended feature or a balance requirement.

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

Re: A little less comsat spam

#18 Post by Ophiuchus »

I added an extra commit adding the multipliers and wait for objections.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

JonCST
Space Kraken
Posts: 157
Joined: Sat Dec 15, 2018 4:28 am

Re: A little less comsat spam

#19 Post by JonCST »

Ophiuchus wrote: Fri Nov 15, 2019 10:24 am
JonCST wrote: Fri Nov 15, 2019 2:12 am I[...] add a check before queuing the build to make sure there are no more than a maximum number of comsats in a given system (per empire, of course).
That would also restrict the number system drop troops. What value would suggest?
Um. Comsats and troop drops seem different to us ignorant outsiders: they have different names and everything. Does there have to be a link between the two? I've barely read the FOCS tutorial, but it seems like it should be possible to narrow it down to just comsats.

Max number? Maybe 5-10 per system per empire, if they can be separated from other colony base hull ships?
JonCST wrote: Fri Nov 15, 2019 2:12 am The second was to require all ships to have a part [suggestions]
Ophiuchus wrote: Fri Nov 15, 2019 10:24 am I was more thinking of adding a low-damage once-per-ship internal weapon [details]

The main problem are not the comsats (at least at cost point of 6), but i but the general cost effectiveness of 1-hit-to-die decoys and how that scales.
I'd thought i'd heard that the problem was that comsats were cheap, fast, and didn't accrue maintenance costs, so spamming them had no drawbacks.

I think that was the rationale behind requiring a part to go with the hull: that maintenance was based on parts, not hulls? Maybe i misunderstood that.

One-hit wonders have always been a part of the tactics. I'm especially fond of fighters for that, since they regenerate "instantly for free" when not in combat. I sometimes use BSH ships with SAP for "ablative shielding", but i don't spam them. Usually it's no more than 1 "chaff" to every 3-5 "real" ships, and often no more than 3-5 for a whole assault fleet.

I wonder if part of the comsat spam could be addressed by:

o Requiring all ships contain a part (no bare hulls).
o Creating a non-starfaring hull like colony base hull, but with only a single external slot (similar to SFH vs SFB). "Intra-system hull", or ISH?
o Making the ISH more expensive than the CBH.
o Maybe create a comsat-specific part.

Then one could create small weapons platforms (build with flak cannons, MD, or beam weapons), in-place scanners, or even comsats: whatever one wishes with the external slot. And, the added build and maintenance cost might help prevent spamming.

Does that make since to anyone?

Thanks.

jon

Morlic
AI Contributor
Posts: 296
Joined: Tue Feb 17, 2015 11:54 am

Re: A little less comsat spam

#20 Post by Morlic »

JonCST wrote: Sun Nov 17, 2019 1:54 am I'd thought i'd heard that the problem was that comsats were cheap, fast, and didn't accrue maintenance costs, so spamming them had no drawbacks.
The cost-change will have some early-game implications. It does not change lategame problems. Decoys scale extremely well into the lategame as

1) Their (instantaneous) cost remains constant whereas your capital ship cost increases - lategame you can get a x99 stack of decoys for the price of a single capital ship.
2) They amplify your capital ship staying power (or: dampen the enemy attack power), so trivially scale with capital ship strength
3) Capital ships become more expensive so each shot wasted on a decoy becomes worth more
4) Most lategame hulls have it easier to implement a fighter screen in subsequent bouts.

Adding 2 PP because you have to add a troop pod does not change anything past earlygame.
Adding x PP because you have to add a mass driver or whatever does not change anything past midgame.


The strategy of decoys becomes completely broken at some point of the game and this naturally arises from the combat framework in FO. Both pure random and pure preferential targeting are easily abused.
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

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

Re: A little less comsat spam

#21 Post by Ophiuchus »

Morlic wrote: Mon Nov 18, 2019 11:53 pm The strategy of decoys becomes completely broken at some point of the game and this naturally arises from the combat framework in FO. Both pure random and pure preferential targeting are easily abused.
With preferential targeting one could add higher probabilities of hitting targets with higher combat value (ship weapon damage * ship structure) or simply not shoot at certain classes of vessels (e.g. not shooting at fighters, targeting only enemy ships with the same level of weapons or one level lower).

Or we coud add weapon tech for killing off ship based decoys (e.g. multi-shot weapons 4x 5 damage, swarm weapons) in combination with adding extra combat bouts (which would reduce damage wasted on overkill a lot and I think would also ).

I am currently trying to figure out how many decoys you need to add extra to get a similar result if you up the number of bouts by one, two...

Maybe it is possible to make sure there is an arms race for using decoys (so that the amount of PP you have to spend for decoys goes up); e.g. expensive weapons do not target cheap enemies. Also diversity in targeting makes it harder to deploy decoys (e.g. if half of your fleet ignores weapon-less ships and half of your fleet ignores low structure ships, either the enemy has to build expensive weapon-containing high-structure decoys or its decoys are only half effective).

Sources for preferences probably would be combat scanners (so decided when you build your ships), combat policy (could be changed), and species traits. So you would design your fleet to use different species for different roles in combat (military species preferes to attack highest combat value vessels, trith are not able to target trith or exobot, coward species prefers to attack ships it can kill off with a single shot, proud species attacks the vessels with the most dangerous weapons, etc..) .
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

Telos
Space Squid
Posts: 50
Joined: Thu May 09, 2013 4:46 am

Re: A little less comsat spam

#22 Post by Telos »

Ophiuchus wrote: Tue Nov 19, 2019 8:52 pm With preferential targeting one could add higher probabilities of hitting targets with higher combat value (ship weapon damage * ship structure)
Strategically ideal targeting would probably prioritize "vulnerable, high value" targets, using something like the division (ship weapon damage / remaining ship structure) to compute targeting priority, rather than the multiplication you proposed. This would have the strategically desirable effect of giving high priority to glass cannons and to finishing off heavily damaged ships, and low priority to unarmed decoys and heavily armored tanks. Of course, there could be further complexities, e.g., to take shields into account, to avoid wasting damage on overkill, and/or to not over-prioritize enemy spinal cannons whose scary-looking numerical damage will likely be mostly wasted as overkill against you.

Probably an ideal system would also give features of the targeted ships themselves a role in determining how likely they are to get hit. E.g., ships with better engines should be better at positioning themselves in a way that doesn't benefit their attackers, e.g., in a way that brings target priority back closer to random, or perhaps even swings it the other way, making the enemy more likely to hit decoys and tanks than to hit vulnerable high-value targets. I think the Endless Space 2 combat system is a pretty good simple implementation of such a scheme.
Ophiuchus wrote: Tue Nov 19, 2019 8:52 pm I am currently trying to figure out how many decoys you need to add extra to get a similar result if you up the number of bouts by one, two...
Usually when I use decoys, it is alongside enough glass/planetary cannons to mostly finish off the enemy in 2-3 bouts, so adding extra bouts to the combat would make no noticeable difference at all. Extra bouts *could* make a difference in a battle where *both* sides bring a lot of decoys though. However, regardless of whether you add extra innings, a battle between roughly evenly matched fleets of warships will still mostly be determined by who has the most cheap decoys, which is stupid probably not ideal game design...

Ships have a severely limited number of slots, but buying decoys serves the same purpose as adding armor to a warship, sucking up hits that otherwise would have put that warship at lower hitpoints. Decoys are often *more* effective at doing this than armor is: e.g., it's usually cheaper to have a 3:1 decoy:warship ratio than it is to add a single armor to each of your warships (including buying more hulls to carry the weapons that got displaced for armor), and the 3:1 decoys will suck up 75% of the incoming damage, which is much more than a single armor on each ship would have been able to absorb. Yes, it costs PP to replace decoys, whereas damaged armor can be slowly replaced at the mere cost of time. But in many cases, a resounding victory enabled by cheap decoys puts you in a much better position than you'd be in with wounded armored ships. And yes, the game's current "upkeep" system makes you pay a premium on further ship production if you keep decoys around, but this can largely be avoided by producing your decoys right as you need them, shifting to infrastructure production while you're using the decoys, and then disbanding them before you go back to ship production. (Also, to be fair, it costs more upkeep to maintain a fleet with a given number of weapons if you also take up slots on each ship for armor. So you actually can produce your ships *more*cheaply* if you make them glass cannons, with temporary decoys effectively carrying their armor and then disbanding the surviving decoys before they would inflate the prices for your next round of ship production.)

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

Re: A little less comsat spam

#23 Post by Ophiuchus »

Telos wrote: Thu Nov 28, 2019 9:49 pm Strategically ideal targeting would probably prioritize "vulnerable, high value" targets, using something like the division (ship weapon damage / remaining ship structure) to compute targeting priority, rather than the multiplication you proposed.
Yes that kind of condition may be one option. I think though we do not want ideal/optimal targeting. What we want is a combat system where all parts (ships designs based on different hulls, fighters, ..) make sense. We do not want to have one single tactic which always is the best one.

The main problem with writing such targeting conditions in the current combat system (only hard targeting) is that you need to take into account the whole attacking and defending fleets - e.g. targeting one of the ten most "vulnerable, high value" targets makes sense in many cases, but not if there is one enemy ship and nine decoys or if both fleets have a thousand vessels. That thousand vessels would destroy only ten ships each bout.
Telos wrote: Thu Nov 28, 2019 9:49 pm
Ophiuchus wrote: Tue Nov 19, 2019 8:52 pm I am currently trying to figure out how many decoys you need to add extra to get a similar result if you up the number of bouts by one, two...
Usually when I use decoys, it is alongside enough glass/planetary cannons to mostly finish off the enemy in 2-3 bouts, so adding extra bouts to the combat would make no noticeable difference at all.
No. I meant e.g. doubling the number of bouts (which in effect doubles the damage done by a weapon) while doubling the structure (so damage/structure balance is "restored"). This reduces damage-overkill a lot by halving the amount of damage spend on a single-hit-decoy. Add to this a new weapon part with many hits but low damage and most of the low-structure decoys are gone in the first bout.
Another variant would be to immediately remove targets from combat if destroyed as that would reduce shot-overkill which happens more on lower structure targets. I am not sure if that is actually an option or not.

The question I mentioned is if the number of necessary decoys scales linear or not. If the number of decoys would increase in an e.g. exponential way, upping the number of bouts would have an tremendous effect.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

JonCST
Space Kraken
Posts: 157
Joined: Sat Dec 15, 2018 4:28 am

Re: A little less comsat spam

#24 Post by JonCST »

Ophiuchus wrote: Sun Dec 01, 2019 9:43 pm Add to this a new weapon part with many hits but low damage
I think this is currently called "Flak Cannon"?

Logically, it seems like there are two variables here: Hit harder, or shoot more bullets.

Flak is the MD equivalent point defense. For each level of MD upgrade, go from 3 to 6 to 9 to 12 shot flak?

Or maybe add a laser, then plasma point defense to hit harder?

Or, heaven help us, both? That way leads to a 12-shot plasma cannon point defense capable of destroying many fighters per turn, and killing small warships if there are no fighters in the way.

Jon

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

Re: A little less comsat spam

#25 Post by Ophiuchus »

JonCST wrote: Sun Dec 01, 2019 10:19 pm
Ophiuchus wrote: Sun Dec 01, 2019 9:43 pm Add to this a new weapon part with many hits but low damage
I think this is currently called "Flak Cannon"?
No, "Flak Cannon" currently only targets fighters, so every hit means destroy or shot-overkill. Of course that could be changed back making ships a defense screen for your fighters.

What I meant was a low damage multi shot weapon which targets completely random ships. If the chance to hit low structure ships is high (== enemy deploys many decoys), overkill is low.

One way to do it:
"Gravity Wave Blaster" Has its own tech line. Maybe cost a bit less RP than Laser-1, PP cost about 50% higher than a laser. Starts with 3 shots 3 damage. Upgrade tech I 4 shots 4 damage. Upgrade tech II 5 shots 5 damage. So this would be great against ships without shields. So this would nerf low-structure ships and buff shields.

Or "Vacuum structure disruptor" could also fire even more low-damage shots but does not differentiate between friend or foe (so your ships also get shot) - this would shell out more damage to the fleet with the higher number of vessels.

But i definitly enjoy the 12-shot plasma cannon point defense "killing small warships if there are no fighters" :lol:
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

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

Re: A little less comsat spam

#26 Post by Ophiuchus »

Telos wrote: Thu Nov 28, 2019 9:49 pmprioritize "vulnerable, high value" targets, using something like the division (ship weapon damage / remaining ship structure) to compute targeting priority,
Tried my best FOCS-foo, if someone wants to try: PR-2661
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

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

Re: A little less comsat spam

#27 Post by Oberlus »

Ophiuchus wrote: Mon Dec 02, 2019 12:49 am
Telos wrote: Thu Nov 28, 2019 9:49 pmprioritize "vulnerable, high value" targets, using something like the division (ship weapon damage / remaining ship structure) to compute targeting priority,
Tried my best FOCS-foo, if someone wants to try: PR-2661
I have not tried it yet, I'm just pondering the code:

Things like this I don't like:

Code: Select all

And [ Random probability = 0.1 Fighter]
Assuming it means 10% chance to include fighters in the set of possible targets, consider the cases where fighters are 10% of all possible targets (only a few carriers in the fleet, or fighters already decimated) and where they are 89% of all possible targets (all fleet is carriers with 2 interceptor hangars and launch bays).
I would expect the chances to target fighters to be proportional to the ratio of fighters in the enemy fleet.

You also point out in the interceptor hangar:

Code: Select all

// If there are few bombers intercept other fighters
// NumberOf doesnt work for fighters, also number should be fleet dependent
NumberOf number = 3 condition = Fighter
Indeed number should be fleet dependent (3 fighters along a single ship are not "few").
But again, the main problem here is that this introduces non-linear behaviour. Why not let the ratios of possible targets to define the probability of targetting each one?

In any case, all this stuff is overly complicated. Leaving aside the FOCS code, the implicit formulation is hard to follow and it makes hard to make an estimation of the expected results of a combat.

I still stand up for Krikkitone's suggestion of using hard targetting: a weapon can or cannot target a given type of target. The selection of targets fully proportional to the ratio of each target type in the enemy fleet.
Flak only target decoys/interceptor/fighter/bomber/heavy fighter
Regular SR weapons target anything.
Mega weapons only target planets and ships.
Fighters and Interceptors target anything [Alternative: Interceptors only target fighters, and fighter upgrades for them increase number of interceptors per hangar, and launch bay capacity, instead of increase their damage].
(Heavy) Bombers target ships.

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

Re: A little less comsat spam

#28 Post by Ophiuchus »

Oberlus wrote: Mon Dec 02, 2019 11:16 am

Code: Select all

And [ Random probability = 0.1 Fighter]
Assuming it means 10% chance to include fighters in the set of possible targets, consider the cases where fighters are 10% of all possible targets (only a few carriers in the fleet, or fighters already decimated) and where they are 89% of all possible targets (all fleet is carriers with 2 interceptor hangars and launch bays).
I would expect the chances to target fighters to be proportional to the ratio of fighters in the enemy fleet.
But that is proportional to the ratio of fighters. If the enemy has double the fighters the chance to hit fighters doubles.
Oberlus wrote: Mon Dec 02, 2019 11:16 am // NumberOf doesnt work for fighters, also number should be fleet dependent
NumberOf number = 3 condition = Fighter[/code]Indeed number should be fleet dependent (3 fighters along a single ship are not "few").
But again, the main problem here is that this introduces non-linear behaviour.
A combat force (your combined fleets in the battle) consisting of a single ship with at least three fighters would be a rare border case which i think would be ok. the side effect is mostly that you overproportionally probably limp away with a single ship.
I really do not see non-linear behaviour as a problem. Or let me rephrase it - i think straight hard targeting creates more problems.
Oberlus wrote: Mon Dec 02, 2019 11:16 am Why not let the ratios of possible targets to define the probability of targetting each one?
I do not understand what you mean. That is the current system - and anything i can formulate in the system is like that.
Oberlus wrote: Mon Dec 02, 2019 11:16 am I still stand up for Krikkitone's suggestion of using hard targetting: a weapon can or cannot target a given type of target. The selection of targets fully proportional to the ratio of each target type in the enemy fleet.
Flak only target decoys/interceptor/fighter/bomber/heavy fighter
Regular SR weapons target anything.
Mega weapons only target planets and ships.
Fighters and Interceptors target anything [Alternative: Interceptors only target fighters, and fighter upgrades for them increase number of interceptors per hangar, and launch bay capacity, instead of increase their damage].
(Heavy) Bombers target ships.
The KISS-hard-targeting approach is fine - but does not address decoys at all.

I think you are approaching this from the wrong angle.
I am trying to explore design space for our combat system here. The prototype can give hints if a soft targeting approach can address decoys or not and what unexpected side issues arise.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

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

Re: A little less comsat spam

#29 Post by Ophiuchus »

Telos wrote: Thu Nov 28, 2019 9:49 pm
Ophiuchus wrote: Tue Nov 19, 2019 8:52 pm With preferential targeting one could add higher probabilities of hitting targets with higher combat value (ship weapon damage * ship structure)
Strategically ideal targeting would probably prioritize "vulnerable, high value" targets, using something like the division (ship weapon damage / remaining ship structure) to compute targeting priority, rather than the multiplication you proposed. This would have the strategically desirable effect of giving high priority to glass cannons and to finishing off heavily damaged ships, and low priority to unarmed decoys and heavily armored tanks. Of course, there could be further complexities, e.g., to take shields into account, to avoid wasting damage on overkill, and/or to not over-prioritize enemy spinal cannons whose scary-looking numerical damage will likely be mostly wasted as overkill against you.
Hey Telos, could you please playtest:
#2661
That PR introduces prioritised targeting for all weapons which target ships using a version of your suggestion.
Also it softens targeting for interceptors which makes those more rounded and effective if there are only few enemy bombers.

The weapons still choose equal-chance randomly from the target set, but the target set is made fit for priority targeting.
In 90% of the cases, the DEFAULT_SHIP_WEAPON_COMBAT_TARGETS condition keeps a number(== number-of-shots-in-your-system-fleet) of targets in the target set. These are the most dangerous targets present in the system as defined by DEFAULT_TARGET_SHIP_VALUE. DEFAULT_TARGET_SHIP_VALUE uses the enemy ship's attack value (i.e. total enemy ship's weapon damage) divided by the enemy ship's remaining structure plus half of your progress of killing that ship (so a 10hp heavy asteroid will be more likely fired at than a 10hp small hull ship. The details might be buggy though.
In 10% of the cases there is a chance that you can hit enemy fighters too.

The implementation has a lot of code smell, but our combat system does not (yet) support soft/prioritised targeting in a good way. Certainly it is good enough to see if we would like the results.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

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

Re: A little less comsat spam

#30 Post by Ophiuchus »

Hi everyone, what is your experience:

With the latest changes (higher base hull cost) is comsat spam still a problem?

With the latest changes (arc disruptor) is chaff still a problem without counter?
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

Post Reply