Lua-Skript kann auf neuem Windows 10-Gerät keine Dateien finden

Lua-Skript kann auf neuem Windows 10-Gerät keine Dateien finden

Ich habe versucht, mit einigen Freunden ein kooperatives Emulator-Erlebnis einzurichten (Emu-StallUndBizhawk-Kooperationsind zwei verschiedene, die beide die gleichen Symptome aufweisen). Auf meinem alten Computer funktionierten der Download und die Ausführung problemlos. Ich habe jedoch einen neuen Computer gebaut und bin von Windows 7 auf Windows 10 umgestiegen (nicht sicher, ob das relevant ist).

Wenn ich jetzt versuche, die Skripte auszuführen, die Lua verwenden, erhalte ich Ausnahmen, die besagen, dass meine Module nicht gefunden werden können:

NLua.Exceptions.LuaScriptException: [string "main"]:35: module 'bizhawk-co-op\sync' not found:
    no field package.preload['bizhawk-co-op\sync']
    no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop'
    no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop\modes'
    no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop\pl'
    no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop\socket'
    no file '.\bizhawk-co-op\sync.dll'
    no file 'C:\Users\Kevin\Desktop\BizHawk-2.3\bizhawk-co-op\sync.dll'
    no file 'C:\Users\Kevin\Desktop\BizHawk-2.3\loadall.dll'

Die sync.luaDateien scheinen zu existieren, aber es scheint stattdessen gezielt nach einer DLL-Datei zu suchen. Ich habe das Internet gründlich durchsucht und kann keine ähnlichen Probleme finden.

Es ist erwähnenswert, dass ich mit einer eigenständigen Lua-Installation, die ich gerade erstellt habe, dasselbe Problem habe:

C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1>lua coop\coop.lua
lua: coop\coop.lua:1: module 'pl.class' not found:
        no field package.preload['pl.class']
        no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop'
        no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop\modes'
        no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop\pl'
        no file 'C:\Users\Kevin\Desktop\Randomizer Stuff\Snes 9x COOP\coop-full-1key14-1\coop\socket'
        no file 'C:\Users\Kevin\Desktop\lua-5.3.5.tar\lua\bin\pl\class.dll'
        no file 'C:\Users\Kevin\Desktop\lua-5.3.5.tar\lua\bin\..\lib\lua\5.3\pl\class.dll'
        no file 'C:\Users\Kevin\Desktop\lua-5.3.5.tar\lua\bin\loadall.dll'
        no file '.\pl\class.dll'
        no file 'C:\Users\Kevin\Desktop\lua-5.3.5.tar\lua\bin\pl.dll'
        no file 'C:\Users\Kevin\Desktop\lua-5.3.5.tar\lua\bin\..\lib\lua\5.3\pl.dll'
        no file 'C:\Users\Kevin\Desktop\lua-5.3.5.tar\lua\bin\loadall.dll'
        no file '.\pl.dll'
stack traceback:
        [C]: in function 'require'
        coop\coop.lua:1: in main chunk
        [C]: in ?

Antwort1

Anscheinend ist das eine wirklich schlechte Methode, um zu zeigen, dass Ihr PATH durcheinander ist. Insbesondere schien eine Umgebungsvariable namens LUA_PATH etwas zu überschreiben, was sie eigentlich tun wollte. Igitt.

verwandte Informationen