Upon attempting to load the saved game (by clicking "Load"), I was instead presented with the following popup window: and factorio-current.log ended with the following lines:
Code: Select all
69.823 Error AppManagerStates.cpp:1398: The mod LTN - Logistic Train Network caused a non-recoverable error.
Please report this error to the mod author.
Error while running event LogisticTrainNetwork::on_load()
Error when running interface function PickerDollies.add_blacklist_name: __PickerDollies__/control.lua:33: attempt to index field 'blacklist_names' (a nil value)
stack traceback:
__PickerDollies__/control.lua:33: in function <__PickerDollies__/control.lua:32>
stack traceback:
__LogisticTrainNetwork__/script/init.lua:238: in function 'registerEvents'
__LogisticTrainNetwork__/script/init.lua:255: in function <__LogisticTrainNetwork__/script/init.lua:246>
stack traceback:
[C]: in function 'call'
__LogisticTrainNetwork__/script/init.lua:238: in function 'registerEvents'
__LogisticTrainNetwork__/script/init.lua:255: in function <__LogisticTrainNetwork__/script/init.lua:246>
I have created and attached a minimal save file test case ("only" 1.4 MB) in case you wish to reproduce the error for yourself. I created it with LTN 1.10.8 and PickerDollies 1.0.0 (and their dependencies, and Creative Mod). Attempting to load it with LTN 1.10.9 and PickerDollies 1.0.1 (not 1.0.2) fails with the described error.
Since the error happened within PickerDollies's control.lua due to that code attempting to index into an uninitialized table, and I couldn't see anything obviously broken-looking in LTN's calls to PickerDollies's new add_blacklist_name function, I first submitted a bug report for PickerDollies on the mod portal here: https://mods.factorio.com/mod/PickerDol ... 000d93a444
I was able to fix the issue either by adding in a bit of initialize-if-not-initialized code to my local copy of PickerDollies 1.0.1 or by adding PickerDollies >= 1.0.1 as an optional dependency to my local copy of LTN 1.10.9.
Nexela patched PickerDollies (so, now at version 1.0.2) adding initialize-if-not-initialized sanity checks to all 3 new interface functions, and replied, suggesting a third possible fix, that would be a change to LTN using the on_configuration_changed function.
With PickerDollies 1.0.2, the error no longer happens, however I wanted to report this to you (Optera) both because I said I would and in case you judge that a change to LTN would be the proper way to prevent the error.