MahjongCopilot icon indicating copy to clipboard operation
MahjongCopilot copied to clipboard

✨ feat: Compatible with MajsoulMax & 🐛 fix: Subprogress bug in macOS

Open zhuozhiyongde opened this issue 5 months ago • 1 comments

如题。

关于 MajsoulMax 的说明:我尝试了颠倒代理顺序,使用现有的 upstream_proxy 来完成(即 Program -> MahjongCopilot(10999) -> MajsoulMax(23410) -> Server),但发现会出现如下表现:

  1. 能进游戏,能解锁
  2. 能识别手牌,但无法启动 AI 计算

所以我将 MajsoulMax 前置了以正确完成整个流程,这导致需要修改本仓库的代码,以及 settings.json 的设置项。

关于 subprogress 的说明:

注意到 https://github.com/latorc/MahjongCopilot/issues/59#issuecomment-2995935585 这里的说明,发现非 Windows 下没有 subprocess.STARTUPINFO() 这一属性,进而导致判断证书存在失败,永远都要输密码,所以这里需要特判;然后由于 mitmproxy 没有采用默认的路径 ~/.mitmproxy 下的证书,所以需要对比指纹而不是仅仅对比 CN 来确保证书安装成功,故新增一个依赖项。

同时,参考 https://github.com/latorc/MahjongCopilot/issues/59#issuecomment-2511206628 ,建议锁一下 numpy 的版本,macOS 上锁定后正常,但未在 Windows 上测试,所以暂时没有修改。

相关 Issue:

  • https://github.com/latorc/MahjongCopilot/issues/59
  • https://github.com/latorc/MahjongCopilot/issues/39
  • https://github.com/latorc/MahjongCopilot/issues/66

zhuozhiyongde avatar Jul 06 '25 07:07 zhuozhiyongde

太谢谢了!完全解决了问题,我用upstream_proxy出现了一模一样的问题,搞了半天 liqi proto 没搞明白。大佬完全解决了我的问题,非常感谢!