Provide a "tick" event to each creature, say, with the number of milliseconds since the world started. This allows animations to remain consistent as the number of creatures increases, and prevents each creature implementing it's own setTimeout / requestAnimationFrame blocks, which will hit performance.