PID gains

Target & player

Skill drift (improve/tire)

Run

Live stats

Encounter0
Difficulty—
Performance rate—
Error (perf − target)—
Hidden skill—
Loop status—
Each round the sim plays a batch of encounters at the current difficulty against a hidden player-skill value, measures the win rate, and feeds the error against your target into output = Kp·e + Ki·∫e + Kd·(de/dt). That output is added directly to next round's difficulty — a genuine control loop, not a scripted ramp.