Page 1 of 4

How to make maps!

Posted: 28 Apr 2005, 15:05
by Stealth870
Yea yea, don't go crazy here because I've never made a map in TA or any other game, and I'm not experienced in all these channels, and bits, and greyscale heightmap thingy ma jigs, BUT I did make a working map in Spring, so that coutns for sumthin right? :P

Anyway, after reading the argument help in the mapconv tool that comes with the Map tools, the main thing that stopped me from doing anything was on the 16 bit RAW heightmap. I had no clue how to do it. Napalm gave me an idea and it worked!

Anyway, I downloaded Terragen and this small tutorial and made myself a tiny 960x960 BMP, which had a heightmap that Terragen could export to a 16 bit RAW! :D (thx Napalm!) So anyway, I resized that 960x960 BMP up to the minium 1024x1024 specs. Then (for testing purposes) I created a 256x256 pure black bmp for the metal map (I wasn't trying to check out how the metal works, but apperntly anything on the red channel will be a patch?). And so, I use mapconv and used the following command:

mapconv -l -c 0.5 -x 100 -n 21 -o terragen_test.sm2 -m terragen_mmap.bmp -a terragen_hmap.raw -t terragen_test.bmp

And it compressed everything into a nice .sm2, but it also gave me a mini.dds and mini.bmp, which I'm not sure what they're for...

I'll probably make a program that will help make that huge command a bit easier to do.

Anyway, taking the sm2, I stuck it in the maps folder, copied an .smd file from another map and tweaked some things just to play around (mainly...description, spawn points, and water color, even tho my map has no water! ^_^) and so I have the 2 necessary files:
terragen_test.sm2 - Main map
terragen_test.smd -some map info file, edittable with Notepad

Fired up Spring.exe and launched the Commanders test, everything loaded up, and I see my ugly map ingame! :D THe heightmap didn't match the terrain so well, even though the terrain was this disgustingly rendered image with thick black borders ;) But either way, I'm sure one of you more proffesional map makers can match that stuff better. :) So here's a screeny proving my mapping, and someone can help me on my heightmaps, so I can start converting the beautiful OTA maps! :D

Image

Posted: 28 Apr 2005, 16:34
by Caydr
You're a wonderful, wonderful person. BTW, try opening the DDS in a program like SlowView... it can read just about any graphic format. Perhaps the BMP or the DDS is the minimap for the multiplayer lobby?

Posted: 28 Apr 2005, 16:58
by Stealth870
I can open DDS and stuff, but I'm sure why it came out, just like...out there. In the mapconv there was no option to "attach minimap bitmap" or something, and in the Spring maps folder there are no DDS or bitmaps indicating a minimap, I would think it's inside the .sm2? And if it is, why do I need an external copy? :roll:

Posted: 28 Apr 2005, 17:00
by zwzsg
How does one control the quantity of trees? I've got a bit too many of them....

Posted: 28 Apr 2005, 17:09
by Redfish
Here is my map making tutorial

Spring Map making Tutorial by Redfish

Well, Spring is out and there are only 4 maps. So everyone would like more maps, existing ones and newly created ones.

SJ wrote a utility to convert different BMP images into a single spring map.

What do you need:

The tools:

mapconv.exe - this is the main program
nvdxt.exe - nvidia compression tool
texconv.exe - texture converter used by mapconv
geovent.bmp - the image used for the cracks in the earth where the geothermal gas comes from

annihilator 1.6

The maps

All maps should be 24 bits BMP(but i think it also works with less bits). You can use Raw for the height map, but I believe the BMP is less buggy and prone to errors.

1. Texture map. Has to be a factor of 1024(so anything like 1024, 2056, 4096 etc etc is fine). This creates some problems when converting existing maps. Because they have to be stretched and scaled. I'd go
for the nearest 1024 value. To get the approximate TA size divide by 512. 4096x4096(GOW, is approx. 8x8).

Note in SPRING 0.4 b 2 a non square map WILL CRASH spring. The bug has been fixed and is released with next spring.

2. Height map. This has to be 1/8th the dimensions of the texture map + 1 pixel. So for a 1024x2048 map it's 129 and 257. You can either make this map with terragen, or export it from existing TA maps
with annihilator. And of course draw it by hand.

Note: Ta maps used smaller height maps so you'll have to rescale it. Black means low, white means a high point on the map. This map is greyscale. But still a 24 bit BMP.

Also I think the map has to be rotated 180 degress and mirrored to work correctly. I did this because in terragen you need to do this to get the orientation of an imported height map right. Haven't checked it
for the mapconv, but I'm doing it anyway.

3. Metal map. This is a black map with has red painted areas on it. Just select pure red, and the redness(ranging from 0 to 255) correspond to 0 metal and max metal. To recreate patches I use brush size 9,

pretty hard, and just adjust the opacity to get the metal value for the patch right. You'll have to fiddle a bit with the values in the smd file and the opacity of the dots you place with the brush. If the

MaxMetal=0.5; You should get pretty close to 2.0 with a redness of about 250. Just look at the redness an opacity setting produces and you'll get to about 150 for a 1.1 patch(about opacity 40 in
PSP8).
If someone finds a way to export metal patch locations from an original ta map let me know. Because at the moment I just recreate by hand. I just make a layer with the heightmap so i know where the islands or patches should be, and just record their values from OTA. Then I delete the layer with the heightmap and just save the metal map.

Note that the mapconv doesn't support anything with models so that's the reason there are no rocks in my GOW map at the moment. Also the mapconv automatically adds trees and grass on textures that are
green. Don't know how to control it.

So how does one use mapconv.

It's pretty simple: mapconv -x 200 -n -50 -m metalmap.bmp -a heightmap.bmp -t texturemap.bmp -o outputfile.sm2 -c 1.5

the c is for compression. The x is the max height which the n is the lowest height, this is a good setting for water maps. If you only have maps without water input for n 0.

It gives you a mini.bmp so you can see if the map looks okay. If there are artefacts or anything it's probable something went wrong.

You also have to add the starting points in the smd file which is in pixels. It's pretty easy. You can add something like 10 teams or so.

SJ just hopes someone will write a better mapconv program since the source is available.

BTW I have John's Pass and Comet Catcher also ready, but because of the map size it won't work untill next release. So not giving those away yet. Also maybe Storm could host the map making utils.

Good luck, and happy map making!

Posted: 28 Apr 2005, 18:03
by Stealth870
thx Red! :D

Posted: 28 Apr 2005, 18:20
by Dwarden
btw is that nvidia utility better than ATI's compressonator ?

http://www.ati.com/developer/compressonator.html

Posted: 28 Apr 2005, 18:56
by zwzsg
Using a black metal map cause Spring to hang right after loading. I guess it doesn't like having geo everywhere.

Using a texture map too much green make trees spawn everywhere. That cause Spring to hang when exiting.

Forget about .raw. Use .bmp for all three maps. Way more easy to handle.

The -i switch is here for a reason. You need if your heightmap and texture map match in your image editor.

Posted: 28 Apr 2005, 20:18
by Stealth870
a full black metal map worked fine for my attempts...

yea, using a /bmp heightmap is a lot easier, PS exports them wrong, but .bmps are easy

What exactly ithe -i switch for? The rotation thing?

Posted: 28 Apr 2005, 20:31
by Redfish
I verified that the height map has to be rotated 180 degrees and mirrored. So think of that.

Black metal map works fine for me. I finished a prerelease of Comet catcher. You can download it on fileuniverse. It's version 0.9 because it has a work around. Version 1.0 will be released in future after spring patch that fixes the non square map bug.

I think the -i makes the heightmap invert. So high points become low points and vice versa. Not really needed if you do it right.

Posted: 28 Apr 2005, 20:39
by Stealth870
Kool...

Red, how do you smooth out the Gow heightmap? Did you remake the whole thing? Because scaling in Photoshop will cause the height map to give these funny stretch out pixellated lines across the map, even with blur, they still show up a little bit. I pretty much got Coast to Coast done, but just need to fix some water depth and shore issues :-)

Posted: 28 Apr 2005, 20:42
by Redfish
No idea cuz I didn't :P I just exported the hm from the original map with annihilator. Then used 200 for x and -50 for n in mapconv. Which did a fine job. Just remember to rotate it 180 degrees and mirror it. Fiddling with the map height proportions with x and n will fix it i guess. 200 and -50 are good for c2c i think.

It might also have to do with the upscaling I did. C2c is pretty small. THe hm for gow was scaled up about a factor 2. You could try scaling it down then scaling it up again.

Posted: 28 Apr 2005, 20:52
by zwzsg
-i does an up-down mirroring of the heightmap. It is needed if you do the heightmap right. I know it for sure because not only I read the mapconv -h, but I tested with and without -i.

Maybe black metal does not work for me but work for you because the map I'm on is too big and my computer is too weak. I'd still advise to avoid black and use pure red with a bit of green, as I'm sure it's the only thing I changed to provoke then remove the crash. And it states that only one green dot per geo is enough in the "mapconv -h". Since black = green+red+blue, it's possible that black means geo+metal.

Posted: 28 Apr 2005, 20:55
by Redfish
The metal map can be any size but i'd suggest you just make it the size of the heightmap, that way you can overlay the hm exactly and add points. If you use the tex map it will take ages to make a map and it will be very very big.

My heightmaps work fine without the -i. I could try to see the difference though.

Btw spring is limited to 8192x8192 maps at the moment. And SJ really isn't eager to become the map tool maker helpdesk. So if there are some good programmers...

Would be nice to have objects like rocks and stuff inserted into the map.

Posted: 28 Apr 2005, 20:57
by zwzsg
Redfish wrote:I verified that the height map has to be rotated 180 degrees and mirrored.
Aka using -i

Posted: 28 Apr 2005, 22:30
by Tangaroa
If we can use greyscale heightmaps, then we dont need to worry abbout tricky, technicolour 16 bit ones, at least, not yet. (eventually, a proper tool for adjusting heightmaps would be nice, with tools to raise land, lower land and naturalise land (as in, make it look natural, like the erode and canyonize filters in Terragen)

Also I kind of think that the water height should be in the .smd file, where it can be adjusted I can see myself making multiple versions of maps to get the water level just right, at anu rate, i have an adjustable heightmap on a computer at home, and a metal texture to tile, so I shall be making a metal map tonight.

Heh, the great thing about this is that we are not limited to grids, its going to make the maps much more exciting.

Ooohhh, and I will be able to make metal maps with submerged, but still ground unit passable metal, I always wanted to do that. Remaking my Sinkholes map will be a bit more of a challenge though, methinks, although I will have much more freedom in it.

Wheee, this is going to be so much fun!

Hey Mappers

Posted: 28 Apr 2005, 23:01
by Pxtl
Quick request:

if making an ota-style map with respect to metal, please finish the job. I recently played the GOW remake, and while I found it faithful and pleasant, there were 2 things about the metal distribution that irked me:

1) put the metal blobs on the visible texturemap. If you're ignoring Spring's continuous metal, then you may as well make the metal visible to the player in normal view.

2) make non-metal zones fully useless for metal harvesting. If you're trying to recapture OTA gameplay, don't leave off the last bit of it and have players stuff metal-extractors all over the map (including the ocean floor).

If you're using the Spring system, use it fully. If not, then please try and make it actually play and look like OTA. I'm not fond of the compromise approach taken in GOW.

Sorry to be so negative (I'm a terribly critical player), but it just kinda irked me.

zwzsg What framerate did you get with that treemap? Because I actually find it quite pleasant looking, and would love to see a good air-war on a map like that. If you get it with decent FPS, I'd design it as an airwar-island-style map with clearings holding all the metal and having the forest be no-metal, encouraging players to just fly over it and ignore it (or just plow through it to get to enemies, which would look cool too).

Re: Hey Mappers

Posted: 28 Apr 2005, 23:13
by Redfish
Pxtl wrote:Quick request:

if making an ota-style map with respect to metal, please finish the job. I recently played the GOW remake, and while I found it faithful and pleasant, there were 2 things about the metal distribution that irked me:

1) put the metal blobs on the visible texturemap. If you're ignoring Spring's continuous metal, then you may as well make the metal visible to the player in normal view.

2) make non-metal zones fully useless for metal harvesting. If you're trying to recapture OTA gameplay, don't leave off the last bit of it and have players stuff metal-extractors all over the map (including the ocean floor).

If you're using the Spring system, use it fully. If not, then please try and make it actually play and look like OTA. I'm not fond of the compromise approach taken in GOW.

Sorry to be so negative (I'm a terribly critical player), but it just kinda irked me.

zwzsg What framerate did you get with that treemap? Because I actually find it quite pleasant looking, and would love to see a good air-war on a map like that. If you get it with decent FPS, I'd design it as an airwar-island-style map with clearings holding all the metal and having the forest be no-metal, encouraging players to just fly over it and ignore it (or just plow through it to get to enemies, which would look cool too).
I've had the suggestion for metal patches on the texture, and will be working on that when the next spring comes out. And if you don't like it, don't play it. Sorry to say. But pressing F4 really isn't that big a trouble. Even if I do the patches it will never(or not soon) play like OTA anyway.

There are just some limitation to the spring map file type that can't be circumvented when you're making the maps. And SJ doesn't want to reprogram it, so we should go and make our own map type format editor.

You can build metal extractors NOT on top of the patches on GOW. i've tried it. The first one give 1.0 But after you build another they all start giving 0.0. So it kinda works. But yeah another limitation of the spring map file format. Nothing I can help right now.

BTW: rumor has it i'm making a metal map tonight :)

Yes my maps have some flaws but I don't mind. It's just what it is. Gives a lot of fun.

Posted: 28 Apr 2005, 23:25
by zwzsg
I totally agree about the metal. On a small map like gow it's not hard to re-place metal textures on normal view. Only because I'm trying to get good work I don't release my half made TA map conversions.

Pxtl: the Frame Per Second was slowed, especially when one shot is fired and that a massive forest fire ensue, any movement or building was impossible, but the biggest problem with having so many trees is that it makes Spring hang on exit. A pretty bad hanging, where even Ctrl Alt Supp won't work. Maybe a better PC wouldn't hang, but it's still a pretty bad problem for me. Anway, shifting the hue to red looks very nice and remove all trees (but three), so I'm doing a RedHaven instead of a Greenhaven.

Posted: 28 Apr 2005, 23:47
by zwzsg
I think I got confused between black and white. It's white that is made of all colors, and black of no color. So it's white that shouldn't be used to fill out the map.


My first map is made. Out of any subjectivity, I must say it owns. Details here.

Please take not that Spring do not like having dots in map names. When trying to play Comet Catcher offline, it tells me it can't find Comet Catcher 0.smd because the dot confuse Spring. Then the game starts with both comm next to each other.