I think a good part of the code should not rely on specific tiling anyway but use the relation abstraction.I was not aware of this - it looks like it might be a good candidate to base our graphics on, though it doesn't really impact anything discussed so far (apart from possibly constraining some of the tiling choices). Underlying engine wouldn't be impacted either way though - but this might be a good front end for sure.
What do you think how map scripts in Civ4 work?Impressive and potentially Very useful video on procedural generation
http://www.youtube.com/watch?v=iTBvpd3_Vqk&feature=player_embedded#!
'A magic way to make a vast amount of rich content easily that isn't used in many video games but should'
'takes a second to generate a galaxy of data' (even in complicated 3d rendering of map data) 'whole star systems created' 'solar systems within systems'..'with their own shapes and momentum properties'
'if the procedures are varied enough - so is the end result'!
I was thinking this very thing in the late 80's. (and have mentioned something almost exactly the same here several times - add tweaked fractals to procedural generation)
Could be useful for just about everyone (who programs).
I definitely highly recommend that everyone sees this!! It is easy to see that it is a big deal.
@ Koshling: Good luck with your project! I read through your blog posts so far and find it very intriguing.
I'm really a map fetishist at heart. I suppose anyone who is dedicated / crazy / stupid enough to sink months of his spare time into making something like the Gigantic Accurate Earth Map has to be a map fetishist! So, while everyone is throwing around ideas, I would like to add a few thoughts on that:
1. Huge map sizes: Koshling, I believe you are a fan of gargantuan maps yourself, right? In other threads, I saw you writing about how to make 1000 x 1000 tile maps work in Civ IV using viewports or multimaps-and-theaters or whatever. So I assume that one of the features of your project will be to support huge maps like that? If so, that would be great!
2. Hexes vs. squares: When it comes to the debate about squares vs. hexes, I as a mapmaker am in the hex camp. Actually, the introduction of hexes is pretty much the only thing I really liked about Civ V. While hexes are somewhat more complicated to use (not just for programmers, but also for mapmakers), I think the advantages they offer over squares more than make up for that. Not only can movement be modelled better, you also get the ability to put more detail into coastlines and rivers.
3. Globes vs. flat maps: It's impossible to represent the Earth's surface on a flat, cylindrical map without distorting some of its properties. Every cylindrical map distorts area, or landmass shape, or distance, or direction, or all of the above. As a mapmaker, I am pained by having to make these compromises. I am waiting for a Civilization-style game that finally uses a globe!
I know there are players out there who dislike globes, but after discussing the matter with all kinds of different people for years, I have come to the view that the reason for this aversion of some people is really just lazy conservatism rather than a sound game design argument. Because there isn't really a good game design argument against using globes. Let's face it: flat maps are a relict of tabletop wargaming. And in tabletop wargames, they have their obvious advantages. You can lay out a flat map on a table, and you can put unit figures on it and move them around. This would not be easily possible with an actual, physical globe on a table. In a PC game, however, there are no such practical problems. You can use globes, you can make an interface that makes them easy and intuitive to use, and the advantages they offer over flat maps in terms of accuracy are enormous.
And look at this. Wouldn't something like this be beautiful? Image courtesy of a program called Geodesic globe WIP:
4. Navigable rivers. They really are a must. Please!
Laskaris makes a good point with considering globes.I hadn't actually considered a natively spherical map, as opposed to a projection onto a plane. The downside of course, is that you cannot zoom out more than a certain amount (ultimate limit being a hemisphere, but obviously distortions in the rendering start well before that). However, since local regions (assuming large map) are essentially flat (so little render distortion) it's certainly an intriguing idea.
Rest assured that VERY large maps are definitely something I want to support!
Laskaris makes a good point with considering globes.
I wonder what tiling restrictions are there if you use globes. Might need both pentagons and hexagons or arbitrary tiling.
An example of using globes:
http://freeciv.wikia.com/wiki/Buckyball
Hexes can always form, scalably, into a globe shape without the need for any 'fill-in's provided that the math is completely accurate and you have the correct increment of hexes that will all piece together correctly.Laskaris makes a good point with considering globes.
I wonder what tiling restrictions are there if you use globes. Might need both pentagons and hexagons or arbitrary tiling.
An example of using globes:
http://freeciv.wikia.com/wiki/Buckyball
I hadn't actually considered a natively spherical map, as opposed to a projection onto a plane. The downside of course, is that you cannot zoom out more than a certain amount (ultimate limit being a hemisphere, but obviously distortions in the rendering start well before that). However, since local regions (assuming large map) are essentially flat (so little render distortion) it's certainly an intriguing idea.
Rest assured that VERY large maps are definitely something I want to support!
Hexes are very flexible, but to me they limit movement too much. I've have played several board and video games with them, but the movement seems awkward and unnatural in certain directions. Maybe there is way to benefit from both worlds?
When moving horizontally or vertically, you may follow a zig-zag path depending on orientation.
In some games it breaks the continuity of game play with the tiles being offset and not visually directly next to each other.
I do not deny it's superiority in some situations, I like a game with more visual organization, and if you use squares the unit placement and terrain placement look more naturally lined up.
Squares can provide 9 directions if you include diagonal. (think of the 9 key if you have one on your keyboard). Not seeing a lot of hex monitors or maps shaped like hexes in the real world. Like I said, I have played a good number of hex based board and video games, and I struggle with the back and forth pathing.
When it comes to RL (Real Life) not much of anything is lined up in hexes.
Not in the business world, not in the science world, not in programming; not in spreadsheets or gps screens or much of anything else but some strategy games.
I still don't see how 6 directions trumps 9.
They throw off the natural North, South, East, West directions.
Programmers do not use hexes in making tables, they use squares.
Most things are made with squares.
I do understand most of the globe and map arguments. Especially when simulating realistic maps. But for gameplay purposes, just like we look at a map of America or our home town. N,S,E,W, + the other directions NE, NW, etc. make sense. Dropping one of the cardinal directions to use hexes does not make sense.
Hexes can always form, scalably, into a globe shape without the need for any 'fill-in's provided that the math is completely accurate and you have the correct increment of hexes that will all piece together correctly.