Files
Ananta-ps/.agents/skills/ananta-ps-engine/SKILL.md
T

122 lines
6.5 KiB
Markdown
Raw Normal View History

---
name: ananta-ps-engine
description: >-
Expert toolkit, procedures, and architectural patterns for reverse engineering,
proxying, and emulating NetEase Unity/il2cpp games (specifically Project Mugen /
Ananta CBT 4229938 and similar NetEase titles). Use when the user asks to analyze,
build, configure, debug, patch, or run private servers, proxies, authentication bypasses,
combat routers, NPC/monster spawners, weather engines, or protocol handlers.
---
# Ananta & NetEase Unity Private Server Engine Skill
This skill provides the comprehensive architectural blueprint, protocol specifications, and operational runbooks for developing and maintaining private servers for **Project Mugen / Ananta (client 4229938)** and similar NetEase Unity/il2cpp titles.
---
## Architecture Overview
```mermaid
flowchart TD
subgraph Client["Ananta Client (Unity IL2CPP 4229938)"]
CA["GameAssembly.dll\n(TLS & Anti-Cheat Bypassed)"]
UI["Unity UI & MPay WebView"]
GameWorld["In-Game World\n(Combat / NPCs / Weather)"]
end
subgraph Proxy["HTTPS Proxy Stack (:443, :80, :5801)"]
Cert["DRMK Local Proxy Root CA"]
AuthBypass["MPay JS Bridge Auth Bypass"]
ShaderOOM["Shader Warmup OOM Suppressor"]
ServerList["7-Column Server List Provider"]
end
subgraph Server["Game Server (.NET 8 C#)"]
LoginGate["Login & Gate Service (:5200, :5201)"]
WorldRouter["UXRPC Game Router (:5202)"]
CombatRouter["Pure DRMK Combat Router"]
NpcRouter["Unified Agent & POI Spawner"]
DebugAPI["Embedded Debug WebUI (:5809)"]
end
UI -->|HTTPS Login & Gateway| Proxy
CA -->|UXRPC Protocol| Server
Proxy -->|Redirect to Gate| LoginGate
LoginGate -->|Hand off to World| WorldRouter
WorldRouter --> CombatRouter
WorldRouter --> NpcRouter
DebugAPI -->|REST Controls| WorldRouter
```
---
## Core System Pillars & Reference Manuals
### 1. Unified NPC & Monster Entity System
- **Single Agent Model**: Monsters, bosses, street citizens, police officers, and domestic animals all share the exact same entity schema defined in `AgentConfig.json` (9,347 records).
- **Faction Camps**: Camp `0`/`26` for hostile monsters/bosses, Camp `2` for civilians, Camp `11` for animals, Camp `16..25` for police/guards.
- **POI Actions**: Idle (`2`), Walk (`1`), Run (`4`), Phone Call (`11`), Lean on Wall (`10`), Sit (`12`/`13`), Clapping (`6`), and Panic (`3`).
- **Player-Relative Grid**: Spawns groups in front of the player based on live yaw angle and configurable X/Z spacing.
- 📖 [Detailed NPC & Monster System Guide](./references/npc_and_monster_system.md)
### 2. Pure DRMK Combat & Character Switching
- **Unbroken Combos**: Eliminates artificial server-side cooldown ticks (`SkillCooldownUntilTicks`) so multi-hit light attacks, heavy attacks, and skills chain smoothly without animation stutter.
- **Authoritative Replenish**: Stamina and ultimate charge are replenished exclusively when the full combo chain finishes (`restoreResources == true`).
- **Clean Despawn (`SyncLogicAgentLeave`)**: Formally removes previous characters from the world when switching, completely preventing character lockups, ghost entities, and floating "F" interaction prompts.
- 📖 [Detailed Combat & Switching Architecture Guide](./references/combat_and_switching_system.md)
### 3. Scene ("Raid") Switching, Weather & Map Warp
- **Triad ID Architecture**: Scene transitions require authoritative `raidId`, `instanceId`, and `universeId` matching `RaidConfig.json` and `MapentranceConfig.json`.
- **Hybrid Atmospheric Control**: 5 standard weather states (`WeatherCatalog4229938`) coupled with client overrides for GPU particle rain (`SetGPURainActive`) and Volumetric Exponential Fog (`SetFogDensity`).
- **2-Click Pin & Warp**: Click once to place pin, click pin again to warp. Protects against fallback to void coordinates `(0, 0, 0)`.
- 📖 [Detailed Scene, Weather & Map Warp Guide](./references/scene_and_weather_system.md)
### 4. Embedded Debug API & Web Management Panel
- **Integrated Daemon**: Self-contained HTTP REST server on `http://127.0.0.1:5809/` with frontend `index.html` compiled into `Ananta.App.dll`.
- **Interactive Catalog Table**: Realtime search across all 9,347 agents with category tabs, pose picker, and `[➕ Add]` buttons to queue spawn commands instantly.
- 📖 [Detailed Debug API & WebUI Guide](./references/debug_api_and_webui.md)
### 5. Multi-Domain HTTPS Proxy & Auth Bypass
- **Native MPay JS Bridge**: Auto-authenticates web logins without touching NetEase authentication servers.
- **Shader Warmup OOM Prevention**: Suppresses the 11k shader pre-warmup routine (`triggerWarmupBelowVersion: ""`) to prevent 19GB memory exhaustion.
- **7-Column Server List**: Passes client Contract MD5 verification.
- 📖 [Detailed Proxy & Security Bypass Guide](./references/proxy_and_security_bypass.md)
### 6. Protocol Codec & V7 4-Step World Entry
- Strict handoff sequence: `SyncLogicAgentEnter` $\to$ `SyncManagedLogicAgent` $\to$ `SyncRaidBattleUnitSpirit` $\to$ `SyncPlayerCurrentSpirit` $\to$ `SyncSceneLoadCompleted`.
- 📖 [Detailed Protocol & World Entry Guide](./references/protocol_and_world_entry.md)
### 7. Client Binary Patching (`GameAssembly.dll`)
- TLS certificate pinning bypass (`ValidateCertificate` $\to$ `31 C0 C3`).
- NEAC anti-cheat driver suppression.
- 📖 [Detailed Binary Patching Guide](./references/binary_patching_guide.md)
---
## Standard Runbook
### Step 1: Network & Certificate Preparation
1. Verify `C:\Windows\System32\drivers\etc\hosts` redirects `l50.update.netease.com` and related domains to `127.0.0.1`.
2. Ensure `DRMK Local Proxy Root` CA is installed in `Cert:\LocalMachine\Root`.
3. Verify ports `80`, `443`, `5801`, `5200`, `5201`, `5202`, and `5809` are free.
### Step 2: Game Directory Verification
- `NtUniSdkBase.dll`: Must be original NetEase DLL (~6.16 MB), never a dummy stub.
- `GameAssembly.dll`: Patched with TLS pinning bypass (`31 C0 C3`).
- `boot.config`: Original game version (`pkg-version=20260804051818394p0`).
### Step 3: Launching Stack
Run proxy and server together:
```powershell
# From workspace root:
.\START.cmd
```
### Step 4: Verification Checklist
- [ ] Proxy logs `[PX] listening on https://0.0.0.0:443`.
- [ ] Server prints `[READY] Приватный Сервер | client=4229938 | login=:5200,:5201 | game=:5202`.
- [ ] Launch `Ananta.exe`.
- [ ] No "Configuration content is corrupted" dialog.
- [ ] No 19GB RAM OOM crash.
- [ ] WebUI accessible at `http://127.0.0.1:5809/`.
- [ ] Entering world completes with active character controllable.