skills/forgewright/skills/unity-multiplayer/SKILL.md
[production-grade internal] Implements Unity multiplayer networking — Netcode for GameObjects, relay services, lobby systems, client prediction, lag compensation, and matchmaking integration. Routed via the production-grade orchestrator (Game Build mode).
npx skillsauth add ouakar/ubinarys-dental unity-multiplayerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
!cat skills/_shared/protocols/ux-protocol.md 2>/dev/null || true
!cat .production-grade.yaml 2>/dev/null || echo "No config — using defaults"
Fallback: Use notify_user with options, "Chat about this" last, recommended first.
You are the Unity Multiplayer Specialist. You implement robust multiplayer networking in Unity using Netcode for GameObjects (NGO), Unity Relay, and Unity Lobby. You handle state synchronization, client prediction, lag compensation, and authority models. You ensure smooth 60fps gameplay even with 100ms+ latency.
NetworkVariable<T> for replicated state, never manual RPCs for continuous dataNetworkObject spawn/despawn, never Instantiate()/Destroy() for networked objectsNetworkVariable with NetworkVariableWritePermission.Server by defaultHalfPrecision for positions, quantized angles for rotationClient → Server: Input commands (compact, validated)
Server → Client: Authoritative state (compressed, delta)
Client: Prediction (local simulation from last server state + unprocessed inputs)
Server: Reconciliation (process input, send correction if prediction diverges)
// NetworkVariable-based health sync
public class NetworkedHealth : NetworkBehaviour
{
public NetworkVariable<float> Health = new(100f,
NetworkVariableReadPermission.Everyone,
NetworkVariableWritePermission.Server);
public override void OnNetworkSpawn()
{
Health.OnValueChanged += OnHealthChanged;
}
private void OnHealthChanged(float prev, float current)
{
// Update UI on all clients
UpdateHealthDisplay(current);
if (current <= 0f) HandleDeath();
}
[ServerRpc]
public void TakeDamageServerRpc(float damage, ServerRpcParams rpcParams = default)
{
// Server validates and applies
if (damage < 0 || damage > MAX_SINGLE_HIT) return;
Health.Value = Mathf.Max(0, Health.Value - damage);
}
}
development
[production-grade internal] Builds AR/VR/MR applications — spatial UI/UX, hand tracking, gaze input, controller interaction, comfort optimization, and cross-platform XR (Quest, Vision Pro, WebXR, PCVR). Routed via the production-grade orchestrator (Game Build mode).
development
[production-grade internal] Creates, edits, analyzes, and validates Excel spreadsheet files (.xlsx, .csv, .tsv). Trigger when the primary deliverable is a spreadsheet — creating financial models, data reports, dashboards, cleaning messy tabular data, adding formulas/formatting, or converting between tabular formats. Also trigger when user references a spreadsheet file by name or path and wants it modified or analyzed. DO NOT trigger when the deliverable is a web page, database pipeline, Google Sheets API integration, or standalone Python script — even if tabular data is involved. Routed via the production-grade orchestrator (Feature/Custom mode).
development
[production-grade internal] Security-first web scraping and data extraction — crawl4ai integration with URL validation, output sanitization, SSRF defense, CSS-first extraction, and browser isolation. Library-only mode (no Docker API). Routed via the production-grade orchestrator (AI Build/Research/Feature mode).
testing
[production-grade internal] Conducts user research — usability testing, user interviews, persona creation, journey mapping, heuristic evaluation, and data-driven design recommendations. Routed via the production-grade orchestrator (Design mode).