Open vicky5124 opened 9 months ago
Should be the problem of the user://
path. If it still maps to the Windows %appdata%\Godot\...
then it might not be able to create the save file. There might be some way to change the mapping behavior in wine, but I am not familiar with wine. (For proton it seems to be okay)
Using proton did not fix the issue, it still tried to access a directory that didn't exist. Building and exporting the game from source for Linux natively, and putting the resulting binary in the game folder works well, except tetrominos are bugged.
SCRIPT ERROR: Invalid call. Nonexistent function 'Clear' in base 'Nil'.
at: judge_csp (res://script/judgers/tetris_judger.gdc:111)
Note that this is not an issue when running the game through the Godot 3 IDE, only when exported. I was not able to figure out how to fix this in the exported binary.
Using proton did not fix the issue, it still tried to access a directory that didn't exist. Building and exporting the game from source for Linux natively, and putting the resulting binary in the game folder works well, except tetrominos are bugged.
SCRIPT ERROR: Invalid call. Nonexistent function 'Clear' in base 'Nil'. at: judge_csp (res://script/judgers/tetris_judger.gdc:111)
Note that this is not an issue when running the game through the Godot 3 IDE, only when exported. I was not able to figure out how to fix this in the exported binary.
You need to use Godot with C# support to build the project to judge tetris correctly. Godot native script is way too slower than C# so I rewrote it with C#.
When running the game on Linux through wine, nothing get saved, and everything gets reset when changing menus.
This video shows what happens:
https://github.com/Alith-Game-Studio/WhatTheWitness/assets/8344197/677c32bb-b658-42bc-87d1-52f1fc02b3a8
This behaviour is present in V1.05918 and V1.05, using wine-staging 8.21