Files
90CNServer/gmtool/README.md
T
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

2.8 KiB
Raw Blame History

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):

  1. 自动发现:点击顶栏「🔍 自动发现服务端」,工具会自动探测端口与 Token
  2. 手动连接:在「连接设置」页面填写主机、端口、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/* 兼容路由才可用