news 2026/8/24 17:02:30

暗黑破坏神2角色存档编辑器 Diablo Edit2:免费保姆级教程,从编译到改档全流程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
暗黑破坏神2角色存档编辑器 Diablo Edit2:免费保姆级教程,从编译到改档全流程

暗黑破坏神2角色存档编辑器 Diablo Edit2:免费保姆级教程,从编译到改档全流程

【免费下载链接】diablo_editDiablo II Character editor.项目地址: https://gitcode.com/gh_mirrors/di/diablo_edit

Diablo Edit2 是一款免费的暗黑破坏神2角色存档编辑器,基于 MFC 开发,直接读写.d2s存档文件,覆盖等级、属性点、技能、装备词条、任务进度和小站,官方测试过 1.09、1.10、1.13 以及重制版 D2R(PTR 2.4/2.5/2.6)的存档格式。想跳过练级和刷装、快速验证一套 build 思路的话,读这篇就够了:先讲清楚它为什么敢直接改二进制,再走一遍编译流程,最后是三个典型场景的实操步骤。

先看懂:它凭什么敢直接改 .d2s 存档

.d2s不是普通文本,而是一条紧凑的位流:属性、装备、技能一块块按位域塞在一起,末尾还有 CRC 校验。直接手改二进制就像拿铅笔在病历本上涂改,一个字节错位整页都作废——这也是存档编辑工具难做的地方。

Diablo Edit2 的做法是在源码里把每一块结构完整还原:CPlayerStats(力量、体力、等级、经验等基础数值)、CCharSkills(30 项技能等级)、CQuestInfo(五幕任务标志位)、CWaypoints(各幕小站),以及从普通、魔法、稀有到暗金、套装、合成的整套物品品质体系。你界面上看到的每个输入框,背后都有对应的读写函数和版本号判断,保存时重新计算校验,所以大部分操作对游戏来说是"合法"的。

需要心里有数的一点:编辑器自动识别的版本是 1.09、1.10、1.13、D2R 及 PTR 2.4/2.5/2.6 这几档,D2Version.h里逐个适配,其他版本没有保证。

如何用 Visual Studio 编译并运行 Diablo Edit2

  1. 克隆仓库到本地:git clone https://gitcode.com/gh_mirrors/di/diablo_edit
  2. 用 Visual Studio 2017 或更高版本打开根目录下的暗黑II.sln
  3. 配置选Release | x86再编译。MFC 项目要走 32 位,选成 x64 会在链接阶段直接报错。
  4. 解决方案里有两个项目:主项目Diablo Edit2(编辑器本体)和Generate Data(数据生成器,后面场景 3 会用到)。
  5. 编译完运行主项目,菜单"文件→打开"选一个.d2s,角色数据就全部铺开在眼前了。

这一步卡住的话,九成是平台选了 x64,或者 VS 没装"使用 C++ 的桌面开发"工作负载——MFC 组件需要它在安装器里勾上。

打开存档后能改哪些地方

界面按功能分成了若干页:基础信息(DlgCharBasicInfo)、背包与装备(DlgCharItems)、技能(DlgSkills)、铸造台(DlgFoundry,可编辑等级、防御等数值)、任务信息(DlgQuestInfo)、小站(DlgWayPoints),新建物品走 DlgNewItem。下面这张表按"你想改什么"来对照:

想改什么在哪改能改到什么程度
等级、经验、生命、法力、体力、金币基础信息页逐字段直接填,等级上限 255(7 位)
力量、敏捷、体力、精力、剩余点数属性页含剩余点数,可把点一次分完
技能等级技能页30 项技能任意调级,不必走升序
装备品质、孔数、镶嵌、属性词条物品页 / 新建物品普通→魔法→稀有→暗金→套装→合成全品质体系
五幕任务完成标志任务信息页逐位勾选,附 1.13+ 的洗点标志
各幕小站小站页传送点直接点亮
界面语言View → Language英文 / 简中 / 繁中,数据源可自行补译

场景 1:把死灵法师改造成召唤流

动机:手上有个练歪的死灵,想改成纯召唤,但不想重新练级。

  1. 打开存档,在属性页把剩余点数全部分给体力和精力。
  2. 进技能页,把召唤骷髅、召唤骸骨、掌握骨骼、尸爆、复活这类核心技能直接拉到想要的等级——注意技能等级一次写死,不用按升序解锁。
  3. 保存,进游戏看一眼技能面板是否生效。

结果:几分钟内完成一次"转职",练级时间直接省掉。

场景 2:给装备塞词条和符文

动机:想测试"无限"符文之语或者给防具补一条防御属性。

  1. 在物品页选目标装备,把孔数加到需要的位置(比如长剑开到 3 孔)。
  2. 给孔位镶上符文,或者新建一件带孔武器再镶。
  3. 属性列表里增删词条,铸造台页面还能顺手调等级和防御值。
  4. 保存后回游戏验证。

结果:不用刷几十遍秘境,符文之语和定制词条随造随测。

场景 3:补翻译、扩展物品数据

动机:简繁中文明显没翻全,或者想让自己自定义的物品表生效。

  1. 用 Excel 打开Generate Data/language.txt:第一列是字符串索引,后面几列是各语言译文,*开头的行是分组标题(比如一整组技能名)。
  2. 填上缺失的译文,务必保存成原格式(Tab 分隔),别动*LANG文件头。
  3. 编译并运行Generate Data项目:它会读取itemdata.txtproperty.txtlanguage.txt,压缩后刷新出itemdata.datproperty.datlanguage.dat
  4. 重新运行编辑器,在 View → Language 里切到你的语言核对效果。

这套流程同样适用于调整物品模板:改itemdata.txt再跑一遍 Generate Data,编辑器读到的物品表就是新的了。

改档前必须记住的边界

  • 危险:装备孔数别超过 6。源码里写得很明白:多于 6 个孔可能导致游戏崩溃。
  • 危险:改过的存档别拿去战网。修改存档属于违反服务条款的行为,后果是封号,还可能连累同账号的其他角色。
  • 注意:每个字段都有位宽上限,等级最多 255,经验是 32 位——填进超上限的数值会破坏存档结构,游戏读档时直接闪退。
  • 注意:动手前先复制一份原始存档到别处。这是存档修改的铁律,出任何状况都有退路。
  • 提醒:不同版本格式不同,编辑器会按存档里的版本号自动识别,但别指望跨版本混存。另有一个小福利:1.13 及以上存档里有洗点标志位,按源码注释设为0x2就可以找阿卡拉重置属性和技能点,省一次洗点机会。

新手常见问题 FAQ

Q:重制版 D2R 的存档能打开吗?A:可以。官方测试范围包含 D2R 及 PTR 2.4/2.5/2.6,D2Version.h里对这些版本逐一做了适配,老版本 1.09、1.10、1.13 也都能读。

Q:编译报错怎么排查?A:先确认平台是 x86 而不是 x64;还报错就在 VS 安装器里补上"使用 C++ 的桌面开发"工作负载,MFC 依赖它。

Q:中文界面在哪切?A:菜单 View → Language,支持英文、简中、繁中。翻译有缺漏的话,按场景 3 的流程在language.txt里补上重新生成即可。

Q:改完存档游戏闪退了怎么办?A:先恢复备份,再检查两个高频原因:数值超上限、孔数超 6。改回合理范围重新存一次。

Q:它具体能编辑哪些内容?A:人物属性与剩余点数、技能等级、各幕任务标志、小站、装备的品质/孔数/镶嵌/词条、耳朵(PTR 2.4 起支持 UTF8 命名)、雇佣兵装备、铸造台数值,以及新建物品。

Q:有没有还没做完的功能?A:作者自己的 TODO 里写着:任务奖励的"未完成 / 已完成 / 待领取"细分状态尚未实现,目前任务进度是按各幕标志位展示的,别对未实现的功能抱预期。

下一步:打开你的第一份存档

工具跑起来之后,挑一个平时舍不得动的主力角色练手:先备份,再只改一个小字段(比如剩余点数)保存进游戏验证,流程走通了再碰装备和任务。Diablo Edit2 是开源的,代码就摆在仓库里,哪块结构看不懂直接翻对应头文件——你的存档数据,从这以后完全在你自己手里。

【免费下载链接】diablo_editDiablo II Character editor.项目地址: https://gitcode.com/gh_mirrors/di/diablo_edit

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/24 17:01:08

法律AI应用实战:构建安全可靠的合同审查辅助系统

在数字化转型浪潮席卷各行各业的今天,法律行业这个以严谨和专业著称的领域,也正站在AI技术应用的风口浪尖。许多律所和律师团队在尝试引入AI工具时,常常面临一个核心矛盾:既希望AI能提升效率、辅助决策,又担心其“幻觉…

作者头像 李华
网站建设 2026/8/24 16:57:17

Hedge-Bench:金融智能体的硬核推理基准与实战构建指南

1. 项目概述:为什么我们需要一个“硬核”的金融推理基准?最近和几个做量化策略和金融科技的朋友聊天,大家都有一个共同的痛点:现在市面上各种大语言模型(LLM)和智能体(Agent)满天飞&…

作者头像 李华
网站建设 2026/8/24 16:53:57

Lumi原理剖析:Python内省机制如何让函数自动映射为API参数?

Lumi原理剖析:Python内省机制如何让函数自动映射为API参数? 【免费下载链接】lumi Lumi is an nano framework to convert your python functions into a REST API without any extra headache. 项目地址: https://gitcode.com/gh_mirrors/lu/lumi …

作者头像 李华
网站建设 2026/8/24 16:53:12

Chatbox 启动教程:3 分钟搞定 npm 配置与桌面端运行

Chatbox 启动教程:3 分钟搞定 npm 配置与桌面端运行 【免费下载链接】chatbox Powerful AI Client 项目地址: https://gitcode.com/GitHub_Trending/ch/chatbox 把 Chatbox 的仓库拉到本地,下一步却不知道怎么启动——仓库里看不到可执行文件&…

作者头像 李华