Home▸Everyday Physics▸Kick Castle Simulator (2D)

Kick Castle Simulator (2D)

A side-view projectile-physics companion to the 3D castle siege: set launch angle, power and crosswind, choose stone or iron, and watch a live readout of launch speed, ideal range, max height, time of flight and kinetic energy while you try to break the gate before your kicks run out.

Everyday Physics2DModerate60 FPS📱 Mobile-adapted⇄ 3D version
2d-kick-castle-simulator ↗ Open standalone

The 3D version of this siege lets you drag-aim and hold-to-charge a kick at a castle rendered in Three.js. This 2D companion strips the scene down to a side-on projectile-motion diagram so the physics itself is the thing you're reading: an angle slider and a power slider set the launch speed and direction, a wind slider adds a constant lateral acceleration that pulls the shot off its no-wind arc, and switching between a 6 kg stone and a 14 kg iron ball changes both how far wind can drift it and how much kinetic energy it delivers on impact. A dotted guide line traces the textbook range/height/flight-time formulas for the current angle and power before you fire, and the live readout panel keeps v₀, range, max height, time of flight and kinetic energy updated as you adjust the sliders — the same numbers the simulated flight is built from, not a separate score screen. The castle itself is a breakable grid of bricks with a reinforced two-cell gate: enough hits crack the outer wall for style points, but only clearing every gate brick in that gap counts as a breach.

⚙ Under the hood

2D side-view projectile-motion lab: angle, power and wind sliders drive real kinematic equations (range = v₀²sin(2θ)/g, height = v₀²sin²θ/2g, flight time = 2v₀sinθ/g), with a live launch-physics readout and a breakable brick-and-gate castle wall.

projectile motionkinematicskinetic energywind driftcastle impact

2D · HTML5 Canvas 2D · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)