Is it a huge matrix or what?
how did you set up the matrix handling? Several small matrices? One large one? If they're small, how'd you get the points on the edges to show seamlessly?
It's a 1000x1000 matrix in 'essence' although the display is kept dynamic so only a very limited area is actually ever created at one time. When you move about the matrix content is updated. This process is a little speed intensive, but kept to a frequency of every few seconds along with a frame rate compensation routine and I don't even notice it when I try to spot the moment that it updates.
Are all the objects/tiles in yours hand positioned or are they automatically generated?
Everything is fractally generated, designing sensible rules so that the road network made sense, the lake edges connect properly etc. That's the challenge, anyone can make a big map - the problem is filling it with content - and that's where this system is a winner.
Freescape places well over 100,000 objects onto the map - and for the most part, sensibly. Further colour was added by creating seperate hill and mountain routines to create the altitude map, hills have a shallow peak like an inverted china-bowl and mountains have a pointed peak like snagged tissue so I have recreated these aspects of topology rather than making a single and recurrsive height routine.
The terrain colouring routine is where the roads and lake edges are drawn, this routine also adds more colour to the terrain based on altitude. It was quite complicated to do because I wanted something I could describe as a 'road network' rather than random tarmac strips that didn't interconnect. I achieved the exact result I set out to make, which is rewarding, because it was very challenging to write.
After this I spent an 'age' getting the houses to position themselves next to the roads. For ages I had houses appearing on the road, or way off over yonder. In the end I solved the problem partly by trial and error and partly because sooner or later those maths had to work...
Thanks! Looks great, almost exactly what I want my game's terrain to look like, but smaller.
I don't think this is as small as it may seem. The decision to scale it to allow crossing of the map in one hour at running pace was made based upon content. In the past I have created maps that where physically much larger - the largest took 12 hours to cross and changed graphical style as you did so to represent hotter equatorial regions and cooler temperate hemisphere's. It even had localised weather patterns, but ran at a poultry 6fps.
Changeing the size in this system - doubleing it even, is a matter of changeing 1 of 2 numbers (tile size or tile quantity). The problem then of course, is what to put in the extra space. As with everything a balance must be sought.
Consider for a moment a first person shooter type game, now run across the map - except now you must engage the enemy - this meens checking every tree and every bush in the scope - checking behind you - withdrawing and trying new routes.... Suddenly 1 hour seems like a dream.
Pneumatic Dryll, Outrageous epic cleric of EQ/Xev
God made the world in 7 days, but we're still waiting for the patch.