<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://springrts-wiki.p2004a.com/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=SpikeX</id>
	<title>Spring - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://springrts-wiki.p2004a.com/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=SpikeX"/>
	<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/wiki/Special:Contributions/SpikeX"/>
	<updated>2026-11-08T19:12:31Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Tutorial:CreateMaps(Fnordia_et_al)&amp;diff=18582</id>
		<title>Tutorial:CreateMaps(Fnordia et al)</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Tutorial:CreateMaps(Fnordia_et_al)&amp;diff=18582"/>
		<updated>2006-05-19T00:18:47Z</updated>

		<summary type="html">&lt;p&gt;SpikeX: /* Texture Map */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Original by aGorm, with help from LathanStanley&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==The Idea==&lt;br /&gt;
First of all you need an idea. There is no point (OK, there is some point for test purposes) in making a map just like another one that already exists. You need to think of certain things before you make your map.&lt;br /&gt;
# Is this map idea different, not just a copy of someone else&#039;s?&lt;br /&gt;
# Does my map idea give each player a fair share of the cover and high ground?&lt;br /&gt;
# Is my map idea possible to make?&lt;br /&gt;
# Is it possible with the amount of time I&#039;m willing to spend?&lt;br /&gt;
&lt;br /&gt;
If you answered yes to the above, then you are 25% of the way towards making your map!&lt;br /&gt;
&lt;br /&gt;
You should probably doodle it on a piece of paper to act as a guide later.&lt;br /&gt;
&lt;br /&gt;
==The Tools==&lt;br /&gt;
With your idea hopefully sketched out, it&#039;s time to get the tools to make the map! (You can skip this if you already have them.)&lt;br /&gt;
&lt;br /&gt;
For all your map compiling needs you should first download the [http://fileuniverse.com/?p=showitem&amp;amp;ID=1234 newest MapConv program].&lt;br /&gt;
&lt;br /&gt;
You will also need some image editing software. Favorites are Photoshop, the [http://www.gimp.org/ GIMP], And Paintshop Pro.&lt;br /&gt;
The GIMP, however, is the only one that&#039;s free!&lt;br /&gt;
(I&#039;m going to have to assume you know how to use the program you choose. If you can&#039;t there are loads of tutorials on the net.)&lt;br /&gt;
&lt;br /&gt;
You may also want to check out [http://www.planetside.co.uk/terragen/ Terragen] for generating terrain. But as you have to pay to render anything of a good size, I won&#039;t mention it other than here.&lt;br /&gt;
&lt;br /&gt;
Another tool you might find useful is the freeware tool [http://www.delphigl.de/projects/terrtexgen/eng_index.html TerrTexGen].  It&#039;s useful for previewing your heightmap before compiling, but unless your texturemap is 4096 on both sides, you might find that the texturemaps that it creates are too small.&lt;br /&gt;
&lt;br /&gt;
Finally, there is tool called [http://www.bundysoft.com/L3DT/ L3DT] which you might also find useful.  It seems to be a program that is specificly designed for creating large height/texture maps.  The free version is capable of rendering a heightmap as big as 4096x4096, and can generate a texturemap that is proportional to the heightmap.  Of the mentioned packages, this seems the most useful and complete.&lt;br /&gt;
&lt;br /&gt;
==Preparing your map==&lt;br /&gt;
This is the fun part! And also, often, the longest part.&lt;br /&gt;
&lt;br /&gt;
For a map you will need several different things:&lt;br /&gt;
# a texture map&lt;br /&gt;
# a height map&lt;br /&gt;
# a metal map&lt;br /&gt;
&lt;br /&gt;
And several optional things for added functionality:&lt;br /&gt;
# a tile map&lt;br /&gt;
&lt;br /&gt;
They all have certain needs! Read this bit carfully!&lt;br /&gt;
&lt;br /&gt;
===Texture Map===&lt;br /&gt;
All maps are based on a texture image. This image&#039;s width and height must be an exact multiple of 1024 pixels. So, for instance, you can have a &amp;quot;4096 by 8192&amp;quot; image, but not a &amp;quot;4096 by 4608&amp;quot; image, as 4608 does not divide by 1024. It, like  all three maps, must be saved as a 24 bit BMP. A 1024x1024 Texture will produce a map shown as &#039;2x2&#039; in the launcher.&lt;br /&gt;
&lt;br /&gt;
It may look like whatever you want! Find a texture (preferably, one that you can tile seamlessly) and fill your texture map with it. You could, for instance, fill the whole image with a sand texture. This would make your whole world look like sand. You could then decide to add a few patches of grass to it by finding a suitable grass texture and adding it on in patches. So you&#039;d have a map that was mostly sand with a few patches of green.&lt;br /&gt;
&lt;br /&gt;
Because of the way the map compiler work, it will &#039;&#039;&#039;greatly&#039;&#039;&#039; reduce your map filesize if you use 32x32 tiles on your texture map. So, whenever you have to fill a large area with a repeating pattern, make sure the small square you&#039;re repeating is 32x32 (or a multiple of it).&lt;br /&gt;
&lt;br /&gt;
===Height Map===&lt;br /&gt;
Next is the height map. This must be exactly one eighth (1/8) of the size of the texture map &#039;&#039;&#039;+ 1 pixel!&#039;&#039;&#039; For instance, if the dimensions of your texture map are &amp;quot;4096 by 8192&amp;quot;, divide 4096 and 8192 each by 8 and add one to the result of each. The result for this example would be &amp;quot;513 by 1025&amp;quot;. The height map is a black and white BMP. Only use black and white, no colour! (well its better to work it as a greyscale image, and when saving to process, convert to rgb and save as bmp, that way you get a 24 bit bmp)&lt;br /&gt;
&lt;br /&gt;
White areas are the tops of mountains; black areas are the sea floor or the bottom of valleys. The shades of grey between are the different heights between! When you draw your heightmap, make sure the white blends into the black with greys. I suggest you use the blur tool. If you have a white splodge in a patch of black you will have a very tall pillar that won&#039;t look natural at all!&lt;br /&gt;
&lt;br /&gt;
===Metal Map===&lt;br /&gt;
Finally, you need a metal map. This is the same size as the height map, one eighth (1/8) of the size of the texture map &#039;&#039;&#039;+ 1 pixel.&#039;&#039;&#039; On this one you paint down red (in verying degrees) to represent metal. So a red spot that is RGB(50,0,0) will provide about a 5th of the metal patch of red RGB(255,0,0) will give.&lt;br /&gt;
&lt;br /&gt;
On this map you can also place green pixels. Each green pixel will create 1 geothermal vent. If you put down a green splodge you will get a cluster of geo vents! Only place 1 pixel.&lt;br /&gt;
&lt;br /&gt;
Ensure you have all three saved as 24 bit BMPs and you&#039;re ready to convert it all to a map!&lt;br /&gt;
&lt;br /&gt;
===Tile Map===&lt;br /&gt;
Tiles are basically repeating images. They are exactly the same. The map compiler, by comparing peices to the texture to each other, sees which little square tiles in your texture are exactly alike. If they are the same, instead of wasting precious harddrive and bandwidth space, the compiler sets a reference from on tile to the next. If your map is made out of only one small tile, repeating for the whole texture, the map will compress extreemly well. Down to only a few kilobytes. But this would look very boring. So most map makers use a variety of tiles to make their map more interesting. A good map maker will find a balance between looks and size.&lt;br /&gt;
&lt;br /&gt;
To make a tile:&lt;br /&gt;
Open up your image editing program.&lt;br /&gt;
Create a new image.&lt;br /&gt;
As the Spring engine uses a 32 pixel tile engine, you have to set your image size to 32 pixels, or a multiple of 32 pixels. Therefore, tile sizes should be one of the following:&lt;br /&gt;
32x32 pixels,&lt;br /&gt;
64x64 pixels,&lt;br /&gt;
96x96 pixels,&lt;br /&gt;
128x128 pixels&lt;br /&gt;
etc.&lt;br /&gt;
Tiles also do not have to be square, it is perfectly possible to make rectangular tiles. Tiles should also be seamless, so that when repeated do not seem to have an obvious edge.&lt;br /&gt;
&lt;br /&gt;
Once you have created your tile, do a Fill operation with a texture. The texture of course is our tile that we have made in the previous step. If you do not know how to do this, ask around. Make sure to state which image editing software you use, so we can help you easier.&lt;br /&gt;
&lt;br /&gt;
Now, once you have your basic tile down, add in different features on your map, such as mountains, rivers, seas, deserts, grasslands, or whatever your map has. Remeber, for smaler file sizes make these different features out of tiles as well. If you do all of this properly, you can get your file size down very small, and this will keep everyone happy.&lt;br /&gt;
&lt;br /&gt;
== MapConv.exe ==&lt;br /&gt;
&lt;br /&gt;
Instructions pulled from [http://fileuniverse.com/?p=showitem&amp;amp;ID=1234 the newest MapConv program]. If all goes well, the &amp;lt;code&amp;gt;MapConv.exe&amp;lt;/code&amp;gt; should create four new files: &amp;lt;code&amp;gt;mini.bmp&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;mini.dds&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;yourmapname.smf&amp;lt;/code&amp;gt;, and &amp;lt;code&amp;gt;yourmapname.smt&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 USAGE:  &lt;br /&gt;
   &lt;br /&gt;
 mapconv [-l] [-i] [-c &amp;lt;compression&amp;gt;] -x &amp;lt;max height&amp;gt; -n &amp;lt;min height&amp;gt; [-o  &lt;br /&gt;
 &amp;lt;Output file&amp;gt;] [-e &amp;lt;tile file&amp;gt;] [-y &amp;lt;Typemap file&amp;gt;] -m &amp;lt;Metalmap file&amp;gt; -a  &lt;br /&gt;
 &amp;lt;Heightmap file&amp;gt; -t &amp;lt;Texture file&amp;gt; [--] [-v] [-h] &lt;br /&gt;
   &lt;br /&gt;
   &lt;br /&gt;
 Where:  &lt;br /&gt;
   &lt;br /&gt;
 -l, --lowpass &lt;br /&gt;
 Lowpass filters the heightmap &lt;br /&gt;
   &lt;br /&gt;
 -i, --invert &lt;br /&gt;
 Inverts the height map vertically (not the height values but the height map  &lt;br /&gt;
 (uhm someone rewrite this)) &lt;br /&gt;
   &lt;br /&gt;
 -c &amp;lt;compression&amp;gt;, --compress &amp;lt;compression&amp;gt; &lt;br /&gt;
 (value required) How much we should try to compress the texture file.  &lt;br /&gt;
 Default value 0.8 . (lower=higher quality, larger file) &lt;br /&gt;
   &lt;br /&gt;
 -x &amp;lt;max height&amp;gt;, --maxheight &amp;lt;max height&amp;gt; &lt;br /&gt;
 (required) (value required) What altitude in spring the max(0xffff) level  &lt;br /&gt;
 of the height map should represent &lt;br /&gt;
   &lt;br /&gt;
 -n &amp;lt;min height&amp;gt;, --minheight &amp;lt;min height&amp;gt; &lt;br /&gt;
 (required) (value required) What altitude in spring the min(0) level of  &lt;br /&gt;
 the height map should represent &lt;br /&gt;
   &lt;br /&gt;
 -o &amp;lt;Output file&amp;gt;, --outfile &amp;lt;Output file&amp;gt; &lt;br /&gt;
 (value required) The name of the created map &lt;br /&gt;
   &lt;br /&gt;
 -e &amp;lt;tile file&amp;gt;, --externaltilefile &amp;lt;tile file&amp;gt; &lt;br /&gt;
 (value required) External tile file that will be used for finding tiles,  &lt;br /&gt;
 tiles not found in this will be added in a new tile file &lt;br /&gt;
   &lt;br /&gt;
 -y &amp;lt;Typemap file&amp;gt;, --typemap &amp;lt;Typemap file&amp;gt; &lt;br /&gt;
 (value required) Type map to use, uses the red channel to decide type,  &lt;br /&gt;
 types are defined in the .smd, if this argument is skipped the map will be  &lt;br /&gt;
 all type 0 &lt;br /&gt;
   &lt;br /&gt;
 -m &amp;lt;Metalmap file&amp;gt;, --metalmap &amp;lt;Metalmap file&amp;gt; &lt;br /&gt;
 (required) (value required) Metal map to use, red channel is amount of  &lt;br /&gt;
 metal, green=255 is where to place geos (one pixel=one geo). Is resized to  &lt;br /&gt;
 fit the mapsize &lt;br /&gt;
   &lt;br /&gt;
 -a &amp;lt;Heightmap file&amp;gt;, --heightmap &amp;lt;Heightmap file&amp;gt; &lt;br /&gt;
 (required) (value required) Input heightmap to use for the map, this  &lt;br /&gt;
 should be in 16 bit raw format (.raw extension) or an image file. Must be  &lt;br /&gt;
 xsize*128+1 x ysize*128+1 in size. &lt;br /&gt;
   &lt;br /&gt;
 -t &amp;lt;Texture file&amp;gt;, --intex &amp;lt;Texture file&amp;gt; &lt;br /&gt;
 (required) (value required) Input bitmap to use for the map. Must be  &lt;br /&gt;
 xsize*1024 x ysize*1024 in size. (xsize,ysize integers determined from this  &lt;br /&gt;
 file) &lt;br /&gt;
   &lt;br /&gt;
 --, --ignore_rest &lt;br /&gt;
 Ignores the rest of the labeled arguments following this flag. &lt;br /&gt;
   &lt;br /&gt;
 -v, --version &lt;br /&gt;
 Displays version information and exits. &lt;br /&gt;
   &lt;br /&gt;
 -h, --help &lt;br /&gt;
 Displays usage information and exits. &lt;br /&gt;
   &lt;br /&gt;
   &lt;br /&gt;
 Convers a series of bmp/raw files to a spring map. This just creates the .smf  &lt;br /&gt;
 file, you will also have to create a .smd file using a text editor &lt;br /&gt;
&lt;br /&gt;
==Mothers MapConv==&lt;br /&gt;
The usage is the same as above, with the following exceptions:&lt;br /&gt;
All features (including GeoVent/Tree/Grass) are now on their own FeatureMap.  This is a 24bit bmp specified with the -f &amp;lt;featuremapname.bmp&amp;gt; flag.&lt;br /&gt;
&#039;&#039;It should be 1/8th the resolution of your map.&#039;&#039; (i.e. 1 pixel smaller in each direction then your heightmap)&lt;br /&gt;
&lt;br /&gt;
Tree&#039;s and GeoVents are placed on the green layer.&lt;br /&gt;
*255 Places a GeoVent&lt;br /&gt;
*200-215 Places tree types 1-16&lt;br /&gt;
&lt;br /&gt;
MapConv will try to place these features in the exact spot you place them, it will then go into crackhead mode if it cannot.&lt;br /&gt;
&lt;br /&gt;
Grass is the blue layer.  The blue value  maps to a &#039;pseudo-density&#039; of the grass.  The &#039;grass&#039; map in the engine is very very low resolution,  so be aware that you will not get nice linear results.  255=full grass, 0=no grass.&lt;br /&gt;
&lt;br /&gt;
The red layer places &#039;Arbitrary Features,&#039; aka wreckages.  One pixel of red equals one feature.  Red &#039;255&#039; gives you a feature of the first arbitrary type, 254 the second, 253 the third, and so on.&lt;br /&gt;
&lt;br /&gt;
===But what are these &#039;Arbitrary Features,&#039; Im so confused!===&lt;br /&gt;
They are &#039;features&#039; found in the /features/All Worlds or /features/corpses filesystems.  Which feature is &#039;type 1&#039; is defined on a map-by-map basis via a new file called &#039;fs.txt&#039;.  This file should contain &amp;lt;cr&amp;gt; delimited feature names. The first line is the feature placed when a red=255 dot is found, etc.&lt;br /&gt;
&lt;br /&gt;
=== Ok, Now what do I do? ===&lt;br /&gt;
If you are using any custom features, and/or you want to mod-proof your map, you should include them in the sd7 that you package the map in.  The tree structure should look something like:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;mapname.sd7&amp;gt;&lt;br /&gt;
 -maps/&lt;br /&gt;
 -mapname.smf&lt;br /&gt;
 -mapname.smt&lt;br /&gt;
 -mapname.smd&lt;br /&gt;
 -Objects3d/&lt;br /&gt;
 -&amp;lt;featurename[s]&amp;gt;.3do(specified in the tdf)&lt;br /&gt;
 -features/&lt;br /&gt;
 -All Worlds/&lt;br /&gt;
 (and/or)&lt;br /&gt;
 -Corpses/&lt;br /&gt;
 -&amp;lt;featurename[s]&amp;gt;.tdf&lt;br /&gt;
 -textures/&lt;br /&gt;
 -tatex/&lt;br /&gt;
 -&amp;lt;texname[s]&amp;gt;00.bmp or .tga&lt;br /&gt;
&lt;br /&gt;
Without getting into modding/unit making I will say that the &amp;lt;code&amp;gt;.tdf&amp;lt;/code&amp;gt; tells you the name of the &amp;lt;code&amp;gt;.3do&amp;lt;/code&amp;gt; (&amp;quot;&amp;lt;code&amp;gt;Object=&amp;lt;/code&amp;gt;&amp;quot;), and the name of the &#039;feature&#039; is in the top brackets.  The &amp;lt;code&amp;gt;.3do&amp;lt;/code&amp;gt; specifies the texture names.  The engine looks for those texture names + 00 in either bmp or tga format in tatex. &lt;br /&gt;
&lt;br /&gt;
Examples of a built-in XTA wreckage name would be &amp;lt;code&amp;gt;armckfus_dead&amp;lt;/code&amp;gt; which would be looking for a tdf (likely &amp;lt;code&amp;gt;armckfus_dead.tdf&amp;lt;/code&amp;gt;) that has a &amp;lt;code&amp;gt;[armckfus_dead]&amp;lt;/code&amp;gt; section which then specified something like:&lt;br /&gt;
&amp;lt;code&amp;gt;Object=armckfus_dead&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;armckfus_dead.3do&amp;lt;/code&amp;gt; would then specify some texture like &amp;lt;code&amp;gt;wreck01b&amp;lt;/code&amp;gt; which would go looking for either a &amp;lt;code&amp;gt;wreck01b00.bmp&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;wreck01b00.tga&amp;lt;/code&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
[http://fileuniverse.com/?p=showitem&amp;amp;ID=1421 Start with this version of MapConv]&lt;br /&gt;
or&lt;br /&gt;
[http://www.fileuniverse.com/?p=showitem&amp;amp;ID=1507 This one]&lt;br /&gt;
[I will clean this up and add more later --Mother]&lt;br /&gt;
&lt;br /&gt;
==Making your map work==&lt;br /&gt;
This is the final push. Once Sharp map has finshed it will spit out a .sm2 file. This needs to be copyed to the MAPS folder in Spring. But you still need one more thing: an .smd file. Basically, this file tells the game things like the maximum metal, the light colours, the clouds, etc. (All the bits you were thinking that you hadn&#039;t done yet!)&lt;br /&gt;
&lt;br /&gt;
I would suggest you copy the .smd of another map and fiddle with the settings until you get what you want. smd&#039;s can be opened in notepade or similar. Look at all the .smd&#039;s so you can get a jist of what each option does. Make sure both the .sm2 and .smd have the same file name then start up Spring (not the client!) in [http://taspring.clan-sy.com/wiki/FAQ#People_talk_about_.27Single_Player.27._How_do_I_start_a_single_player_game.3F single-player mode] and run the commanders script. Choose your map and away you go!&lt;br /&gt;
&lt;br /&gt;
==SMD Rundown==&lt;br /&gt;
What follows is all that we (aGorm and LathanStanley) have figured out in the SMD&#039;s. Its by no means the be all and end all, but it&#039;s the next best thing.&lt;br /&gt;
&lt;br /&gt;
* Goto [[Maps:SMD]] for a more detailed listing&lt;br /&gt;
 &lt;br /&gt;
===General Map Information===&lt;br /&gt;
* Description is just a short description of your map. Keep it simple.&lt;br /&gt;
* TidalStrength determines how much energy tidal generators will produce. A normal figure is around 20.&lt;br /&gt;
* Gravity, as you would expect, affects ballisitcs and how far units fly after an explosion.&lt;br /&gt;
* MaxMetal is the maximum amount of metal you will gain from one game square in 1 second from an area of metal that had a red value of 255 in your metal map. If making an old style metal deposit map, then this will be quite high: maybe 2 or 3. If you are making a new style metal-all-over-the-place-map, then it will be low: perhaps 0.2. Also for old style maps, you&#039;ll have to fiddle with the...&lt;br /&gt;
* ExtractorRadius, which is the area that is harvested by 1 metal extractor. For old style maps make this very small, so as they only take from one deposit.&lt;br /&gt;
&lt;br /&gt;
=== Atmosphere, Water Colours ===&lt;br /&gt;
Each value (it would appear this bit is by no means gospel) is a representation of the [[RGB]] values for that parameter. It would appear to be relative, i.e. you can put in what ever numbers you like and the game will work out what you want. &lt;br /&gt;
&lt;br /&gt;
The best way to go about it is to look at it as percentages.&lt;br /&gt;
The numbers 1, 0.5, 0.2 refer to 100% red, 50% green and 20% blue. But 2, 1, 0.4, will get the same result. Using numbers below one for all the numbers will result in the colour being less bright.&lt;br /&gt;
&lt;br /&gt;
This is all a bit confusing so an example will be given:&lt;br /&gt;
&lt;br /&gt;
 SkyColor=0.2 0.1 0.5;&lt;br /&gt;
&lt;br /&gt;
In this example the sky is coloured with 20% red, 10% green, and 50% blue, approximatly RGB(51,25,127), resulting in a very deep night-time blue. Other colours are added to the initial sky colour. If you set your sun as being a pale yellow and it came out rather green, this is why. &lt;br /&gt;
&lt;br /&gt;
One helpful tip is &#039;&#039;negative&#039;&#039; colour. That&#039;s right: you can type in a negative number for a colour and it will remove it from the base sky colour. Just be careful not to go below the original values or you may get a surprise.&lt;br /&gt;
&lt;br /&gt;
===The Sun System/Shadow System===&lt;br /&gt;
The Sun System/Shadow System is quite a useful tool as well in making your maps look &#039;&#039;well done&#039;&#039;.  &lt;br /&gt;
Within the &amp;lt;code&amp;gt;.smd&amp;lt;/code&amp;gt; file there is a line: &lt;br /&gt;
&lt;br /&gt;
: &amp;lt;code&amp;gt;SunDir=-1 1 -.5;	//direction of sun&amp;lt;/code&amp;gt; &amp;lt;small&amp;gt;(The part after the &amp;quot;//&amp;quot; is a comment)&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The numbers &amp;quot;-1&amp;quot;, &amp;quot;1&amp;quot;, &amp;quot;.5&amp;quot; determine the angle and elevation of the sunlight system. &lt;br /&gt;
&lt;br /&gt;
The first number is the X angle (East/West) (from -1 to 1) where any negative number means the sun is on the West (and therefore shadows will be cast east), and any positive number means the sun is on the East (and therefore shadows will be cast west), and if the number is 0 there are no east or west shadows, the sun is directly above you. &lt;br /&gt;
&lt;br /&gt;
The second is its elevation, (0 to 1), this number is how far from the horizion the sun is, ignoring it&#039;s angle. Thus, 1 puts the sun directly overhead (while still casting angular shadows) and 0 putting it directly on the horizion. &lt;br /&gt;
&lt;br /&gt;
The final number is the Z angle (North/South). (I know, I know, they wrote the engine with Y as elevation and Z as vertical. Don&#039;t blame me.) It is just like the East West positioning, where negative numbers put them on the North, and positive numbers put them on the South. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example Usage:&#039;&#039;&#039; If you want the shadows &#039;&#039;in&#039;&#039; one of the boxes (your shadow casting surface is in the middle), use the numbers provided, or start from them and tweak the angle and sun height as seen fit.&lt;br /&gt;
&lt;br /&gt;
[[Image:ShadowDirection.gif]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; on the current build, it &#039;&#039;will&#039;&#039; cast the shadows in the proper direction, etc. Negative direction numbers tend to make some maps unstable and cause crashes. The best solution would be to rotate or flip your map to where the shadows point up or right (North or West). I do believe these bugs are being worked on and will be fixed soon.&lt;br /&gt;
&lt;br /&gt;
We can only hope this has been helpful! Any questions, or things you think we have missed, please ask us in the maps section.&lt;br /&gt;
&lt;br /&gt;
[[Category:Map making]]&lt;/div&gt;</summary>
		<author><name>SpikeX</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=FAQ&amp;diff=6863</id>
		<title>FAQ</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=FAQ&amp;diff=6863"/>
		<updated>2006-05-19T00:15:54Z</updated>

		<summary type="html">&lt;p&gt;SpikeX: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==General information==&lt;br /&gt;
&lt;br /&gt;
===What is Spring?===&lt;br /&gt;
Spring is a project to create the best RTS ever (no joke). There are three principle goals which we hope to achieve.&lt;br /&gt;
&lt;br /&gt;
# Reach a stage where TA Spring can flawlessly execute most of Total Annihilation&#039;s original gameplay, with its original units in their original format.&lt;br /&gt;
# Add new features as we see fit, fix bugs, and release new versions when we feel it is appropriate to do so.&lt;br /&gt;
# Support the mod community as we see fit.&lt;br /&gt;
# Improving the already fine original TA Interface in a way that the Players will have more tatctical Options, more Control, more Comfort and still don`t get lost, as long as they are willing to learn.&lt;br /&gt;
&lt;br /&gt;
The goals might need an update.. -- Tim Blokdijk&lt;br /&gt;
&lt;br /&gt;
===Is Spring free?===&lt;br /&gt;
The core game is released under GPL License. However, some parts of the game are still under copyright by their owners. Therefore, today, you need to own the original TA game if you want to play. However the community is working hard in order to offer completely free alternatives.&lt;br /&gt;
&lt;br /&gt;
===Why can I edit this page?===&lt;br /&gt;
This page, and several others, are located in the Spring [http://en.wikipedia.org/wiki/Wiki Wiki]. The link gives a full explanation of what it is, but in short it is a way of letting anyone who wants to contribute to the page content. This can of course be abused, but even while it is easy for someone to vandalise the page, it is just as easy for someone to restore it, since the wiki saves all previous versions of a page.&lt;br /&gt;
&lt;br /&gt;
===Why can&#039;t I edit this page?===&lt;br /&gt;
You need to be [[Special:Userlogin|logged in]] to edit our wiki because people were vandalizing and/or being morons too much, so they had to lock it down.&lt;br /&gt;
&lt;br /&gt;
===I want to help, what can I do?===&lt;br /&gt;
Please look at the Messageboard. There are lots of things you can do according to your skills. Particularly important is to create viable and pleasing free alternatives to copyrighted material, mainly sounds and units.&lt;br /&gt;
&lt;br /&gt;
===I want to donate.===&lt;br /&gt;
People have made clear their desire to donate to the project, and so far, we have been fairly reluctant about accepting donations. Our main concern? While we certainly hope to have something on the level of a commercial release in the near future, there is no guarantee that it will ever happen. Unforeseen events arise, and it would be most unfortunate if everyone who donated felt swindled because the project did not turn out as they had hoped.&lt;br /&gt;
&lt;br /&gt;
We do not plan to be more or less productive solely based upon the quantity and frequency of donations received. The Spring project is here only because we view this as an enjoyable hobby.&lt;br /&gt;
&lt;br /&gt;
===I read all that and I still want to donate.===&lt;br /&gt;
Very well then! You can find the required details [http://taspring.clan-sy.com/donate.php here]. It will be much appreciated. :)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Technical==&lt;br /&gt;
&lt;br /&gt;
===What port numbers does Spring use?===&lt;br /&gt;
Game uses port 8452 UDP by default, which can be changed in the lobby. If you are behind a router, and are having problems hosting, try forwarding the correct port and also make sure the firewall is not blocking it.&lt;br /&gt;
&lt;br /&gt;
===What APIs does Spring use?===&lt;br /&gt;
The Windows version of the program (Which is the Binary that can be downloaded from this site) uses: OpenGL for rendering, DirectSound for sound, and Winsock for networking.&lt;br /&gt;
&lt;br /&gt;
The Linux port, see [[MultiplatformSpring]] with more info below, uses SDL/OpenGL for rendering, OpenAL for sound (which will connect to DirectSound on Windows and OSS or ALSA on Linux), BSD  sockets for networking.&lt;br /&gt;
&lt;br /&gt;
===What language is Spring written in?===&lt;br /&gt;
The spring game engine is written in C and C++. The Windows lobby client is written in Delphi, the lobby server is java. Another portable lobby is being made in Python.&lt;br /&gt;
&lt;br /&gt;
===Is Spring open source?===&lt;br /&gt;
Yes, it is. Go to the [http://taspring.clan-sy.com/download.php downloads] section of the site to download the source code.&lt;br /&gt;
&lt;br /&gt;
===Is there any documentation for the source code===&lt;br /&gt;
Yes, doxygen is used to automatically generate the [http://taspring.clan-sy.com/doxygen/ documentation]&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
&lt;br /&gt;
===What platforms will Spring run on?===&lt;br /&gt;
At the moment, it runs on Windows and Linux. However there is no working lobby for the Linux users at the moment, and Cross-Platform play does not work due to Sync errors.&lt;br /&gt;
&lt;br /&gt;
===What sort of a system do I need to run Spring?===&lt;br /&gt;
You need a 3D graphics card to run Spring, which will probably require at least a a GeForce4 MX and the latest driver supported. Minimum CPU requirements are a little more complex. A more powerful CPU will have the capability to support larger maps and a greater maximum unit limit. A 1 GHz CPU should be able to support an estimated 500 units. The needed memory will also vary with unit count and map size, but 512 MB should be enough. However, 1024MB you should already have, so it&#039;ll run fine.&lt;br /&gt;
&lt;br /&gt;
For further details and tested Systems check the [[Requirements]]-Page&lt;br /&gt;
&lt;br /&gt;
===Spring says I need the GL_ARB_texture_env_combine extension, what can I do?===&lt;br /&gt;
If you encounter the error &amp;quot;Needed extension GL_ARB_texture_env_combine not found&amp;quot;, this means that your video card driver does not support GL_ARB_texture_env_combine. You can try downloading a new video driver from the manufacturers website ([www.ati.com], [www.nvidia.com], ...). If they donÃ‚Â´t work, your last chance is to try &amp;quot;modded&amp;quot; drivers if you can find any. If this doesn&#039;t solve the problem either, then your video hardware is too old to support the extension. Buy a new video card. &lt;br /&gt;
&lt;br /&gt;
EDIT: I am also having this problem with the geoforce 6800 ultra and I have the latest drivers.&lt;br /&gt;
&lt;br /&gt;
REQUEST : please name some working and non-working 3D video cards. please give a value for minimum video memory : 32 Mo ? 64 Mo ?&lt;br /&gt;
&lt;br /&gt;
ANSWER : its not REALLY a matter of video memory..though 32mb and 64mb are pretty small...i got myself a 128mb and its fine. But its more a question of the gfx cards clock speed. Even if the card had insane memory , lets say for example, 4000gb. If it isnt fast enough to utilise the memory, its fairly pointless. But i geuss, there must be a direct coralation between the memory and clock speed, otherwise the manufacturers need to rethink what theyre doing =D                    &lt;br /&gt;
&lt;br /&gt;
List of video cards supposingly supporting GL_ARB_texture_env_combine :&lt;br /&gt;
&lt;br /&gt;
http://www.delphi3d.net/hardware/extsupport.php?extension=GL_ARB_texture_env_combine&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Spring works in full screen,but cncounters the error &amp;quot;Needed extension GL_ARB_texture_env_combine not found&amp;quot; when i try to run spring.exe in window&lt;br /&gt;
&lt;br /&gt;
==Content==&lt;br /&gt;
 &lt;br /&gt;
===Do Spring maps need a &amp;quot;ground&amp;quot;?===&lt;br /&gt;
Spring maps do require a ground. We have had many requests to have space maps, however, a &amp;quot;true&amp;quot; (ala Homeworld) space setting is not likely. It would have to wait until a much later stage. This does not mean that TA&#039;s style of &amp;quot;space&amp;quot; maps won&#039;t be possible, (see the Final Frontier TC for examples of this).&lt;br /&gt;
&lt;br /&gt;
===You stated that Spring uses the TA unit format.===&lt;br /&gt;
Spring does use the Total Annihilation unit format. However, we do plan to make Spring compatible with a custom unit format of our own design.&lt;br /&gt;
&lt;br /&gt;
===How powerful will Spring&#039;s custom format be?===&lt;br /&gt;
Total Annihilation&#039;s unit format was extremely limited. Most of these limitations will either be expanded or non-existent in Spring&#039;s custom unit format. One of the most exciting improvements is the introduction of an entirely new method of scripting, with nearly complete control over every aspect of a unit&#039;s actions and behaviors.&lt;br /&gt;
&lt;br /&gt;
===Does Spring have a limited number of weapons?===&lt;br /&gt;
No. Unlike Total Annihilation, Spring&#039;s weapon IDs will be unlimited. Meaning it will be possible to add as many third-party units as you want.  However, the current model format limits 16 weapons to each unit.&lt;br /&gt;
&lt;br /&gt;
===Does Spring have a limited number of unique units?===&lt;br /&gt;
No. Unit IDs, like weapon IDs, will be unlimited.&lt;br /&gt;
&lt;br /&gt;
===Will units have a maximum of 3 unique weapons?===&lt;br /&gt;
Total Annihilation had a limitation that permitted a maximum of 3 unique weapons per unit. Spring currently has a way to have 16 weapons per unit. (Replace Primary, Secondary, Tertiary by 1 2 3 ...16). More can be made possible by modifying the source if there&#039;s a sufficient demand by mod makers.&lt;br /&gt;
&lt;br /&gt;
===I&#039;m curious as to the per-unit polygon limit.===&lt;br /&gt;
The engine itself does not have a polygon count limit. The limit is that of the processing power of today&#039;s computers. Since Spring requires a 3D card, the maximum polygon count per unit will be several times higher than Total Annihilation&#039;s. That means for your average mod, 300 polygons for common units and 700 for the more expensive ones is quite reasonable. (But don&#039;t waste polies unnecessarily!)&lt;br /&gt;
&lt;br /&gt;
===Will units be able to perform basic terraforming?===&lt;br /&gt;
Total Annihilation units probably won&#039;t have any terrain editable functionality. Future units may be endowed with such functionality, but it&#039;s more of a gameplay issue and has not been decided upon yet. However construction units can restore ground, and certain weapons (especially explosive ones) can be used to deform the ground.&lt;br /&gt;
&lt;br /&gt;
===Will tunnel building be possible?===&lt;br /&gt;
Subterranean areas of any sort is impossible. However, it is possible to heavily deform the ground with explosives.. Which is great fun!&lt;br /&gt;
&lt;br /&gt;
===Will the ground&#039;s water retention be editable?===&lt;br /&gt;
No. Water will always collect when a piece of land has a height below sea level.&lt;br /&gt;
&lt;br /&gt;
===Does Spring have a limit on the number of races?===&lt;br /&gt;
Spring has no limit on the total number of sides/races.&lt;br /&gt;
&lt;br /&gt;
===What are the sizes of the biggest and smallest units?===&lt;br /&gt;
Static units (buildings, defenses, etc.) have no size limitations in the engine. Technically, neither do mobile units, but units with a footprint larger than 4x4 &amp;quot;squares&amp;quot; (an arbitrary size standard created by Cavedog) might have problems pathfinding.&lt;br /&gt;
&lt;br /&gt;
===What is going to be the maximum possible sea depth?===&lt;br /&gt;
For all practical purposes, it will be unlimited. The depth values are stored as &amp;quot;float variables&amp;quot;, so it is doubtful that maps would ever be made which even come close to approaching the limit.&lt;br /&gt;
&lt;br /&gt;
===Will Spring support campaigns?===&lt;br /&gt;
Basic Map scripting has been implemented, using a Lua scripting engine. From that, it would be possible to make a basic campain, but for ease of use a better way of selecting scripts and an improved Single player menu is needed.&lt;br /&gt;
&lt;br /&gt;
===How big are the Spring files?===&lt;br /&gt;
Spring will be as small as however much content is included with it. The &amp;quot;essential&amp;quot; files are only be several megabytes large. Content (such as maps and units) will add considerable size to the Spring download. Currently, the file size is roughly 30 MB.&lt;br /&gt;
&lt;br /&gt;
===How will Spring render sound effects?===&lt;br /&gt;
Sound is rendered 3D, meaning that the volume and direction (assuming a multi-speaker setup) vary with the location of the camera from the sound &amp;quot;emitter&amp;quot;. What this translates into gameplay terms means that the closer you are to a unit making a sound or motion, the louder the sound will be. Additionally, the sound will be heard differently depending on which way the camera is facing relative to units making sound.&lt;br /&gt;
&lt;br /&gt;
===Will Spring have ambient sound?===&lt;br /&gt;
There is no ambient sound, and we haven&#039;t planned on adding it thus far.&lt;br /&gt;
&lt;br /&gt;
===Will there be an AI or a &amp;quot;skirmish&amp;quot; mode?===&lt;br /&gt;
We have created an interface for AI&#039;s, and several are currently under development. In the meantime, the spawn script included in the latest version exists as a text file in the Spring folder, and can be modified by any text editor such as MS Notepad, for your particular play style, or mod.&lt;br /&gt;
&lt;br /&gt;
===Will a &amp;quot;possess&amp;quot; or a FPS option be present?===&lt;br /&gt;
Yes, it is possible to fully control a unit from the first person view. It is more of a gimmick, but it still allows for a nice diversion once in a while.  Instructions on it&#039;s use are in the [[Using_Spring#FPS_.22Mode.22_.28C.29|Using Spring]] article.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Getting into a game==&lt;br /&gt;
&lt;br /&gt;
===People talk about &#039;Single Player&#039;. How do I start a single player game?===&lt;br /&gt;
Simply start a game in the lobby, and enter a password, so that nobody can join. Then click ready, and start and away you go !&lt;br /&gt;
&lt;br /&gt;
===When I try to make a single player game, it gives me an error.===&lt;br /&gt;
Your graphics card probably can&#039;t support Spring. If you read the requirements it did say GeForce 3 or better. Go to the settings file in your Spring directory and lower some of the options. Sometimes that works.&lt;br /&gt;
&lt;br /&gt;
===Does Spring support AI Players?===&lt;br /&gt;
Yes, see [[AI]] You can also use the [[random_enemies]] script, which spawns units out of thin air and sends them to attack you.&lt;br /&gt;
&lt;br /&gt;
===When I try to connect to the lobby it gives me an error.===&lt;br /&gt;
There could be 3 problems. Either you don&#039;t have an account, the server is down, or you have not configured your router/firewall correctly. If you don&#039;t have an account, make one. If the server is down, you&#039;ll just have to wait (this doesn&#039;t happen often, though). If you have a router/firewall read below. Have a look at this website&#039;s News page and/or the Messageboard, it is likely that you will get some information there in the eventuality that the server is down.&lt;br /&gt;
&lt;br /&gt;
Also make sure that you don&#039;t have any spaces in your username.&lt;br /&gt;
&lt;br /&gt;
===I have a router and I don&#039;t seem to be able to get a game===&lt;br /&gt;
&lt;br /&gt;
If you are using a router you may have other problems. Explanations of [http://www.portforward.com/routers.htm how to forward ports] has instructions for every router.&lt;br /&gt;
&lt;br /&gt;
===Where can I download more maps?===&lt;br /&gt;
As for most Spring downloads [http://www.fileuniverse.com/?page=listing&amp;amp;ID=90 FileUniverse] is the place to be! A collection of maps can be downloaded [http://www.fileuniverse.com/?page=listing&amp;amp;ID=91 here].&lt;br /&gt;
&lt;br /&gt;
===I used the small installer where can I get the missing maps?===&lt;br /&gt;
Unfortunately the maps included in the regular installer aren&#039;t available on File Universe. However, since many of the scripts included in the game rely on map4, this can be downloaded [http://taspring.clan-sy.com/dl/map4.7z here].&lt;br /&gt;
&lt;br /&gt;
===How do I install downloaded maps?===&lt;br /&gt;
Most maps are released as .sdz or .sd7 files. These can be put directly into the &amp;quot;maps&amp;quot; folder inside the Spring folder. If they are compressed into another type of archive you will have to unpack them first. Just unzip them into your spring maps folder. Some map files use newer (smaller) file formats such as .rar or .7z, to unzip these newer formats, you&#039;ll need to download 7-Zip [http://www.7-zip.org/ http://www.7-zip.org/] or Zip-genius [http://downloads.zipgenius.it/ http://downloads.zipgenius.it/]. They both handle almost all formats and are totally free.  There is also now a map browser in the TASClient lobby software, click the more maps button in a battle screen to access it.&lt;br /&gt;
&lt;br /&gt;
===Sometimes when I try to join games it gives me an error.===&lt;br /&gt;
The host is behind a firewall that has not opened the correct ports for Spring.&lt;br /&gt;
&lt;br /&gt;
===When a multiplayer game starts I never make it past the loading screen.===&lt;br /&gt;
This indicates a problem with your video card. Once again the best way to deal with this situation is to make sure your video card has the latest driver updates and that all Spring video features are on the lowest settings.&lt;br /&gt;
&lt;br /&gt;
===When a multiplayer game starts, I make it past the loading screen, but when I get into the game it says, &amp;quot;Waiting for Host&amp;quot;, and does a 10 second countdown. It always reaches zero and boots me out, what gives?===&lt;br /&gt;
This is a firewall issue. There are three things you can do to fix this. First, make sure your windows firewall is either off, or is not blocking the TA: Spring application. Secondly, if you are behind a router, you can forward the ports that the host is using (especially if you are the host), and it usually fixes the problem. To do this you must go to your router configuration page. You can see what port &#039;you&#039; are using (as the host), by hosting a multiplayer game in the Spring Lobby. You must make this your trigger port, and make sure that it is open for both TCP and UDP. Thirdly, if none of the aforementioned worked. The easiest thing to do (assuming you are behind a router) is to set the DMZ (Demilitarized Zone). This means your computer will be completely exposed to the internet, which will make you vulnerable to any unknown or unpatched exploits in windows. All you have to do is find the personal IP if the computer you are using and add it to your router&#039;s DMZ list. Please only try this last option if you can&#039;t get the others to work.&lt;br /&gt;
Good Luck&lt;br /&gt;
&lt;br /&gt;
===I got into the game, but some people didn&#039;t.===&lt;br /&gt;
The host may have reached the number of players it has set.&lt;br /&gt;
Or the players may be experiencing firewall or video card difficulty. That is not your fault. Please ask them too leave if they are still there when you get into the &#039;game lobby&#039;. Some people have problem connecting to &amp;quot;hole punching&amp;quot; hosts.&lt;br /&gt;
&lt;br /&gt;
===I got into a game but my name is red, nobody can hear me speak, and eventually I get disconnected===&lt;br /&gt;
This is to do with how long it takes the game to start up (the &amp;quot;load time&amp;quot;). If it takes too long you will see this problem. The load time can be reduced by changing the game graphics settings to lower quality. In particular try setting texture quality to lowest.&lt;br /&gt;
&lt;br /&gt;
===What do all those icons mean in the server list?===&lt;br /&gt;
Server status icons inform you, at a quick glance, what the server is doing at the moment, and what state it&#039;s in (password protected, locked, open, full, etc). Read all about the server status icons and what they mean [[Server Status|here]].&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Playing==&lt;br /&gt;
&lt;br /&gt;
===What is with this weird right-click mode? I&#039;m &#039;bout to break my keyboard.===&lt;br /&gt;
Sorry, you&#039;ll just have to get used to it. As of now it can&#039;t be changed.&lt;br /&gt;
&lt;br /&gt;
===Why is somebody else also controlling my units?===&lt;br /&gt;
In the &#039;game lobby&#039; there are two sets of teams. There are the &#039;Teams&#039; and the &#039;Ally Teams&#039;. If you are on the same &#039;Team&#039;, then you both get the same commander, and can control the same units. If you are on &#039;Ally Teams&#039;, then you both get different commanders and can&#039;t control each others units.&lt;br /&gt;
&lt;br /&gt;
===Then why would I want to be on the same &#039;Team&#039; as somebody?===&lt;br /&gt;
Because it&#039;s fun to just drive around units and not have to worry about commanding. (Assuming that one of the people on the team is commanding.)&lt;br /&gt;
&lt;br /&gt;
===How do I talk to my allies only?===&lt;br /&gt;
You must type &#039;a:&#039; before you speak. Here&#039;s an example: a: Now I am talking to my allies only.&amp;lt;br&amp;gt;&lt;br /&gt;
And most important, you can split tasks, as base building, troops managment.&lt;br /&gt;
&lt;br /&gt;
===Help! After I&#039;m finished driving a unit, the camera is all insane! This is nuts! How do I fix it?===&lt;br /&gt;
Whoa now. Calm down. Just press ctrl + mouse button 3 to change camera modes.  If your unit is destroyed in FPS mode, you will stay in FPS mode until you change camera modes.  Also, the camera will stay in &amp;quot;free look&amp;quot; when FPS mode is disengaged, press middle-mouse or J to switch to normal scrolling.&lt;br /&gt;
&lt;br /&gt;
===After I&#039;m finished driving a unit, where what used to be my mouse pointer is now a crosshair. Why?===&lt;br /&gt;
-This is a special &#039;view mode&#039; that allows you to move around the screen much faster. It&#039;s good for viewing the battle or getting screenshots. Simply press on your third mouse button or &#039;delete&#039; to revert back to your mouse pointer.&lt;br /&gt;
&lt;br /&gt;
===But I don&#039;t have a third mouse button!===&lt;br /&gt;
The key &#039;J&#039; works in the same way as the &#039;middle mouse button&#039; does. So where you would use ctrl + middle mouse button to change camera modes, ctrl + j does the same thing. Pressing J once will also switch you from &#039;crosshair mode&#039; to &#039;pointer mode&#039; and vice versa.&lt;br /&gt;
&lt;br /&gt;
===IÃ‚Â´ve managed to get stuck in this weird camera mode and my perspective is all messed up. How do I switch to the overhead (OTA style) camera?===&lt;br /&gt;
Shift+Backspace (or Shift+J or Shift+MiddleMouseClick) switches between the fps style, total war style and OTA style cameras. Use it to get your camera back to normal in this situation.&lt;br /&gt;
&lt;br /&gt;
===People are cheating! How do I stop it?!===&lt;br /&gt;
Well currently, you can&#039;t.&lt;br /&gt;
&lt;br /&gt;
Only the host can &amp;quot;activate&amp;quot; the cheat codes. After that, any player can do almost all cheats.&lt;br /&gt;
&lt;br /&gt;
The best thing to do is just not play with the cheaters anymore. But with new spring version cheats are disabled in multiplayer, so that paragraph is hopefully now irrelevant.&lt;br /&gt;
&lt;br /&gt;
===Well how do you cheat?===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;3&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;Cheat Command&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;&#039;&#039;&#039;.cheat&#039;&#039;&#039;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;enable cheats - Cheats don&#039;t work in multiplayer until the host types this&#039;&#039;&#039;&amp;lt;/td&amp;gt;&lt;br /&gt;
 &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;.nocost&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;instabuild (doesn&#039;t work on things already under construction, only on new ones)&amp;lt;/td&amp;gt;&lt;br /&gt;
 &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;.setmaxspeed 50&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Changes the maximum speed multiplier (default is 3.0)&amp;lt;/td&amp;gt;&lt;br /&gt;
 &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;.setminspeed 0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Changes the minimum speed multiplier (default is 0.3)&amp;lt;/td&amp;gt;&lt;br /&gt;
 &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;.spectator&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Allows you to see the entire map... but you lose control of your units&amp;lt;/td&amp;gt;&lt;br /&gt;
 &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;.team 0, .team 1, etc.&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Change player&amp;lt;/td&amp;gt;&lt;br /&gt;
 &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;.give ARMCOM, .give 10 CORKROG, etc.&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Place 1 or specified number of specified unit.  Valid units are the internal names of units as specified in the unit definition.&amp;lt;/td&amp;gt;&lt;br /&gt;
 &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===In Game Commands===&lt;br /&gt;
The following &#039;&#039;non-cheating&#039;&#039; commands are also available in game:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;3&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;th&amp;gt;Command&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
 &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;.info&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Shows you what colour each player is and their ping delay in the bottom left corner of the screen&amp;lt;/td&amp;gt;&lt;br /&gt;
 &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;.clock&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Shows you the elapsed game time in minutes and seconds in the bottom left corner of the screen&amp;lt;/td&amp;gt;&lt;br /&gt;
 &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;.take&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Pulls all allied units, that are owned by players who have lost connection to the server, to your team.&amp;lt;/td&amp;gt;&lt;br /&gt;
 &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===How do I ally or unally in game?===&lt;br /&gt;
I&#039;m pretty sure you can&#039;t. Yet.&lt;br /&gt;
&lt;br /&gt;
===How do I give somebody units or metal or energy?===&lt;br /&gt;
Press the &#039;H&#039; key. Then select the amount of metal and/or energy to share. Then select the receiving player and press OK.&lt;br /&gt;
&lt;br /&gt;
When sharing units, you must first select the units to share, then press &#039;H&#039; key. Tick share units checkbox and choose a receiving player.&lt;br /&gt;
&lt;br /&gt;
===How do I continually give somebody metal and/or energy after a certain point (i.e. Original TA commands +setshare..., +shareall)?===&lt;br /&gt;
You&#039;ll notice that on your metal and energy bars (top of screen), there are two red bars. You have to put them wherever you want your metal and energy to be shared after.&lt;br /&gt;
&lt;br /&gt;
===This game is different than TA, the units HP and damage are not the same===&lt;br /&gt;
 &lt;br /&gt;
There were several third party &amp;quot;balance&amp;quot; mods for the original TA game.&lt;br /&gt;
&lt;br /&gt;
One of those mods were xTA, and was developed by the same clan (SY) that has brought life back to TA, making Spring.&lt;br /&gt;
&lt;br /&gt;
This balance mod is what is bundled by default with the spring engine, and is the mod that was ready to play when spring was released.&lt;br /&gt;
&lt;br /&gt;
Now are several mods available, install the mod of your choice.&lt;br /&gt;
&lt;br /&gt;
[http://www.fileuniverse.com/?p=listing&amp;amp;ID=92 get mods here]&lt;br /&gt;
&lt;br /&gt;
===XTA? OTA? AA? OMFGLAMO? What those all the abbreviations mean?===&lt;br /&gt;
zwzsg maintains a handy dandy FAQ about TA, and the abbreviations that relate to Spring too, of course.&lt;br /&gt;
[http://www.tauniverse.com/forum/showthread.php?t=27309 click here]. See also the Spring [[Glossary]], which contains brief explanations for all non-standard words and phrases.&lt;br /&gt;
&lt;br /&gt;
===Why am I destroyed so easily by long range assaults?===&lt;br /&gt;
This is a realistic feature of Spring. Units will automatically attack &#039;radar blips&#039; (units that they can not actually see, but that are indicated on radar). However, the accuracy is very bad while shooting at radar blips until:&lt;br /&gt;
* Your unit kills a lot of units and gets experience&lt;br /&gt;
* You get a targeting facility.&lt;br /&gt;
&lt;br /&gt;
===Can I kick people from my &#039;game lobby&#039; or my game?===&lt;br /&gt;
First of all, you have to be the host to kick. Use the good old &amp;quot;.kick playernamehere&amp;quot; command. Works in-game too, use it wisely.&lt;br /&gt;
&lt;br /&gt;
===When I&#039;m &#039;driving&#039; my commander, why can&#039;t I use my laser?===&lt;br /&gt;
The TA: Spring team will most likely add a way for you to use your commander&#039;s laser soon.&lt;br /&gt;
&lt;br /&gt;
===I hate driving around with the &#039;arrow keys&#039;. Is there any way I can use the &#039;W-A-S-D&#039; controls (the controls most First Person Shooters use) anymore?===&lt;br /&gt;
Go into your Spring directory and edit the uikeys file. Keep in mind that &#039;S&#039; is originally a &#039;hot-key&#039; that will stop your units and that &#039;D&#039; is a &#039;hot-key&#039; for your commander&#039;s D-Gun. You might want to change those too.&lt;br /&gt;
&lt;br /&gt;
===I turned the shadows feature on; I still don&#039;t see shadows. What gives?===&lt;br /&gt;
Your graphics card can&#039;t handle shadows, so Spring automatically turns them off.&lt;br /&gt;
&lt;br /&gt;
===I can&#039;t go backwards when I am &#039;driving&#039; a unit. Why not?===&lt;br /&gt;
Because TA units were never intended to go backwards. Sorry, but you just cant.&lt;br /&gt;
&lt;br /&gt;
===I&#039;m in an Unreal Tournament kind of mood. How do I strafe?===&lt;br /&gt;
You can only strafe in &#039;brawler type&#039; ships, such as the brawler, rapier, and light gunships.&lt;br /&gt;
&lt;br /&gt;
===How can I record and watch demos/replays?===   &lt;br /&gt;
From version 0.62 onwards recordings of all the games you play are easily available for replay via the Replays button in the TASclient.&lt;br /&gt;
&lt;br /&gt;
You can use the Speed up/Slow down game keys while watching the replay, along with other in-game commands like .team&lt;br /&gt;
&lt;br /&gt;
From version 0.60b1 onwards, demos are automatically recorded in the &amp;quot;demos&amp;quot; folder, underneath your Spring folder (default is C:\Program Files\TASpring\demos), named for the date and map they were played on. If you play multiple games in the same day on the same map, the games will also be numbered to prevent them from overwriting each other.&lt;br /&gt;
&lt;br /&gt;
From version 0.62 onwards, to view a demo from the Windows file manager you can just double click the file name.&lt;br /&gt;
&lt;br /&gt;
===Sometimes when I play get &amp;quot;not sync&amp;quot; &amp;quot;delayed synch&amp;quot; errors===&lt;br /&gt;
&lt;br /&gt;
Thats caused because of lag. One of the players in the game is having some lag issues. Ask him/her to free up its bandwidth for the game to use.&lt;br /&gt;
&lt;br /&gt;
Alternatively you can use the pause key and wait till the connection gets more stable.&lt;br /&gt;
&lt;br /&gt;
Lag is the seccond number showed when you use the .info command ingame, numbers bigger than 40 are not usual in a normal game and are a signal of lag.&lt;br /&gt;
&lt;br /&gt;
==Creating Content for Spring==&lt;br /&gt;
===How do I create maps?===&lt;br /&gt;
See the [[Map development]] page for all the map info.&lt;br /&gt;
&lt;br /&gt;
===How do I create units/mods?===&lt;br /&gt;
See the [[Mod_and_Unit_development#Mod_devlopement|Mod and Unit development]] page on creating units/ mods.&lt;br /&gt;
&lt;br /&gt;
[[Category:Content]]&lt;/div&gt;</summary>
		<author><name>SpikeX</name></author>
	</entry>
</feed>