《电竞教父》模组开发简易指南

0 点赞
电竞教父
转载

本指南主要介绍如何制作功能性模组(以下简称插件),并将插件发布到Steam创意工坊。 环境准备 《电竞教父》本体,插件需要依赖游戏文件才能正常编译; 《电竞教父:开发工具》,此工具会和本体一起入库,可在库存的“软件”分类下找到; .NET SDK 9.0+; 用于编写代码的IDE,例如 Visual Studio Code; 您还可以安装 ILSpy,它能浏览电竞教父的反编译代码。 创建工程 首先创建模组工程:

创建完成后进入,双击【模组信息(未创建)】创建模组描述: (此文件用于记录模组内包含的插件列表)

点击【模组 - 添加 - 生成C#工程】创建插件项目; 点击④选择要放置的插件目录;注意此目录为源代码目录,不应放到Content下。 (图中在模组工程的Src目录下,创建了名为MyPlugin的文件夹) 点击【生成项目】创建插件工程:

生成完毕后,开发工具应显示刚创建的插件项,并弹出插件所在的文件夹。

编写插件 插件脚本通常继承ModScrptBase类,此类型提供了以下回调入口: OnModInit(ModInitContext context):插件初始化时调用,可通过context配置自定义选项。 OnSettingObjectLoaded(SettingObjectLoadedContext context):设定源被加载时调用,可在这里修改现有设定或添加新设定。 OnGameEntered(Game game):加载存档或开始新游戏后调用。 OnClubAffairEntered(ClubAffair affair):每次进入俱乐部事务时调用。 OnBattleEntered(Battle battle):进入战斗时调用。 OnBattleExited(Battle battle):战斗结束时调用。 目前大部分插件会先通过OnSettingObjectLoaded回调向游戏添加装备、卡牌等新设定,再在OnGameEntered修改现有赛季规则(如修改英雄池,解锁装备等)。在开发时,推荐使用ILSpy工具查看游戏代码,以便更好地理解游戏内部逻辑。 关于更多例子,请参考社区内的示例。 编译 插件脚本需要编译为DLL文件才能被游戏加载。且生成的DLL文件应该放置在【Content/Dll/程序集名称】下。 如果通过开发工具生成的项目,会自动创建一个发布文件(.pubxml),您可以在控制台输入以下命令进行发布: dotnet publish -p:PublishProfile=PublishToModFolder 或者双击插件目录下的【PublishToModFolder.cmd】文件执行上述命令。 执行后,在【Content/Dll】下确认生成的DLL文件:

测试和发布插件 测试 首先检查开发工具中正确展示了您的插件,且列表中包含编译后的Dll文件:

游戏存档文件夹下有【Mods】目录,用于存放本地模组,可将模组目录(Content)复制到上述Mods目录下,复制后目录结构如下所示:

此时启动游戏,点击【模组】按钮,能看到插件被加载:

注:可以修改复制到Mods文件夹下的Content目录的名称,以避免多个本地模组的名称冲突情况;另外,记得每次编译后复制到此目录。 发布 准备完毕后即可上传模组至创意工坊。步骤如下: - 点击【模组 - 发布】进入发布页;如果之前已经发布,此处可以编辑已发布的信息或上传新内容。 - 首次发布需要输入物品标题、标签、描述、并指定物品图标。 - 如果您不确定上传后的效果,可以先将可见性调整为【隐藏】,上传后到创意工坊页面做进一步修改再作公开。

最后点击发布按钮上传模组。提示发布成功后,可能需要等待几分钟才能在创意工坊看到自己的模组。