目录

📚 模组开发指南

这里将放置有关引擎独立模组开发、制作衍生游戏等相关内容。 如果你有意使用引擎快速上手制作一个游戏,那么这里将是你正确的起点!

📒 前置介绍

《沙盘引擎》核心玩法、机制都是基于引擎世界框架来实现的。 作者额外开发了==内置地图编辑器与基础世界框架==

==引擎本身不提供原生玩法,一切玩法都为模组开发者的创意。==。 还是那个熟悉的例子:引擎是游戏机,模组是游戏

《沙盘引擎》提前编写了绝大多数影响到游戏世界的机制,公开了各类API(接口方法,下面有例子)到脚本层,供模组开发者调用,高可读性使其对开发者很友好。

举个简单的例子(有编程基础可略过)。 设置天气的api,SetWeather,由两个关键的单词组成:Set设置,Weather天气。 于是在代码中可以用:SetWeather(0);来设置天气(很明显括号内则是该api所需参数)。

举例:沙盘引擎内已有相当多内置资源库,同时有角色的拾取、使用、背包等基础逻辑库。这些基础且抽象的内容已经实现了,不需要开发者从头开始造轮子。为了可高度自定义开发,引擎将常用的功能封装为逻辑和抽象接口(比如可自行实现a物品的使用逻辑,如回血、扣血)。

举例2:沙盘引擎内角色拾取并拿出武器射击后,不需要开发者编写射击、命中、扣血等基础物理逻辑(可以修改伤害值等数值配置性内容)。开发者在这完善且纯净的世界,进行创意开发(而非底层编写)。

==(例如:开发者应该考虑使用武器扩展的玩法逻辑,而不需要考虑如何实现射击、光线、掉血等基础物理逻辑)==

📒 特别注意事项

基于Steam的版本更新机制,每当《沙盘引擎》发起更新时,可能会默认替换游戏目录的许多文件,这其中可能包括【官方语言、官方模组、官方地图】等文件及目录。

==如果你有自定义修改需求,请拷贝相关文件,而不是直接修改官方原始文件。==

(注意:此机制仅对《沙盘引擎》官方文件生效,在此范围外的文件不会被更新替换)

📒 模组衍生开发

在通常情况下,任何通过是《沙盘引擎》衍生出的游戏作品,我们习惯称为【“模组”或“衍生作品”】(只是因为语义习惯,作为形式上的“模组”)

==实际情况下,每个“模组”都应该被理解为一个完全独立的“衍生游戏”==。

📘 模组基础机制

就在刚刚,你已经知道了“模组”和“衍生作品”只有文字上的区别。

在物理层面上,一个模组就是一个结构特定的沙盘引擎子文件夹 (参考:《模组目录及文件》) ,==想要建立一个新的游戏模组,克隆\新建一份沙盘引擎模组文件夹是必须的。一切都要从这个文件夹开始==。

文件夹放置于引擎指定模组放置目录,沙盘引擎便会自动识别(前提:必须是符合规则的《沙盘引擎》模组文件夹,有着规定的文件结构,其他结构或空文件夹是不可行的)。

==补充:您可以克隆现有本地其他模组文件夹(有时可能加密,除非知道自己在做什么) 克隆官方空白模组文件夹(纯净模组,推荐)。==

📘 模组文件及流程

建立了一个新的模组(文件夹),意味着一个新的模组已经诞生。

模组作为一个单独的目录,必须放置在Engine\Mods文件夹内,并且以com.studio.gamename(类似项目包名)的格式命名。建议初期便确定名称(这是验证一个模组所有权的方式之一),不建议后期修改

==有关详细开发流程内容,请访问《模组开发流程》。==

📒 引擎资源开发

如果你想了解有关模型导入、外部资源制作、建模及皮肤修改等内容,请访问《引擎资源开发》文档。