Network Settings
Open Edit > Project Settings, search for CAT Network Settings, and edit the values there. These settings are stored in the project's Game config.
Remote Physics Mode
RemotePhysicsMode selects how remote Assemblies are represented locally.
| Mode | Behavior |
|---|---|
Remote Dynamic |
Simulates the remote Assembly locally as dynamic bodies and corrects it toward server snapshots. Local physics simulation and server-state correction both operate. If the active backend does not support remote dynamic simulation, the execution component falls back to Snapshot Playback. |
Snapshot Playback |
Treats the remote Assembly as a kinematic snapshot-playback object. It replays received snapshots and smooths the visual state. This can suit cases where stable visual replication is more important than remote physics interaction. |
Choosing a mode
Choose based on whether remote objects need local dynamic simulation, whether stable visual playback of server snapshots is the priority, and multiplayer testing in your project. Neither mode is universally best.
Assembly Collision Channel Name
AssemblyCollisionChannelName defaults to CATAssembly. It names an optional Object Channel that CAT Assembly bodies can use for collision filtering. To use it, configure an Object Channel with the same name in Project Settings Collision settings. If the channel is not configured, existing collision behavior is unchanged; this setting does not automatically disable Assembly collision.
Physics Snapshot Tier Policies
CriticalPolicy, NormalPolicy, and LowPolicy let Assemblies use different snapshot rates and policies. The common fields are:
| Property | Description |
|---|---|
SyncMode |
FullOnly sends full snapshots. AccumulatedDirtyBodyDelta sends accumulated changed-body delta payloads after a full baseline; it falls back to a full snapshot when a full snapshot is required or delta construction cannot use a valid baseline. |
TargetSnapshotRateHz |
Target snapshot send rate. Values are normalized to 1–60 Hz. Higher values can reduce the interval between updates, but also increase bandwidth and CPU work. |
DeltaToFullFallbackCostRatio |
A 0–1 threshold used with delta snapshots. When the estimated delta payload cost divided by the estimated full-snapshot cost is greater than or equal to this value, CAT sends a full snapshot instead. A value of 0 disables this cost-ratio fallback. |
SafetyFullSnapshotInterval |
Interval in seconds for periodic full snapshots while delta delivery is used. A value of 0 disables the periodic-full condition. |
PassiveSmoothingTime |
Time in seconds supplied to passive/snapshot-playback smoothing. Smaller and larger values trade response against visual smoothing; tune it in multiplayer testing. Values are normalized to 0–1 seconds. |
bEnableSleepSuppression |
A policy field intended for suppressing unnecessary snapshots for sleeping bodies. The current snapshot replication implementation does not consume this field, so this release has no documented wake-transition behavior for it. |
Selecting a tier
An Assembly uses Normal by default. UCATAssemblyComponent exposes Blueprint-callable SetPhysicsSyncTier, GetPhysicsSyncTier, and GetResolvedPhysicsSnapshotPolicy; SetPhysicsSyncTier selects Critical, Normal, or Low for that Assembly. The Control Session implementation does not change the tier on session start or end, so project code must select a different tier when needed.
Plugin defaults and project overrides
The values below are plugin constructor defaults from UCATNetworkSettings::UCATNetworkSettings().
| Tier | SyncMode |
TargetSnapshotRateHz |
DeltaToFullFallbackCostRatio |
SafetyFullSnapshotInterval |
PassiveSmoothingTime |
bEnableSleepSuppression |
|---|---|---|---|---|---|---|
CriticalPolicy |
AccumulatedDirtyBodyDelta |
30 | 0.85 | 2 s | 0.08 s | true |
NormalPolicy |
AccumulatedDirtyBodyDelta |
15 | 0.85 | 4 s | 0.12 s | true |
LowPolicy |
AccumulatedDirtyBodyDelta |
5 | 0.85 | 8 s | 0.20 s | true |
The constructor also defaults RemotePhysicsMode to Remote Dynamic and AssemblyCollisionChannelName to CATAssembly. In this sample project, Config/DefaultGame.ini overrides RemotePhysicsMode to SnapshotPlayback and CriticalPolicy.SyncMode to FullOnly. These are current sample-project overrides, not defaults for every new project.