我正在为一款游戏制作模组,所有主要程序文件都是用 Lua 编写的,但是当我去编辑它们时,我看到的只是一堆乱码。您知道我做错了什么吗?
答案1
答案这个问题解释了你正在看什么。你分享的图片显示你的文件以转义字符(对角线上的“E”、“S”和“C”)开头,后面跟着 ASCII 中的“Lup”。这是放置在 Lua 字节码文件顶部的 4 字节签名,以便于识别。
字节码不是源代码,而是被翻译(程序员称之为“编译”)成更高效形式的代码,以便进行解释。计算机必须做一些工作才能执行您编写的 Lua 代码:编译会完成大量工作(每次运行代码时这些工作都会相同),并以紧凑的形式保存结果。该形式是为计算机而非人类设计的,因此不易阅读或编辑。字节码的数量几乎与解释型编程语言的数量一样多,但指令通常为单个字节(紧凑且高效),这就是其名称的由来。
您需要找到 Lua 源代码,以便进行更改,然后重新编译以创建新的字节码。实际上,一旦您获得源代码,任何文本编辑器都应该可以编辑源代码 - 有大量的文本编辑器、IDE 等可以完成这项工作(即使是您图片中的那个)。
我建议花一些时间回答一下上面相关的问题——我认为这是值得的!