Description of problem: The second level, "Briefcase Message", forces a save and reload which causes the game to crash with the following error message: main.cpp:117: ERROR script failure; error='/usr/share/games/fillets-ng/script/share/Pickle.lua:81: attempt to call a table value stack traceback: /usr/share/games/fillets-ng/script/share/Pickle.lua:81: in function `unpickle_table' ...sr/share/games/fillets-ng/script/share/prog_save.lua:29: in function `script_loadState' [string "script_loadState()"]:1: in main chunk' Path.cpp:44: INFO creating path; path='/home/wart/.fillets-ng/script/options.lua' Version-Release number of selected component (if applicable): fillets-ng-0.7.3-5.fc6.x86_64 How reproducible: Always Steps to Reproduce: 1. Remove the ~/.fillets-ng directory to start fresh 2. Open a terminal and run 'fillets' 3. Work your way to level 2 "Briefcase Message" 4. Lift the pipe and move the nut to enter the workshop. 5. Let the game run on its own while it shows you tips in the workshop. This will trigger an automatic save, then an automatic reload once the level restarts itself. Actual results: The game reloads and exits with the error message above once the fish reenter the workshop. Expected results: The game lets the player continue after the level has restarted from the save point. Additional info: I've tried manually saving and reloading at various points on this level, but still get the same results. I see this problem on both FC6-i386 and FC6-x86_64, but not on FC5-i386.
Created attachment 139905 [details] Fixes table iterations Lua 5.1 is no longer supporting the old way of table iteration. Usage: $ cd $fillets_data/script $ patch -p0 <pairs.patch
Game reloading (F3) is broken in general. The Lua 5.1 has completely deprecated the older way of iteration over tables. The attached patch fixes this particular problem. It could be applied on fillets-data without recompilation.
I tried out the patch and it did indeed fix the problem for me. Thanks!
I'll apply the patch and release a 0.7.1-2 package, which I'll have backported to FC4 and newer, since even FC4 now includes lua 5.1. Does this seem correct?