很多人知道《暗黑破坏神2:重制版》可以在启动时加“参数”,也就是我们常说的控制台代码,但真要问每一条是干嘛用的,大部分人只停留在“开个窗口模式”这类最基本的层面。下面我把常见的命令行参数按功能分了类,一条条捋清楚,想折腾画面、网络或多开的小伙伴,可以照着用。

这些参数一般是加在启动器、快捷方式或 D2Loader 的命令行里,用法类似:
game.exe -w -direct -txt
中间空一格,前面是短参数(如 -w),后面是完整参数(如 -window),效果一样。文中提到“不清楚”“好像无效”的地方,就别太较真,当年流传下来的老参数,并不是在重制版里都还能正常发挥作用。

——

一、画面与显示相关参数

这类代码是用来控制游戏画面模式、分辨率、渲染方式的,想让老机器跑得稳、或者按自己习惯调整显示,可以看看这部分。

  • -exp / -expansion
    进入资料片模式。现在我们玩的基本都是《毁灭之王》资料片内容,这个参数更多是历史遗留。

  • -w / -window
    窗口模式启动。很多人一边刷图一边查攻略、听歌,都会用这个。

  • -glide
    使用 Glide 渲染模式。以前有一些补丁或工具会配套使用 Glide,让画面跟老版更接近、或者获取更好兼容。

  • -opengl
    用 OpenGL 模式渲染。部分显卡或系统在这种模式下更稳定。

  • -d3d
    使用 Direct3D 模式。Windows 平台比较常见的图形接口。

  • -re
    Re 模式,只对老 Mac 系统有意义,现在基本用不到。

  • -per / -perspective
    开启“透视”效果,只有在非 Direct Draw 的全屏模式下才有效。简单理解就是让画面有点“立体空间感”的那种视觉效果。

  • -lq / -lowquality
    降低图像质量来提升速度。如果你是老机器或者非常追求流畅,可以尝试。

  • -gamma
    调整 Gamma 值(亮度感受)。需要写上具体数值,比如:-gamma 1.5。喜欢画面亮一点或偏暗一点的可以自己微调。

  • -vsync
    开启垂直同步。有些人不开会觉得画面撕裂,开了则帧率锁在刷新率上。

  • -fr / -framerate
    设置帧数上限,需要后面跟数字。这个参数在不同版本中的实际效果有差异,有时候并不明显。

——

二、联机与网络相关参数

这一组主要是给 TCP/IP 联机、自建服、以及 Battle.net 相关环境用的。普通玩家如果只是官方服务器上打打天梯,基本用不到,但留个印象也无妨。

  • -s / -serverip
    指定 TCP/IP 局域网或者直连游戏的服务器 IP。

  • -gametype
    设置游戏类型,需要跟一个类型参数,文档里有但实际应用较少。

  • -joinid
    通过游戏 ID 加入房间,有些自建环境会用到。

  • -gamename
    预先写好游戏房间名,比如:-gamename myroom

  • -bn / -battlenetip
    指定 Battle.net 服务器的 IP,更多用于自建或私服环境。

  • -mcpip
    指定 MCP 服务器 IP,同样偏服务器运维用。

  • -nopk
    禁止玩家互相 PK,早年有说法是无效参数,基本不用指望它帮你屏蔽对战。

  • -openc
    标记为“未知用途”的参数,公开资料里没太明确的解释。

——

三、游戏基础选项

这里的参数跟难度、Mod 开发相关,普通刷子基本不用碰,玩 Mod 的可能会常见。

  • -arena
    标记为无效。早期似乎和某些内部测试模式有关。

  • -difficulty
    理论上是设置难度,但同样被认为无效,在正式版本中不起作用。

  • -txt
    这条是 Mod 制作者非常熟悉的参数:让游戏从文本 .txt 文件重新生成 .bin 数据文件。开发或测试 Mod 时会用到。

——

四、角色与 Battle.net 账号相关

有一组参数是用来预设角色职业、账号信息等的,多数是开发或测试环境中方便自动化用,普通玩家很少在正式服务器用这些。

  • -ama
    指定角色为亚马逊。

  • -pal
    指定角色为圣骑士。

  • -sor
    指定角色为女巫。

  • -nec
    指定角色为死灵法师。

  • -bar
    指定角色为野蛮人。

  • -dru
    指定角色为德鲁伊。

  • -asn
    指定角色为刺客。

  • -i / -invincible
    名字看着像“无敌”或者“隐形”,但多半是内部调试用,在正式环境基本无效。

  • -bnacct
    指定 Battle.net 帐号名。

  • -bnpass
    指定 Battle.net 密码(从安全角度其实不建议明文写在命令行里)。

  • -name
    设置 Battle.net 角色名称。

  • -realm
    指定 Battle.net 区域(Realm)名称。

  • -ctemp
    在 arena 模式里使用某个角色模板,后面要跟具体数字。这个模式本身就不面向普通玩家,所以也属于偏冷门的设计。

——

五、怪物相关参数

这一类很多都已经被证明是无效或者只在内部调试版本中可用,从“看起来很猛”到“对你没用”就是它们的真实写照。

  • -nm / -nomonster
    理论上是“无怪物”,但标注为无效,在正常游戏里你别指望开局空城。

  • -m / -monsterclass
    用途不明确,缺乏可靠文档说明。

  • -minfo / -monsterinfo
    显示怪物信息的调试参数,标注为无效。

  • -md / -monsterdebug
    怪物调试相关,同样是“不清楚”一类的东西。

——

六、物品相关参数

名字很诱人,真用起来却让人失望。大部分是调试环境或者早期测试版本中才有意义。

  • -rare
    理论上是“所有物品变稀有(Rare)”,但标为无效,不要幻想靠这东西刷一身黄装。

  • -unique
    类似含义:全部独特(Unique)物品,同样在正式环境中无效。

——

七、界面与章节位置

这部分比较直观,就是控制你一开始出现在第几幕之类。

  • -act
    设置起始幕数,比如 -act 3 让角色从第三幕开始。通常用于调试或测试某一幕的内容。

——

八、调试与声音相关

有一些参数跟日志、调试信息、声音等挂钩,普通玩家如果不做排错,一般不用。

  • -log
    打开日志记录,被标注为无效。

  • -msglog
    启用消息日志,可能用来记录游戏内部通讯或提示。

  • -safe / -safemode
    安全模式启动,用于在问题环境下尽可能减小崩溃风险。

  • -seed
    指定地图种子(可以理解为地图 ID),对固定地图布局很有帮助,多用于测试研究。

  • -cheats
    虽然叫这个名字,但具体作用“不清楚”,从目前息来看,不是给玩家当用的。

  • -ns / -nosound
    关闭游戏声音。有人在公司摸鱼玩,会开这个。

  • -questall
    用途未明,大概率和任务状态调试相关。

——

九、文件读取与数据相关

下面这堆参数主要影响游戏如何读取资源文件,用 Mod 或做数据分析的时候才会接触得多。

  • -npl / -nopreload
    不预先加载游戏文件,可能会影响读盘方式和加载速度。

  • -direct
    让游戏直接从硬盘目录读取数据,而不是只从 mpq 资源包中读。Mod 制作者经常会搭配 -txt 使用。

  • -lem / -lowend
    标记为“不清楚”,但从字面看应该是针对低配置环境的一些优化。

  • -nocompress
    不使用压缩。对加载速度、占用等可能有一定影响。

  • -comint
    动态数据结构相关,官方备注是“不要乱动”。

  • -token
    设置关闭游戏时的令牌,用于一些自动化控制。

  • -gamepass
    设置游戏密码,配合房间名一起使用。

  • -skiptobnet
    启动后直接跳转到 Battle.net 界面,免得在主菜单里多点一步。

——

十、自定义、工具与多开相关

这一部分是大家比较关心的,比如窗口定制、多客户端之类的需求,多数是给 D2Loader 这类工具配套设计的。

  • -client
    客户端模式。

  • -server
    服务器模式,需要配合 d2server.dll 之类服务器组件使用。

  • -launch
    运行模式,默认就是这个。一般不用特地写。

  • -notitle
    去掉窗口标题栏。某些人喜欢极简界面,会用。

  • -res800
    强制窗口分辨率为 800×600,只对原版 D2 有效,对资料片 D2X 无效。

  • -res640
    分辨率 640×480,同样只对 D2 生效,对资料片无效。

  • -nonotify
    屏蔽错误提示窗口。除非你特别清楚自己在干嘛,否则不建议滥用,出了问题连错误信息都看不到。

  • -noexit
    游戏出错时不自动退出。

  • -autorest / -autorest
    游戏退出后自动重启。适合做一些长时间测试。

  • -multiclient
    允许使用同一个 CD-KEY 启动多个客户端,多开党最熟悉的参数之一。不过重制版的具体限制依赖于官方的验证机制,不是说有了这个就能无视所有风控。

  • -nohook
    禁用 Windows 钩子。主要是和、插件、以及防护机制相关,普通玩家不太需要。

  • -nochar
    不显示角像,用于简化某些界面加载。

  • -clientexit
    退出游戏时顺便关闭客户端程序本身。

  • -noscript
    不加载脚本文件。可能影响某些功能或插件。

  • -noplugin
    禁用 Plug-in 导入。测试游戏原始状态时会用。

  • -lng
    指定语言,比如 -lng ENG(英文)、-lng CHN(中文)。

  • -hookwnd
    指定钩子窗口类名称。给一些工具和环境用的。

  • -hookexe
    设置用于校验的 game.exe 版本,依旧是偏技术向用途。

  • -servername
    给服务器端起个名字。

  • -title
    指定窗口标题,比如 -title DiabloII,多开时可以靠这个区分不同客户端。

——

最后简单说一下:
上面这些参数,大概可以分成三类——
1)普通玩家常用的:窗口模式、语言选择、渲染模式、多开、声音开关等;
2)Mod 制作者和技术玩家偶尔用的:-direct -txt-seed、日志相关、文件读取相关等;
3)基本只在内部或特定服务器环境才有用的:各种无效的怪物/物品代码、调试开关、私服 IP 设置等等。

如果你只是想让《暗黑2:重制版》更顺手一点,推荐优先了解这些:

  • -w 窗口模式
  • -glide / -opengl / -d3d 切换渲染方式
  • -gamma 调亮或调暗画面
  • -vsync 帧数与撕裂的平衡
  • -lng CHN 语言设定
  • -multiclient(在合规允许的前提下)多客户端

别的参数,当你遇到具体需求,再回来翻一下就够了。
本文整理自公开网络资料,仅用于说明各项参数的基础用途,如有侵权或描述不当,请联系处理。

暗黑破坏神2:重制版控制台代码一览,用得明白才能真正好用