SuperWoW
SuperWoW 是为魔兽世界 1.12.1 版本制作的启动器/模组,旨在修复客户端错误并扩展用户界面插件使用的基于 lua 的 API。
常见问题
- 问: 这个 Mod 是如何运作的?
- 问:dll 注入安全吗?
- 问:为什么这个程序是闭源的?
- 问:这个模组有什么游戏优势吗?
- 问: 这个 Mod 稳定且没有错误吗?
- 问: 这个 mod 会和 X mod / 插件 / 服务器一起使用吗
- 问: X 服务器允许这个 Mod 吗?它会被反作弊咳嗽吗?
答:SuperWoW 是一种 dll 注入。执行启动器将启动基础游戏(同一目录中的 WoW.exe 文件)并注入 dll(动态链接库)。这使 Mod 可以访问 RAM 中游戏分配的内存。该 Mod 编辑进程的内存以更改某些变量和指令,并利用代码洞穴和函数绕道。该程序不会永久或临时更改游戏或其他任何计算机文件。从原始 .exe 文件启动客户端将启动与使用 mod 之前游戏目录中完全相同的游戏。
答: Dlls在软件可扩展性方面有合法的用例,例如基准测试和屏幕捕获工具Fraps。但是,它也可以用于恶意目的,以绕过安全措施并窃取敏感信息。了解与闭源 DLL 注入活动相关的潜在风险、漏洞和影响至关重要。
答:根据定义,将 Mod 开源为许可即可在不需要许可的情况下用于商业用途,并允许创建衍生作品,这些作品可以很容易地绕过此 Mod 中的对策,以阻止它被用于自动化、作弊或任何其他方法以获得直接的游戏优势。
答:它通过改进用户界面间接地实现了这一点,使其更加直接,并且通过耗尽玩家和服务器资源的隐藏消息需要更少的玩家间通信。它添加的功能是 Classic Client 功能的再现,对于使用 Hermes Proxy 在 1.12.1 服务器上玩游戏的人来说是熟悉的。
答: 不能保证稳定性。非常感谢在此存储库的 bugtracker 中报告所有 bug 或崩溃,复制或截取崩溃日志并详细说明重现步骤。
答:不能保证该 Mod 与任何特定的 Mod、插件或服务器的自定义客户端兼容。非常感谢在 bugtracker 中记录所有与 Mod 兼容或不兼容的内容。
答:这个 Mod 并没有试图向 Warden 隐藏自己,如果他们选择这样做,任何服务器都可以很容易地禁止它。请自行判断使用。
特性
截至 2024 年 11 月 4 日的 SuperWoW 功能列表:
- 治疗效果显示在浮动的战斗文本上。
- 聊天气泡出现在 60 码范围内而不是 20 码范围内,并且它们可以在激活姓名条的情况下出现
- 聊天气泡适用于 raid、bg、耳语聊天
- 现在可以直接从wowhead获取现在由客户支持的法术和制作配方的聊天链接。
- 完全吸收的伤害现在会正确显示在战斗日志中,而不是说“单位吸收攻击”。
- 宏字符限制从 255 个增加到 510 个。
- 您的个人增益栏现在会显示您的所有增益,包括通常没有图标的增益。
- 添加了“UNIT_CASTEVENT”事件,用于跟踪单位的铸造开始、结束、中断、通道和摆动(区分主手和副手) arg1:casterGUID。arg2:targetGUID 的arg3:事件类型(“START”, “CAST”, “FAIL”, “CHANNEL”, “MAINHAND”, “OFFHAND”)。arg4: 法术 ID. arg5: 施法持续时间。
- 添加了 “RAW_COMBATLOG” 事件,该事件表示所有战斗日志事件的 RAW 版本。arg1:原始事件名称。arg2:带有 GUID 的事件文本
- 如果启用了日志记录,则原始战斗日志事件将与原始WoWCombatLog.txt同时记录到 WoWRawCombatLog.txt 中。
- 战斗日志现在会将所有者名称附加到具有所拥有单位(如宠物或图腾)的战斗日志消息中。
- 默认事件现在SPELLCAST_START在远程武器能力上触发,如瞄准射击和多发射击。
- 移除了看到友方玩家装备物品的范围限制。这是为了允许 AdvancedVanillaCombatLog 等插件构建突袭成员的个人资料,而无需每个单独的突袭成员下载一个辅助插件并相互传达信息。
- Blizzard 或 Flamestrike 等目标圆圈法术不再显示“I can't cast this ability while moving error”来阻止进入其目标圆圈模式。
- 新的 CVar “BackgroundSound” 可在按 Tab 键退出时启用或禁用背景声音(默认值 = “0”,可以是 “0” 或 “1”)
- 新的 CVar “UncapSounds”。设置为 “1” 可删除硬编码的 SoundChannel 限制。如果你想要真正的无上限声音体验,你仍然可以在这个 CVAR 中将 “SoundSoftwareChannels” 和 “SoundMaxHardwareChannels” 设置为一个较高的数字(通过 lua 函数、config.wtf 编辑或使用 VanillaTweaks)
- 新的 CVar “FoV” 用于设置摄像机视野(默认值 = “1.57”,可以是 “0.1” 到 “3.14” 之间的任何值)
- 新增 CVar “SelectionCircleStyle” 为目标圆设置不同的外观。
- 新的 CVar “LootSparkle” 可切换可掠夺宝藏的 Sparkling 效果。
功能变更:
- CastSpellByName 函数现在可以将 unit 作为 true/false OnSelf 标志之外的第二个参数
- UnitExists 现在还返回单位的 GUID
- UnitDebuff 和 UnitBuff 现在额外返回光环的 ID
- 现在,将 UnitMana(“player”) 用作德鲁伊总是会同时返回您当前形态的 power 和施法者的 mana。
- frame:GetName(1) 现在可以在铭牌帧上使用,以返回所连接单元的 GUID。
- SetRaidTarget 现在接受第 3 个参数 “local” 标志,以将标记分配给您自己的客户端。这允许在独奏时使用目标标记。
- 之前仅用于确认“您确定要拾取此物品吗”的 LootSlot(slotid) 现在使用格式为 LootSlot(slotid [, forceloot])。LootSlot(slotid, 1) 现在可用于实际拾取槽位。
- GetContainerItemInfo现在返回物品的费用,而不是堆叠物品,如果物品不可堆叠且有费用。费用以负数表示。
- GetWeaponEnchantInfo() 现在可以接受友方玩家(例如:party1)作为参数。如果以这种方式使用,它会给出该玩家的主手和副手上的临时附魔的名称。旧的功能被保留用于自己的玩家的附魔持续时间和堆叠。
- 游戏现在可以将宏视为物品或法术操作,只需分别使用“/tooltip spell:spellid”或“/tooltip item:itemid”来启动宏。
- GetActionCount、GetActionCooldown 和 ActionIsConsumable 现在适用于返回链接法术或项目结果的宏。 例如,您可以创建一个以 “/tooltip item:18641” 开头的宏,所有这些函数都会将其视为项目 18641 (dense dynamite),即使该宏将在按下时强制执行不同的操作。
- GetActionText(actionButton) 现在还额外返回作类型 (“MACRO”, “ITEM”, “SPELL”) 及其 ID,对于宏,则返回其索引。宏的 index 是 GetMacroInfo(index) 使用的值。这允许您区分 Actionbar 上具有相同名称的两个宏,或者查找 Bar 上项目或拼写的 ID。
新功能:
- GetPlayerBuffID(buffindex) 函数,该函数返回光环的 id。
- CombatLogAdd(“text”[, addToRawLog]) 函数,该函数将消息直接打印到 combatlog 文件中。如果设置了 flag,则改为将消息打印到原始 combatlog 文件。
- SpellInfo(spellid) 函数,该函数返回有关法术 ID 的信息(名称、等级、纹理文件、最小范围、目标的最大范围)。
- TrackUnit(unitid) 函数,该函数将友方单位添加到小地图中。
- UnitPosition(unitid) 函数,该函数返回友方单位的坐标。
- SetMouseoverUnit(unitid) 函数,该函数设置为当前悬停单位。unitframe 插件制作者的用法:在 enter 时执行 SetMouseoverUnit(frameUnit),在 leave 时执行 SetMouseoverUnit() 以清除。这允许 “mouseover” 其他函数在当前悬停的帧的单元上工作。
- Clickthrough(0/1) 关闭/打开 Clickthrough 模式,Clickthrough() 简单地返回它是否打开。点击模式允许你点击没有战利品的生物尸体,以掠夺他们下面和被他们覆盖的生物。
- SetAutoloot(0/1) 关闭/打开 autoloot,SetAutoloot() 简单地返回它是否打开。通过按住 shift 键激活 autoloot 的硬编码已被删除。您现在可以通过此功能打开或关闭它)。
- ImportFile(“filename”) 读取 gamedirectory\imports 中的 txt 文件并返回其内容的字符串。
- ExportFile(“filename”, “text”) 在 gamedirectory\imports 中创建一个 txt 文件,并在其中写入文本。
- 所有接受单位作为参数的函数(“player”、“target”、“mouseover”)现在可以接受额外的后缀“owner”,该后缀返回单位的所有者(例如,如果您以图腾为目标并执行 UnitName(“targetowner”),您将获得萨满的名称)。
- 所有接受单元作为参数的函数(“player, ”target“, ”mouseover“)现在可以接受”mark1“到”mark8“作为参数,这将返回具有相应标记索引的单元。
- 接受单元作为参数的所有函数(“player”、“target”、“mouseover”)现在可以接受单元的 GUID,该 GUID 可以从其铭牌上的 UnitExists 或 GetName(1) 获取。后缀仍然可以附加到该字符串的末尾。
- 全局变量 SUPERWOW_STRING 和 SUPERWOW_VERSION 为插件提供 mod 信息。
使用
- 下载版本,解压缩并将 SuperWoWhook.dll 和 SuperWoWlauncher.exe 放在游戏目录中包含 WoW.exe 文件的同一文件夹中。如果游戏的客户端可执行文件未完全命名为 “WoW.exe”,则必须创建它的副本并将该新文件命名为 WoW.exe
- 从相应的存储库中下载兼容性插件及其模块,并像典型的插件一样将它们安装在 Interface\Addons 文件夹中,确保删除 github 附加的 “-master” 后缀。
- 如果要使用自定义 Selection Circle 样式,则需要从此处获取其纹理
- 运行 SuperWoWlauncher.exe 玩游戏
文档
https://github.com/balakethelock/SuperWoW/wiki
故障排除
阅读安装指南。如果 VanillaFixes 或 SuperWoW 启动器未启动且没有错误 (Windows),则由 Orfc 修复
- 转到“控制面板”>“系统和安全”>“系统”>“高级系统设置”。在 Performance (性能) 下,单击 Settings (设置),然后单击 Data Execution Prevention (数据执行保护) 选项卡。
- 选择“为除我选择的程序和服务之外的所有程序和服务启用 DEP”,然后将 WoW.exe 添加到列表中。(如果它对您没有帮助,请记住稍后删除它。
版权所有 © 2024 Balake。保留所有权利。
此程序仅授权供个人使用。商业 使用、分发、修改或任何形式的利用 严禁以营利为目的,未经明文规定 版权所有者的许可。
World of Warcarft 是 Blizzard 的知识产权 娱乐公司此 Mod 不隶属于 由 Blizzard Entertainment 以任何方式认可。
这个 mod 是根据以下原则创建和分发的 合理使用,包括评论、批评和转化 用于个人娱乐和教育目的。
此 mod 按“原样”提供,不提供任何形式的保证。
- 本文固定链接: https://www.fengshen.cn/2025/02/superwow/gameofwind/
- 转载请注明: fengshen 发表于 Dream of Wind | 一梦风神
