Kinda random generation of level

We have a few rules that the "random" level needs to abide by just to make the level completable. For example; if

  • There must always be a way to succeed
  • Difficulty should start low and increase over time
  • Difficulty should never increase so much as to conflict with the first rule
  • This means always more than a ship width between atleast two vertical asteriods
  • And atleast a ship length between waves of asteroids.
  • Asteroids should never overlap

Nifty Youtube vid by Jorge Rodriguez Here is a clever method for ensuring atleast the requirements are met.