# xyzw_server_agent
**Repository Path**: AntXiao/xyzw_server_agent
## Basic Information
- **Project Name**: xyzw_server_agent
- **Description**: 基于spring的咸鱼之王服务端代理
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-01-04
- **Last Updated**: 2026-01-04
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 🎮 XyzW Helper - 游戏自动化管理平台
[](https://spring.io/projects/spring-boot)
[](https://www.oracle.com/java/)
[](https://www.mysql.com/)
[](https://redis.io/)
[](#)
> **专业的游戏角色管理与自动化解决方案**
> 一个功能强大、高度可配置的游戏自动化平台,为玩家提供全方位的角色管理、任务调度和游戏操作自动化服务。
## 🌟 产品亮点
### ✨ 核心特性
- 🎯 **智能多角色管理** - 统一平台管理无限个游戏角色
- ⚡ **自动化任务调度** - 智能定时任务系统,24/7不间断服务
- 🛡️ **企业级安全** - JWT认证 + 数据加密,保障账户安全
- 🚀 **高性能架构** - 支持高并发,响应速度<200ms
- 📊 **实时监控** - 完整的任务执行日志和性能统计
- 🔧 **高度可配置** - 每个角色独立配置,满足个性化需求
### 🎮 游戏功能全覆盖
```
🗡️ 自动战斗系统 🏆 竞技场挑战 🧙 噩梦副本
💎 资源自动收集 🛍️ 智能商店购买 🎁 每日任务
👥 好友批量操作 🏰 军团活动参与 ⚡ 符咒自动抢购
🔄 挂机奖励收取 📈 数据实时同步 🎯 个性化配置
```
## 🏗️ 技术架构
### 🛠️ 技术栈
```
后端框架: Spring Boot 3.5.3 + Spring Security
数据处理: MyBatis-Plus + MySQL 8.0+
缓存系统: Redis 6.0+
实时通信: WebSocket + 自定义加密协议
任务调度: Spring Task Scheduling
安全认证: JWT + AES加密
```
### 📁 项目结构
```
xyzw_helper/
├── src/main/java/
│ ├── business/ # 业务逻辑层
│ │ ├── ability/ # 游戏功能插件
│ │ ├── service/ # 业务服务
│ │ └── entity/ # 业务实体
│ ├── controller/ # 控制器层
│ │ ├── request/ # 请求模型
│ │ └── model/ # 响应模型
│ ├── core/ # 核心组件
│ │ ├── coder/ # 消息编解码
│ │ └── crypto/ # 加密解密
│ └── mapper/ # 数据访问层
├── src/main/resources/
│ ├── db/init.sql # 数据库初始化
│ ├── mapper/ # MyBatis映射文件
│ └── application.yml # 应用配置
└── README.md
```
## 🚀 快速开始
### 📋 环境要求
```bash
Java: 17+
Maven: 3.6+
MySQL: 8.0+
Redis: 6.0+
```
### ⚙️ 安装部署
1. **获取项目**
```bash
# 请联系项目团队获取源代码
# 或从发布包中解压项目文件
cd xyzw_agent
```
2. **数据库初始化**
```bash
# 创建数据库
mysql -u root -p -e "CREATE DATABASE xyzw CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
# 执行初始化脚本
mysql -u root -p xyzw < src/main/resources/db/init.sql
```
3. **配置应用**
```yaml
# application.yml
spring:
datasource:
url: jdbc:mysql://localhost:3306/xyzw
username: your_username
password: your_password
redis:
host: localhost
port: 6379
```
4. **启动应用**
```bash
# 开发环境
mvn spring-boot:run
# 生产环境
mvn clean package
java -jar target/xyzw_helper.jar --spring.profiles.active=prod
```
5. **验证部署**
```bash
# 健康检查
curl http://localhost:8080/daily-task/health
# 预期响应
{
"code": 0,
"msg": "服务健康",
"data": {
"status": "healthy",
"service": "DailyTaskScheduler",
"timestamp": 1672531200000
}
}
```
## 📚 API 文档
### 🔐 用户认证
```http
# 用户登录
POST /user/login
Content-Type: application/json
{
"username": "your_username",
"password": "your_password"
}
# 响应
{
"code": 0,
"msg": "success",
"data": {
"token": "eyJhbGciOiJIUzI1NiJ9..."
}
}
```
### 🎮 角色管理
```http
# 获取角色列表
POST /role-config/list
Authorization: Bearer {token}
Content-Type: application/json
{
"userId": 123
}
# 角色配置保存
POST /role-config/save
Authorization: Bearer {token}
Content-Type: application/json
{
"userId": 123,
"roleId": 456,
"dailyTaskEnabled": 1,
"autoBattleEnabled": 1,
"bottleEnabled": 1
}
```
### ⚡ 任务执行
```http
# 执行指定角色每日任务
POST /daily-task/execute-role
Authorization: Bearer {token}
Content-Type: application/json
{
"roleId": 456
}
# 获取调度器状态
GET /daily-task/status
Authorization: Bearer {token}
```
## 🎯 核心功能详解
### 1. 🤖 智能任务调度系统
- **定时执行**: 每天12:10自动执行所有启用角色的每日任务
- **并发处理**: 支持10+角色同时执行,提升效率
- **失败重试**: 智能重试机制,确保任务执行成功
- **监控告警**: 实时监控任务状态,异常及时通知
### 2. 🎮 全方位游戏自动化
```javascript
// 支持的游戏功能
const gameFeatures = {
daily: "每日任务自动完成",
battle: "自动战斗与挂机",
arena: "竞技场自动挑战",
bottle: "瓶子功能管理",
nightmare: "噩梦副本挑战",
legion: "军团活动参与",
friend: "好友批量操作",
store: "商店智能购买",
charm: "符咒定时抢购"
};
```
### 3. 🛡️ 企业级安全保障
- **JWT认证**: 无状态安全令牌机制
- **数据加密**: 敏感数据AES加密存储
- **权限控制**: 用户只能操作自己的角色
- **防护机制**: 防止恶意请求和数据泄露
### 4. 📊 数据监控与分析
- **执行日志**: 详细记录每次任务执行情况
- **性能统计**: 任务执行时长、成功率统计
- **实时监控**: 系统运行状态实时展示
- **健康检查**: 服务健康状态自动检测
## 📈 系统性能
| 指标 | 规格 | 说明 |
|------|------|------|
| 🎮 **角色支持** | 无限制 | 支持管理无限个游戏角色 |
| ⚡ **并发能力** | 10+ | 同时处理10个以上角色 |
| 🕐 **服务时间** | 24/7 | 全天候不间断服务 |
| 📡 **响应速度** | <200ms | 接口响应时间小于200毫秒 |
| 🔒 **安全等级** | 企业级 | 银行级安全标准 |
| 💾 **数据可靠** | 99.9% | 数据完整性保障 |
## 🔧 配置说明
### application.yml 核心配置
```yaml
# 数据库配置
spring:
datasource:
url: jdbc:mysql://localhost:3306/xyzw?useUnicode=true&characterEncoding=utf8&useSSL=false
username: ${DB_USERNAME:root}
password: ${DB_PASSWORD:password}
driver-class-name: com.mysql.cj.jdbc.Driver
# Redis配置
redis:
host: ${REDIS_HOST:localhost}
port: ${REDIS_PORT:6379}
password: ${REDIS_PASSWORD:}
database: 0
timeout: 10000ms
# 任务调度配置
task:
scheduling:
pool:
size: 20
thread-name-prefix: task-
# JWT配置
jwt:
secret: ${JWT_SECRET:your-secret-key}
expiration: 86400000 # 24小时
# 日志配置
logging:
level:
com.xyyx.xyzw_helper: INFO
pattern:
file: "%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{50} - %msg%n"
file:
name: logs/xyzw_agent.log
```
## 🐳 Docker 部署
### Dockerfile
```dockerfile
FROM openjdk:17-jdk-alpine
VOLUME /tmp
COPY target/xyzw_helper.jar app.jar
EXPOSE 8080
ENTRYPOINT ["java","-jar","/app.jar"]
```
### docker-compose.yml
```yaml
version: '3.8'
services:
app:
build: .
ports:
- "8080:8080"
environment:
- DB_USERNAME=root
- DB_PASSWORD=password
- REDIS_HOST=redis
depends_on:
- mysql
- redis
mysql:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: xyzw
volumes:
- mysql_data:/var/lib/mysql
- ./src/main/resources/db/init.sql:/docker-entrypoint-initdb.d/init.sql
redis:
image: redis:6-alpine
volumes:
mysql_data:
```
### 部署命令
```bash
# 构建并启动
docker-compose up -d
# 查看日志
docker-compose logs -f app
# 停止服务
docker-compose down
```
## 🧪 测试
### 单元测试
```bash
# 运行所有测试
mvn test
# 运行指定测试类
mvn test -Dtest=XyzwHelperApplicationTests
# 生成测试报告
mvn surefire-report:report
```
### 集成测试
```bash
# API测试
curl -X POST http://localhost:8080/user/login \
-H "Content-Type: application/json" \
-d '{"username":"test","password":"test123"}'
# 健康检查
curl http://localhost:8080/daily-task/health
```
## 📊 监控运维
### 应用监控
```bash
# 查看应用状态
curl http://localhost:8080/actuator/health
# 查看应用信息
curl http://localhost:8080/actuator/info
# 查看JVM信息
curl http://localhost:8080/actuator/metrics/jvm.memory.used
```
### 日志监控
```bash
# 实时查看日志
tail -f logs/xyzw_agent.log
# 搜索错误日志
grep "ERROR" logs/xyzw_agent.log
# 查看任务执行日志
grep "每日任务" logs/xyzw_agent.log
```
## ❓ 常见问题
Q: 如何配置多个数据库环境?
A: 在`application.yml`中配置多个profile:
```yaml
---
spring:
profiles: dev
datasource:
url: jdbc:mysql://dev-server:3306/xyzw
---
spring:
profiles: prod
datasource:
url: jdbc:mysql://prod-server:3306/xyzw
```
启动时指定环境:`--spring.profiles.active=prod`
Q: 如何调整任务执行时间?
A: 修改`DailyTaskScheduler.java`中的Cron表达式:
```java
@Scheduled(cron = "0 10 12 * * ?") // 每天12:10执行
```
或通过配置文件:
```yaml
scheduler:
daily-task:
cron: "0 30 8 * * ?" # 每天8:30执行
```
Q: 如何增加新的游戏功能?
A: 实现`BusinessAbility`接口:
```java
@Component
public class NewGameAbility implements BusinessAbility {
@Override
public String getType() {
return "NEW_GAME_FEATURE";
}
@Override
public void handleMessage(String message) {
// 处理业务逻辑
}
}
```