Files
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

87 lines
2.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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. 安装依赖
```bash
pip install fastapi uvicorn requests
```
### 2. 启动服务
```bash
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/*` 兼容路由才可用