[FIXED] Turn Timer

IMHO, the biggest missing feature in PYDT by far is a turn timer. I have a turn timer implemented on PYDT, however there’s currently a bug in Civ 6 that prevents us from using it. The way it would work would be that after a certain amount of time your slot in the save file gets changed from Human to AI, and the next player is able to play their turn. When they load the save file, your turn would get played by the AI, and then we would set you back to Human so you have the opportunity to play your turn next time.

Unfortunately, when you do this, the game gets stuck in “please wait” mode once the player is set back to human. I made a post on the 2K forums about this, if people want to “bump” it that’d be great:

  • Create a hotseat game with all player slots set to Human.
  • Play a turn or two, save the game, and exit back to the main menu.
  • Load the game, and change the current player to AI (to “skip” them), play the next player’s turn, save the game, and exit back to the main menu.
  • Load the game, change the AI player back to human, and when you go to play the next player’s turn the game will be stuck in please wait mode.

If anyone has any contacts at Firaxis and could bring this bug to their attention, that’d be awesome! Also, if you have any other ideas about how a turn timer could be implemented (maybe using the normal multiplayer turn timer somehow?) please post below!

2 Likes

Maybe you can copy this message in civfanatics forums

You have a big community there (even some firaxis members) and maybe they could bring you some new ideas :slight_smile:

Thanks, I’ll head over there!

Your request seems buried in a huge feature/bug thread. I can’t imagine it’s getting a lot of attention. However, it’s possible to email Firaxis directly. Their email scheme is @firaxis.com

~ Sid Meier smeier@firaxis.com Chairman and Director of Creative Development
~ Brian Reynolds breynolds@firaxis.com Vice President, Software Development

You can find more contacts by searching LinkedIn for “Firaxis Games” employees in Baltimore. A nice email can go a long way

Finally got my gang to use PYDT instead of the horrendous Civ 6 Play by Cloud UI. However a turn time would be great to have. Anything more we can do to push this?

Can this be implemented by the server running the actual game? I.e. it loads the save, presses shift-enter, and saves it for the next player?

This way would actually be much better than delegating to the AI. The AI can ruin your game in a single turn to the point where the feature is unusable. It can spend your gold and governor titles, put down districts in the wrong places, use your builders badly, settle in the wrong place, and so on - the list is endless.

Another option is to have a designated person or people to do the same thing. This would be someone who joins the game but is not a player, and gets notified if a player is overdue and can download their turn, press shift-enter, and upload. Though the automated would obviously be much better.

I figured out why the game gets stuck.
The reason is that when you switch a current player from Human to AI the flag IS_CURRENT_TURN (civ6-save-parser/index.js at master · pydt/civ6-save-parser · GitHub) remains set true.

It does not interfere with turns when this flag is set true for AI but when you switch back this player from AI to Human you end up with two players with this flag set true.

A solution to that would be force resetting the flag to false in the save file, then the game becomes unstuck.

1 Like

Cool, I’m looking into your PR, this’ll be awesome if we can get turn timers running on civ 6!

Sweet, it seems to be working, thanks @bestander! I’m going to do a little more testing but I’ll probably roll it out sometime today.

civ 6 turn timer · pydt/api@8a3720d (github.com)

1 Like

OK, this has been deployed, if anyone has any issues with it let me know!