Jonathan-Greve/GuildWarsMapBrowser
GitHub: Jonathan-Greve/GuildWarsMapBrowser
一款专门解析 Guild Wars 游戏归档的工具,支持地图渲染、资产提取和 Blender 导出。
Stars: 69 | Forks: 14
# Guild Wars 地图浏览器
浏览 Guild Wars 的 .dat 文件。包含的功能:
- 搜索并过滤 .dat 中的内部文件。
- 渲染所有地图(包括游戏中无法访问的地图)。
- 以第一人称视角飞行并探索地图。
- 将完整地图和模型导出并导入到 Blender。
- 查看和导出不同的模型/网格 LOD(细节级别):高、中、低。
- 轻松比较和切换多个 .dat 文件。
- 为 .dat 中的每个文件指定自定义名称以便参考。或者加载其他用户提供的数据(通过 csv 文件共享)。
- 文件的十六进制编辑器查看器。
- 音频文件播放。
- 提取 3D 模型、纹理、渲染地图等。
- 以及更多。
## 如何使用
- 获取 Guild Wars 的 .dat 文件。首次启动 Guild Wars 时,它会自动下载到与 Gw.exe 相同的文件夹中。
你可以在此处下载 Guild Wars:https://www.guildwars.com/en/download。不需要帐户。
- 从 [releases](https://github.com/Jonathan-Greve/GuildWarsMapBrowser/releases) 下载 GuildWarsMapBrowser.exe 并运行它。
- 要导入到 Blender,请参阅 release notes 中的指南或查看 [这篇 reddit 帖子](https://www.reddit.com/r/GuildWars/comments/17wnlj3/guild_wars_map_browser_v50_exporting_to_blender)
## 预览
这是在 GuildWarsMapBrowser 中渲染的 Monastery Overlook 预览(雾已禁用):

以及 Pre-Searing Ascalon City(雾已启用):

这里是一些模型渲染示例:


导入到 Blender 中的 Pre-searing Ascalon City:


导入到 Blender 中的 Golem:

在 Guild Wars Map Browser 中查看纹理:

音频播放和控制:

以任意分辨率(最高 16384x16384)将所有地图导出为 png 或 dds:

选择道具并获取相关信息,隐藏/显示它们,或者在提取为 dds 或 png 之前根据你的喜好清理地图:


## 构建
只需克隆仓库并在 Visual Studio 中打开 .Sln 文件即可构建。建议在 x86 模式下构建。x64 最近才成为可能,但可执行文件的运行速度比 32 位版本慢。
## 贡献
参见 *CONTRIBUTING.MD*
## 致谢:
解压 .dat 文件使用了以下源代码:
- [GWDatBrowser](https://github.com/kytulendu/GWDatBrowser)
- 具体我使用了:AtexAsm.h/cpp, AtexReader.h/cpp, GWUnpacker.h/cpp, xentax.h/cpp
- 感谢 Guild Wars 社区的支持、错误报告以及对本项目的关注。
- 感谢 [Marc](https://github.com/henderkes) 将一些纹理解码函数从 ASM 重写为 C++。
- 感谢 [Laurent Dufresne](https://github.com/ldufr) 逆向工程了 GW 如何从 .dat 文件计算 pathingmap。
标签:3D建模, 3D渲染, Blender, .dat文件解析, Guild Wars, Hex编辑器, HTTP工具, SNI设置, 云资产清单, 地图浏览器, 开源游戏工具, 文件管理器, 模型查看器, 模组工具, 游戏修改, 游戏内资产, 游戏工具, 激战, 纹理提取, 计算机图形学, 资源提取器, 逆向工程