架构
ArcartX-Suite 共享同一组反射桥、同一套客户端包守卫、同一份资源加载约定、同一份数据包流向约定。
一图概览
┌────────────────────────────────────────────────────────────────┐
│ ArcartX-Suite │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌────────────┐ │
│ │ Bridge │ │ Security │ │ Config │ │ Combat / │ │
│ │ (反射桥) │ │ (Guard, │ │ (Sync) │ │ │ │
│ │ │ │ Sign) │ │ Sync) │ │ │ │
│ └────┬─────┘ └────┬─────┘ └────┬─────┘ └─────┬──────┘ │
│ │ │ │ │ │
│ ┌────▼──────────────▼──────────────▼───────────────▼─────┐ │
│ │ 26 个 Module (config / service / │ │
│ │ listener / placeholder / command) │ │
│ └────┬───────────────────────────────────────────────┬───┘ │
│ │ sendPacket(player, uiId, handler, payload) │ │
└───────┼───────────────────────────────────────────────┼────────┘
│ │
┌────▼─────┐ ┌────▼─────┐
│ ArcartX │ ──────── WebSocket ─────────────── │ 客户端 │
│ 服务端 │ ◄ Packet.send(packetId, action) ─ │ MOD │
└──────────┘ └──────────┘模块化
- Modular — 宿主 + 模块 Jar 架构:模块加载、重载、UI 注册、开发指南
四个共享层
集成与通信
- Bridge — 反射桥:全部通过反射 + 类名探测访问第三方 API
- CrossServer — 统一跨服 SDK:全模块共用 Redis/Proxy 双后端与 JSON 信封
- Packet Flow — init/update/close 协议:UI 数据包五段式生命周期
安全与资源
- Security — ClientPacketGuard:速率限制 + 包守卫
配置与 UI
- Config Autofix — 配置智能诊断
- UI Packet 数据全景:各模块 UI 变量与回包动作自动索引
开发者 API
提供独立的 ArcartX-Suite-api 模块作为第三方开发的稳定接口层,详见 API 参考。
- 模块生命周期 — AXSModule / AbstractAXSModule / ModuleDescriptor
- ModuleContext 上下文 — 桥接、事件、命令、资源导出
- 桥接 API — PacketBridgeAPI / ClientBridgeAPI / ItemBridgeAPI
- 事件 — ModuleLifecycleEvent
- Capability 跨模块通信
数据库
ArcartX-Suite 用 HikariCP + SQLite/MySQL 共存:
- 默认
mode: sqlite,文件位于plugins/ArcartX-Suite/<module>.db - 改
mode: mysql后填连接信息即可切换 - 所有模块用各自独立的连接池
涉及持久化的模块:title / mail / chat / onlinerewards / loginview / map / warehouse / market / battlepass / fishing / lottery / afkreward / menu / regions