ID:154228
 
There was a game that I created quite a while ago (around 5 months, I think) called Distant World where you colonized a random map with little structures and all that, but that's irrelevant. The map in DW consisted of 5 different free textures from random texture web sites that were resized and sometimes re-colored to fit with the game. Now, when it generated a random map, all it did was randomize what each turf in the game was, so you'd end up with a bunch of different squares in random patters as a map. It wasn't the most impressive looking thing ever. So, I was wondering if anyone had some clever ideas for how to generate a "more professional" looking map that'd fit an alien planet type theme...

Go wild, I'm not picky. I just need some ideas!
Foomer wrote:
There was a game that I created quite a while ago (around 5 months, I think) called Distant World where you colonized a random map with little structures and all that, but that's irrelevant. The map in DW consisted of 5 different free textures from random texture web sites that were resized and sometimes re-colored to fit with the game. Now, when it generated a random map, all it did was randomize what each turf in the game was, so you'd end up with a bunch of different squares in random patters as a map. It wasn't the most impressive looking thing ever. So, I was wondering if anyone had some clever ideas for how to generate a "more professional" looking map that'd fit an alien planet type theme...

Go wild, I'm not picky. I just need some ideas!

Well what you could do is make it so different squares you can build certian things, but it would be good if it makes it in 4 x 4 spots so areas arent crazy. But it would be cool if like say icelands you build a factory on and makes your civalization grow.
In response to Tazor07
Hmm Tz that sounds sooo Class C of Star Traders :)

Ok dude, here is what you do, and what I was planning on doing later when I add in Random Cloud nebulas.

1st thing you need to do is seed the map with base file types. Then once you have those in place, do what I call the grow proc. Where each base will start to expand and grow until there are no more blank areas on the map. (For my cloud nebulas I'll just set a MAX number of grow areas)
Then to grow the base tiles you check the tiles in the 8 surrounding tile locations. If they have a tile already there, then check to see if its overlay var is greater than the one currently there. If so, then instead of placing a full tile it will do like a hedge/half tile icon and overlay the other one. Then just keep repeating this process till there are no blank areas to fill. If done right, it could also prove to make nice looking maps! ;)

I'll have an example of this later in Star Traders, don't think the cloud nebulas will make it into this release.

LJR
In response to LordJR
LordJR wrote:
Hmm Tz that sounds sooo Class C of Star Traders :)

Distant World isn't Star Traders -- it's nothing like it. =P

It's a city-building/civilisation game played only on the surface of a world.
In response to Spuzzum
ah ok.. well it was just the mention of an Iceland, where you could build stuff.

LJR
In response to LordJR
LordJR wrote:
ah ok.. well it was just the mention of an Iceland, where you could build stuff.

Well it was just an example and I dont think i ever player Star Traders.
In response to LordJR
And iceland where you can built stuff isn't the most uncommmon or original idea either, you know :oP
In response to LordJR
LordJR wrote:
Ok dude, here is what you do, and what I was planning on doing later when I add in Random Cloud nebulas.

1st thing you need to do is seed the map with base file types. Then once you have those in place, do what I call the grow proc. Where each base will start to expand and grow until there are no more blank areas on the map. (For my cloud nebulas I'll just set a MAX number of grow areas)
Then to grow the base tiles you check the tiles in the 8 surrounding tile locations. If they have a tile already there, then check to see if its overlay var is greater than the one currently there. If so, then instead of placing a full tile it will do like a hedge/half tile icon and overlay the other one. Then just keep repeating this process till there are no blank areas to fill. If done right, it could also prove to make nice looking maps! ;)

I don't quite follow the last part, but the first part I get. Incursion uses a similar system for creating maps.

I start with a map datum that has a list of a certain size (4x the number of tiles on the map, since the tiles break down into 2x2 sub-tiles). The list entries are either null, or another datum that represents a cell. Each cell can determine whether it has neighboring cells, empty cells, etc. To start out, a number of cells are filled in at random and grown into territories of random size (within min/max boundaries). Then, each of those "anchor" territories is surrounded by other territories by filling in a neighboring blank cell and expanding it. Then intersections (16x16-pixel areas covering the center of a 2x2 cell grid) are calculated, objects are created (with new icons, or icons being overlaid) to match the intersections. When all this is done, water routes are added to connect everything up.

Lummox JR
In response to Lummox JR
I start with a map datum that has a list of a certain size (4x the number of tiles on the map, since the tiles break down into 2x2 sub-tiles). The list entries are either null, or another datum that represents a cell. Each cell can determine whether it has neighboring cells, empty cells, etc. To start out, a number of cells are filled in at random and grown into territories of random size (within min/max boundaries). Then, each of those "anchor" territories is surrounded by other territories by filling in a neighboring blank cell and expanding it. Then intersections (16x16-pixel areas covering the center of a 2x2 cell grid) are calculated, objects are created (with new icons, or icons being overlaid) to match the intersections. When all this is done, water routes are added to connect everything up.

I myself rely on using my s_terrain terrain generator, which uses a system of distributing "blobs" across a given map, modifying the layer's heightmap around that blob (either through random noise or a simple radial augmentation), and then averaging all of the blobs together to create smoothened terrain. I'll eventually publish it on the hub. I gave people a sneak peek of a binary of it back whenever (you saw the demo too, Lummox JR) so if you're interested in seeing what it can do, check back on the forums for terrain generators.


I think what he meant with his latter method is to have gradients between two tile types. I tried that in Terra Dominus, but wound up lagging the map generation process more than 50 seconds from doing it, due to TD's huge map and large variety of terrain.

I didn't want to make every possible combination of an icon beforehand, either, so I was forced to rely on icon arithmetic and overlays.

Before some icon arithmetic optimizations were in, I managed to crash the game when I ran that process, and even if I didn't crash the game I often wound up using zillions of overlays across the 352x128 map, which completely defeated the purpose. It looked nice, though!

I'll turn it back on and show you the difference at some point.
In response to Foomer
Foomer wrote:
And iceland where you can built stuff isn't the most uncommmon or original idea either, you know :oP

I know it was just a example :P