I have over the last couple of days been experimenting with Unity. It's a 3D game development environment. It's basically a 3D editor and scripting tool where you can load 3d models or create primitives in Unity, then add script to control those entities.
It am considering moving my project from 2d to 3d. All my game stuff right now is very basic, so a few new textures and it should be working.
I have not tried to generate a lot of random stuff in Unity, so don't know if my random level stuff would work, but it's worth a try.
There is a free version of Unity that everybody can download and use. Games developed in this free version is as far as I can see yours to do with as you please. There is of coarse a lot of stuff missing from the free version that you would get in the pro version, like real time shadows, refraction and other stuff that would be cool to have.
One more thing that unity allows for is releasing executables for different platforms, Windows, Mac, Iphone and android. You can also create a web launcher so that you game can be run from a web page, now that would be great for my project so that it can be played directly from the site I choose to release it from.
One downside is that I have to learn a 3d program of some sort. Hmmmm, not my strong side but might be a great learning experience and being self proficient might be a good thing.
More experimenting will follow. If it proves suitable for my project I will switch to Unity.