C# practice in Game Development
Browse the rooms before signing in. Opening a room requires an account and follows your existing access. 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 room.
Bank the Combo
The score pop-up needs one authoritative number for hits, misses, and rising combos.
conditions, scoring. Free room.
Bounce the Ball
A contact normal has arrived from collision detection. Reflect the incoming velocity cleanly.
vectors, reflection. Free room.
Catch the Paddle
The paddle must obey velocity and frame time without ever leaving the playfield.
delta-time, clamping. Free room.
Pace the Blaster
Count an ideal scheduled burst, including its immediate shot, without adding time at the boundary.
cooldowns, time-modeling. Account access required.
Save the Late Jump
The player pressed jump just before landing, or just after stepping off. Forgiveness should feel intentional.
coyote-time, input-buffering. Account access required.
Separate the Hitboxes
The broad phase handed you two boxes. Decide whether they genuinely overlap, not merely touch.
aabb, collision-detection. Account access required.
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. Account access required.
Lead the Target
A tower must aim where the target will be, not where it was when the projectile launched.
interception, quadratic-equation. Account access required.
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. Account access required.
Route the Runner
A courier needs the shortest four-direction route across a small blocked grid.
breadth-first-search, grid-navigation. Account access required.
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. Account access required.
Audit the Dungeon
A procedural seed produced floor cells. Prove how much of the dungeon is actually connected.
flood-fill, procedural-generation. Account access required.
Budget the Fixed Step
A choppy sequence of render frames must feed a stable simulation without losing leftover time.
fixed-timestep, accumulator. Account access required.
Choose the Enemy Intent
An enemy needs an explainable priority decision from health, perception, memory, range, and ammunition.
decision-policy, priority-order. Account access required.
Query the Crowd
Hundreds of actors share a lane. Count nearby pairs without testing every pair blindly.
spatial-hashing, broad-phase. Account access required.
Direct the Final Wave
Spend a cost budget on a once-only selection of enemies to maximize total threat.
dynamic-programming, encounter-design. Account access required.
Migrate the Save Slot
Players are returning with old save slots. Upgrade their progress without silently discarding state.
save-migration, validation. Account access required.
Replay the Correction
A corrected earlier input changes later velocities. Replay the sequence to recompute its final position.
rollback, deterministic-simulation. Account access required.
Seed the Spawn Run
A bug report names a seed. The exact spawn sequence must be reproducible on every machine.
prng, reproducibility. Account access required.