双尸命案

双尸命案

双枪加倍乐趣!随时切换使用一把或两把枪!

DoubleHomicide

适用于 GTA IV 1.0.8.0 的双手持枪功能,基于 IV-SDK .NET 运行。灵感来自 JulioNIB 的 “Dual Wielding style”(动画由 ac.amir 制作),但本模组从零重写。每把武器都存放在 DoubleHomicide.ini 中,因此你可以添加枪械和自定义动画,无需改动代码。

状态:已在 GTA IV 1.0.8.0 上配合 IV-SDK .NET 进行游戏内测试。 如果出现问题,请在 ini 中启用 debug=1,并查看 IV-SDK .NET 控制台和 IVSDKDotNet.log。

[b][u]## 安装[/u][/b]

[b]1. 安装 IV-SDK .NET,并设置 LoadScriptHookDotNetScripts=true(参见 IV-SDK .NET 常见问题)。[/b]

[b]2. 将 DoubleHomicide.net.dll 和 DoubleHomicide.ini 复制到 <GTA IV>\scripts\。[/b]

[b]3. 不要与旧的 DualGuns.net.dll 同时运行。[/b]

[b]4. 其他要求:[/b]

[b]GTA IV 1.0.8.0 降级:[/b] [b]https://github.com/gillian-guide/GTAIVDowngradeUtilityWPF[/b] [b]FusionFix + Legecy Fix:[/b] [b]https://github.com/ThirteenAG/GTAIV.EFLC.FusionFix[/b] [b]TACE.lite:[/b] [b]https://www.nexusmods.com/gta4/mods/774[/b]

[b][i][u]重要提示:[/u][/i][/b] 安装本模组会覆盖 update\common\data 中的 TACE.lite animgrp.dat 文件。安装前应备份此文件。

[b]5. 其他推荐/兼容模组:[/b]

[b]Animated Weapons 3.0[/b] [i][u]https://www.nexusmods.com/gta4/mods/641[/u][/i]

[b]WeapFuncsIV:[/b] [u][i]https://www.nexusmods.com/gta4/mods/513[/i][/u]

[b]Liberty Tweaks:[/b] [i][u]https://gtaforums.com/topic/991160-liberty-tweaks/[/u][/i]

[b][i][u]## 游戏内切换模式[/u][/i][/b]

在游戏中按 F10 开关模组(toggleKey),按 F11 在单枪和双枪模式之间切换(modeKey)。模组启动时处于单枪模式(dualMode=0)。

[i][u][b]## 添加枪械[/b][/u][/i]

复制 ini 中的某个小节,重命名,设置 weaponId 和 model,然后将该小节名称添加到 [general] 的 guns= 中。从 IV-SDK .NET 管理器中重新加载。

[i][u][b]## 添加动画[/b][/u][/i]

将你的动画集(例如 gun@mygun.wad)放入 anim.img,并在该枪械的小节中设置 animSet=gun@mygun。该动画集需要包含在 [general] 中命名的片段,例如 drawAnims 和 holsterAnims(默认值:unholster、unholster_crouch、holster、holster_crouch、discard、discard_crouch)。你也可以在 ini 中更改这些名称。当拔枪动画经过 attachAnimTime 时,第二把枪出现,并在收枪/丢弃期间隐藏。

[b][i][u]## 单枪和双枪动画集[/u][/i][/b]

每把枪可以有两个动画集:animSet(单枪)和 animSetDual(双枪),这样在单枪模式下空闲的手不会空着。动画集必须先在游戏中存在,模组才能使用它:

  1. 将 WeaponGroup(Streaming, gun@xxx2) 添加到 animgrp.dat。
  2. 将原始动画文件以新名称复制到 anim.img 中,并编辑片段。保持片段名称不变。
  3. 在该枪械的 ini 小节中设置 animSetDual=gun@xxx2。

游戏只有一个由所有角色共享的动画表,因此在 dualAnimScope=held(默认)下,双枪动画集只会应用到玩家当前持有的武器上。此时携带相同枪械的警察和行人仍然可以拾取它。dualAnimScope=all 会将其应用到所有已启用的枪械上。

控制台命令:dh_anim(显示当前组)、dh_anim single|dual、dh_groups <text>(列出游戏已知的动画组)、dh_id(当前武器 ID)、dh_gun、dh_pos、dh_lower、dh_hold。

寻找能正确渲染的模型

如果第二把枪显示为白色(纹理未加载),说明该模型名称在你的游戏中不可用。无需重新构建,在控制台中尝试其他模型:

dh_gun Deagle w_glock

然后收枪并拔枪。找到外观正确的模型后,在该枪械的 ini 小节中设置 model=。运行 debug=1 可查看当前显示的内容。

[i][u][b]## 左手枪械调整[/b][/u][/i]

F9 是用于移动左手枪械的调整模式。

按 F9 开启调整模式。它会保持举枪姿势,以便你在瞄准时调整左手枪械。再次按 F9 关闭。它调整你当前持有的双手持枪武器。

按键 功能 NumPad 4 / 6 偏移 X,−/+ NumPad 2 / 8 偏移 Y,−/+ NumPad 1 / 7 偏移 Z,−/+ Insert / Delete 旋转 X,−/+ Home / End 旋转 Y,−/+ Page Up / Page Down 旋转 Z,−/+ NumPad 0 在粗调和细调步长之间切换 NumPad 5 打印数值并保存

步长:粗调步长为偏移 0.005、旋转 5°。细调步长为 0.001 和 1°。 反馈:每次按键都会在屏幕上显示枪械当前的 offset= 和 rotation= 数值。 保存:NumPad 5 打印该行并将其追加到游戏文件夹中的 DoubleHomicide_tuned.txt。将该行粘贴到 DoubleHomicide.ini 中该枪械的小节。 NumPad 按键:必须开启 Num Lock,否则 NumPad 按键不会注册。

[b][u][i]## 已知限制[/i][/u][/b]

  • 已包含许多 EFLC 枪械,但默认禁用;请在 ini 中启用它们,并将它们添加到 guns=。
  • 双手持枪的子弹使用 FIRE_SINGLE_BULLET 模拟,与原版相同。
  • 自定义枪械的模型必须存在于游戏中;如果无法创建 3 次,该枪械将在本次会话中被禁用,并打印一条控制台消息。
  • 此处不包含动画文件;请复用你副本中原版模组的动画文件,或自行制作。
  • 玩家自己右手射击的子弹无法通过脚本取消,因此 alternate 开火模式只是一种近似实现。

[b][u]完整披露:[/u][/b] 本模组的创建过程中使用了 Claude AI。