Files
BABA_YAGA/BABA_YAGA_Updater/sections/08_team_standards.md
2026-06-07 20:04:33 +07:00

12 KiB

Bộ máy Kỹ thuật (Core Engineering Team & WBS)

Dự án được phát triển và vận hành bởi một Micro-Studio 3 thành viên. Để đạt được chất lượng tiệm cận AAA-Indie trong một thời gian giới hạn, chúng tôi áp dụng mô hình chuyên môn hóa sâu (Deep Specialization) theo từng phân hệ kỹ thuật lõi.




SCOVE

Phân rã Công việc (Work Breakdown Structure)

  • Triển khai kiến trúc thuật toán Maze lõi (Prims, Wilsons, Crawler).
  • Xây dựng bộ máy Mesh Generation kiến tạo môi trường 3D tự động.
  • Giám sát tính Solvability (Đảm bảo Mê cung luôn có đường thoát khả thi).
  • Thiết kế toán học cho hệ thống Comeback Đa tầng (Despair Mechanics).
  • Code Review toàn cục & Quản lý vòng đời State Machine tổng.


DUY

Phân rã Công việc (Work Breakdown Structure)

  • Xây dựng & Quản lý hạ tầng Photon Fusion (Matchmaking, Session Relay).
  • Cấu trúc hóa [Networked Properties] cho thực thể động (Bẫy, Cửa, Trạng thái đèn).
  • Thiết lập logic phân vai mạng (Role Assignment) và Server Game State.
  • Tối ưu hóa băng thông & Viết thuật toán bù trừ nội suy (Reconciliation/Lerp).


TUẤN

Phân rã Công việc (Work Breakdown Structure)

  • Lập trình hệ thống Noise Meter & Quản lý quang năng (Flashlight/Battery).
  • Xây dựng Logic bẫy Trapper: Snare (Khống chế), Alarm (Báo động), Decoy (Giả thanh).
  • Phát triển Camera Dynamics (FOV Kick, Screen Shake, Tilt, Motion Blur).
  • Tích hợp 3D Spatial Audio & Hiệu ứng thị giác (VFX) tương tác môi trường.
  • Thiết kế trải nghiệm HUD & Luồng UI/UX (Menu, State transitions).


Giao thức Chất lượng (Strict Engineering Protocols)

Bộ tiêu chuẩn NFR (Non-functional Requirements) bắt buộc. Mọi dòng code được Commit (Merge Request) đều phải vượt qua bài kiểm tra chéo dựa trên 4 trụ cột kỹ thuật dưới đây.


<!-- CỘT 2: WORLD GEN -->
<td width="50%" style="padding: 15px; background: rgba(176,38,255,0.02); border-bottom: 2px solid #222;">
  <h3 style="margin: 0 0 10px 0; color: #B026FF;">
    <img src="https://api.iconify.design/lucide/layers.svg?color=%23B026FF" width="20" style="vertical-align: middle;"> World & Perf <i>(Assigned to: Scove)</i>
  </h3>
  <div style="font-size: 13px; color: #AAA; line-height: 1.6;">
    <strong style="color: #E0E0E0;">» Algorithmic Constraints:</strong> Thuật toán tạo hình mê cung phải bị giới hạn ở độ phức tạp <code>O(N)</code> hoặc <code>O(N log N)</code> tránh chặn luồng Main Thread.<br>
    <strong style="color: #E0E0E0;">» Draw Call Budget:</strong> Mesh mê cung sau khi sinh ra phải gộp (Static Batching / GPU Instancing) để giữ số lượng Draw Calls ở mức vi mô.<br>
    <strong style="color: #E0E0E0;">» Dynamic NavMesh:</strong> Bake tự động NavMesh <i>tại Runtime</i> sau khi chốt Seed mê cung, phục vụ AI Trapper hoặc kỹ năng đặc biệt.
  </div>
</td>
<!-- CỘT 4: VISUALS -->
<td width="50%" style="padding: 15px; background: rgba(255,215,0,0.02);">
  <h3 style="margin: 0 0 10px 0; color: #FFD700;">
    <img src="https://api.iconify.design/lucide/palette.svg?color=%23FFD700" width="20" style="vertical-align: middle;"> Render & UX <i>(Assigned to: Tuấn)</i>
  </h3>
  <div style="font-size: 13px; color: #AAA; line-height: 1.6;">
    <strong style="color: #E0E0E0;">» URP 6.0 Pipeline:</strong> Khai thác tối đa Render Graph của Unity 6 để tạo ra Light-baking & Shadow-mapping chân thực cao với chi phí thấp.<br>
    <strong style="color: #E0E0E0;">» Asset Compression:</strong> Chuẩn hóa mọi Texture về định dạng ASTC/DXT5. Polycount phải được kiểm duyệt khắt khe cho PC tầm trung.<br>
    <strong style="color: #E0E0E0;">» UX Consistency:</strong> Các phản hồi thị giác/thính giác (Máu me, Cảnh báo bẫy, Tiếng tim đập) phải đồng nhất về cường độ, tạo phản xạ có điều kiện cho User.
  </div>
</td>

Net-Sync (Assigned to: Duy)

» RTT Optimization: Duy trì Round Trip Time < 150ms. Tối ưu kích thước Payload mạng qua [Networked]Reliable RPCs.
» Absolute Server Auth: Mọi logic Thắng/Thua, Gây sát thương, Kích hoạt bẫy bắt buộc phải được xác thực trên Server để chống Hack/Desync.
» Proxy Smoothing: Nội suy (Interpolate) chuyển động của Remote Players để bù đắp hiện tượng Jitter do Packet Loss.

Mechanics (Assigned to: Tuấn)

» Deterministic Input: Polling Input phải được dời vào hàm FixedUpdateNetwork để đồng bộ hoàn hảo với Tickrate của Server.
» Physics Matrix: Quy hoạch chặt chẽ Layer Collision Matrix. Khuyến khích dùng Box/Capsule Colliders cho môi trường lắt léo để giảm tải CPU.
» FSM Integrity: Mỗi State trong Kinematic FSM là một Sandbox độc lập, nghiêm cấm tiêm/thay đổi biến (Mutate) chéo giữa các trạng thái.