PlayFirst游戏GeminiLost的Lua 5.0编译脚本反编译问题求助
关于《Gemini Lost》Lua脚本反编译失败的问题
我正在处理PlayFirst的游戏《Gemini Lost》,该游戏的assets.pfp文件可通过BMS脚本提取。提取后得到的是Lua 5.0编译的二进制Lua脚本,但尝试用ChunkBake、luadec、unluac等工具反编译时全部报错,具体情况如下:
ChunkSpy:能识别文件大部分内容,但末尾报错,错误信息为:
ChunkSpy:392: bad argument #1 to `len' (string expected, got nil)ChunkBake:报错信息如下:
ChunkBake: A Lua 5 binary chunk assembler Version 0.7.0 (20050512) Copyright (c) 2005 Kein-Hong Man The COPYRIGHT file describes the conditions under which this software may be distributed (basically a Lua 5-style license.) * Run with option -h or --help for usage information ChunkBake:260: ok.lua:1: Error: unknown character or control characterluadec:报错信息:
luadec.exe: bad code in ok.luaunluac:报错的栈追踪信息:
Exception in thread "main" java.lang.NullPointerException: Cannot invoke "unluac.decompile.Op.ordinal()" because the return value of "unluac.decompile.Code.op(int)" is null at unluac.decompile.ControlFlowHandler.find_branches(ControlFlowHandler.java:344) at unluac.decompile.ControlFlowHandler.process(ControlFlowHandler.java:118) at unluac.decompile.Decompiler.decompile(Decompiler.java:136) at unluac.Main.main(Main.java:98)
我现在搞不清问题出在哪——是解压.pfp文件时出了错误,还是需要修改所有提取出的Lua文件?我提供了一份.lua文件示例。
内容的提问来源于stack exchange,提问作者Jean Pereira
相关产品推荐
相关产品推荐

