服务端(Go): - GM 塞背包/带属性装备发放:在线角色推送 op14 增量物品行,背包实时刷新,无需回角色选择界面 - GM 改金币/改等级:去掉在线拒绝,落库后推送 op14 钱包/op37 等级状态,在线实时刷新 - 等级端点统一切换到新版 GMSetCharacterLevel(自带在线刷新) - 无限/锁死疲劳模式 + 燃烧疲劳:每房间消耗 2 点、打怪与通关经验双倍 - 燃烧疲劳开关时给所有在线角色推送系统提示(op12 mode 0) - 深渊史诗掉率:GM 全局倍率 + 城镇增益药剂窗口倍率,真实接入掉落结算 启动器(Python/JS): - 标题栏自绘、窗口 1204x717、禁止拖拽改大小、仅最小化/关闭 - GM 工具:疲劳与燃烧、深渊史诗掉率、拍卖行上架(单一定价对齐) - 拍卖行上架前端对齐服务端单一价格语义,修复 400 报错
2.8 KiB
2.8 KiB
DNF90 GM 管理工具
一个全新的、页面精美的 DNF90(九零轮回)单机私服 GM 管理工具。
基于对旧源码(90轮回源码 与 DNF90工具与资料备份)的深入分析,完整还原了服务端 GM API 协议,并重新实现了一套现代化、美观的管理界面。
功能特性
- 🎨 精美深色主题:DNF 风格渐变 + 毛玻璃质感,响应式布局
- 👥 角色管理:按账号/角色名/用户名查询角色,编辑等级、金币、技能点
- 🎁 道具发放:搜索道具并发放、查看道具详情
- ✉️ 邮件系统:系统邮件、角色邮件、附件道具与金币
- 🎒 背包装备:查看背包、删除道具、清空背包、装备管理
- 📜 任务管理:查询任务、完成/放弃/撤销任务
- ⚔️ 副本控制:副本状态监控、解锁难度/深渊、安全回城
- 💰 钱包点券:钱包查询、黑钻开通
- 🎮 玩法配置:深渊掉率、史诗药剂倍率
- 📡 频道管理:频道列表、热重载
- 🔍 自动发现:自动探测本地服务端地址与 Admin Token
技术架构
浏览器前端 (HTML/CSS/JS 单页应用)
↓ fetch
FastAPI 后端 (Python) ← 端口 9527,CORS 代理
↓ HTTP + X-Admin-Token
DNF90Server 本地 GM API ← 端口 18111
- 后端:Python 3.15 + FastAPI + requests
- 前端:纯原生 HTML/CSS/JS,无框架依赖
- API 协议:完整对接服务端
/dnf/gm/*与/local/dnf-gm/*两套路由
快速开始
1. 安装依赖
pip install fastapi uvicorn requests
2. 启动服务
python gmtool/main.py
或双击 启动GM工具.bat。
3. 访问
浏览器打开 http://127.0.0.1:9527
连接服务端
GM 工具需要连接本地运行的 DNF90 服务端(DNF90Server.exe):
- 自动发现:点击顶栏「🔍 自动发现服务端」,工具会自动探测端口与 Token
- 手动连接:在「连接设置」页面填写主机、端口、Admin Token
默认配置:
- 主机:
127.0.0.1 - 端口:
18111 - Token:
local-admin-token(或服务端instance.json中自动生成的 Token)
目录结构
gmtool/
├── main.py # FastAPI 后端入口
├── gm_client.py # GM API 客户端封装(含自动发现)
└── static/
├── index.html # 页面骨架
├── css/style.css # 样式
└── js/
├── api.js # API 客户端与工具函数
├── pages.js # 各功能页面
└── app.js # 应用初始化与路由
注意事项
- 工具通过本地回环地址通信,不暴露到公网
- 危险操作(清空背包、删除道具等)均有二次确认
- 服务端需在
local环境运行,/local/*兼容路由才可用