Files
2026-06-07 21:17:51 +07:00

4.6 KiB

Kiến trúc Mạng (Advanced Netcode Architecture)

Để đảm bảo tính công bằng trong một tựa game mang nặng yếu tố hành động lén lút và phản xạ ngàn cân treo sợi tóc, BABA_YAGA sử dụng Photon Fusion (State Sync) làm lõi đồng bộ. Hệ thống được tinh chỉnh để mô phỏng cảm giác "Độ trễ bằng 0" (Zero-Latency Feel) thông qua kiến trúc mạng tất định (Deterministic Network).




Client-Side Prediction

Mô phỏng trước các chuyển động của người chơi trên Local Client, loại bỏ hoàn toàn độ trễ Input Delay khi di chuyển hoặc lướt.



Server Authority

Máy chủ nắm quyền quyết định cuối cùng. Ngăn chặn triệt để các hành vi gian lận như Speedhack, Teleport hay thao túng Hitbox.



Lag Compensation

Rewind trạng thái Hitbox trên Server về đúng thời điểm Client thực hiện thao tác (Ping), đảm bảo tính chính xác cho các cú vồ/bẫy.


Vòng xoay Dữ liệu Mạng (Network Data Flow Pipeline)

Biểu đồ dưới đây mô tả luồng xử lý thông tin tại mỗi Tick (Khung hình mạng). Việc phân tách rõ ràng giữa Logical State (trạng thái mạng) và Visual Presentation (hiển thị hình ảnh) giúp khung hình của game (FPS) không bị khóa vào Tickrate của Server.

(Lưu ý: Các trích xuất HTML trong sơ đồ đã được chuẩn hóa để tương thích hoàn toàn với bộ phân tích Markdown)

sequenceDiagram
    autonumber

    box rgba(51, 204, 255, 0.05) "⚡ LOCAL ENVIRONMENT (Client Auth)"
        participant IR as "🖱️ Input"
        participant CP as "💻 Local Player"
    end

    box rgba(255, 51, 51, 0.05) "👑 SERVER ENVIRONMENT (State Auth)"
        participant NT as "📡 Network Layer"
        participant S as "🖥️ Server Tick"
    end

    box rgba(255, 215, 0, 0.05) "👁️ REMOTE OBSERVERS"
        participant RP as "👥 Proxies"
    end

    Note over IR,CP: [PHASE 1] DATA ACQUISITION
    IR->>CP: OnMove / OnAbility (Raw Input)
    CP->>CP: 📦 Pack NetworkInputStruct

    Note over CP: [PHASE 2] FORWARD PREDICTION
    CP->>CP: ⚡ Run Local Kinematics (Tick N)
    CP->>NT: 📤 Transmit Input Payload

    rect rgba(255, 51, 51, 0.1)
        Note over NT,S: [PHASE 3] SERVER VALIDATION (Simulation)
        NT->>S: Deliver UDP Packet
        S->>S: 🛡️ Validate Rules & Apply Physics
        S-->>NT: 📢 Broadcast State Snapshot (Tick N)
    end

    Note over NT,CP: [PHASE 4] RECONCILIATION PROTOCOL
    NT-->>CP: State Snapshot (Global Truth)
    CP->>CP: ⚖️ Check Desync (Threshold)
    CP->>CP: 🔄 Snap Pos & Resimulate if Error

    Note over NT,RP: [PHASE 5] PROXY INTERPOLATION
    NT-->>RP: State Snapshot
    RP->>RP: 〰️ Lerp Position / Rotation Smoothly

    Note over CP,RP: [PHASE 6] VISUAL RENDERING
    CP->>CP: 🎥 Update Local VFX / Camera Shake
    RP->>RP: 👻 Update Animator & Mesh Transforms