(Lua)游戏脚本是什么意思?


9

我读过Lua通常用于嵌入式脚本,尤其是用于脚本的游戏。我发现很难想象它是如何使用的。您能描述使用它的原因以及针对哪些功能以及针对哪些受众吗?

这个问题不是专门针对Lua的,而是与Lua脚本目的类似的任何嵌入式脚本。

它用于最终用户进行自定义调整吗?它是否用于游戏开发人员以加快游戏逻辑(关卡,AI等)的创建?因为脚本可以更快,它是否用于编写游戏框架代码?

基本上,我想知道这种脚本用法在普通配置和框架逻辑之间有多深。以及完成了多少脚本。几条配置线还是相当多的?


Answers:


11

游戏引擎中的脚本语言可以以更高层次的解释方式公开您的游戏引擎。

以《天际》为例。您会注意到,发生了许多任务和交互,其中一些任务内置了相当令人印象深刻的逻辑,例如,在某个场景中,守卫对您接近某个物品做出反应。这些都是很难以纯数据格式表示的,因此,任务和自定义行为通常表示为脚本。

还需要考虑许多实用性-创建这些脚本的游戏设计师通常比游戏引擎编码人员具有更高的抽象水平;他们不想担心内存分配等问题。脚本语言非常适合他们,而使用LUA,他们通常会调用引擎的高级外观。您也不想每次想在脚本中调整分钟属性时都重新编译游戏。

最重要的是,它们使您可以轻松进行调试,修改以及您提到的所有其他不错的事情。


3

它用于最终用户进行自定义调整吗?

它可以用于各种各样的目的,从配置到实现游戏的大部分高端逻辑,例如,它取决于游戏,但是Lua只是嵌入式脚本。人们可以根据需要使用任意数量的东西。


1
有些游戏允许最终用户实现自己的脚本。除了公共API外,用户还可以实现对游戏事件做出反应的插件,小部件等。
Laiv

1
我在想MMO角色扮演游戏(
Laiv,

1
@Laiv IMO MMORPG是实现起来似乎很有趣的事情之一,但是类似于长时间玩它们,它变得如此艰辛。游戏世界通常必须保持静态,或者游戏主持人必须积极参与。我认为离线游戏是如此有趣,因为您可以通过一个故事来终结一个动态的世界。

1
不,不。多年前,我曾经在线玩过Allods。该游戏提供了一些API,供游戏玩家实现附加组件和小部件。只是想通过一些示例来扩大您的答案:-)
Laiv

1
@莱夫哦,我明白了!我正在删除帐户,但我修改了答案以使其更短,更美观。在此过程中,我丢失了一些信息,但是我先前的编辑谈到了我个人如何使用脚本。现在,我正在尝试从答案中删除所有个人信息。

2

原始游戏程序员以外的其他人也可以使用它来修改或扩展游戏逻辑。这样的人可能是非技术人员,例如游戏设计师或最终用户(游戏玩家)。

脚本通常是高级语言,因此Lua比C ++更容易。用脚本编写的代码通常可以在不重新编译主应用程序(游戏引擎)的情况下进行修改,这对于游戏设计人员快速调整游戏场景很有用。

PS:最好在gamedev.stackexchange.com上问这个问题

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.