hanfuit
|
c6587d88ee
|
启动器:修复打包后自我套娃开窗,补运行日志与排查文档
根因:start_gmweb() 用 sys.executable 拉起 gmweb/serve.py,源码运行时是
python.exe,PyInstaller 单文件打包后却是启动器自身 —— 于是 `exe serve.py`
又开了一个启动器,新启动器再去拉 serve.py,每代顺延一个端口并各开一个
空窗口,直到 19546 端口用尽。开发机因为 18112 早被占用走了 early return,
所以看不出来。
- 新增多调用模式 run_script_instead():exe <xxx.py> [args] 时用 runpy 直接
执行该脚本,不开窗口/不提权/不占互斥量,打包后拉起 serve.py 才合法
- 新增单实例互斥(Local\DNF90Launcher-5E9C1B7A):重复启动把已有窗口
ShowWindow+SetForegroundWindow 后退出,不再开第二个窗口
- start_gmweb() 增加就绪校验:spawn 后最多等 6 秒确认 18112 在监听,未监听
则改用 importlib 在本进程线程里跑 serve.py 的 main(),绝不再拉起新窗口
- self_elevate() 提权重启带上原始参数(原来 ShellExecuteW 传 None,参数全丢);
DNF90_GMWEB_CHILD=1 的子进程不再触发 UAC
- WebView2 数据目录固定到 %LOCALAPPDATA%\DNF90Launcher\WebView2 且
private_mode=False,避免 exe 在只读目录/网络盘时窗口空白且无报错;
启动前查注册表确认运行时是否存在
- 新增 启动器日志.txt(exe 同目录,512KB 转 .old.txt):console=False 下
print 与未捕获异常全部落盘,顶部记录 pid/argv/SERVER_ROOT
- 文档:新增 docs/启动器窗口风暴排查.md(现象、根因、复现手法、修复点、
日志判读表),README 常见坑与文档索引、docs/README、launcher/README 同步
|
2026-11-05 17:22:51 +08:00 |
|
hanfuit
|
da502b3524
|
docs:补上 90CN.dll 自校验 CRC 工具的文档说明
- 新增 docs/客户端补丁与CRC校验.md:SelfCrcSlot 结构、CRC32 算法与种子坑、
槽位为什么只在 .data/.rdata 里找、info/verify/patch 用法与退出码、
build_90cn.ps1 集成、与「服务端 DLL 指纹」的区别、六类故障排查
- 新增 client-patch/tools/README.md:脚本清单与常用命令速查
- docs/README.md:文档索引与上手路径补一条
- 根 README:关键设计说明补「客户端自校验(CRC32)」小节,文档索引补一行
- 90CN.cpp:清掉过期的重复注释(旧的 patch_selfcrc.py / .text 段说法),与实现对齐
|
2026-11-05 16:40:33 +08:00 |
|
hanfuit
|
9bdaf28683
|
docs:网盘地址改为真实百度网盘分享(提取码 s33r)
- docs/release/网盘下载.url:URL 换成 pan.baidu.com/s/1j31dVPF_nPKSN2QYHU-Ygg?pwd=s33r,双击直达目录
- 发布说明模板:下载表格填百度网盘真实链接与提取码,阿里云盘一行保留待填
- docs/release/README.md:占位说明改为「已指向真实分享,重新分享后需同步」
- 根 README:标题下与快速开始处补上成品下载入口
|
2026-11-05 16:19:37 +08:00 |
|
hanfuit
|
904f8a45d0
|
README:架构章节改用表格,避免中文宽度导致的 ASCII 图错位
|
2026-11-05 16:17:10 +08:00 |
|
hanfuit
|
607d705908
|
README:按 v2026.11.05 现状重写
- 补全整体架构图(启动器 19527 / 服务端 18111 / GM 页 18112 / 客户端 DLL)
- 目录结构补 gmweb、launcher/qr、docs/release
- 子项目表补 gmweb,标注 Go 1.26.5、Python 3.15 32 位
- 新增:启动器六页与更新日志双来源、GM 控制台 IE11 布局约束、二维码替换规则
- 新增:版本号与发布流程(CURRENT_VERSION、Release、网盘 .url 附件、DLL 指纹绑定)
- 新增:常见坑速查表、文档索引、提交约定
|
2026-11-05 16:16:45 +08:00 |
|
hanfuit
|
645b64fe21
|
DNF90 服务端与启动器完整源码(含 GM 工具功能增强)
服务端(Go):
- GM 塞背包/带属性装备发放:在线角色推送 op14 增量物品行,背包实时刷新,无需回角色选择界面
- GM 改金币/改等级:去掉在线拒绝,落库后推送 op14 钱包/op37 等级状态,在线实时刷新
- 等级端点统一切换到新版 GMSetCharacterLevel(自带在线刷新)
- 无限/锁死疲劳模式 + 燃烧疲劳:每房间消耗 2 点、打怪与通关经验双倍
- 燃烧疲劳开关时给所有在线角色推送系统提示(op12 mode 0)
- 深渊史诗掉率:GM 全局倍率 + 城镇增益药剂窗口倍率,真实接入掉落结算
启动器(Python/JS):
- 标题栏自绘、窗口 1204x717、禁止拖拽改大小、仅最小化/关闭
- GM 工具:疲劳与燃烧、深渊史诗掉率、拍卖行上架(单一定价对齐)
- 拍卖行上架前端对齐服务端单一价格语义,修复 400 报错
|
2026-11-04 14:31:55 +08:00 |
|