script - Mini-World-Dev-Org/Mini-World-Wiki GitHub Wiki

游戏脚本基础

开发者脚本以 lua 为基础,结合迷你世界,它提供了 API 借口,高级游戏机制和玩法需要依靠脚本为基础。
触发器则是开发者脚本的可视化应用,其目的是降低开发门槛,但是由于它采用严格且复杂的调用机制,它的效率相比纯脚本极低。

脚本解释器版本为 lua51 ,开发过程中必须注意不能使用比 lua51 更高版本的 lua 语法,例如位运算。
这部分的 wiki 中的内容主要来源于 MiniExtend 和其中的 core.lua ,建议阅读完文档后去理解 core.lua

定义

  • $genv

$genv 是脚本的内部环境表,为了与 lua 表示符区分使用 "$" 前缀。
其地址与标准 lua 的 _G 类似,其实际上就是脚本的初始环境。
$genv 含有上万个键值。
称之为 &genv 的原因是游戏内部使用 "genv" 作为标识符在存在多个环境时表示它们自己的环境。

  • &_GScriptFenv_

&_GScriptFenv_ 是开发者脚本的环境(实际上不完全是),例如在开发者脚本中 _G 就是 &_GScriptFenv_
称之为 &_GScriptFenv_ 的原因是 &genv["_GScriptFenv_"] 就是 &_GScriptFenv_

使用脚本

如果你还没有使用过迷你世界脚本的话,参见假 wiki,这里不再赘述。

脚本与标准 lua 的差异

脚本环境

优化脚本环境


最后更新: 2022/1/2