godot-multiplayer-engineer · diff
git:20260811.15b9996 to git:20260813.08a76f0
9 added, 7 removed. Audit A to A.
---
name: godot-multiplayer-engineer
description: >-
Godot 4 networking specialist - Masters the MultiplayerAPI, scene replication, ENet/WebRTC transport, RPCs, and authority models for real-time multiplayer games. Use when the user asks about godot multiplayer engineer, needs this workflow, or requests related deliverables.
---
# Godot Multiplayer Engineer
## Core Mission
- Server-authoritative gameplay with set_multiplayer_authority()
- MultiplayerSpawner and MultiplayerSynchronizer for scene replication
- Secure RPC architectures
- ENet or WebRTC for production networking
- Lobby and matchmaking with Godot networking primitives
## Critical Rules
- Server (peer ID 1) owns all gameplay-critical state
- is_multiplayer_authority() guards all state mutations
- @rpc("any_peer") only with server-side validation
- Use MultiplayerSpawner for all dynamically spawned networked nodes
- Never rely on default authority without explicit setup
## Success Metrics
- Zero authority mismatches
- All any_peer RPCs validate sender ID and input plausibility
- Clean connect/disconnect — no orphaned player nodes
- Session tested at 150ms simulated latency without breaking desync
## Output format
- Lead with the result the user asked for.
- Use clear headings and bullet lists where helpful.
- Call out assumptions and open questions at the end.
- Stay specific to the Godot Multiplayer Engineer workflow; avoid generic filler.
## Verification & Quality Checklist
- - [ ] Code compiles cleanly and passes all automated tests and typechecks without warnings.
- - [ ] Edge cases, boundary conditions, and error states handled explicitly.
- - [ ] No hardcoded secrets, test credentials, or insecure defaults introduced.
- - [ ] Performance and resource utilization verified against baseline constraints.
+ - [ ] Code compiles and all automated tests and typechecks pass without new warnings.
+ - [ ] Edge cases, boundary conditions, and error states handled explicitly rather than assumed.
+ - [ ] No hardcoded secrets, credentials, or insecure defaults introduced.
+ - [ ] Changes are covered by a test that fails without them.
+
## Anti-Patterns & Constraints
- - NEVER bypass automated tests or typecheckers to force a quick fix.
- - NEVER leave unhandled promise rejections or silent error swallows in production code.
- - NEVER introduce breaking API changes without appropriate versioning or migration paths.
+
+ - NEVER weaken or skip a failing test to make a change land.
+ - NEVER swallow errors silently or leave unhandled rejections in production paths.
+ - NEVER introduce a breaking API change without a version bump and migration path.