[16.36] 2017-12-09_Factorio_0.16.0.lua prevents map loading

Bugs that are actually features.
iostr
Manual Inserter
Manual Inserter
Posts: 4
Joined: Tue Nov 08, 2016 6:15 pm
Contact:

[16.36] 2017-12-09_Factorio_0.16.0.lua prevents map loading

Post by iostr »

Hi,

thanks for an awesome game.

I have installed Factorio 0.16.36 by untarring factorio_alpha_x64_0.16.36.tar.xz on top of an existing install (0.16.27, and older before that). When joining any multiplayer game, I get the following error:
Trying to apply migration 2017-12-09_Factorio_0.16.0.lua (Base Mod) while joining a multiplayer game
cannot-load-downloaded-map.png
cannot-load-downloaded-map.png (2.45 MiB) Viewed 1788 times
Log file attached.
factorio-current.log
(7.07 KiB) Downloaded 101 times
This happens for all servers. I am unable to join any multiplayer game. Single-player works as expected.

However, removing the file factorio/data/base/migrations/2017-12-09_Factorio_0.16.0.lua resolves the issue. Then I am able to join any multiplayer game.

Looking at which older versions I have installed previously, this file comes from one of the following installs:
  • factorio_alpha_x64_0.16.0.tar.xz
  • factorio_alpha_x64_0.16.1.tar.xz
  • factorio_alpha_x64_0.16.4.tar.xz
  • factorio_alpha_x64_0.16.7.tar.xz
My issue is resolved by removing this file. But we all want Factorio to be as polished as possible, obviously.

Suggestion: this file is likely something that was added a long time ago, and should not be used in new installs (it is not present in factorio_alpha_x64_0.16.36.tar.xz). To help players that are upgrading, would it be possible that such old files would not get loaded? For example, would it be possible that instead of loading all files in that dir, that the game would keep a white-list of which files that should be loaded from data/base/migrations ? If having a white-list, any non-whitelisted file would not get loaded. Also, if you want to keep the build dynamic, you could have a hard-coded whitelist, and a unit test that verifies that the whitelist corresponds to the exact list of files of wherever you keep the sources of these migrations (so that if someone adds another migration file and forgets to add it to the whitelist, the unit test would fail).

Anyway, just a suggestion to make life easier for people upgrading from previous alpha versions.

You guys are the best.
chrisgbk
Long Handed Inserter
Long Handed Inserter
Posts: 93
Joined: Mon Jan 02, 2017 4:31 am
Contact:

Re: [16.36] 2017-12-09_Factorio_0.16.0.lua prevents map loading

Post by chrisgbk »

iostr wrote:Hi,

thanks for an awesome game.

I have installed Factorio 0.16.36 by untarring factorio_alpha_x64_0.16.36.tar.xz on top of an existing install (0.16.27, and older before that). When joining any multiplayer game, I get the following error:
Trying to apply migration 2017-12-09_Factorio_0.16.0.lua (Base Mod) while joining a multiplayer game
cannot-load-downloaded-map.png
Log file attached.
factorio-current.log
This happens for all servers. I am unable to join any multiplayer game. Single-player works as expected.

However, removing the file factorio/data/base/migrations/2017-12-09_Factorio_0.16.0.lua resolves the issue. Then I am able to join any multiplayer game.

Looking at which older versions I have installed previously, this file comes from one of the following installs:
  • factorio_alpha_x64_0.16.0.tar.xz
  • factorio_alpha_x64_0.16.1.tar.xz
  • factorio_alpha_x64_0.16.4.tar.xz
  • factorio_alpha_x64_0.16.7.tar.xz
My issue is resolved by removing this file. But we all want Factorio to be as polished as possible, obviously.

Suggestion: this file is likely something that was added a long time ago, and should not be used in new installs (it is not present in factorio_alpha_x64_0.16.36.tar.xz). To help players that are upgrading, would it be possible that such old files would not get loaded? For example, would it be possible that instead of loading all files in that dir, that the game would keep a white-list of which files that should be loaded from data/base/migrations ? If having a white-list, any non-whitelisted file would not get loaded. Also, if you want to keep the build dynamic, you could have a hard-coded whitelist, and a unit test that verifies that the whitelist corresponds to the exact list of files of wherever you keep the sources of these migrations (so that if someone adds another migration file and forgets to add it to the whitelist, the unit test would fail).

Anyway, just a suggestion to make life easier for people upgrading from previous alpha versions.

You guys are the best.
You should have either ran the updater to get to the newest version, or installed fresh. Installing over top leaves files that may have been removed in a certain version. The updater removes these files as it patches.

The game thinks there was a migration that needs to be ran as a result.

You should be able to fix by removing the bin, data, and doc-html folders, and re-extracting.
Rseding91
Factorio Staff
Factorio Staff
Posts: 14591
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: [16.36] 2017-12-09_Factorio_0.16.0.lua prevents map loading

Post by Rseding91 »

chrisgbk wrote:You should have either ran the updater to get to the newest version, or installed fresh. Installing over top leaves files that may have been removed in a certain version. The updater removes these files as it patches.

The game thinks there was a migration that needs to be ran as a result.

You should be able to fix by removing the bin, data, and doc-html folders, and re-extracting.
Correct. That's exactly what this check is telling you; you have extra files you aren't meant to have because you updated the game incorrectly.
If you want to get ahold of me I'm almost always on Discord.
Post Reply

Return to “Not a bug”