Shuffle iT Forum

Dominion => General Discussion => Topic started by: Stef on 10 February 2017, 05:57:44 PM

Title: Reloading an old game
Post by: Stef on 10 February 2017, 05:57:44 PM
Since version 1.1.0 it's possible to load an old game. This feature is very much still under development, but this initial version is too convenient for finding/fixing other bugs not to release it.

The idea is that you can now specify an old game number and a decision number on a table. After doing so you can select a player order, which will determine who (on the new table) becomes whom (in the old game you're reloading).

The feature isn't very user friendly yet. You could wonder how on earth you're supposed to know your old game numbers, and how are you supposed to guess the decision number you're interested in. Those would be very legitimate concerns, and will be addressed in later releases. At some point you will be able to specify these 'reload-instructions' from an URL, and you will be able to generate that URL by some special click in a game log.

There is still a fundamental problem with this feature I haven't really been able to solve yet. It allows you to reload a game that was generated by the current server version just fine, but if you want to reload a game from an older version all bets are off. It may very well work, but could also be broken. Hypothetically speaking - Suppose that old server version contained some card bug (Smithy was drawing only 2 cards) that has been fixed on the new version. Reloading that game on the new server will fail very shortly after the first Smithy play.


For now, I hope this will help us solve card bugs more easily (so please do include a game number on all bug reports) and it's great fun for puzzling too.

Here is a very nice one to start from a game Marin and I were playing yesterday: game 1105805, decision 207. Add a bot, make sure you're taking over Marins perspective. The goal is to win this turn, because it's very unlikely you'll get another turn.
Title: Re: Reloading an old game
Post by: allanfieldhouse on 10 February 2017, 06:51:04 PM
Thanks for the update! I especially appreciate the "it isn't very user friendly yet" part so that we know it's still definitely a work-in-progress.

I'll try out that Marin turn, but didn't you say in Discord that the turn lasted a half hour or something?
Title: Re: Reloading an old game
Post by: Stef on 10 February 2017, 06:56:00 PM
Quote from: allanfieldhouse on 10 February 2017, 06:51:04 PM
Thanks for the update! I especially appreciate the "it isn't very user friendly yet" part so that we know it's still definitely a work-in-progress.

I'll try out that Marin turn, but didn't you say in Discord that the turn lasted a half hour or something?

Yes it's a very complicated puzzle. Yesterday we failed (which is why the solution isn't in the log you're loading, even if you use a decision number >207) and today it took me another half an hour of puzzling before finding a winning line. Certainly don't go for this one if you're looking for an easy puzzle. Hopefully other people can start posting some puzzles too now.
Title: Re: Reloading an old game
Post by: Eye Urn on 11 February 2017, 12:06:33 AM
As I mentioned on f.ds, I was very much hoping to get this feature.  As for what to do with version control issues with old logs, you might try asking the Prismata folks how they deal with it, especially considering that they rebalance the units quite frequently, something that doesn't happen in Dominion since it's based on physical cards.  My best guess is that they keep track server-side of what all units did during each version, and include the version in the replay file.  I don't know exactly what version issues there might be given that what the cards do never changes except to work correctly, but I don't know the underlying code base and how the log is put together.
Title: Re: Reloading an old game
Post by: Jacob Marley on 11 February 2017, 12:56:11 AM
For the purpose of version control, just treat it as an entirely new game.
Title: Re: Reloading an old game
Post by: SaintO on 13 February 2017, 05:37:02 PM
Quote from: Stef on 10 February 2017, 05:57:44 PM
Since version 1.1.0 it's possible to load an old game. This feature is very much still under development, but this initial version is too convenient for finding/fixing other bugs not to release it.

The idea is that you can now specify an old game number and a decision number on a table. After doing so you can select a player order, which will determine who (on the new table) becomes whom (in the old game you're reloading).

The feature isn't very user friendly yet. You could wonder how on earth you're supposed to know your old game numbers, and how are you supposed to guess the decision number you're interested in. Those would be very legitimate concerns, and will be addressed in later releases. At some point you will be able to specify these 'reload-instructions' from an URL, and you will be able to generate that URL by some special click in a game log.

There is still a fundamental problem with this feature I haven't really been able to solve yet. It allows you to reload a game that was generated by the current server version just fine, but if you want to reload a game from an older version all bets are off. It may very well work, but could also be broken. Hypothetically speaking - Suppose that old server version contained some card bug (Smithy was drawing only 2 cards) that has been fixed on the new version. Reloading that game on the new server will fail very shortly after the first Smithy play.


For now, I hope this will help us solve card bugs more easily (so please do include a game number on all bug reports) and it's great fun for puzzling too.

Here is a very nice one to start from a game Marin and I were playing yesterday: game 1105805, decision 207. Add a bot, make sure you're taking over Marins perspective. The goal is to win this turn, because it's very unlikely you'll get another turn.

Hi Stef, I tried loading the old game as you suggested to take a crack at the puzzle but it will only load to decision 265 and immediately takes me to a win screen, which seems to be random. Can you provide any assistance as to how to make sure I'm "taking over Marins perspective" and any feedback on why it's not letting me start at an earlier point in the game?
Title: Re: Reloading an old game
Post by: Stef on 13 February 2017, 05:47:16 PM
Quote from: SaintO on 13 February 2017, 05:37:02 PM
Hi Stef, I tried loading the old game as you suggested to take a crack at the puzzle but it will only load to decision 265 and immediately takes me to a win screen, which seems to be random. Can you provide any assistance as to how to make sure I'm "taking over Marins perspective" and any feedback on why it's not letting me start at an earlier point in the game?

Decision 265 is indeed the end of that game, so you'll go straight to the end screen (this behaviour will change in tonight's release).

After selecting the game, you have to change the decision to 207. Sorry it's a bit awkward, but you have to type in the game number again and 207, then hit 'load game'.
Title: Re: Reloading an old game
Post by: bardo on 17 February 2017, 08:39:18 PM
Is there a time delay on being able to re-load a game. I tried to re-load game 1315698, right after the fact, mostly because I wanted to play out my last mega-goons hand that caused my opponent to quit. It kept generating a dialogue box that said there was an internal error. I'm guessing maybe you have to wait until the next day?
Title: Re: Reloading an old game
Post by: Philip on 17 February 2017, 09:07:34 PM
You shouldn't have to wait for anything longer than at most a few seconds, so this is a bug.