0

我正在为游戏 Homeworld 2 编写地图,原版未重新制作(因为我没有也无法重新制作)。

问题是,我在某处的脚本中遇到错误,我很确定这是一个语法错误,因为它使游戏在主菜单之前崩溃(根据经验,其他错误类型通常会在地图加载时导致崩溃)。

我已经尝试使用 codepad.org 并查看了其他类似的站点,但是他们不允许您选择 lua 版本 4(这是 Homeworld 2 使用的),所以我只能假设他们使用 lua 5,这意味着他们的实用程序相当有限的。键盘说尽管如此,我的代码还是不错的。

我浏览了 lua 4 文档,但老实说,我不知道我在寻找什么。

到目前为止,我的编程经验是 c++,以及我从 Homeworld 2 示例地图和快速阅读文档中收集到的一点点 lua。

据我所知,代码应该是好的。我确实记得很久以前听过一些事情,并不是所有的 lua 在 Homeworld 2 中都是有效的,而且 Homeworld 2 对 lua 的功能有额外的限制,尽管我再也找不到它了。

我试图通过搜索 Homeworld 结局来解决这个问题的所有研究都在不断提出重新制作的东西,而不是原来的 Homeworld 2 的东西,并且重新制作已经改变了一些事情。即便如此,我仍然没有找到任何关于 lua 脚本限制的话题。

我制作的脚本基本上是随机选择风格的随机地图(即资源可能均匀分布在整个地图中,集中在一个大领域,或者成群结队,甚至是一个大环。)。

我的第一个版本的地图可以工作,但是凌乱和杂乱无章,所以我重写了整个东西,使其更整洁,更容易调整(即我将许多变量移到顶部,以便可以轻松找到它们)。

理论上,所有核心代码都应该是相同的,只是某些东西移动了,并且注释更好。

我确实将一些代码放入函数中并调用了函数,但我找不到任何说我做错了的东西。

所以我需要的是可以检查 lua 4 代码是否有错误的东西(无论如何都可以在不运行它的情况下找到错误),或者可以清楚地显示 lua 4 如何做与 lua 5 不同的事情。当然,如果有人知道的话关于 Homeworld 2 特定限制的任何信息,那就太好了。

4

1 回答 1

0

如果您有使用 C++ 的经验,那么编译Lua 4.0.1的独立版本应该不是问题(与典型的 C/C++ 项目相比,它非常容易,并且代码库高度符合标准)。这肯定会让您至少检查语法错误(即“无需运行即可发现的错误”)。

于 2017-05-30T10:06:16.923 回答