I've been playing around with different types of generation. Some are better than others. There are some interesting possibilities though. I am considering making this project into a cocos2d example project, possibly for the TMXGenerator.
I have done all of these with the framework that I laid out in my previous post. I have in some cases changed the mod1 and mod2 values though for the most part those stayed constant. For the marshlands specifically I changed those to be very small to make it more varied. The rest of the time this is height mapping two simplex noise passes in conjunction with each other.
Here are a few examples that I have saved the code for.
|Large layered grass and water|
|Simple watery beach area|
|Canyons and hills|
|Noisy lakes and mountains|
Whew! That was a lot of tweaking! For the most part all of those took 5 minutes or less, though a few (like the noisy lakes) took way longer just because I was tweaking them over and over to get the effect I was looking for.
All of this working with height maps makes me want to add a "random" height map system. One that can build a range of height information and mix that range info with 2 (or more?) simplex noise values that are related. Hmm... I could probably base it all off of the same seed number as well. Interesting. Anyway, it would be a lot of work to do what I've done here -- this took probably 2 hours of playing around. Building a randomizer would likely take a bit longer than that. However once done it would be really cool to save interesting height map generations for later use.
I also am itching to get the tile edges working as well. I think I need to do some maintenance though and make the new button actually work properly rather than leaking memory all over the place. Not to mention having sliders to change the generation would be great as well. Kind of a particle generator for maps I guess. =)
I hope to post more soon.