Die Bugs beziehen sich nur auf die aktuellen Betas. Wenn ich in der mod.lua den Pfad abfrage, funktioniert es, zumindest unter Windows. Von Usern mit anderen OS habe ich aber auch nie Reklamationen bekommen. Meine Aufrufe führe ich von GameScripts aus durch. Schau dir ggf. mal die GameScrpts zu SettingsSaver oder Track-/Street-Modifier an. Hier nur ein kleiner Auszug aus settings_saver.lua:
local guiInit = function ()
local param = {
saverPath = string.sub(wkss.splitFileName(debug.getinfo(1, 'S').source), 1, -20) .. "scripts/", -- script path of this mod
}
game.interface.sendScriptEvent("wk_settings_saver_protocol", "settingsSaverPath", param)
end
Bislang wurde hier der komplette Pfad geliefert, jetzt eben nur noch der Teil ab res/. Dass aus einem ZIP oder irgendeiner anderen gekapselten Struktur geladen wird, halte ich für höchst wahrscheinlich, ich habe diesbezüglich bereits bei UG angefragt. Die Lösung könnte sein, den Pfad in der mod.lua abzufragen, wo es nach wie vor funktioniert, und ihn dann ans GameScript durchzureichen. Das könnte entweder über einen GameScript-Modifier oder (umständlich, aber offiziell erlaubt) oder über einen eigenen Eintrag in der game.-Tabelle (elegant, aber nicht dokumentiert und von daher ein wenig riskant) bewerkstelligt werden, z. B. game.wkss_mypath. Eine andere Lösung fällt mir nicht ein. Falls jemand eine hat ...
Das Problem dürfte generell Mods betreffen, die irgendwelche Pfade außerhalb von mod.lua bzw. innerhalb von res/... abfragen.