Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Obliterating an enemy AI prevents to finish turn #2302

Closed
Oberlus opened this issue Oct 16, 2018 · 7 comments · Fixed by #2321
Closed

Obliterating an enemy AI prevents to finish turn #2302

Oberlus opened this issue Oct 16, 2018 · 7 comments · Fixed by #2321
Labels
category:bug The Issue/PR describes or solves a perceived malfunction within the game. component:internal The Issue/PR deals with any project component that has no explicit `component` label. status:resolved The Issue was resolved, either by answering properly or fixing the underlying bug.
Milestone

Comments

@Oberlus
Copy link
Contributor

Oberlus commented Oct 16, 2018

  • FreeOrion Version: 2018-10-07.feb528b
  • Operating System: Windows 7
  • Graphic card used: GTX 660
  • Fetched as
    • Weekly development build

Description

On the turn you completely eliminate an enemy AI empire, on hitting next turn game will stay waiting for that dead AI to finish before saving, so game won't continue. Clicking on resign exits without giving you time to click on the "exit without saving".
This happens consistently since at least a week before this weekly dev. build was published. The attached game is a second, different-settings game with latest week dev. build, but it also happened to me on Linux using compiled source from master around 10 days ago.

Expected Result

Games doesn't wait on dead empires and continues.

Steps to reproduce

Load attached game and click on next turn until issue happens (should be on turn 143, save is from turn 141 when combat on enemy (last) homeworld is going on).
FreeOrion_Jugador_Humano_El_0141_20181016_174736.zip

@Vezzra Vezzra added category:bug The Issue/PR describes or solves a perceived malfunction within the game. component:internal The Issue/PR deals with any project component that has no explicit `component` label. labels Oct 19, 2018
@Vezzra Vezzra added this to the Next Release milestone Oct 19, 2018
@Oberlus
Copy link
Contributor Author

Oberlus commented Oct 20, 2018

More evidence on this from another player (UrshMost) in the forum.

@urshmost
Copy link

urshmost commented Nov 2, 2018

I just experienced this again in build 2018-10-27, in the situation where you invade a species' last planet, on the same turn that they build a last ship there.
Example:
-turn 98: your fleet arrives at enemy capital planet and destroys their last fleet.
-turn 99: your troop fleet arrives and you click invade, and a last ship by the enemy is built.
-turn 100: the enemy's capital, their last planet, is captured, and then their last ship is destroyed.

The Messages window does not progress past "Waiting for Other Players" and the Empire window shows all players other than the one that you just defeated are finished their turns. It also shows a 'Head on a Spike" icon for that empire that you just defeated.

This Situation Report shows, in sequence:

The Syndicate has been defeated!
The capital of the Syndicate empire has fallen.
On Royal Cor a I : there was a ground battle with Syndicate.
Royal Cor a I was captured by Terran Imperium.
At Cor a: there was combat with Syndicate
At Cor a: a Griffin was destroyed

Hope that helps!

@urshmost
Copy link

urshmost commented Nov 2, 2018

AI log file info:

In the defeated species AI log, the last few lines are:

11:33:26.008369 [debug] ai : SerializeUniverse.cpp:175 : Universe::serialize : updating empires' latest known object destruction states
11:33:26.008369 [debug] ai : SerializeUniverse.cpp:184 : Universe::serialize done
11:33:26.008369 [debug] timer : ScopedTimer.cpp:34 : Mid Turn Update Unpacking time: 21 ms

It does not continue to the following steps;

11:33:28.756526 [debug] ai : AIFramework.cpp:139 : PythonAI::GenerateOrders : initializing turn
11:33:28.757526 [debug] python : FreeOrionAI.py:229 : Defined game rules:
11:33:28.757526 [debug] python : FreeOrionAI.py:231 : Name: RULE_PRODUCTION_QUEUE_FRONTLOAD_FACTOR value: 0
11:33:28.757526 [debug] python : FreeOrionAI.py:231 : Name: RULE_CHEAP_AND_FAST_SHIP_PRODUCTION value: 0
Etc etc.

that are next in sequence in the other AI logs.

@o01eg
Copy link
Contributor

o01eg commented Nov 2, 2018

I suppose defeated empire shouldn't be processed after #2283

Do you have a server log?

@urshmost
Copy link

urshmost commented Nov 2, 2018

hang on defeated empire.zip
freeorion.log and freeoriond.log attached in included zip file

@urshmost
Copy link

urshmost commented Nov 2, 2018

AI_1.zip

And here is the A! log file.

@Oberlus
Copy link
Contributor Author

Oberlus commented Nov 9, 2018

I can confirm this bug has nothing to do with the production of a ship in the turn the AI empire is defeated.
I just conquered an unhabitated gas giant that was the last planet of an AI empire, and the game stalls the same (must resign and reload).

@Dilvish-fo Dilvish-fo added the status:resolved The Issue was resolved, either by answering properly or fixing the underlying bug. label Nov 13, 2018
@Vezzra Vezzra modified the milestones: Next Release, v0.4.9 Sep 22, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:bug The Issue/PR describes or solves a perceived malfunction within the game. component:internal The Issue/PR deals with any project component that has no explicit `component` label. status:resolved The Issue was resolved, either by answering properly or fixing the underlying bug.
Projects
None yet
5 participants