Played again recently, great game!

Describe your experience with the latest version of FreeOrion to help us improve it.
Forum rules
Always mention the exact version of FreeOrion you are testing.

When reporting an issue regarding the AI, if possible provide the relevant AI log file and a save game file that demonstrates the issue.
User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 12280
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Played again recently, great game!

#16 Post by Geoff the Medio » Wed Oct 12, 2016 9:10 am

ccla wrote:
...number of rounds certainly do matter [...] being able to retreat for potential repairs. Which in turn means the number of combat rounds influence how valuable armor is.
Idk, I still think that ignoring the number of combat rounds makes sense. Look at it this way, [nothing about repair]
You seem to have ignored the key point in the comment you were responding to, which is that ships can retreat and be repaired if combat ends after a finite number of turns.

Krill Swarm
Posts: 12
Joined: Wed Jan 01, 2014 10:02 pm

Re: Played again recently, great game!

#17 Post by ccla » Wed Oct 12, 2016 9:24 am

If weapons and structure cost the same, it is abusable in the sense that I can design ships with 1 structure but the same damage as you have structure and reach a draw in fights as both ships are destroyed and mine is cheaper. With that level of discretization abuse, structure would become worthless. These counter-ships then of course could be countered by adding a ship which just deals enough damage to destroy those and suicide them before the actual fight and because those counter-ships are cheaper and can't easily be countered by an even cheaper ship. First, because they are likely to be the cheapest available damage to do the job(potentially limited by hull choice) and second because they are somewhat protected by the rest of the balanced ships in the fleet that have enough structure to tank a few hits. So even in that edge case, the armor will likely hold value.
See, I actually thought this through, and I disagree, I think rather than lead to abuse it leads to interesting gameplay.

Okay, so as a starting point, suppose a player naively builds a fleet consisting of ships with the highest slot number hull available, and maximizes e/p as I described in the earlier post. If armor costs roughly the same as damage, then this means roughly dividing slots equally between armor and weapons.

But to counter, as you point out, the opposing player could build ships with the exact same configuration, except with no armor modules. They could even use a lower slot hull to cut costs. Because the ships are cheaper, more can be produced, thus this player has a fleet that counters the e/p optimized fleet.

But this has a counter--the first player could now build ships with that configuration, but with only minimal damage output, which could one shot that ship. This could be countered, in turn, by a fleet of ships with very high armor but minimal damage. But because these are far from the optimal e/p point, they would be inferior to the original ships that were balanced for optimal e/p.

So here's a way to look at it, in the limit as weapons are expensive and armor is cheap, the optimal strategy is to spam large ships with high armor and relatively low damage output, I think that in the current state of the game, if two empires are fighting an attrition battle where they have to make the most of their production, this is actually optimal to winning (it's offset somewhat by shields but IMO probably not that much).

In the limit as weapons are cheap and armor is expensive, you have a situation where every ship one shots every other ship, it's pointless to ever buy armor. When two empires fight, the empire that can field the highest number of cheap ships will win.

But my suspicion is that in the middle there's a "sweet spot" where different designs exist with different roles that counter other designs well, there would be benefit to creating well-designed and well-balanced fleet, if they were not balanced then they could be countered. Idk, this seems to be a dynamic that people are requesting.

Krill Swarm
Posts: 12
Joined: Wed Jan 01, 2014 10:02 pm

Re: Played again recently, great game!

#18 Post by ccla » Wed Oct 12, 2016 9:29 am

You seem to have ignored the key point in the comment you were responding to, which is that ships can retreat and be repaired if combat ends after a finite number of turns.
The reason I didn't mention this is that I don't think that repair impacts the argument, if two fleets meet and fight, and then end the fight prematurely, the side that would have won will be ahead at whatever point it ends. The impact of repair, I think, is that it rewards the side with fewer, more durable ships rather than a larger number of more fragile ships (fleet strength being otherwise equal). This might merit more detailed analysis, but my suspicion is that this favors armor rather than attack, at least in the current game where even fleets tend not to one-shot each other and discretization effects are not so dominant.

EDIT: Actually, thinking about the earlier optimization discussion, this is the kind of effect that might push optimal ship design slightly from optimal e/p to optimal e, which in the current freeorion discussion favors weapons, so actually idk, I might need to think about this more but my guess is it doesn't have a huge impact, just a guess, though

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

Re: Played again recently, great game!

#19 Post by Morlic » Wed Oct 12, 2016 8:34 pm

ccla wrote: I'm not sure why this shows my math is messed up, but your point is valid, the marginal cost of additional weapons is a function of current armor and cost per weapon, and true vice versa, so the comparison of marginal benefits of weapons vs marginal benefits of armor is nontrivial. However I think I just solved the optimization problem above, which I think addresses this and pretty much tells the whole story on the simplified "effectiveness = damage * structure" model
I wasn't refering to your math there but to Vezzra's interpretation.

Your derivation of the optimum number of slots used for weapons is close to what I used when implementing the ship design algorithm for the AI. However, taking into account the hull cost and structure is necessary. The extension of the model is trivial (just add hull structure and cost). The math gets slightly more messy but it can be seen on first sight that the optimum number of slots will now depend on the ratio of armor per part and hull structure (just use factorization to get rid of the constant scaling factors in the formula).

/Edit: Also, when trying to optimize fleets instead of single ships you probably want to find the optimum e/p^2 not optimum e/p:
Note that both structure and firepower of the fleet scale linearly with the number N of ships. So e scales quadratic with N. The cost obviously scales linear with number of ships. N, however, scales inverse with cost. Neglecting the scaling factor you end up optimizing

Code: Select all

f = N^2*e/(N*p) = (1/p^2)*e(1/p * p) = e / p^2
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

Post Reply