About this game Starlight Survivor
Development notes
Replays instead of scores
The rules live in one file shared by the page and the server. The browser records an entry only when your input changes, plus your card picks, and the server re-runs the five minutes from them. So that every browser engine gets identical numbers, the simulation uses no trigonometric functions or Math.pow; spawn directions and blade rotation multiply precomputed cos/sin constants. Each replay carries its rules version, so records made under older rules still verify.
A bot sets the difficulty
A test bot that dodges lanes, shots and circles plays 50 fixed seeds in every test run; the test fails if it reaches dawn in under 20% or over 50% of them. Under the first rules a test bot got there once in 71 runs, so dawn was decoration. The fourth rule set cut damage taken, raised starting HP to 160, widened pickup range, added evolutions and moved the first giant from 1:30 to 2:00, lifting the bot from 4% to 30%. The fifth sits at 17 of 50, with a median survival of 4:18 over 150 seeds.
Fixing a flat middle
Under the fourth rule set the enemy count sat at its 180 cap from 2:30 to 3:30, kills per 30 seconds stayed at 73 to 79, and the screen filled with tough skeletons and ghosts. The fifth mixes weak slimes and bats back in and adds swarms, the lull and floor rewards; kills per 30 seconds now swing from 40 to 210. Orbit Blades, Thorn Aura and Boomerang had drawn only 10%, 8% and 21% of damage even for bots that chose them first; after retuning, single-weapon bots reach dawn in 11 to 20 of 40 seeds, whatever the weapon.
Updated: