coherence-bandwidth-at-scale

Reduces coherence network bandwidth for scenes with hundreds of synced entities.

Updated Jul 8, 2026
One-click install
npx skills add https://github.com/cmitchellVFS/Scrabble --skill coherence-bandwidth-at-scale-cmitchellvfs
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: coherence-bandwidth-at-scale
Source: https://github.com/cmitchellVFS/Scrabble/tree/main/.claude/skills/coherence-bandwidth-at-scale
Command: npx skills add https://github.com/cmitchellVFS/Scrabble --skill coherence-bandwidth-at-scale-cmitchellvfs

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? When a Unity game using coherence syncs dozens or thousands of entities (crowds, swarms, projectiles, AI agents), bandwidth and CPU costs spike, causing lag, stutter, and hitting the 20 Hz send-rate ceiling or the 32,768-entities-per-client cap. ## Core Features & Use Cases - Deterministic local simulation: Sync only a seed and target reference via SyncMode.CreationOnly, letting every client compute identical motion locally instead of replicating transforms. - Interest management: Use CoherenceLiveQuery with tuned Extent and CoherenceTagQuery so distant entities never replicate to a client. - PredictionMode tuning: Set bindings to Always or InputAuthority so locally simulated state is not overwritten by stale network samples. - Use Case: In a horde survival game with 500 enemies, spawn each with a CreationOnly seed, run deterministic movement on every client, and gate replication with a LiveQuery around each player — cutting per-frame traffic to near zero. ## Quick Start Ask the AI to reduce bandwidth for my coherence scene with hundreds of synced enemies using deterministic simulation and CoherenceLiveQuery.

Frequently Asked Questions about coherence-bandwidth-at-scale

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I reduce bandwidth in coherence with many entities?▼

Stop syncing transforms for entities whose motion is deterministic: sync a seed and target once with SyncMode.CreationOnly, then run identical local simulation on every client. Add CoherenceLiveQuery for interest management so distant entities never replicate.

What is SyncMode.CreationOnly in coherence used for?▼

CreationOnly sends a field once at entity creation and never again, ideal for spawn-time configuration like seeds, type indices, or appearance variants. Late joiners still receive it during initial replication, but changing the value after creation will not propagate.

How does CoherenceLiveQuery interest management work?▼

CoherenceLiveQuery defines an axis-aligned box centered on its transform; entities outside the box are destroyed on that client and the replication server stops sending their updates. Extent is the half-side length, and a client can have at most 15 active queries.

What does PredictionMode.Always do on a coherence binding?▼

PredictionMode.Always discards incoming network samples so the binding keeps locally simulated values, which suits deterministic client-side simulation. It is not an interpolation setting — smoothness at low send rates is controlled by the binding's interpolation configuration.

Why does my deterministic simulation desync across clients?▼

Desync usually comes from UnityEngine.Random, which is shared global state, or from Time.time differing per client. Use per-entity System.Random instances seeded from a synced value and a synced StartSimFrame instead of wall-clock time.

When should I not use deterministic local simulation?▼

Avoid it when the simulation depends on physics raycasts against geometry that differs per client, when entities must interact with another client's input authority, or when exact agreement on hit registration is required — those must go through the authority.