wave8-wrong-system-group-fixed-timestep

Move Unity DOTS fixed-timestep logic into FixedStepSimulationSystemGroup.

6|Updated Apr 2, 2026
One-click install
npx skills add https://github.com/dyCuong03/unity-agent-team --skill wave8-wrong-system-group-fixed-timestep
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: wave8-wrong-system-group-fixed-timestep
Source: https://github.com/dyCuong03/unity-agent-team/tree/main/.claude/skills/unity-dots/wave8-wrong-system-group-fixed-timestep
Command: npx skills add https://github.com/dyCuong03/unity-agent-team --skill wave8-wrong-system-group-fixed-timestep

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It prevents fixed-timestep simulation code from running in the wrong Unity DOTS system group, which causes frame-rate-dependent behavior and nondeterministic physics.

Core Features & Use Cases

  • Pinpoint the failure mode: identify when your system applies forces, writes physics components, or processes collision/trigger events on a render-driven cadence instead of a fixed simulation cadence.
  • Move logic to the correct group: refactor systems into FixedStepSimulationSystemGroup with appropriate UpdateBefore/UpdateAfter ordering for deterministic execution.
  • Validate runtime correctness: ensure the fixed timestep is configured once (not per frame) and keep simulation-rate logic separate from render-rate interpolation.

Quick Start

Use wave8-wrong-system-group-fixed-timestep to review the target system’s current [UpdateInGroup] and ordering attributes, then rewrite it to run in FixedStepSimulationSystemGroup with correct before/after relationships.

Frequently Asked Questions about wave8-wrong-system-group-fixed-timestep

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

FAQPage Schema
Why does my Unity DOTS physics simulation behave differently at varying frame rates?▼

Frame-rate dependent behavior in Unity DOTS physics occurs when fixed-timestep simulation logic is placed in a render-driven system group instead of FixedStepSimulationSystemGroup. Relocating force application and collision processing ensures deterministic execution.

How do I fix nondeterministic collision responses in Unity DOTS?▼

To fix nondeterministic collision responses, review your system's [UpdateInGroup] attribute and move the logic into FixedStepSimulationSystemGroup. Apply correct UpdateBefore and UpdateAfter ordering to enforce a fixed simulation cadence.

What is the correct system group for writing PhysicsVelocity in Unity DOTS?▼

PhysicsVelocity writes belong in FixedStepSimulationSystemGroup to maintain deterministic physics. Placing these component updates in render-rate groups causes frame-rate dependency and inconsistent simulation results.

Can I configure the fixed timestep per frame in Unity DOTS?▼

No, the fixed timestep configuration should be set once during initialization, not per frame. Configuring it repeatedly causes simulation inconsistencies and breaks the deterministic execution required for physics logic.

How do I separate simulation-rate logic from render-rate interpolation in Unity DOTS?▼

Separate simulation-rate logic from render-rate interpolation by refactoring systems into FixedStepSimulationSystemGroup with proper UpdateBefore and UpdateAfter attributes, keeping fixed-rate execution isolated from render-driven updates.

When should I use FixedStepSimulationSystemGroup instead of the default simulation group?▼

Use FixedStepSimulationSystemGroup when systems apply forces, write PhysicsMass, or handle collision and trigger events. These operations require a fixed simulation cadence to prevent nondeterministic physics and frame-rate dependencies.