使用短LUA脚本在BizHawk上崩溃
问题描述:
在BizHawk(它是模拟器)上的lua控制台上使用此非常短的脚本时,LUA控制台和BizHawk都同时崩溃。 我想知道这个错误是来自我的脚本还是来自BizHawk,她的脚本是:(它应该做的是检查玩家是否在特定时间段内移动[TimeoutConstant],如果他是[ 。因为他已经死了,卡住或AFK]脚本加载保存的状态称为文件名,并再次启动这里的脚本:使用短LUA脚本在BizHawk上崩溃
Filename = "yolo.state"
TimeoutConstant = 80
rightmost = 0
timeout = TimeoutConstant
function initializeRun()
savestate.load(Filename)
rightmost = 0
timeout = TimeoutConstant
end
function getPositions()
marioX = memory.read_s16_le(0x94)
marioY = memory.read_s16_le(0x96)
local layer1x = memory.read_s16_le(0x1A);
local layer1y = memory.read_s16_le(0x1C);
screenX = marioX-layer1x
screenY = marioY-layer1y
end
initializeRun()
while true do
getPositions()
if marioX > rightmost then
rightmost = marioX
timeout = TimeoutConstant
end
if timeout <= 0 then
initializeRun()
end
timeout = timeout - 1
end
答
我承担起“撞车”你的意思是“冻结”,这是不是在所有相同因为你的脚本将模拟器变成了一个繁忙的循环,所以你没有做任何事情来提高模拟器的运行时间。脚本的最后两行需要是:
emu.frameadvance();
end
顺便说一句,模拟器lua脚本,脚本游戏的名称是必不可少的信息。
如果您可以在问题中包含代码,而不是作为图片,那将会非常棒。 –
她是一个patebin链接:http://pastebin.com/mSw35diM –