meta data for this page
📚 差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
developer [2024/05/01 03:11] – vegetaz | developer [2025/07/24 17:00] (当前版本) – 移除 bibiboxs | ||
---|---|---|---|
行 1: | 行 1: | ||
- | < | ||
- | # 模组开发指南 | ||
- | > 这里将放置有关引擎独立模组开发、制作衍生游戏等相关内容。 | ||
- | > 如果你有意使用引擎快速上手制作一个游戏,那么这里将是你正确的起点! | ||
- | - **注意:此命名空间下,内容是基于“独立游戏开发(衍生作品)”来创作、编写,其中可能会有一些技术名词。** | ||
- | - **举个简单例子:引擎相当于一个游戏机,模组相当于游戏机里的游戏** | ||
- | - **再举个更贴近一点的例子:引擎相当于一个演员、道具、场景齐全的舞台,模组相当于一个带着具体道具的完整剧本** | ||
- | |||
- | <script type=" | ||
- | {{indexmenu>: | ||
- | </ | ||
- | |||
- | ## 前置介绍 | ||
- | |||
- | > 《沙盘引擎》除了内置地图编辑器与基础世界框架外,主要的核心玩法、机制都是基于**引擎世界框架**来实现的。 | ||
- | > | ||
- | > **==引擎本身没有原生默认的玩法提供,一切玩法都基于模组开发者的创意。==**。 | ||
- | |||
- | 《沙盘引擎》提前编写了绝大多数**影响到游戏世界的机制**,同时将各类API公开到脚本层,以模组供开发者进行调用,并且绝大多数代码对开发者很友好。 | ||
- | |||
- | 同时,沙盘引擎并不是传统意义上的“游戏引擎”,而是**基于世界沙盘**模式下的一种==**可高度自定义的创意玩法引擎**==。 | ||
- | |||
- | 也就是说,沙盘引擎**也许并不完全适用于制作任何类型游戏**,引擎会在一定的基础上**提前实现好一些逻辑**,在保证**容易上手和高度自定义**的基础上,由开发者**按照自己的想法进行创作**。 | ||
- | |||
- | > **举例:**沙盘引擎内存在非常多内置资源库,以及角色的拾取、使用、背包等基础逻辑库,引擎已经实现了这些基础且抽象的内容,不需要由开发者从头开始造轮子,同时为了可高度自定义的开发方式,引擎并没有将这些功能完全固定预制,而是将常用功能留出了逻辑和抽象接口。 | ||
- | > | ||
- | > **举例2:**沙盘引擎内可能有一些武器、枪支物品,当通过API让某个角色拾取并拿出武器射击后,不需要开发者再去编写射击、命中、扣血的逻辑(但可以修改伤害值,已达到自定义),简单来说,日常生活中常见的很多逻辑已经写好,相当于给予开发者一个相对完善且纯净的世界,开发者要在这样的情况下进行创意开发而非底层编写。 | ||
- | |||
- | ==(例如:开发者应该考虑使用武器扩展的玩法逻辑,而不需要考虑如何实现射击、光线、掉血等逻辑)== | ||
- | |||
- | ## 特别注意事项 | ||
- | > **基于Steam的版本更新机制**,每当《沙盘引擎》发起更新时,可能会默认替换游戏目录的许多文件,这其中可能包括**【官方语言、官方模组、官方地图】**等文件及目录。 | ||
- | > | ||
- | > ==如果你有自定义修改需求,请拷贝相关文件,而不是直接修改官方原始文件。== | ||
- | |||
- | - **示例# | ||
- | - **示例# | ||
- | |||
- | **(注意:此机制仅对《沙盘引擎》官方文件生效,在此范围外的文件不会被更新替换)** | ||
- | |||
- | ## 模组衍生开发 | ||
- | 在通常情况下,任何通过是《沙盘引擎》衍生出的游戏作品,我们习惯称为**【“模组”或“衍生作品”】(只是因为语义习惯,作为形式上的“模组”)**。 | ||
- | |||
- | ==实际情况下,每个“模组”都应该被理解为一个完全独立的“衍生游戏”==。 | ||
- | |||
- | ### 模组基础机制 | ||
- | |||
- | > 就在刚刚,你已经知道了“模组”和“衍生作品”只有文字上的区别。 | ||
- | |||
- | 在物理层面上,一个模组就是一个结构特定的**沙盘引擎子文件夹** | ||
- | (参考:[《模组目录及文件》](developer/ | ||
- | ,==想要建立一个新的游戏模组,克隆\新建一份**沙盘引擎模组文件夹**是必须的。一切都要从这个文件夹开始==。 | ||
- | |||
- | 文件夹放置于**引擎指定模组放置目录**,沙盘引擎便会自动识别(前提:必须是符合规则的《沙盘引擎》模组文件夹,有着规定的文件结构,其他结构或空文件夹是不可行的)。 | ||
- | |||
- | ==*补充:您可以克隆现有本地其他模组文件夹(有时可能加密,除非知道自己在做什么)**或** 克隆官方空白模组文件夹(纯净模组,推荐)*。== | ||
- | |||
- | ### 模组文件及流程 | ||
- | |||
- | > 建立了一个新的模组(文件夹),意味着一个新的模组已经诞生。 | ||
- | |||
- | 模组作为一个单独的目录,必须放置在`Engine\Mods`文件夹内,并且以`com.studio.gamename`(类似项目包名)的格式命名。建议初期便确定名称(这是验证一个模组所有权的方式之一),**不建议后期修改**。 | ||
- | |||
- | ==有关详细开发流程内容,请访问[《模组开发流程》](developer/ | ||
- | |||
- | ## 引擎资源开发 | ||
- | 如果你想了解**有关模型导入、外部资源制作、建模及皮肤修改等**内容,请访问[《引擎资源开发》](extend " | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | </ |