I think.
And you can too with this simple hack, which should allow you to load and play your game until an official fix is available for download: Open up the TreeFarm-Lite.zip file, double-click on the Treefarm Lite folder, and extract the "control.lua" file found there. Open control.lua in a text editor, and insert the following four lines (the ones between "BEGIN FIX" and "END FIX"). It doesn't really matter where you put them, but sticking it right before the first "script.on_event" is as good a place as any (as shown below):
Code: Select all
-- BEGIN FIX
script.on_load(function()
seedTypeLookUpTable = {}
populateSeedTypeLookUpTable()
end)
-- END FIX
script.on_event(defines.events.on_player_created, function(event) ...
To explain: SeedTypeLookUpTable is a local variable that needs to be reinitialized when the game is loaded. TF-Lite v0.2.4 changed the script.on_load() event to script.on_configuration_changed(), but according to the wiki, the on_configuration_changed() event doesn't fire every time the game is loaded---only when mods are changed or updated. So, in v0.2.4, loading a game without any changes to mods doesn't fire the on_configuration_changed() event, and doesn't populate SeedTypeLookUpTable. Because SeedTypeLookUpTable doesn't have any values in it, any reference to it results in a nil value---the error we're all seeing. The above hack/fix simply repopulates SeedTypeLookUpTable every time the game is loaded.
Could this cause problems? I don't see how, but it's possible. Is there a better and/or more elegant way to do this? Almost certainly---as I said, I know Lua, but I know nothing about Factorio's implementation of it