1. We have added a Gift Upgrades feature that allows you to gift an account upgrade to another member, just in time for the holiday season. You can see the gift option when going to the Account Upgrades screen, or on any user profile screen.
    Dismiss Notice

Multi-Player Bugs and Crashes, v39 & SVN after July, 20th 2019

Discussion in 'Bugs and Crashes' started by Thunderbrd, Jul 21, 2019.

  1. Thunderbrd

    Thunderbrd C2C War Dog

    Joined:
    Jan 2, 2010
    Messages:
    27,264
    Gender:
    Male
    Location:
    Las Vegas
    Report any OOS errors or issues with Multi-Player simultaneous games here.

    You CAN play Simultaneous Multi-player as a single player and get a semi-real time turn based game that processes turns a bit faster since the AI is moving when you do. We can also try to debug those as well.

    If you are trying to play actual multi-player, the IP connection is the most valid but you're likely to hit some OOS errors. To minimize these,

    1) Turn off events in the game options when you set things up - yes this negates flammability but you'll have lots of OOS errors all game if you don't.
    2) Make sure Rev is off. This tends to cause some as well.
    3) Make sure to try to avoid building any wonders other players are building, even if it lets you, especially if you are on the same team.
    4) Avoid automating anything at all, including sending units beyond the reach of their movement for a turn. For some reason, this is a known issue.

    Beyond that, when you DO get an OOS error (which sometimes happens in the first round even) you should:
    1) report the autosave if you have one from the immediate round before the OOS takes place and you find you can repeatedly hit the same OOS error that round.

    2) report the logs you get - you should have logging turned on for all systems through the config ini settings.

    and more importantly:

    3) save the game AFTER the OOS has taken place, have everyone get out entirely to desktop, all reload and reinitialize the game. If you try to shortcut this to get back on track, you will doom yourself to immediate OOS errors again.

    If you're having a LOT of OOS errors, please post here to let me know to look into it. A 2 player game is something I can TRY to evaluate somewhat, and just knowing the era and when things are beginning to OOS a lot can help.

    We're not totally clean with this yet but my wife and I can often get a pretty good game going without hitting all that many, or at least we were recently. It can only take one bad update to make everything go very south in this department. Keep me posted on your experiences here.
     
    kilem and TaylorItaly like this.
  2. Thunderbrd

    Thunderbrd C2C War Dog

    Joined:
    Jan 2, 2010
    Messages:
    27,264
    Gender:
    Male
    Location:
    Las Vegas
  3. Thunderbrd

    Thunderbrd C2C War Dog

    Joined:
    Jan 2, 2010
    Messages:
    27,264
    Gender:
    Male
    Location:
    Las Vegas
    According to some discussions on Git, I'm posting some logs here. Checking the compare on the OOS logs I'm more confused than enlightened. Something is very wrong with those and you can see what I mean.
     

    Attached Files:

  4. alberts2

    alberts2 Emperor

    Joined:
    Aug 16, 2012
    Messages:
    1,946
    Gender:
    Male
    Location:
    Germany
    @Whisperr is using a older version of C2C as you are. The python error in OOSLogger.writeLog on your side should be fixed now.
     
    KaTiON_PT likes this.
  5. Toffer90

    Toffer90 C2C Modder

    Joined:
    Oct 16, 2011
    Messages:
    6,631
    Location:
    Norway
    Yeah, this data is useless due to a bug in the OOSLogger that crash it quite early in the write process.
    It's fixed on git now.

    @alberts2, It's quite easy to check that the OOSLogger changes you make are working as expected. Just put in these two lines in the CvEventManager.gameStart function.
    import OOSLogger
    OOSLogger.writeLog()


    And this will write out the log when you start any game.
     
  6. Toffer90

    Toffer90 C2C Modder

    Joined:
    Oct 16, 2011
    Messages:
    6,631
    Location:
    Norway
    @alberts2:
    Why did you remove this city info from the OOS Log? (in this commit)

    getProductionName() ▬ What is at the top of the build queue.
    getProduction() ▬ Number of hammers progress on current production
    getGreatPeopleProgress() ▬ Great person progress of city
    getBaseGreatPeopleRate() ▬ Base GP rate per turn in city
    getGreatPeopleRate() ▬ Effective GP rate per turn in city

    Are all of these things irrelevant for debugging OOS errors?
     
  7. alberts2

    alberts2 Emperor

    Joined:
    Aug 16, 2012
    Messages:
    1,946
    Gender:
    Male
    Location:
    Germany
    I made the OOSLogger match the checksum calculation in CvGame::calculateSyncChecksum it doesn't help to log things which aren't included in that calculation. The checksum calculation itself could need some more work to include more things.
     
  8. Thunderbrd

    Thunderbrd C2C War Dog

    Joined:
    Jan 2, 2010
    Messages:
    27,264
    Gender:
    Male
    Location:
    Las Vegas
    Maybe she didn't update properly. I'll take a look at how she goes about that next time. We'll try again tonight. Hopefully we can get a little further in to see if we can catch the root issue in the queue.
     
  9. Toffer90

    Toffer90 C2C Modder

    Joined:
    Oct 16, 2011
    Messages:
    6,631
    Location:
    Norway
    Cool, thanks for explaining.
     

Share This Page