goyo666 Sure <img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":)" title="Smile"> I'm a bit obsessed with procedural generation at the moment - this is my first project that uses it and while the engine still needs quite a lot of work, I'm pretty happy with how it's going. I started with abhilash's procedural generation tutorial (http://www.scirra.com/forum/procedural- ... 43387.html) and while I didn't end up using his miner method exactly, it was a great introduction to concepts like nested loops and using arrays to generate a map (fun fact: until a month or so ago I'd never used either, I thought all that stuff was too advanced for me…). I definitely recommend that tutorial for anyone who's interested in proc genning in Construct 2.
The engine works in steps - first I fill the map array with the value corresponding to "EarthTiles", then I do some miner method-type stuff to add the "BedrockTiles" value, then the gold seams, then some oblong-generation stuff to add the rooms and walls, then the tunnels. There are safeguards built in along the way to make sure things don't get too messy - eg tunnels can't overlap floor tiles in rooms, and rooms can't overlap bedrock or each other. The rooms were probably the most complicated bit, I spent ages getting those right!
Then there's the final step where I use the array to generate the actual tiles: most of the tiles are made using a Tilemap object, but some are good old sprites for convenience of working with the lighting system. The end result is that I have a bunch of variables I can play with to adjust the amount of rooms, bedrock, gold, tunnels etc on the map. I know I haven't provided too much detail here, but I'd be happy to PM you the capx and explain a bit more if you like <img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":)" title="Smile">
The lighting's comparatively simple: I have a layer of darkness (nontransparent black background) above the main layer, and I'm generating "lightwindow" sprites on this layer which are 46x46 black circles set to Destinationout. Whenever a lightwindow overlaps a floor tile sprite, it generates another lightwindow on that floor tile - because the tiles are 16x16 and the lightwindows are 46x46, this means they "radiate" out and don't spread to any tiles that aren't floor.
Because the lightwindow sprites were building up and affecting framerate as the player explores, I started using Rojohound's fantastic Canvas plugin: whenever a lightwindow is generated, it's pasted to the canvas and destroyed after 0.2 seconds, which is a much more framerate-efficient way of doing it (1 object instead of thousands! Same with Tilemap).
Argh that was a long post, but I hope it helps a bit! As I say, happy to chat a bit more about it and share the capx in PM - but definitely check out abhilash's tutorial, that pretty much laid the groundwork for everything I've done here.