找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 1077|回复: 17

[求助] 有没有既会玩星际争霸又会逆向或者修改DLL的坛友

[复制链接]
发表于 2026-10-20 10:18:07 | 显示全部楼层 |阅读模式
悬赏100无忧币未解决
有个叫pluto的星际争霸Ai,原作是用BWAPI 4.4.0部署在1.16.1旧版本上的,有人开发了一套桥接方案https://github.com/lpflhh/Pluto-AI-Starcraft-Remaster,可以部署到重置版,前几天作者更新到2.0 https://github.com/tscmoo/pluto/releases,直接替换原方案中的三个文件跑不起来,据说需要修改某些代码才能运行,求解应该修改哪些地方?

发表于 2026-10-20 10:29:21 | 显示全部楼层
回复

使用道具 举报

发表于 2026-10-20 11:13:19 | 显示全部楼层
自己烧TOKEN,自己修复
回复

使用道具 举报

发表于 2026-10-20 13:16:01 | 显示全部楼层
你需要gpt的帮助
回复

使用道具 举报

发表于 2026-10-20 14:48:09 | 显示全部楼层
可以叫AI帮忙
回复

使用道具 举报

发表于 2026-10-20 17:20:56 | 显示全部楼层
直接替换 Pluto 2.0 的三个文件后无法运行,根本原因在于:桥接方案(Pluto-AI-Starcraft-Remaster)是专门为 Pluto 1.x (md07x02_cog2026_2578600) 深度定制的。它并非一个通用的 BWAPI 加载器,而是一套通过挂钩(Hook)和内存映射来“欺骗”旧版 Pluto DLL,使其能在重制版上运行的兼容层。Pluto 2.0 更换了模型、重写了 DLL 和推理引擎,必然打破了桥接方案所依赖的若干底层假设。

因此,要完成适配,你需要修改桥接方案的源代码,以弥合 Pluto 2.0 带来的差异。主要涉及以下几个层面:

🎯 第一道关卡:移除版本哈希校验
这是最直接、最先会遇到的障碍。桥接方案的启动器会校验 Pluto 核心文件的 SHA-256 哈希值,并明确拒绝非指定版本的运行。其 README 中写明了支持的 Pluto 版本为 md07x02_cog2026_2578600_int8mv,并且“실행기는 게임, DLL, 추론기, 가중치의 SHA-256을 확인하고 다른 버전은 실행을 거부합니다”(启动器会校验游戏、DLL、推理器、权重的 SHA-256,并拒绝其他版本)。

Pluto 2.0 的发布说明给出了新的哈希值。你需要找到桥接方案中实现此校验的代码(很可能在启动脚本 scripts/start-pluto.ps1 或 src/bridge.cpp 的初始化部分),更新为 2.0 版本的哈希值,或者直接注释掉这段校验逻辑以进行测试。

🧠 核心挑战:适配 BWAPI 内存映射的变更
这是适配工作的核心。桥接方案的原理是在内存中“伪造”一个 Brood War 1.16.1 的环境,让 Pluto DLL 通过 BWAPI 4.4.0 接口读取的游戏状态,实际上来源于重制版进程。

关键实现在 src/legacy_view.cpp 和 src/scr_profile_13515_x86.h 中:

src/legacy_view.cpp:负责将重制版的游戏、玩家、单位等状态,转换成 Pluto 所期望的旧版内存格式。

src/scr_profile_13515_x86.h:定义了重制版可执行文件中,桥接方案所依赖的内存地址和结构体偏移。

Pluto 2.0 的新 DLL 是“a new model generation”,它对 BWAPI 接口的调用模式、所依赖的旧版内存结构细节,可能与 1.x 版本存在差异。虽然都标称 BWAPI 4.4.0,但 DLL 内部实现可能已改变。

你需要做的:对比 Pluto 1.x 和 2.0 的 pluto.dll,找出 2.0 在读取游戏状态时可能新增或变化的旧版内存偏移。然后相应修改 src/legacy_view.cpp 中的转换逻辑,并在 src/scr_profile_13515_x86.h 中更新相关地址定义。这项工作需要对 BWAPI 和汇编有一定了解。

⚙️ 潜在问题:推理引擎的通信协议
Pluto 2.0 包含了全新的 pluto_infer.exe(64位推理引擎)。pluto.dll(32位)与 pluto_infer.exe(64位)之间需要通过某种进程间通信(IPC)来传递观测数据和动作指令。

桥接方案的 src/bridge.cpp 负责管理 Pluto 的启动和生命周期。如果 2.0 版本改变了 pluto.dll 启动或与 pluto_infer.exe 通信的方式(例如,共享内存的名称、握手协议、命令行参数),src/bridge.cpp 中的相关代码也需要调整。

🔍 首要排查步骤:查看 bridge.log
在修改代码之前,最有效的做法是先查看桥接方案生成的 bridge.log 文件。日志中会记录启动失败的具体原因,例如是哈希校验失败、DLL 加载错误、还是内存验证未通过。这能为你指明第一个需要修改的准确位置。

💎 总结与建议
直接替换文件注定失败,因为桥接方案并非通用容器。适配 Pluto 2.0 是一项涉及版本校验、内存映射和进程通信三个层面的代码修改工作。

建议你:

先读日志:从 bridge.log 中获取明确的错误信息。

再改校验:首先更新或绕过版本哈希校验,让程序能尝试加载 2.0 的文件。

后调映射:如果加载后仍无法运行,问题就大概率出在内存映射层,需要对照 2.0 的 DLL 行为来调整 legacy_view.cpp 和 scr_profile_13515_x86.h。

关注上游:你也可以留意桥接方案作者的 GitHub 仓库,看是否已有人提交了支持 2.0 的 Pull Request 或 Issue。

点评

这套方案都是车轱辘话,我也问过....  详情 回复 发表于 2026-10-20 19:38
回复

使用道具 举报

发表于 2026-10-20 17:22:00 | 显示全部楼层
我也是问的AI,哈哈。不一定准确。
回复

使用道具 举报

发表于 2026-10-20 17:22:53 | 显示全部楼层
这个可能只有高手能弄了
回复

使用道具 举报

发表于 2026-10-20 17:38:57 | 显示全部楼层
沙发!前排围观~
回复

使用道具 举报

 楼主| 发表于 2026-10-20 19:38:44 | 显示全部楼层
wy-l 发表于 2026-10-20 17:20
直接替换 Pluto 2.0 的三个文件后无法运行,根本原因在于:桥接方案(Pluto-AI-Starcraft-Remaster)是专门 ...

这套方案都是车轱辘话,我也问过....
回复

使用道具 举报

发表于 2026-10-20 21:55:43 | 显示全部楼层
费话太多,拉来项目,直接让AI改到能运行啊。。

点评

不会弄  详情 回复 发表于 2026-10-21 10:45
回复

使用道具 举报

 楼主| 发表于 2026-10-21 10:45:48 | 显示全部楼层
tt911 发表于 2026-10-20 21:55
费话太多,拉来项目,直接让AI改到能运行啊。。

不会弄
回复

使用道具 举报

发表于 2026-10-21 13:28:32 | 显示全部楼层
回复

使用道具 举报

发表于 2026-10-21 17:18:16 | 显示全部楼层
https://github.com/tscmoo/pluto/archive/refs/tags/v2.0.zip 这个不就是源码。。让AI边调试边改啊。

点评

不会弄,纯小白....  详情 回复 发表于 2026-10-21 22:14
回复

使用道具 举报

 楼主| 发表于 2026-10-21 22:14:52 | 显示全部楼层
tt911 发表于 2026-10-21 17:18
https://github.com/tscmoo/pluto/archive/refs/tags/v2.0.zip 这个不就是源码。。让AI边调试边改啊。 ...

不会弄,纯小白....

点评

比如下载一个: https://cloud.tencent.com/act/pro/workbuddy?ad_trace=ef8a03cc53054d699ffb586692b0d8fc&from=30180&from_column=30180 workbuddy中指定源码目录, 告诉它你的星际目录 和 版本 再把问题告诉它。  详情 回复 发表于 2026-10-23 08:55
回复

使用道具 举报

发表于 2026-10-23 08:55:12 | 显示全部楼层
将狼踩尽 发表于 2026-10-21 22:14
不会弄,纯小白....

比如下载一个: https://cloud.tencent.com/act/pr ... p;from_column=30180

workbuddy中指定源码目录,
告诉它你的星际目录 和 版本
再把问题告诉它。。
让它边调试 边修复。
就是这么简单。

点评

下了,在学,谢谢哈  详情 回复 发表于 2026-10-23 15:22
回复

使用道具 举报

 楼主| 发表于 2026-10-23 15:22:46 | 显示全部楼层
tt911 发表于 2026-10-23 08:55
比如下载一个: https://cloud.tencent.com/act/pro/workbuddy?ad_trace=ef8a03cc53054d699ffb586692b0d8 ...

下了,在学,谢谢哈
回复

使用道具 举报

发表于 2026-11-5 15:54:49 | 显示全部楼层
等热心人来
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|捐助支持|无忧启动 ( 闽ICP备05002490号-1|闽公网安备35020302032614号 )

GMT+8, 2026-11-15 12:34

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表