Great to have you back! Looking forward to seeing your work in Clash. I can send you the latest version of the testbed if you'd like, so you can stick the images in yourself to test them. Just email me if you want it.
Announcement
Collapse
No announcement yet.
Map Graphics Thread part III
Collapse
X
-
Project Lead for The Clash of Civilizations
A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
Check it out at the Clash Web Site and Forum right here at Apolyton!
-
As far as putting all the tiles or units in one file, that is, essentially, a matter of taste. It does have some advantages for loading, since you need to open only one file handle. Once read in, the tiles can remain in one large image, or be disassembled and stored separately. It doesn't really make any difference. Java can pick out sub-images quite happily.
We did have someone who was keen on putting the images together (particularly the coastal ones) but he didn't do it. It never seemed to be a high priority for me (and still isn't).
The small number of images we have now hardly justify a whole lot of coding purely for the sake of some rather vague notion of organization.
When the number of separate images reaches around 2000, then perhaps we should organize. Even then sub-directories would do it.
On the other hand the existing system was explicitly designed so that an artist, with no programing ability, could change the images around to see how they looked. This is why the image index file exists. And this is the reason for the present system.
An odd thing about Clash. It has now reached the stage where virtully everything in it has been hashed over, discussed, voted on, and settled one way or another.
Disorganized is really the last word I would use. Short of resources? Yes. Let down by people who say they will do things then don't? Yes. But disorganized? No.
Cheers
Comment
-
It appears Clash will definitely be going to polygons in the future, so I'm not sure how much this would ultimately help, but I'll post it anyway. I'm sure someone has thought of some of this already, it just may not have been done yet.
I haven't looked at the code, but I assume there is a tile ID member in there. What you need to do is add a graphic number member as well. This allows you to have several tile graphics for each type of terrain and identify them by tile type (grassland, plains, mountains, etc.) using tileID and by the tile graphic in the template or by filename if there are no templates as is the case now. Nothing new, I know, but by doing it this way, you open up the possibility of an infinite number of tiles. And why is this a good thing? Well for grassland, plains, tundra and desert 3 of each gives the map enough variety, without confusing or cluttering it. For hills and mountains, 5 or more varieties really adds alot to the look of the overall map (we had 7 in EIT, but it looked good with 5 too, the artist went back and added 2 later). But the main place having more than one image improves the look of the game, as I'm sure all of us know, is in the coastal tiles. With EIT we had 30, and it truly gave a stunning feel to the map. Almost as if you were looking at a real map of a real place. Let's just say it does wonders for player immersion.
When first creating the map then, you determine tile ID normally, and based on the number of tile graphics you have for that terrain type (let's call that number x), generate a random number between 1 and x and assign that as the graphic number. Obviously, don't hard code x, scan for it. Also, the graphic number isn't generated every time, it stays the same after creation, so the map doesn't look slightly different each time you load the game, obviously.
If Clash ever switches to using graphical templates I'd suggest the following layout:
ggg
ppp
ttt
mmmmm
hhhhh
cccccccccc....etc
with g=grassland, p=plains, t=tundra, m=mountains, h=hills, & c=coastal. With this layout, it's easy to add more tiles, even more tile types, which happened to us once.
So this has all been very straight forward, logical, and while no one may have thought to do it exactly this way, it's all been done before. So why did I waste all this time and space spelling it out? Because of the text file you need in conjunction with all the above to work some magic.
First of all, let me say that we never actually got around to doing this part, we decided to tack it on to the end of the list of things to do, simply because we had the above working already and this adds extra eye candy and player immersion. It's not an essential component, but I think it will be well worth doing it. OK, so the text file has a heading for each tile type, and under that heading you have several columns of numbers (the tile graphic numbers). Each column is a grouping of tiles you'd like to keep together for random number generation purposes. For example, EIT had 30 coastal graphics for each direction. Some were drawn as beach, some as rocky coasts, some with cliffs, etc. So it looked something like this:
#COASTAL_SE#
1 .5 . 6.13
2 .7 .10.15
3 .8 .11.16
4 .9 .12.17
23.19.14
24.20.18
27.21.25
28.22.26
The first column was those grouped together as beach, and were placed anywhere the other conditions didn't exist. The second column was placed next to mountain or hill tiles because they had the cliffs. The third column, the rocky coast, went in the same locations the cliffs would be placed (using a random determination of cliffs or rocky coast). And the fourth column was the arctic column that was placed in the arctic, with icebergs and seals on the beach, etc.
So when determining the graphic number, don't apply the random number generated, match it to the number in the column and apply that number. For example, from the coastal snip above, placing an arctic tile I would need to generate a random number 1-4 since there are 4 numbers in that column, let's say a 3 came up. That would mean the graphic number member for that particular tile would be 16, so the file coastal_16 would be loaded and displayed there with all it's icebergs, seals and igloos.
Another good use for this system would be for forest overlays, especially since Clash will feature deforestation, though it can also represent partially forested areas without human intervention. Basically set it up like so:
#Forest#
1.6 .11.16
2.7 .12.17
3.8 .13.18
4.9 .14.19
5.10.15.20...and so on.
having the first column be 100% cover, the second 95%, the third 90%, etc.
Any comments/questions?
Comment
-
spreading cities...
how might this affect my "organic settlement" overlays idea...?
Me:
what about the ideas i've put forward on that front? areas of settlement/urbanisation as collections of little buildings which can form a range of city shapes, and
I think your cocept is intriguing. However, I found the examples currently on your web page to be hard to discern from the terrain. Since cities need to be easily-resolved when placed on a wide range of terrain tiles, that isn't a trivial problem. Also, the coding infrastructure to handle something like that does not yet exist. But we did plan to do similar things for tile graphics for forests, where deforestation would show nearly-continuous thinning of trees. So I expect that the code to handle such things will be there at some point. However it's not a priority at the moment. That is why I expect Gary is asking for the traditional whole-tile cities for the moment. We will be using them for a significant amount of time I expect.
Me:
The idea of having Flora, Fauna and Urban overlays growing, spreading, changing organically is truly an original and exciting game feature if implemented.There'll be implications for the military model as well as the economic model I imagin.
Gone are the days where you move a 1 square-filling mobile unit onto a 1 square-filling static unit (city) with two dimensional results, Bring on the polygon map and organic settlements!
Fair enough it's for the future, but I'll squeeze in a little digression, just as a mental note, i can shift it to a city overlays thread when we've got something relevant to D8 to post on one:
{How would you attack a swathe of mountain villages or }
{scattered farmsteads! you'd need to really develop the Task }
{Force idea, so you could add mongol horde-style raids perhaps.}
{different strategies too for coastal and riparian linear }
{settlements. }
{I suppose you'd need to assign admin centres or city }
{centres, as you click and draw your internal administration }
{borders, so that there is some defined place for an enemy to }
{capture, or which could potentially revolt and set up as another}
{citystate or part of another nationstate. }
{ }
{I think this would be a fascinating break from Civ where you }
{have strategic wars instead of just one-on-one unit battles. }
{ }
{When campaigning against sparse settlements and straggly }
{areas of settlement, you could capture each building one by }
{one, and thus have a defined area of control on the map, and }
{even end up in a stalemate where a large city is divided }
{between enemies. }
{ }
{As for the issue of visibility of these tiny buildings, well , one }
{solution is to have an urban background overlay - it needn't be }
{solid either - a grey/brown tint. And for the houses use more }
{contrast and shadows - i'll amend them. }
-----------------------------------------------------------------------------------
I think the world has about or at least 12 (land) biomes worth having in a game:
Ice and Snow
Tundra
Boreal Forest
Deciduous Forest
Temperate Rainforest
Temperate Grassland
Savannah (Tropical Grassland)
Scrub (Dry forest)
Rocky Desert (including mountains)
Dunes
Tropical Rainforest (Jungle)
Temperate Marsh (Marsh/Bog)
Tropical Swamp
Moorland (including hills)
(I'm less keen on having "mountains" and forested hills as separate biomes)
plus:
Atoll/Reef
Sandbanks
Deep Sea
Shallow Sea
Freshwater
coastal:
sand beach
pebble beach
mud cliff
rocky cliff
rocks
mangrove
lagoon
spit
I had a list somewhere... add you're tuppence (2 cents if you're Johnny Foreigner! )click below for work in progress Clash graphics...
clicaibh sios airson tairgnain neo-chriochnaichte dhe Clash...
http://jackmcneill.tripod.com/
Comment
-
Adding a pointer to which graphics we use instead of just terrain is perfetly ok. The main limitations are:
-Graphics (eince we don't have many tiles or variants, there was no need to have variants in the code).
-Features spanning more than one tile.
These are usually mountains and rivers, though between tile rivers don't necessarily need it. Mountain ranges require some tuning to get two-tiles and such (as was done in civ2 ToT if I remember well).
As for having numbers, naming conventions for the tiles and graphics: We use a set of xml files (you can dig them in the jar of the demos) which precise all kinds of things, including terrain. Having a list of graphics for one kind of terrain is quite straightforward. We may want to either let the program find a random one or let the map designer precise the variant when making the xml file (this would require a map editor but it will still end as a xml file).Clash of Civilization team member
(a civ-like game whose goal is low micromanagement and good AI)
web site http://clash.apolyton.net/frame/index.shtml and forum here on apolyton)
Comment
-
Mountain ranges require some tuning to get two-tiles and such (as was done in civ2 ToT if I remember well).click below for work in progress Clash graphics...
clicaibh sios airson tairgnain neo-chriochnaichte dhe Clash...
http://jackmcneill.tripod.com/
Comment
-
I'd be willing to do some tile graphics. I'm no good with humans and animals, but for things like trees, mountains, hills, etc., I can do a fairly good job. Is Clash able to handle only one size of tile? If so, I could just use the existing ones as a guide. But I seem to remember that any tile size divisible by two would work, or am I crazy?Last edited by alms66; May 26, 2004, 03:04.
Comment
-
It all works off one size at present, though the program actually scales them.
I desperately need river segments, running along the edges of the diamond shaped "squares" for my new scenario "The Dawn of Civilization, Chapter 2, Eridu". The rivers are of course the Euphrates and the Tigris. I also need a tile for irrigated land of the type found in Sumeria.
Cheers
Comment
-
Wastelands? As in what exactly. Give me some real-world example of a wasteland.
I'll take a stab at the irrigation, then rivers after. I guess just one variation would suffice for now, right? Also, the irrigation will work as an overlay, correct?
Comment
-
About Wasteland:
Farmland that has been exploited for too much time and became infertile?
Bare rocks?
Salted lands (a big problem in hot regions where fields have to be irrigated, like in Egypt, f.e.)?
Polluted / poisoned lands?
Or even radioactive? If it's for a scenario playing during the dawn of history, certainly not...
Comment
-
The irrigation won't be an overlay, largely because the irrigation itself will pretty much cover the underlying terrain with nice green crops.
Rivers need six varieties:
1. right along the north-west edge
2. right along the north-east edge
3. halfway along the north-west edge from the north end
4. halfway along the north-west edge from the west end
5. halfway along the north-east edge from the north end
6. halfway along the north-east edge from the east end
In this context "halfway" actually means nearly all the way but petering out before the actual corner.
A few squiggly tributaries extending into the squares might be a nice touch, but not too far.
Cheers
Comment
Comment