C# practice in Game Development
Browse the rooms before signing in. All rooms are free with an account. Practice does not issue certificates.
Advance the Cel
A sprite sheet has to choose a stable animation frame from elapsed time.
animation-time, indexing. Free with an account.
Bank the Combo
The score pop-up needs one authoritative number for hits, misses, and rising combos.
conditions, scoring. Free with an account.
Bounce the Ball
A contact normal has arrived from collision detection. Reflect the incoming velocity cleanly.
vectors, reflection. Free with an account.
Catch the Paddle
The paddle must obey velocity and frame time without ever leaving the playfield.
delta-time, clamping. Free with an account.
Pace the Blaster
Count an ideal scheduled burst, including its immediate shot, without adding time at the boundary.
cooldowns, time-modeling. Free with an account.
Save the Late Jump
The player pressed jump just before landing, or just after stepping off. Forgiveness should feel intentional.
coyote-time, input-buffering. Free with an account.
Separate the Hitboxes
The broad phase handed you two boxes. Decide whether they genuinely overlap, not merely touch.
aabb, collision-detection. Free with an account.
Turn the Sentry
Clamp a patrol step that crosses a marker and choose the inward direction; exact contact alone does not turn it.
state-update, patrol-ai. Free with an account.
Lead the Target
A tower must aim where the target will be, not where it was when the projectile launched.
interception, quadratic-equation. Free with an account.
Resolve the Arena Wall
A fast orb ended the frame outside the arena. Correct the contact without bouncing an orb already moving inward.
penetration-resolution, velocity-response. Free with an account.
Route the Runner
A courier needs the shortest four-direction route across a small blocked grid.
breadth-first-search, grid-navigation. Free with an account.
Soften the Camera
Follow a fixed target with a declared half-life, preserving the same decay across split frame intervals within rounding.
exponential-smoothing, frame-rate-independence. Free with an account.
Audit the Dungeon
A procedural seed produced floor cells. Prove how much of the dungeon is actually connected.
flood-fill, procedural-generation. Free with an account.
Budget the Fixed Step
A choppy sequence of render frames must feed a stable simulation without losing leftover time.
fixed-timestep, accumulator. Free with an account.
Choose the Enemy Intent
An enemy needs an explainable priority decision from health, perception, memory, range, and ammunition.
decision-policy, priority-order. Free with an account.
Query the Crowd
Hundreds of actors share a lane. Count nearby pairs without testing every pair blindly.
spatial-hashing, broad-phase. Free with an account.
Direct the Final Wave
Spend a cost budget on a once-only selection of enemies to maximize total threat.
dynamic-programming, encounter-design. Free with an account.
Migrate the Save Slot
Players are returning with old save slots. Upgrade their progress without silently discarding state.
save-migration, validation. Free with an account.
Replay the Correction
A corrected earlier input changes later velocities. Replay the sequence to recompute its final position.
rollback, deterministic-simulation. Free with an account.
Seed the Spawn Run
A bug report names a seed. The exact spawn sequence must be reproducible on every machine.
prng, reproducibility. Free with an account.