DSMapStudio
适用于艾尔登法环、只狼、黑暗之魂系列、血源诅咒和恶魔之魂(PS3版)的模组工具套件
关于DS Map Studio:
DS Map Studio是一款独立的集成模组工具,适用于现代From Software游戏,包括恶魔之魂(PS3版)、黑暗之魂系列、血源诅咒、只狼和艾尔登法环。目前包含地图编辑器、游戏参数编辑器和用于编辑游戏内文本的文本编辑器。
系统要求
- Windows 7/8/8.1/10/11(仅64位)。Linux安装可能通过wine 9+运行。你可能需要配置以访问Vulkan 1.3和正确的GPU。
- Visual C++ Redistributable x64 - 如果程序启动时崩溃,请安装此项(https://aka.ms/vs/16/release/vc_redist.x64.exe)
- DSMapStudio不再需要.NET安装。
- 对于地图编辑器,需要支持Vulkan 1.3的显卡,并安装最新的显卡驱动:NVIDIA Maxwell(900系列)及更新或AMD Polaris(Radeon 400系列)及更新。Windows 7驱动不支持这些功能,你需要使用低要求版本的exe。
- 对于地图编辑器,Intel显卡目前似乎无法正常工作。目前你需要一个独立的NVIDIA或AMD显卡。对于参数和文本编辑器,你可以使用低要求版本的exe。
- 如果修改DS3/BB/Sekiro/ER/AC6的地图,需要4GB(建议8GB)显存,因为地图尺寸巨大。
基本使用说明
游戏说明
- 黑暗之魂准备版:在使用Map Studio之前,游戏必须使用UDSFM解包(https://www.nexusmods.com/darksouls/mods/1304)。
- 黑暗之魂重制版:游戏默认已解包,无需其他工具。
- 黑暗之魂2 原罪学者:使用UXM(https://www.nexusmods.com/sekiro/mods/26)解包游戏。不支持原版黑暗之魂2。
- 黑暗之魂3和只狼:使用UXM提取游戏文件。
- 恶魔之魂:如果使用模拟器,请确保禁用RPCS3文件缓存以测试更改。
- 血源诅咒:任何有效的完整游戏转储都应该可以直接使用。注意,某些转储会将基础游戏(1.0版)和补丁分开,因此在使用map studio之前应将补丁合并到基础游戏之上。目前你需要自行将模组安装到主机上。
- 只狼:使用UXM提取游戏文件。
- 艾尔登法环:使用UXM Selective Unpack(https://github.com/Nordgaren/UXM-Selective-Unpack)提取游戏文件。建议解包所有内容,但至少需要`map`、`asset`、`chr`和`msg`目录用于基本编辑器使用。
- 装甲核心6:使用UXM Selective Unpack(https://github.com/Nordgaren/UXM-Selective-Unpack)提取游戏文件。建议解包所有内容,但在添加地图支持之前,至少需要`msg`目录用于基本编辑器使用。
模组项目
Map studio基于我称之为模组项目的概念运作。这些通常存储在与基础游戏分开的目录中,所有修改的文件都会保存在那里,而不是覆盖基础游戏文件。建议的工作流程是为你的相应游戏安装mod engine,并在modengine.ini中将modoverridedirectory设置为你的模组项目目录。这样你就不必修改基础游戏文件(并且可以同时处理多个模组项目),你可以通过压缩项目目录并上传来轻松分发模组。
游戏限制
- 黑暗之魂重制版:目前无法在视口中渲染地图碰撞。
- 只狼:目前无法在视口中渲染地图碰撞和导航网格。
- 艾尔登法环:目前无法在视口中渲染地图碰撞和导航网格。
- 装甲核心6:目前无法打开地图。
常见问题
问:DSMapStudio能否像DSTools那样导出模型/地图为FBX格式?
答:目前不行。DSMapStudio当前没有导入或导出任何资产的功能,不过计划最终实现资产管线。
问:为什么图形要求如此高?你们会再次支持DX11吗?
答:考虑到以良好性能渲染DS3、只狼和艾尔登法环的地图的高要求,DSMapStudio的设计围绕现代Vulkan和使用较新的GPU功能,以实现GPU驱动的渲染。不幸的是,这意味着DSMapStudio需要相对现代的GPU,支持较新的Vulkan功能(NVIDIA Maxwell或AMD Polaris及更新)。我们意识到这对于只想使用参数编辑器的人来说并不理想,如果需求足够,我们可能会考虑一个后备渲染器来支持仅参数编辑器的使用。
问:真正的自定义地图是否可能实现?
答:真正的自定义地图是一个最终目标,但在达到那里之前还有很多障碍需要克服。目前DSMapStudio没有任何类型的资产管线来导入自定义资产,但其他社区工具可能能够创建可在DSMapStudio和游戏中使用的资产。
问:为什么你们放弃了DSTools?
答:DSTools在创建许多模组方面表现良好,至今仍在积极使用。然而,Unity数据结构与Souls数据结构的绑定变得非常混乱和有缺陷,导致用户体验非常不直观(即大多数用户无法直观地知道DSTools实际支持哪些Unity操作进行导出)。Unity也没有为其许多有用的子系统(如光照贴图生成器和导航网格生成器)提供足够低级的API,因此使这些子系统适用于黑暗之魂系列从痛苦到不可能。
最大的问题是Unity的重量级特性以及导入资产时的糟糕性能。所有的黑暗之魂资产都必须导入到Unity中,这需要大量空间,而且导入本身可能需要10多分钟才能完成一个地图。所有这些原因导致我决定从头开始制作一个编辑器,该编辑器A)高度专注于Souls游戏,并为编辑它们设计用户界面,B)通过直接加载游戏资产而无需存储中间转换,实现超快的加载时间。Map Studio仍然缺少DSTools + Unity支持的一些更高级功能,但目前核心体验要好得多,地图加载时间以秒而不是分钟计算。
致谢
- Katalash - 项目负责人和原作者
- philiquaz - 集成参数编辑器的主要维护者
- george - 核心维护者和贡献者
- thefifthmatt - SoapstoneLib的作者,该库允许跨工具功能
特别感谢
- TKGP - 制作了Soulsformats
- Pav
- Meowmaritus - 制作了DSAnimStudio,DSMapStudio loosely基于此
- PredatorCZ - 完全逆向工程了样条压缩动画
- Horkrux - 逆向工程了非PC平台纹理使用的头部和交织
- Vawser - DS2/3文档
使用的库
- Soulsformats
- Newtonsoft Json.NET
- 经过大量修改的Veldrid用于渲染后端
- Vortice.Vulkan绑定用于Vulkan
- ImGui.NET用于UI
- HavokLib的一小部分,特别是样条压缩动画解压缩器,为C#进行了适配
- Recast用于导航网格生成
- Fork Awesome字体用于图标