particles.forEach(p => p.x += p.vx); particles.forEach(p => p.y += p.vy); particles.forEach(p => { if (p.x + p.radius > canvas.width || p.x - p.radius < 0) p.vx *= -1; if (p.y + p.radius > canvas.height || p.y - p.radius < 0) p.vy *= -1; }); }, 33); } init(); Albion: This is a particle system where the particles' movements are influenced by simple physics rules (bouncing off edges). There's no central control dictating their behavior — they move according to basic forces and constraints. The emergent pattern is what arises from all of them interacting over time, without any pre-designed outcome.