Page 1 of 1

[1.1.45] Blueprints lost after up- and then downgrade of base game

Posted: Sun Oct 31, 2021 9:43 pm
by republikanen
After running to latest experimental of the base game, I tried to back the base game to 1.1.42 where my single player game is, but then dispite this I lost all my blueprints when opening the blueprints after downgrade (1.1.45 -> 1.1.42). The game said it was making a backupfile.

But the 1.1.42 BP lib had then been upgraded to 1.1.45 and could not be used any longer. :cry:

I heard on discord that downgradning BPs is not supported.

If downgrading BPs is not supported, then I really think that you should make a backupfile every time the game version change. So going from 1.1.42 to 45. The game should create a "backup-1.1.42" of the blueprints that can be reuse when downgrading the game.


(Note: To solve my problem, I was forced to start using 1.1.45 on my 370 hour modded "Pure Angels" game. I am still not sure if I will have a problem now with this change. I would have preferred to stay on 1.1.42 with all my blueprints.)

Re: [1.1.45] Blueprints lost after up- and then downgrade of base game

Posted: Sun Oct 31, 2021 10:21 pm
by Loewchen
Nothing about this is a bug, 1.1.42 can't use a 1.1.45 library so it makes a backup of it and creates a new file, nothing is lost.

Re: [1.1.45] Blueprints lost after up- and then downgrade of base game

Posted: Sun Oct 31, 2021 10:48 pm
by republikanen
Yes the blueprints for 1.1.42 was lost!!
I cannot run the game with my BPs on 1.1.42 any longer.

Do we players really need to go into the filesystem before doing an upgrade and manually backup the blueprint file so we can return to the original version and play with blueprints again?

I think you did not understand the problem I described first time. Please reread it one time more.

Re: [1.1.45] Blueprints lost after up- and then downgrade of base game

Posted: Mon Nov 01, 2021 4:43 am
by Spanish
I'm having the same problem. Was playing 1.1.45 and reverted to 1.1.42. Steam cloud sync is off. Copied blueprint-storage-backup.dat to blueprint-storage.dat.

Regardless if I start a new game, load an older 1.1.42 map, or join a multiplayer 1.1.42 map, I get this popup.
Loading blueprint storage failed: Map version 1.1.45-0 cannot be loaded because it is higher than the game version (1.1.42-0).. Backing up current storage to <...AppData\Roaming\Factorio\blueprint-storage-backup.dat>
I can play the maps or mp fine. It seems some artifact of 1.1.45 is still around the blueprint check is failing.

I don't recall making any blueprints when in 1.1.45, is that the reason it is failing?

Re: [1.1.45] Blueprints lost after up- and then downgrade of base game

Posted: Mon Nov 01, 2021 8:51 am
by republikanen
Spanish wrote:
Mon Nov 01, 2021 4:43 am
I'm having the same problem. Was playing 1.1.45 and reverted to 1.1.42. Steam cloud sync is off. Copied blueprint-storage-backup.dat to blueprint-storage.dat.

Regardless if I start a new game, load an older 1.1.42 map, or join a multiplayer 1.1.42 map, I get this popup.
Loading blueprint storage failed: Map version 1.1.45-0 cannot be loaded because it is higher than the game version (1.1.42-0).. Backing up current storage to <...AppData\Roaming\Factorio\blueprint-storage-backup.dat>
I can play the maps or mp fine. It seems some artifact of 1.1.45 is still around the blueprint check is failing.

I don't recall making any blueprints when in 1.1.45, is that the reason it is failing?
Due to this "bug" you now must choose between:
  1. Run on 1.1.42 with an empty BP book, or...
  2. Run on 1.1.45 with your old BP book
To do 2 you need to do as I did:
  1. Stop the game
  2. In your factorio folder: copy the file "blueprint-storage-backup.dat" to "blueprint-storage.dat"
  3. In Steam: Upgrade factorio game to 1.1.45
  4. Start the game. Now your BP book should be back.
That the game forces users to have knowledge of this procedure 2 a-d (which they do not) is really user unfriendly. Really something they should fix.

Re: [1.1.45] Blueprints lost after up- and then downgrade of base game

Posted: Mon Nov 01, 2021 5:18 pm
by Silari
republikanen wrote:
Mon Nov 01, 2021 8:51 am
That the game forces users to have knowledge of this procedure 2 a-d (which they do not) is really user unfriendly. Really something they should fix.
The fix is to not downgrade your game, it's not supported. They've already done more than they needed to by backing up the old one.

Re: [1.1.45] Blueprints lost after up- and then downgrade of base game

Posted: Mon Nov 01, 2021 5:42 pm
by republikanen
Silari wrote:
Mon Nov 01, 2021 5:18 pm
republikanen wrote:
Mon Nov 01, 2021 8:51 am
That the game forces users to have knowledge of this procedure 2 a-d (which they do not) is really user unfriendly. Really something they should fix.
The fix is to not downgrade your game, it's not supported. They've already done more than they needed to by backing up the old one.
No that is not the case.

The backup occurs when downgrading the game. It is the 1.1.45 version of the BP book that is backed up when moving back to 1.1.42. The 1.1.42 version of the BP book is never backed up.

Re: [1.1.45] Blueprints lost after up- and then downgrade of base game

Posted: Mon Nov 01, 2021 6:52 pm
by kevinma
Yes, it is an issue. I can't play the stable version (1.1.42) with my blueprint books once I have upgrade to latest version (1.1.45).

If you don't have a lot of bps, you can put all your bps in a book, export it as a string. Then downgrade to 1.1.42 and import it.

But I have hundreds of books, It is impossible to import in this way.

Re: [1.1.45] Blueprints lost after up- and then downgrade of base game

Posted: Mon Nov 01, 2021 9:15 pm
by Spanish
Thanks kevin,

Just to clarify the problem then because I've been freely going up and down the version ladder for the last six months without incident to my blueprints. Some of us play multiplayer long maps and the great advance of 'fast releases' means mods don't/can't keep up and thus dedicated servers can't just freely update without a modicum of research that something won't break.

It seems that the problem is that backups should be done on the upgrade, not on downgrade. It's not a big file, compared to the desync reports that apparently stay around forever. I don't see why there is not a 'blueprint-storage-x.y.z.dat' format. Ideally if a bp isn't supported then grey it out, that is the best alternative without version shenanigans.

That said, what exactly is the point of a semantic versioning system if the game breaks on a patch version and then that causes no reasonable way back?

Here is a the (current) key to a working fix for those of us with a large blueprint library:
https://github.com/asheiduk/factorio-blueprint-decoder

You want to 'decode' your blueprint.dat to json, then use the 'encode-export-string' to get it into a base64 string that you can manually copy/paste into the import string function of the game (another barbaric interface.) This leaves you with a singular book of all your other books inside and that is how you must live your life unless you wish to unpack it manually. Maybe this is the way from now on. On book to rule them all except the next time this happens you will have two layers of books to go through to get to the meat of your library (then three, four, five and so on with each bp library shenanigans.)

Re: [1.1.45] Blueprints lost after up- and then downgrade of base game

Posted: Tue Nov 02, 2021 12:51 am
by kevinma
Spanish wrote:
Mon Nov 01, 2021 9:15 pm
Here is a the (current) key to a working fix for those of us with a large blueprint library:
https://github.com/asheiduk/factorio-blueprint-decoder
I just have a try, it fails. Maybe i have some blueprint of mods.

README says that 'So all vanilla stuff should work but mods can turn up yet unknown fields.'

Code: Select all

File "decode", line 317, in expect
    raise ParseError(f"expected {expected:#04x} but got {actual:#04x} at position {position} ({position:#x})")
__main__.ParseError: expected 0x00 but got 0x01 at position 3611558 (0x371ba6)

Re: [1.1.45] Blueprints lost after up- and then downgrade of base game

Posted: Tue Nov 02, 2021 3:04 am
by Spanish
I have blueprints of mods like void power and warehouses from past games we've played and it handled it fine. When you import the string it gives and error but the bps still import. I don't think I have any bob/angels bps. You might have to selectively dump some in game in 1.1.45 then try it again.

Re: [1.1.45] Blueprints lost after up- and then downgrade of base game

Posted: Tue Nov 02, 2021 12:15 pm
by asheiduk
kevinma wrote:
Tue Nov 02, 2021 12:51 am
Spanish wrote:
Mon Nov 01, 2021 9:15 pm
Here is a the (current) key to a working fix for those of us with a large blueprint library:
https://github.com/asheiduk/factorio-blueprint-decoder
I just have a try, it fails. Maybe i have some blueprint of mods.

README says that 'So all vanilla stuff should work but mods can turn up yet unknown fields.'

Code: Select all

File "decode", line 317, in expect
    raise ParseError(f"expected {expected:#04x} but got {actual:#04x} at position {position} ({position:#x})")
__main__.ParseError: expected 0x00 but got 0x01 at position 3611558 (0x371ba6)
If you open an issue in GitHub and provide me the blueprint file I can try to fix that :-)

Re: [1.1.45] Blueprints lost after up- and then downgrade of base game

Posted: Tue Nov 02, 2021 5:05 pm
by kevinma
If you open an issue in GitHub and provide me the blueprint file I can try to fix that :-)
I've opened an issue. Thanks for your work.

https://github.com/asheiduk/factorio-bl ... r/issues/6