View Issue Details

IDProjectCategoryLast Update
0024538AI War 2Balance IssueMar 16, 2021 3:43 pm
ReporterLord Mekton Assigned ToChris_McElligottPark  
Severitymajor 
Status resolvedResolutionfixed 
Product VersionBeta 2.756 Choice Of Injury 
Fixed in VersionBeta 2.758 Threat Explanation 
Summary0024538: Ai Hunter fleets are overwhelming when 3 AIs are in the game
DescriptionPlaying on diff 8 against 3 AIs of a difficult type, one does not expect the game to be easy. However, the current game is SO hard that it is virtually unplayable when more AIs are involved. They spawn insanely large hunter fleets which dont even show up in the overall threat bar and then they just overwhelm anything that stands in their way. I would expect this kind of unwinnable conditions to apply to diff 10 games, not diff 8. I include my save games to showcase how ridiculously overwpowered the hunter fleet curently is.
TagsNo tags attached.

Activities

Lord Mekton

Mar 12, 2021 5:37 am

reporter  

Or not.save (1,121,227 bytes)
Or yes.save (1,187,159 bytes)

Arides

Mar 12, 2021 5:58 am

reporter   ~0060743

Currently there is a huge gap between games with a single AI, and games with 2+. While 1 AI is fairly docile (or at least manageable), multiple AIs seem to spike in hunter fleet around 100 AIP (which is basically around the "Big AIP Floor", so no way to avoid it).

There is also a mismatch between reported "threat" and actual attacking hunter strength. Many times have I had 500 strength worth of hunter attacking my planet, while reported threat was 300.

It also seems like warden has a lot less units than hunter now. It almost seems as if hunter was stealing warden's units. In previous versions (or 1 AI in current version), it was always viable to hunt and kill hunter to reduce threat. Not anymore. Sitting at home makes hunter grow at tremendous speeds. Fighting anywhere makes the hunter grow ... slower, I guess. No sentinel attacks anymore. Just hunter, waves, and occasionally warden.
The game honestly feels like fighting the hunter now.

Arides

Mar 12, 2021 5:33 pm

reporter   ~0060747

One screenshot to explain why I believe the hunter is getting ships that it shouldn't:
- Total threat in the galaxy: 312
- Visible Hunter strength: 652
threat_wrong.jpg (231,021 bytes)   
threat_wrong.jpg (231,021 bytes)   

Chris_McElligottPark

Mar 16, 2021 3:43 pm

administrator   ~0060803

Okay, thank you for the reports! TLDR: these hunter fleets are super manageable, because they are not here for you. They're less than 1/10th the size they seem to be. However, the interface did not remotely give you the information required to know that. Now it will.

* First off: what are we on about with the below changes?
** Well, some funky things are happening with the hunter fleet, and that seemed like a symtom of a larger issue.
** As part of that, I found some code that was quite inefficient (string comparisons), and also potentially sometimes wrong (turns out the flavor of hunter you selected could make certain code work or not).
** Untangling all of this took more time than originally intended, but should solve some issues as well as fixing the potential for future mistakes.
** Overall this was a giant rabbit hole that did not solve the original problem, but did uncover a couple of others and proactively solve them, hopefully without causing new ones. Some of the strangeness of the hunter and similar sometimes not behaving may now be fixed, but it's hard to say.

* GetSpecialFactionName() has been deprecated, as all the places that were using it were basically either using it inefficiently or using it when a nicer name should instead be showed.
** There are a variety of places in the interface that are now more clear and less debug-text-looking, and other parts of the engine that simply run faster.

* It's possible that hacking the Vengeance Generator from the Dark Spire, and other similar actions, were just broken by the above change.
** Same with Dyson Sphere hacks.
** Same with Dark Zenith Library.
** Same with Zenith Architrave Portal
** If anyone can confirm if those various things still work -- in a fresh campaign, not an existing one -- that would be super helpful.
** Below in the notes, we note a code and xml analaysis has looked at all of these, but just to be sure it would be nice to have eyes on.

* It's also possible that depot events targeting specific factions are no longer working with astro trains.
** Same with waves launched at specific non-player factions.

* Looking at the above, the following divergences were found:
** AI Risk Analyzers had a different name in the code and the xml. That would have busted them some, but the one bit that was using the old code-style name seems resolved now.
** One of the two hunter fleet variants was inconsistent with the other and the xml... who the heck knows what this would have caused in the past. Probably bugs of the sort I am worried about happening now, but at any rate it's now fixed.
** Wow, same thing happened with one of the two Praetorian Guard code instances. I wonder what problems this was causing.
** Aaand the Warden Fleet had two different versions in code, and a completely other thing in xml. Yikes.
** Dark Spire had a difference between code and xml. Same with Devourer Golem. And Dyson Sphere. Also Macrophage.
** We had an extra SpecialFaction_NanobotZombie faction in code that was an old remnant. That's been cleared out.
** Relentless AI Waves had a different name in code and xml, too.
** Everything else was consistent. Not counting mods, this was 42 factions or subfactions, with 9 being inconsitent, and 1 being just an extra outdated thing. So that wa still 32 that were correct and consistent.
** There were three places where this was definitely going to cause problems in the future with the Risk Analyzers, but those are fixed proactively.

* Looking at code based on the above, the following results were found:
** Dark Zenith Library xml looks to still work.
** Same with Zenith Architrave Portal, looks good.
** Dark Spire were broken by these changes, but the xml should now be fixed.
** Dyson Sphere was definitely also busted, but the xml should now be fixed.
** Everything else seems to have already been consistent and no problems.

* Added is_always_a_direct_attack_against_players, which lets us track certain factions which are always basically threat regardless of the rest of their disposition (unless they are actively attacking you).
** This applies to the relentless waves, the tsunami CPA units, the AI reserves units (those do go away, but while they are present they count), instigators, anti player zombies, anti everyone zombies, and that's it.

* is_considered_hunter, is_considered_warden, and is_considered_praetorian have been added to make it much easier to check which factions are of that type.
** This is purely a processing efficiency thing, which is relevant the more ships there are in the galaxy. Mostly for backgroudn threads, but still.

* The way that the threat is calculated has been updated a bit to hopefully avoid some edge cases where it seems incorrectly under-counted.
** This did not change much in the savegames that people gave us.

* The display now shows threat numbers that include even numbers on player planets -- aka, before, threat ships would become attacker ships, and they were either/or.
** This was very messy and confusing, because attacker ships might just be something random passing through, and might not truly be a subset or even intersection with threat.
** For the sake of consistency, threat is now threat even if it's on your planets. That way the threat doesnt' seem to diminish just because it's on your planet now. That looked like you were killing something when really you were not.
** Similarly, the strength and number of ships attacking you is just all about enemy ships actually at your planets, and their status doesn't matter.

* Added a new RelativeToOtherFaction_ThreatStrength and RelativeToOtherFaction_ThreatStrengthVisible, which lets players have an idea of how much of the enemy threat forces are aimed at some other faction than them.
** These actually give an enormously better picture, in the threat screen in particular, of what is threatening factions other than the player.

* Similarly, the monolithic number of the hunter fleet strength is now broken out by that part which is against humans, and the portion that is against other factions, and breaks that out on the threat window display.
** This was the final piece of the clarity puzzle. Most of the actual numbers that were wrong were only a bit wrong (missing counting certain things, etc), but not being able to tell that huge parts of the hunter fleet have no interest in you was kind of a big deal.
** Note taht this could also make the hunter fleet look insurmountably dificult.
*** In one example, there were appearing to be 275 threat against humans, but really there was 308. But at the same time, it said there was 646 hunter strength, which would be unbeatable... except only 69 of it was against humans.
*** In the other example, the total threat reported was 312, but the real threat was actually 347. It said 652 hunter strength, but only 74 was against humans.
** Both of the examples of "impossible games" are actually more to do with what looked like impossible odds because of hunters doing things that won't bother you unless you specifically go and harass them.

Thanks!

Issue History

Date Modified Username Field Change
Mar 12, 2021 5:37 am Lord Mekton New Issue
Mar 12, 2021 5:37 am Lord Mekton File Added: OKAY guess ill just die then.save
Mar 12, 2021 5:37 am Lord Mekton File Added: Or not.save
Mar 12, 2021 5:37 am Lord Mekton File Added: Or yes.save
Mar 12, 2021 5:58 am Arides Note Added: 0060743
Mar 12, 2021 5:33 pm Arides File Added: threat_wrong.jpg
Mar 12, 2021 5:33 pm Arides Note Added: 0060747
Mar 16, 2021 3:43 pm Chris_McElligottPark Assigned To => Chris_McElligottPark
Mar 16, 2021 3:43 pm Chris_McElligottPark Status new => resolved
Mar 16, 2021 3:43 pm Chris_McElligottPark Resolution open => fixed
Mar 16, 2021 3:43 pm Chris_McElligottPark Fixed in Version => Beta 2.758 Threat Explanation
Mar 16, 2021 3:43 pm Chris_McElligottPark Note Added: 0060803