<?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=Patmo98</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=Patmo98"/>
	<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/wiki/Special:Contributions/Patmo98"/>
	<updated>2026-11-08T18:22:11Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3438</id>
		<title>Building Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3438"/>
		<updated>2010-03-28T20:38:41Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: /* Using CMake (2.6 or newer) (patmo98&amp;#039;s method) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Build from source on MacOSX=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Guide is for x86/Intel based OSX installs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I am hoping that with our efforts on the forum that we can have an .app bundle released everytime spring is updated and that will save most people needing to go through the headache of compiling from source code. But if you must try, then here&#039;s the steps to help!&lt;br /&gt;
&lt;br /&gt;
I cannot stress enough that this will most likely only work on Intel based systems at this stage. With my understanding of how unitsync works, it seems like online play will not be possible between PPC and x86 architecture.&lt;br /&gt;
&lt;br /&gt;
=Obtaining the Source=&lt;br /&gt;
{{Obtaining_The_Source_Code}}&lt;br /&gt;
&lt;br /&gt;
=Get Dependencies=&lt;br /&gt;
&lt;br /&gt;
You will need to install some development packages Spring depends on. Most of these are available using [http://http://www.macports.org/ Macports] (similar to portage / apt-get etc available on various linux distro&#039;s)&lt;br /&gt;
&lt;br /&gt;
You will also need to install the [http://developer.apple.com/TOOLS/Xcode/ Xcode developers package] (this requires a free membership to apple&#039;s ADC website)&lt;br /&gt;
&lt;br /&gt;
==Full list==&lt;br /&gt;
&lt;br /&gt;
*Programs necessary to build&lt;br /&gt;
**Xcode&lt;br /&gt;
**cmake (or scons)&lt;br /&gt;
**zip&lt;br /&gt;
**The usual build toolchain&lt;br /&gt;
***gcc &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
***make &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
*Libraries&lt;br /&gt;
**SDL&lt;br /&gt;
**boost (version 1.35 or later recommended)&lt;br /&gt;
***threads&lt;br /&gt;
***regex&lt;br /&gt;
***signals&lt;br /&gt;
***system&lt;br /&gt;
**DeviL (IL, ILU)&lt;br /&gt;
**OpenAL &#039;&#039;Please check the OpenAL section for MacOSX specific info&#039;&#039;&lt;br /&gt;
**OpenGL headers (mesa, glew, etc.) &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
**zlib&lt;br /&gt;
**freetype&lt;br /&gt;
**ogg,vorbis and vorbisfile&lt;br /&gt;
*Optional, for bindings and Ais&lt;br /&gt;
**Python (2.5)&lt;br /&gt;
**Java-SDK &#039;&#039;(pre-installed on OSX)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using Macports==&lt;br /&gt;
&lt;br /&gt;
Once you have downloaded and configured Macports use these commands to download / compile and install the required dependencies :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;sudo port install cmake&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl-framework&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost-jam&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libpng #These image libraries might not be needed, but ma save you some headaches&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install jpeg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install tiff&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libogg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libvorbis&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install python25&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libdevil # as of October 12th 2009 the Macports install of libdevil (1.6.8-rc2_0) is broken for some people.  If you get errors like /opt/local/include/IL/il.h:505: error: â€˜&amp;lt;anonymous&amp;gt;â€™ has incomplete type while building spring, you&#039;ll probably need to install it from source. )&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all was successful, you are very close to being able to compile Spring naively!&lt;br /&gt;
&lt;br /&gt;
==Installing libdevil from source==&lt;br /&gt;
&lt;br /&gt;
Make sure that all the other port packages are installed first!&lt;br /&gt;
Download the source.  Right now 1.6.8-rc2_0 has the bug we&#039;re trying to work around, so don&#039;t use that one, or earlier versions.&lt;br /&gt;
&lt;br /&gt;
Extract the source code.&lt;br /&gt;
&lt;br /&gt;
Configure it.  I used this command.&lt;br /&gt;
./configure --enable-png --enable-ILU --enable-ILUT --enable-x86_64 CPPFLAGS=&amp;quot;-I/opt/local/include/ -L/opt/local/lib/&amp;quot; LDFLAGS=-L/opt/local/lib/&lt;br /&gt;
&lt;br /&gt;
Make sure you have support for png, jpg, dds, and tga&lt;br /&gt;
&lt;br /&gt;
Make it with &amp;quot;make&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Part way through you&#039;ll get an error about malloc.h not being found.  To fix it, replace &amp;lt;malloc.h&amp;gt; with &amp;lt;sys/malloc.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
install with sudo make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==OpenAL==&lt;br /&gt;
&lt;br /&gt;
After having mountains of problems myself with the OpenAL pre-installed with the Xcode tools, I discovered that it is version 1.0 of OpenAL (not the correct version we want).&lt;br /&gt;
&lt;br /&gt;
Head to your /System/Library/Framework/ folder and delete any trace of OpenAL framework / folders that are there.&lt;br /&gt;
&lt;br /&gt;
[http://kcat.strangesoft.net/openal-releases/openal-soft-1.8.466.tar.bz2 Now download this copy of OpenAL]&lt;br /&gt;
&lt;br /&gt;
Using the terminal, go into the folder where you downloaded openal-soft and pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;bzip2 -d openal-soft-xxxx.tar.bz2 | tar xvf -&amp;lt;br&amp;gt;&lt;br /&gt;
cd openal-soft-xxxx&amp;lt;br&amp;gt;&lt;br /&gt;
cmake .&amp;lt;br&amp;gt;&lt;br /&gt;
make&amp;lt;br&amp;gt;&lt;br /&gt;
make install&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All done, now you will have no problems compiling the Sound.cpp file in spring!&lt;br /&gt;
&lt;br /&gt;
=Build And Install=&lt;br /&gt;
&lt;br /&gt;
The build will spew out warnings like the following, which you can safely ignore:&amp;lt;br&amp;gt;&lt;br /&gt;
warning: division by zero&amp;lt;br&amp;gt;&lt;br /&gt;
warning: &#039;q&#039; may be used uninitialized in this function&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Removing duplicate libraries==&lt;br /&gt;
&lt;br /&gt;
Make sure that you remove all extra libraries before the first time you call cmake.  If not, cmake will make your life a living hell.  Check in /usr /usr/local /opt/local and /Library/Frameworks.  Also, don&#039;t change the location of the source directory, librarys, or includes after calling cmake.  If you do change any of the locations you can&#039;t just call cmake again.  The only way I know to tell it to recompute everything from scratch is this:&lt;br /&gt;
*Change to the root of the git tree&lt;br /&gt;
*Remove every single visible file.&lt;br /&gt;
*Run git reset --hard&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer) (Adso&#039;s method)==&lt;br /&gt;
This is the only way I have compiled spring successfully so far :&lt;br /&gt;
&lt;br /&gt;
(could someone please add a better way? As I cannot workout how to get xcodebuild to run the &amp;quot;install portion of the make file&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake .&lt;br /&gt;
make&lt;br /&gt;
make install&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will install spring in all the right places to be run from a command line (but don&#039;t yet, it compiles an unusable executable, we just needed to get the makefile to install everything to the right place)&lt;br /&gt;
&lt;br /&gt;
Now pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake -G Xcode&lt;br /&gt;
xcodebuild&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will have made a folder called &amp;quot;Debug&amp;quot; and will contain a command line program Spring, and Libunitsync.dylib&lt;br /&gt;
&lt;br /&gt;
now to make sure the correct copy of spring runs when you are using the terminal pass the following command&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;sudo cp spring /usr/local/bin&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer) (patmo98&#039;s method)==&lt;br /&gt;
The worst problem I ran into while trying to use Adso&#039;s method was getting the include and library paths to work.&lt;br /&gt;
&#039;&#039;&#039;This probably won&#039;t be needed unless you you been installing libraries from source or using fink.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Make sure before you start that you don&#039;t have any extra copies of libraries laying around.&lt;br /&gt;
&lt;br /&gt;
Get the dependencies and source code.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;ccmake .&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you see a list of options here, you&#039;ve already run (c)cmake before and that may cause you trouble.  Press &#039;c&#039; to have it auto configure.  Press &#039;t&#039; to switch to advanced mode.  Manually add the following includes and librarys.  Yes, this is an ugly hack that should be instead fixed in the build system, but I don&#039;t know enough about cmake to fix it.&lt;br /&gt;
&lt;br /&gt;
CMAKE_CXX_FLAGS                  -I/usr/local/include -I/opt/local/include&lt;br /&gt;
CMAKE_C_FLAGS                    -I/usr/local/include -I/opt/local/include&lt;br /&gt;
CMAKE_EXE_LINKER_FLAGS           -L/usr/local/lib -L/opt/local/lib&lt;br /&gt;
&lt;br /&gt;
You may need to add more directories.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the build finishes successfully, you will now have the spring executable, unitsync.dylib and some other assorted things.&lt;br /&gt;
&lt;br /&gt;
Spring will search for Libunitsync.dylib in the same directory as the executable (and possibly other places), and search for the data files in ~/.spring/.&lt;br /&gt;
If you have access to a working windows install, just copy the windows install to ~/.spring and run the executable from where ever you like.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
=Finalizing installation=&lt;br /&gt;
&lt;br /&gt;
Will update later once I update the Springlobby wiki with all my OSX information!&lt;br /&gt;
&lt;br /&gt;
If you need to contact me, send a PM to &#039;&#039;&#039;adso&#039;&#039;&#039; on the forums, or catch me in #sy or #springlobby in the lobby chat :)&lt;br /&gt;
&lt;br /&gt;
--[[User:Adso|Adso]] 06:23, 29 August 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_on_MacOSX&amp;diff=17640</id>
		<title>Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_on_MacOSX&amp;diff=17640"/>
		<updated>2010-03-28T00:02:50Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: /* Installing the Dependencies */ Fixing wording&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Because all needed libraries are available for OSX as well, you can compile a working version of Spring for Mac. But Unitsync will only work between Intel Macs and PCs, but not between those and PPC, and due to Apple&#039;s switch from PPC to Intel and due to the astronomical amount of effort it would take to to make them sync, there is no PPC port under development.&lt;br /&gt;
&lt;br /&gt;
There&#039;s also a working lobby client for Mac OSX, follow the instruction below to compile it.&lt;br /&gt;
&lt;br /&gt;
=Install Spring from source on an Intel Mac=&lt;br /&gt;
The following guide was created and tested in a 2,53 Ghz 13&amp;quot; MacBook Pro, 4 GB RAM Nvidia GeForce 9400M and a MacPro Xenon Quadcore ATI Radeon HD 4870, both with Snow Leopard (10.6).&lt;br /&gt;
&lt;br /&gt;
==Dependencies:==&lt;br /&gt;
You will need the following dependencies to compile:&lt;br /&gt;
 Programs necessary to build&lt;br /&gt;
    * Xcode Tools&lt;br /&gt;
    * cmake (included in Xcode tools)&lt;br /&gt;
    * zip&lt;br /&gt;
    * p7zip&lt;br /&gt;
&lt;br /&gt;
 Libraries&lt;br /&gt;
    * SDL&lt;br /&gt;
    * boost (version 1.35 or later recommended)&lt;br /&gt;
    * DeviL (IL, ILU)&lt;br /&gt;
    * OpenAL (comes with Xcode tools)&lt;br /&gt;
    * OpenGL headers (mesa, glew, etc.) (comes with Xcode tools)&lt;br /&gt;
    * zlib&lt;br /&gt;
    * freetype&lt;br /&gt;
    * ogg,vorbis and vorbisfile &lt;br /&gt;
    * Python (2.5) &lt;br /&gt;
    * glew&lt;br /&gt;
&lt;br /&gt;
==Installing the Dependencies==&lt;br /&gt;
&lt;br /&gt;
Firstly, download the Xcode Development Tools from Apple or install them from your OSX DVD: http://developer.apple.com/technology/xcode.html (you will need to register, but its free of charge)&lt;br /&gt;
&lt;br /&gt;
Then download and install Macports (http://www.macports.org)&lt;br /&gt;
You need to be administrator to complete the following.&lt;br /&gt;
Open the Terminal and copy and paste the first command and wait until it is completed, continue one-by-one with the others (you may be asked for the admin password each time).&lt;br /&gt;
&lt;br /&gt;
 sudo port install cmake&lt;br /&gt;
 sudo port install libsdl&lt;br /&gt;
 sudo port install libsdl-framework&lt;br /&gt;
 sudo port install boost&lt;br /&gt;
 sudo port install glew&lt;br /&gt;
 sudo port install boost-jam&lt;br /&gt;
 sudo port install libpng&lt;br /&gt;
 sudo port install jpeg&lt;br /&gt;
 sudo port install tiff&lt;br /&gt;
 sudo port install libogg&lt;br /&gt;
 sudo port install libvorbis&lt;br /&gt;
 sudo port install python25&lt;br /&gt;
 sudo port install libdevil&lt;br /&gt;
 sudo port install p7zip&lt;br /&gt;
&lt;br /&gt;
This will take some time and disk space, but should complete without problems. If you experience any errors, download the dependencies&#039; source and compile it.&lt;br /&gt;
&lt;br /&gt;
==Fixes==&lt;br /&gt;
Download the latest spring source from the download page.&lt;br /&gt;
If you try to compile now, you will experience some errors, and therefore you will have to apply theseÂ patchÂ files:&lt;br /&gt;
&lt;br /&gt;
https://trac.macports.org/attachment/ticket/23556/patch-file-extension.diff&lt;br /&gt;
https://trac.macports.org/attachment/ticket/23556/platform-misc-cpp.diff&lt;br /&gt;
&lt;br /&gt;
cdÂ intoÂ theÂ sourceÂ directoryÂ andÂ execute&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;patchÂ -pÂ 0Â &amp;lt;Â patch-file-extension.diff&lt;br /&gt;
&lt;br /&gt;
patchÂ -pÂ 0Â &amp;lt;Â platform-misc-cpp.diff&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Compiling:==&lt;br /&gt;
Open the Terminal, change into the Spring source folder (e.g.: &amp;quot;cd Desktop/spring_0_80_5_2/&amp;quot;) and follow the instructions below:&lt;br /&gt;
(You will be asked for the admin password)&lt;br /&gt;
&lt;br /&gt;
 type &amp;quot;cmake .&amp;quot; (the dot and the gap is important)&lt;br /&gt;
 type &amp;quot;make&amp;quot; (this will take some time)&lt;br /&gt;
 type &amp;quot;sudo make install&amp;quot;&lt;br /&gt;
&lt;br /&gt;
After the above commands have finished, check &amp;quot;/usr/local/share/games/spring/AI/Interfaces/C/0.1/&amp;quot; to see if the files there end with &#039;.so&#039; or &#039;.dylib&#039;. If they are named .so you will get an error message when using AI bots. Run this command to rename all .so files to .dylib:&lt;br /&gt;
&lt;br /&gt;
 for X in `find /usr/local/share/games/spring/ -name &amp;quot;*.so&amp;quot;`; do sudo mv $X ${X/.so/.dylib}; done;&lt;br /&gt;
&lt;br /&gt;
==Result==&lt;br /&gt;
Now, you have a a Unix Executable File called &amp;quot;spring&amp;quot; in your source directory and a &amp;quot;spring&amp;quot; directory in &amp;quot;usr/local/share/games/&amp;quot; (you need to make hidden folders visible to see it).&lt;br /&gt;
Create a folder called &amp;quot;maps&amp;quot; and a folder called &amp;quot;mods&amp;quot; there. (This is where Spring will check for maps/mods).&lt;br /&gt;
You can double click on the spring file (mod+map needed) and test if everything is alright.&lt;br /&gt;
&lt;br /&gt;
=Compiling the Lobby=&lt;br /&gt;
You will need to get a lobby client (e.g.: SpringLobby: http://springlobby.info) and the dependencies to compile it from source following this guide: http://springlobby.info/projects/springlobby/wiki/InstallFromSource&lt;br /&gt;
This Chapter will be extended soon. &lt;br /&gt;
&lt;br /&gt;
--[[User:Grapefruit|Grapefruit]] 11:08, 4 December 2009 (UTC)&lt;br /&gt;
[[Category: Mac]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=SpringEngineTODO&amp;diff=17103</id>
		<title>SpringEngineTODO</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=SpringEngineTODO&amp;diff=17103"/>
		<updated>2010-03-25T20:06:58Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A collection of ideas which could improve Spring.&lt;br /&gt;
&lt;br /&gt;
* clean up, sanitize, and make consistent the error handling in the engine&lt;br /&gt;
* add general serializing to the engine, which touches the following:&lt;br /&gt;
** Implement saving/loading. There are a lot of direct LoadSave() functions in the game code, but the easier way would probably to finish the serialization in the class registration type interfaces (rts/System/creg), so everything can be serialized automatically. &lt;br /&gt;
*** Requires: C/C++&lt;br /&gt;
*** Time: ~3 months&lt;br /&gt;
*** Level of difficulty: medium - hard&lt;br /&gt;
** [[Syncing System|Implement re-sync]]. After a sync problem is detected, and a re-sync of the random seed does not fix it the game would pause and use the rsync to adjust game state (current plan if for float3 data) to resync. After using rsync on it should be able to continue normally until the next sync error is detected.&lt;br /&gt;
*** Requires: C/C++, network programming&lt;br /&gt;
*** Time: ~3&amp;lt; months&lt;br /&gt;
*** Level of difficulty: Hard&lt;br /&gt;
** Joining the game while it is running (probably need one of those 2 mentioned above: save/load or resync)&lt;br /&gt;
*** Requires: C/C++, network programming&lt;br /&gt;
*** Time: ~3&amp;lt; months&lt;br /&gt;
*** Level of difficulty: Hard&lt;br /&gt;
&lt;br /&gt;
* Implement a general sensor system replacing the radars, as described in http://taspring.clan-sy.com/phpbb/viewtopic.php?t=6105&lt;br /&gt;
** Requires: C/C++, 3D/2D math (Lua knowledge not required, but prefered)&lt;br /&gt;
** Time: ~2 months&lt;br /&gt;
** Level of difficulty: Medium&lt;br /&gt;
&lt;br /&gt;
* Add a dynamic-lighting system: Allow units to have dynamic lights on them that affect lighting of other units and landscape, with sort of &amp;quot;approximating lights&amp;quot; for cases where a lot of units get close together. This is a big thing, but it would improve spring graphics a lot if done well. Or Deferred Lighting/Shading?&lt;br /&gt;
** Requires: C/C++, 3D math(, GLSL) (Lua knowledge not required, but prefered)&lt;br /&gt;
** Time: ~3 months&lt;br /&gt;
** Level of difficulty: Medium-hard &lt;br /&gt;
&lt;br /&gt;
* Get a mac version working. Contact the developers on the forums for this, as there are people who build and run it successfully. Still need proper packaging and maintaining,&lt;br /&gt;
** Requires: C/C++, CMake and MacOS&lt;br /&gt;
** Time: &amp;lt; 1 month&lt;br /&gt;
** Level of difficulty: Medium&lt;br /&gt;
** More information at http://springrts.com/wiki/Spring_on_MacOSX&lt;br /&gt;
&lt;br /&gt;
* Extending the resource system to allow more than two resources (metal/energy)&lt;br /&gt;
** Requires: C/C++ (Lua knowledge not required, but prefered)&lt;br /&gt;
** Time: ~1-3 months&lt;br /&gt;
** Level of difficulty: Easy-Medium&lt;br /&gt;
&lt;br /&gt;
* Expand Springs script abilities by extending the lua interface (commandAIs,MoveTypes,LOS,Pathing,..).&lt;br /&gt;
** Requires: C/C++, lua&lt;br /&gt;
** Time: ~3&amp;lt; months&lt;br /&gt;
** Level of difficulty: Medium&lt;br /&gt;
&lt;br /&gt;
* Exposing more Spring functions to the Lua world (command AIs, move types) or/and small frameworks&lt;br /&gt;
** Requires: basic C/C++, Lua&lt;br /&gt;
** Time: ~1-3&amp;lt; months (depends on the goal)&lt;br /&gt;
** Level of difficulty: Easy-medium&lt;br /&gt;
&lt;br /&gt;
* Implement MD5 as a model format or add other model formats.&lt;br /&gt;
** Requires: C/C++, 3D math (Lua knowledge not required, but prefered)&lt;br /&gt;
** Time: ~1-3 months&lt;br /&gt;
** Level of difficulty: Medium&lt;br /&gt;
&lt;br /&gt;
* Fix SM3 or develop a new mapping format&lt;br /&gt;
** Requires: C/C++, 3D math&lt;br /&gt;
** Time: ~1-3 months&lt;br /&gt;
** Level of difficulty: Medium&lt;br /&gt;
&lt;br /&gt;
* Add p2p/round-robin for hosting (so host exit doesn&#039;t stop the game)&lt;br /&gt;
** Requires: C/C++, network programming&lt;br /&gt;
** Time: ~3&amp;lt; months&lt;br /&gt;
** Level of difficulty: Medium&lt;br /&gt;
&lt;br /&gt;
* Proper GUI for spring.exe with extended singleplayer abilities, better map/mod browsing, adding Bots (AIs), selecting start positions, choosing color, selecting map/mod options.&lt;br /&gt;
** Requires: C/C++, 3D math, GUI programming, OpenGL programming, Lua&lt;br /&gt;
** Time: ~1-3 moths (depends on the amount of functions)&lt;br /&gt;
** Level of difficulty: Medium&lt;br /&gt;
&lt;br /&gt;
* Fix bugs, extend and improve functionality, etc.&lt;br /&gt;
&lt;br /&gt;
Even though this isn&#039;t really about the Spring engine:&lt;br /&gt;
&lt;br /&gt;
* SpringLobby is a cross-platform lobby client, implemented in C++ and wxWidgets. We encourage you to look into our todo list on http://springlobby.info and see what you could do for it.&lt;br /&gt;
&lt;br /&gt;
Lua:&lt;br /&gt;
&lt;br /&gt;
* Create a Mission Development Kit: ie, do whatever it takes to make it easy to create campaign missions, eg create a gui tool that makes it easy to place units on the map, create triggers, and so on.&lt;br /&gt;
&lt;br /&gt;
[[Category:Source development]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_on_MacOSX&amp;diff=17608</id>
		<title>Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_on_MacOSX&amp;diff=17608"/>
		<updated>2009-10-18T14:19:47Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: /* Notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Building_Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
= Whats up with spring on OS X =&lt;br /&gt;
There has been a working, compiled universal binary for Macintosh OSX 10.4. However, this is an outdated version, and development has ceased since the release.&lt;br /&gt;
&lt;br /&gt;
Because a lack of Mac developers (or maybe the lack of Macs for the developers) there is no Mac binary for any recent version of spring. Various people have managed to get it to compile and run on OS X, and we received some patches, but no one ever created a binary package.&lt;br /&gt;
&lt;br /&gt;
== We need YOU ==&lt;br /&gt;
If you have a  Mac, and want to help spring, make a binary package. Lots of people tried, some of them failed, some succeeded, some of them even send patches, but noone stayed long enough to make one.&lt;br /&gt;
&lt;br /&gt;
Thus, it should not be that hard to actually do it. All libraries used by spring are available on OS X, and beside some (or maybe even none) compile errors, spring will most likely compile and work fine.&lt;br /&gt;
&lt;br /&gt;
If you need help, post on forum or ask in the lobby (channel #sy).&lt;br /&gt;
&lt;br /&gt;
== Notes  ==&lt;br /&gt;
Network sync will work between 32-bit builds and 64-bit builds.  It does not, and probably never will work between PPCs and Intel/AMD processors because of Endien.  Basically, getting PCC to sync would take an astronomical amount of work, and wouldn&#039;t help move anything forward since PPCs are dieing anyway.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Lobby information for OSX are old &amp;amp; outdated, someone please update this page and the lobby link with fresh information. &amp;lt;Brain Damage&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Due to the lack of information about a working lobby, the only sure way play between two computers must be initiated manually via start scripts and/or command line.&lt;br /&gt;
&lt;br /&gt;
See the [[Lobby_on_MacOSX]] page for details and development progress&lt;br /&gt;
&lt;br /&gt;
== Building the Engine ==&lt;br /&gt;
&lt;br /&gt;
You can find more information at [[Building_Spring_on_MacOSX]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3437</id>
		<title>Building Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3437"/>
		<updated>2009-10-16T17:30:46Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Added the way that I built spring for Mac&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Build from source on MacOSX=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Guide is for x86/Intel based OSX installs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I am hoping that with our efforts on the forum that we can have an .app bundle released everytime spring is updated and that will save most people needing to go through the headache of compiling from source code. But if you must try, then here&#039;s the steps to help!&lt;br /&gt;
&lt;br /&gt;
I cannot stress enough that this will most likely only work on Intel based systems at this stage. With my understanding of how unitsync works, it seems like online play will not be possible between PPC and x86 architecture.&lt;br /&gt;
&lt;br /&gt;
=Obtaining the Source=&lt;br /&gt;
{{Obtaining_The_Source_Code}}&lt;br /&gt;
&lt;br /&gt;
=Get Dependencies=&lt;br /&gt;
&lt;br /&gt;
You will need to install some development packages Spring depends on. Most of these are available using [http://http://www.macports.org/ Macports] (similar to portage / apt-get etc available on various linux distro&#039;s)&lt;br /&gt;
&lt;br /&gt;
You will also need to install the [http://developer.apple.com/TOOLS/Xcode/ Xcode developers package] (this requires a free membership to apple&#039;s ADC website)&lt;br /&gt;
&lt;br /&gt;
==Full list==&lt;br /&gt;
&lt;br /&gt;
*Programs necessary to build&lt;br /&gt;
**Xcode&lt;br /&gt;
**cmake (or scons)&lt;br /&gt;
**zip&lt;br /&gt;
**The usual build toolchain&lt;br /&gt;
***gcc &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
***make &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
*Libraries&lt;br /&gt;
**SDL&lt;br /&gt;
**boost (version 1.35 or later recommended)&lt;br /&gt;
***threads&lt;br /&gt;
***regex&lt;br /&gt;
***signals&lt;br /&gt;
***system&lt;br /&gt;
**DeviL (IL, ILU)&lt;br /&gt;
**OpenAL &#039;&#039;Please check the OpenAL section for MacOSX specific info&#039;&#039;&lt;br /&gt;
**OpenGL headers (mesa, glew, etc.) &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
**zlib&lt;br /&gt;
**freetype&lt;br /&gt;
**ogg,vorbis and vorbisfile&lt;br /&gt;
*Optional, for bindings and Ais&lt;br /&gt;
**Python (2.5)&lt;br /&gt;
**Java-SDK &#039;&#039;(pre-installed on OSX)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using Macports==&lt;br /&gt;
&lt;br /&gt;
Once you have downloaded and configured Macports use these commands to download / compile and install the required dependencies :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;sudo port install cmake&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl-framework&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost-jam&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libpng #These image libraries might not be needed, but ma save you some headaches&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install jpeg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install tiff&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libogg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libvorbis&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install python25&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libdevil # as of October 12th 2009 the Macports install of libdevil (1.6.8-rc2_0) is broken for some people.  If you get errors like /opt/local/include/IL/il.h:505: error: â€˜&amp;lt;anonymous&amp;gt;â€™ has incomplete type while building spring, you&#039;ll probably need to install it from source. )&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all was successful, you are very close to being able to compile Spring naively!&lt;br /&gt;
&lt;br /&gt;
==Installing libdevil from source==&lt;br /&gt;
&lt;br /&gt;
Make sure that all the other port packages are installed first!&lt;br /&gt;
Download the source.  Right now 1.6.8-rc2_0 has the bug we&#039;re trying to work around, so don&#039;t use that one, or earlier versions.&lt;br /&gt;
&lt;br /&gt;
Extract the source code.&lt;br /&gt;
&lt;br /&gt;
Configure it.  I used this command.&lt;br /&gt;
./configure --enable-png --enable-ILU --enable-ILUT --enable-x86_64 CPPFLAGS=&amp;quot;-I/opt/local/include/ -L/opt/local/lib/&amp;quot; LDFLAGS=-L/opt/local/lib/&lt;br /&gt;
&lt;br /&gt;
Make sure you have support for png, jpg, dds, and tga&lt;br /&gt;
&lt;br /&gt;
Make it with &amp;quot;make&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Part way through you&#039;ll get an error about malloc.h not being found.  To fix it, replace &amp;lt;malloc.h&amp;gt; with &amp;lt;sys/malloc.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
install with sudo make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==OpenAL==&lt;br /&gt;
&lt;br /&gt;
After having mountains of problems myself with the OpenAL pre-installed with the Xcode tools, I discovered that it is version 1.0 of OpenAL (not the correct version we want).&lt;br /&gt;
&lt;br /&gt;
Head to your /System/Library/Framework/ folder and delete any trace of OpenAL framework / folders that are there.&lt;br /&gt;
&lt;br /&gt;
[http://kcat.strangesoft.net/openal-releases/openal-soft-1.8.466.tar.bz2 Now download this copy of OpenAL]&lt;br /&gt;
&lt;br /&gt;
Using the terminal, go into the folder where you downloaded openal-soft and pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;bzip2 -d openal-soft-xxxx.tar.bz2 | tar xvf -&amp;lt;br&amp;gt;&lt;br /&gt;
cd openal-soft-xxxx&amp;lt;br&amp;gt;&lt;br /&gt;
cmake .&amp;lt;br&amp;gt;&lt;br /&gt;
make&amp;lt;br&amp;gt;&lt;br /&gt;
make install&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All done, now you will have no problems compiling the Sound.cpp file in spring!&lt;br /&gt;
&lt;br /&gt;
=Build And Install=&lt;br /&gt;
&lt;br /&gt;
The build will spew out warnings like the following, which you can safely ignore:&amp;lt;br&amp;gt;&lt;br /&gt;
warning: division by zero&amp;lt;br&amp;gt;&lt;br /&gt;
warning: &#039;q&#039; may be used uninitialized in this function&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Removing duplicate libraries==&lt;br /&gt;
&lt;br /&gt;
Make sure that you remove all extra libraries before the first time you call cmake.  If not, cmake will make your life a living hell.  Check in /usr /usr/local /opt/local and /Library/Frameworks.  Also, don&#039;t change the location of the source directory, librarys, or includes after calling cmake.  If you do change any of the locations you can&#039;t just call cmake again.  The only way I know to tell it to recompute everything from scratch is this:&lt;br /&gt;
*Change to the root of the git tree&lt;br /&gt;
*Remove every single visible file.&lt;br /&gt;
*Run git reset --hard&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer) (Adso&#039;s method)==&lt;br /&gt;
This is the only way I have compiled spring successfully so far :&lt;br /&gt;
&lt;br /&gt;
(could someone please add a better way? As I cannot workout how to get xcodebuild to run the &amp;quot;install portion of the make file&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake .&lt;br /&gt;
make&lt;br /&gt;
make install&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will install spring in all the right places to be run from a command line (but don&#039;t yet, it compiles an unusable executable, we just needed to get the makefile to install everything to the right place)&lt;br /&gt;
&lt;br /&gt;
Now pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake -G Xcode&lt;br /&gt;
xcodebuild&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will have made a folder called &amp;quot;Debug&amp;quot; and will contain a command line program Spring, and Libunitsync.dylib&lt;br /&gt;
&lt;br /&gt;
now to make sure the correct copy of spring runs when you are using the terminal pass the following command&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;sudo cp spring /usr/local/bin&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer) (patmo98&#039;s method)==&lt;br /&gt;
The worst problem I ran into while trying to use Adso&#039;s meathod was getting the include and library paths to work.&lt;br /&gt;
&lt;br /&gt;
Make sure before you start that you don&#039;t have any extra copies of libraries laying around.&lt;br /&gt;
&lt;br /&gt;
Get the dependencies and source code.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;ccmake .&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you see a list of options here, you&#039;ve already run (c)cmake before and that may cause you trouble.  Press &#039;c&#039; to have it auto configure.  Press &#039;t&#039; to switch to advanced mode.  Manually add the following includes and librarys.  Yes, this is an ugly hack that should be instead fixed in the build system, but I don&#039;t know enough about cmake to fix it.&lt;br /&gt;
&lt;br /&gt;
CMAKE_CXX_FLAGS                  -I/usr/local/include -I/opt/local/include&lt;br /&gt;
CMAKE_C_FLAGS                    -I/usr/local/include -I/opt/local/include&lt;br /&gt;
CMAKE_EXE_LINKER_FLAGS           -L/usr/local/lib -L/opt/local/lib&lt;br /&gt;
&lt;br /&gt;
You may need to add more directories.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the build finishes successfully, you will now have the spring executable, unitsync.dylib and some other assorted things.&lt;br /&gt;
&lt;br /&gt;
Spring will search for Libunitsync.dylib in the same directory as the executable (and possibly other places), and search for the data files in ~/.spring/.&lt;br /&gt;
If you have access to a working windows install, just copy the windows install to ~/.spring and run the executable from where ever you like.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Finalizing installation=&lt;br /&gt;
&lt;br /&gt;
Will update later once I update the Springlobby wiki with all my OSX information!&lt;br /&gt;
&lt;br /&gt;
If you need to contact me, send a PM to &#039;&#039;&#039;adso&#039;&#039;&#039; on the forums, or catch me in #sy or #springlobby in the lobby chat :)&lt;br /&gt;
&lt;br /&gt;
--[[User:Adso|Adso]] 06:23, 29 August 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3436</id>
		<title>Building Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3436"/>
		<updated>2009-10-16T17:06:36Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Reworded something confusing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Build from source on MacOSX=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Guide is for x86/Intel based OSX installs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I am hoping that with our efforts on the forum that we can have an .app bundle released everytime spring is updated and that will save most people needing to go through the headache of compiling from source code. But if you must try, then here&#039;s the steps to help!&lt;br /&gt;
&lt;br /&gt;
I cannot stress enough that this will most likely only work on Intel based systems at this stage. With my understanding of how unitsync works, it seems like online play will not be possible between PPC and x86 architecture.&lt;br /&gt;
&lt;br /&gt;
=Obtaining the Source=&lt;br /&gt;
{{Obtaining_The_Source_Code}}&lt;br /&gt;
&lt;br /&gt;
=Get Dependencies=&lt;br /&gt;
&lt;br /&gt;
You will need to install some development packages Spring depends on. Most of these are available using [http://http://www.macports.org/ Macports] (similar to portage / apt-get etc available on various linux distro&#039;s)&lt;br /&gt;
&lt;br /&gt;
You will also need to install the [http://developer.apple.com/TOOLS/Xcode/ Xcode developers package] (this requires a free membership to apple&#039;s ADC website)&lt;br /&gt;
&lt;br /&gt;
==Full list==&lt;br /&gt;
&lt;br /&gt;
*Programs necessary to build&lt;br /&gt;
**Xcode&lt;br /&gt;
**cmake (or scons)&lt;br /&gt;
**zip&lt;br /&gt;
**The usual build toolchain&lt;br /&gt;
***gcc &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
***make &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
*Libraries&lt;br /&gt;
**SDL&lt;br /&gt;
**boost (version 1.35 or later recommended)&lt;br /&gt;
***threads&lt;br /&gt;
***regex&lt;br /&gt;
***signals&lt;br /&gt;
***system&lt;br /&gt;
**DeviL (IL, ILU)&lt;br /&gt;
**OpenAL &#039;&#039;Please check the OpenAL section for MacOSX specific info&#039;&#039;&lt;br /&gt;
**OpenGL headers (mesa, glew, etc.) &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
**zlib&lt;br /&gt;
**freetype&lt;br /&gt;
**ogg,vorbis and vorbisfile&lt;br /&gt;
*Optional, for bindings and Ais&lt;br /&gt;
**Python (2.5)&lt;br /&gt;
**Java-SDK &#039;&#039;(pre-installed on OSX)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using Macports==&lt;br /&gt;
&lt;br /&gt;
Once you have downloaded and configured Macports use these commands to download / compile and install the required dependencies :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;sudo port install cmake&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl-framework&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost-jam&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libpng #These image libraries might not be needed, but ma save you some headaches&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install jpeg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install tiff&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libogg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libvorbis&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install python25&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libdevil # as of October 12th 2009 the Macports install of libdevil (1.6.8-rc2_0) is broken for some people.  If you get errors like /opt/local/include/IL/il.h:505: error: â€˜&amp;lt;anonymous&amp;gt;â€™ has incomplete type while building spring, you&#039;ll probably need to install it from source. )&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all was successful, you are very close to being able to compile Spring naively!&lt;br /&gt;
&lt;br /&gt;
==Installing libdevil from source==&lt;br /&gt;
&lt;br /&gt;
Make sure that all the other port packages are installed first!&lt;br /&gt;
Download the source.  Right now 1.6.8-rc2_0 has the bug we&#039;re trying to work around, so don&#039;t use that one, or earlier versions.&lt;br /&gt;
&lt;br /&gt;
Extract the source code.&lt;br /&gt;
&lt;br /&gt;
Configure it.  I used this command.&lt;br /&gt;
./configure --enable-png --enable-ILU --enable-ILUT --enable-x86_64 CPPFLAGS=&amp;quot;-I/opt/local/include/ -L/opt/local/lib/&amp;quot; LDFLAGS=-L/opt/local/lib/&lt;br /&gt;
&lt;br /&gt;
Make sure you have support for png, jpg, dds, and tga&lt;br /&gt;
&lt;br /&gt;
Make it with &amp;quot;make&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Part way through you&#039;ll get an error about malloc.h not being found.  To fix it, replace &amp;lt;malloc.h&amp;gt; with &amp;lt;sys/malloc.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
install with sudo make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==OpenAL==&lt;br /&gt;
&lt;br /&gt;
After having mountains of problems myself with the OpenAL pre-installed with the Xcode tools, I discovered that it is version 1.0 of OpenAL (not the correct version we want).&lt;br /&gt;
&lt;br /&gt;
Head to your /System/Library/Framework/ folder and delete any trace of OpenAL framework / folders that are there.&lt;br /&gt;
&lt;br /&gt;
[http://kcat.strangesoft.net/openal-releases/openal-soft-1.8.466.tar.bz2 Now download this copy of OpenAL]&lt;br /&gt;
&lt;br /&gt;
Using the terminal, go into the folder where you downloaded openal-soft and pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;bzip2 -d openal-soft-xxxx.tar.bz2 | tar xvf -&amp;lt;br&amp;gt;&lt;br /&gt;
cd openal-soft-xxxx&amp;lt;br&amp;gt;&lt;br /&gt;
cmake .&amp;lt;br&amp;gt;&lt;br /&gt;
make&amp;lt;br&amp;gt;&lt;br /&gt;
make install&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All done, now you will have no problems compiling the Sound.cpp file in spring!&lt;br /&gt;
&lt;br /&gt;
=Build And Install=&lt;br /&gt;
&lt;br /&gt;
The build will spew out warnings like the following, which you can safely ignore:&amp;lt;br&amp;gt;&lt;br /&gt;
warning: division by zero&amp;lt;br&amp;gt;&lt;br /&gt;
warning: &#039;q&#039; may be used uninitialized in this function&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Removing duplicate libraries==&lt;br /&gt;
&lt;br /&gt;
Make sure that you remove all extra libraries before the first time you call cmake.  If not, cmake will make your life a living hell.  Check in /usr /usr/local /opt/local and /Library/Frameworks.  Also, don&#039;t change the location of the source directory, librarys, or includes after calling cmake.  If you do change any of the locations you can&#039;t just call cmake again.  The only way I know to tell it to recompute everything from scratch is this:&lt;br /&gt;
*Change to the root of the git tree&lt;br /&gt;
*Remove every single visible file.&lt;br /&gt;
*Run git reset --hard&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer)==&lt;br /&gt;
This is the only way I have compiled spring successfully so far :&lt;br /&gt;
&lt;br /&gt;
(could someone please add a better way? As I cannot workout how to get xcodebuild to run the &amp;quot;install portion of the make file&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake .&lt;br /&gt;
make&lt;br /&gt;
make install&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will install spring in all the right places to be run from a command line (but don&#039;t yet, it compiles an unusable executable, we just needed to get the makefile to install everything to the right place)&lt;br /&gt;
&lt;br /&gt;
Now pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake -G Xcode&lt;br /&gt;
xcodebuild&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will have made a folder called &amp;quot;Debug&amp;quot; and will contain a command line program Spring, and Libunitsync.dylib&lt;br /&gt;
&lt;br /&gt;
now to make sure the correct copy of spring runs when you are using the terminal pass the following command&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;sudo cp spring /usr/local/bin&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Finalizing installation=&lt;br /&gt;
&lt;br /&gt;
Will update later once I update the Springlobby wiki with all my OSX information!&lt;br /&gt;
&lt;br /&gt;
If you need to contact me, send a PM to &#039;&#039;&#039;adso&#039;&#039;&#039; on the forums, or catch me in #sy or #springlobby in the lobby chat :)&lt;br /&gt;
&lt;br /&gt;
--[[User:Adso|Adso]] 06:23, 29 August 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3435</id>
		<title>Building Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3435"/>
		<updated>2009-10-16T17:04:59Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Build from source on MacOSX=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Guide is for x86/Intel based OSX installs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I am hoping that with our efforts on the forum that we can have an .app bundle released everytime spring is updated and that will save most people needing to go through the headache of compiling from source code. But if you must try, then here&#039;s the steps to help!&lt;br /&gt;
&lt;br /&gt;
I cannot stress enough that this will most likely only work on Intel based systems at this stage. With my understanding of how unitsync works, it seems like online play will not be possible between PPC and x86 architecture.&lt;br /&gt;
&lt;br /&gt;
=Obtaining the Source=&lt;br /&gt;
{{Obtaining_The_Source_Code}}&lt;br /&gt;
&lt;br /&gt;
=Get Dependencies=&lt;br /&gt;
&lt;br /&gt;
You will need to install some development packages Spring depends on. Most of these are available using [http://http://www.macports.org/ Macports] (similar to portage / apt-get etc available on various linux distro&#039;s)&lt;br /&gt;
&lt;br /&gt;
You will also need to install the [http://developer.apple.com/TOOLS/Xcode/ Xcode developers package] (this requires a free membership to apple&#039;s ADC website)&lt;br /&gt;
&lt;br /&gt;
==Full list==&lt;br /&gt;
&lt;br /&gt;
*Programs necessary to build&lt;br /&gt;
**Xcode&lt;br /&gt;
**cmake (or scons)&lt;br /&gt;
**zip&lt;br /&gt;
**The usual build toolchain&lt;br /&gt;
***gcc &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
***make &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
*Libraries&lt;br /&gt;
**SDL&lt;br /&gt;
**boost (version 1.35 or later recommended)&lt;br /&gt;
***threads&lt;br /&gt;
***regex&lt;br /&gt;
***signals&lt;br /&gt;
***system&lt;br /&gt;
**DeviL (IL, ILU)&lt;br /&gt;
**OpenAL &#039;&#039;Please check the OpenAL section for MacOSX specific info&#039;&#039;&lt;br /&gt;
**OpenGL headers (mesa, glew, etc.) &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
**zlib&lt;br /&gt;
**freetype&lt;br /&gt;
**ogg,vorbis and vorbisfile&lt;br /&gt;
*Optional, for bindings and Ais&lt;br /&gt;
**Python (2.5)&lt;br /&gt;
**Java-SDK &#039;&#039;(pre-installed on OSX)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using Macports==&lt;br /&gt;
&lt;br /&gt;
Once you have downloaded and configured Macports use these commands to download / compile and install the required dependencies :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;sudo port install cmake&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl-framework&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost-jam&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libpng #These image libraries might not be needed, but ma save you some headaches&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install jpeg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install tiff&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libogg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libvorbis&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install python25&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libdevil # as of October 12th 2009 the Macports install of libdevil (1.6.8-rc2_0) can be broken.  If you get errors like /opt/local/include/IL/il.h:505: error: â€˜&amp;lt;anonymous&amp;gt;â€™ has incomplete type while building spring, you&#039;ll probably need to install it from source. )&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all was successful, you are very close to being able to compile Spring natively!&lt;br /&gt;
&lt;br /&gt;
==Installing libdevil from source==&lt;br /&gt;
&lt;br /&gt;
Make sure that all the other port packages are installed first!&lt;br /&gt;
Download the source.  Right now 1.6.8-rc2_0 has the bug we&#039;re trying to work around, so don&#039;t use that one, or earlier versions.&lt;br /&gt;
&lt;br /&gt;
Extract the source code.&lt;br /&gt;
&lt;br /&gt;
Configure it.  I used this command.&lt;br /&gt;
./configure --enable-png --enable-ILU --enable-ILUT --enable-x86_64 CPPFLAGS=&amp;quot;-I/opt/local/include/ -L/opt/local/lib/&amp;quot; LDFLAGS=-L/opt/local/lib/&lt;br /&gt;
&lt;br /&gt;
Make sure you have support for png, jpg, dds, and tga&lt;br /&gt;
&lt;br /&gt;
Make it with &amp;quot;make&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Part way through you&#039;ll get an error about malloc.h not being found.  To fix it, replace &amp;lt;malloc.h&amp;gt; with &amp;lt;sys/malloc.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
install with sudo make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==OpenAL==&lt;br /&gt;
&lt;br /&gt;
After having mountains of problems myself with the OpenAL pre-installed with the Xcode tools, I discovered that it is version 1.0 of OpenAL (not the correct version we want).&lt;br /&gt;
&lt;br /&gt;
Head to your /System/Library/Framework/ folder and delete any trace of OpenAL framework / folders that are there.&lt;br /&gt;
&lt;br /&gt;
[http://kcat.strangesoft.net/openal-releases/openal-soft-1.8.466.tar.bz2 Now download this copy of OpenAL]&lt;br /&gt;
&lt;br /&gt;
Using the terminal, go into the folder where you downloaded openal-soft and pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;bzip2 -d openal-soft-xxxx.tar.bz2 | tar xvf -&amp;lt;br&amp;gt;&lt;br /&gt;
cd openal-soft-xxxx&amp;lt;br&amp;gt;&lt;br /&gt;
cmake .&amp;lt;br&amp;gt;&lt;br /&gt;
make&amp;lt;br&amp;gt;&lt;br /&gt;
make install&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All done, now you will have no problems compiling the Sound.cpp file in spring!&lt;br /&gt;
&lt;br /&gt;
=Build And Install=&lt;br /&gt;
&lt;br /&gt;
The build will spew out warnings like the following, which you can safely ignore:&amp;lt;br&amp;gt;&lt;br /&gt;
warning: division by zero&amp;lt;br&amp;gt;&lt;br /&gt;
warning: &#039;q&#039; may be used uninitialized in this function&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Removing duplicate libraries==&lt;br /&gt;
&lt;br /&gt;
Make sure that you remove all extra libraries before the first time you call cmake.  If not, cmake will make your life a living hell.  Check in /usr /usr/local /opt/local and /Library/Frameworks.  Also, don&#039;t change the location of the source directory, librarys, or includes after calling cmake.  If you do change any of the locations you can&#039;t just call cmake again.  The only way I know to tell it to recompute everything from scratch is this:&lt;br /&gt;
*Change to the root of the git tree&lt;br /&gt;
*Remove every single visible file.&lt;br /&gt;
*Run git reset --hard&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer)==&lt;br /&gt;
This is the only way I have compiled spring successfully so far :&lt;br /&gt;
&lt;br /&gt;
(could someone please add a better way? As I cannot workout how to get xcodebuild to run the &amp;quot;install portion of the make file&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake .&lt;br /&gt;
make&lt;br /&gt;
make install&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will install spring in all the right places to be run from a command line (but don&#039;t yet, it compiles an unusable executable, we just needed to get the makefile to install everything to the right place)&lt;br /&gt;
&lt;br /&gt;
Now pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake -G Xcode&lt;br /&gt;
xcodebuild&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will have made a folder called &amp;quot;Debug&amp;quot; and will contain a command line program Spring, and Libunitsync.dylib&lt;br /&gt;
&lt;br /&gt;
now to make sure the correct copy of spring runs when you are using the terminal pass the following command&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;sudo cp spring /usr/local/bin&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Finalizing installation=&lt;br /&gt;
&lt;br /&gt;
Will update later once I update the Springlobby wiki with all my OSX information!&lt;br /&gt;
&lt;br /&gt;
If you need to contact me, send a PM to &#039;&#039;&#039;adso&#039;&#039;&#039; on the forums, or catch me in #sy or #springlobby in the lobby chat :)&lt;br /&gt;
&lt;br /&gt;
--[[User:Adso|Adso]] 06:23, 29 August 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3434</id>
		<title>Building Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3434"/>
		<updated>2009-10-16T17:04:34Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: /* Removing duplicate libraries */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Build from source on MacOSX=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Guide is for x86/Intel based OSX installs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I am hoping that with our efforts on the forum that we can have an .app bundle released everytime spring is updated and that will save most people needing to go through the headache of compiling from source code. But if you must try, then here&#039;s the steps to help!&lt;br /&gt;
&lt;br /&gt;
I cannot stress enough that this will most likely only work on Intel based systems at this stage. With my understanding of how unitsync works, it seems like online play will not be possible between PPC and x86 architecture.&lt;br /&gt;
&lt;br /&gt;
=Obtaining the Source=&lt;br /&gt;
{{Obtaining_The_Source_Code}}&lt;br /&gt;
&lt;br /&gt;
=Get Dependencies=&lt;br /&gt;
&lt;br /&gt;
You will need to install some development packages Spring depends on. Most of these are available using [http://http://www.macports.org/ Macports] (similar to portage / apt-get etc available on various linux distro&#039;s)&lt;br /&gt;
&lt;br /&gt;
You will also need to install the [http://developer.apple.com/TOOLS/Xcode/ Xcode developers package] (this requires a free membership to apple&#039;s ADC website)&lt;br /&gt;
&lt;br /&gt;
==Full list==&lt;br /&gt;
&lt;br /&gt;
*Programs necessary to build&lt;br /&gt;
**Xcode&lt;br /&gt;
**cmake (or scons)&lt;br /&gt;
**zip&lt;br /&gt;
**The usual build toolchain&lt;br /&gt;
***gcc &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
***make &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
*Libraries&lt;br /&gt;
**SDL&lt;br /&gt;
**boost (version 1.35 or later recommended)&lt;br /&gt;
***threads&lt;br /&gt;
***regex&lt;br /&gt;
***signals&lt;br /&gt;
***system&lt;br /&gt;
**DeviL (IL, ILU)&lt;br /&gt;
**OpenAL &#039;&#039;Please check the OpenAL section for MacOSX specific info&#039;&#039;&lt;br /&gt;
**OpenGL headers (mesa, glew, etc.) &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
**zlib&lt;br /&gt;
**freetype&lt;br /&gt;
**ogg,vorbis and vorbisfile&lt;br /&gt;
*Optional, for bindings and Ais&lt;br /&gt;
**Python (2.5)&lt;br /&gt;
**Java-SDK &#039;&#039;(pre-installed on OSX)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using Macports==&lt;br /&gt;
&lt;br /&gt;
Once you have downloaded and configured Macports use these commands to download / compile and install the required dependencies :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;sudo port install cmake&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl-framework&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost-jam&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libpng #These image libraries might not be needed, but ma save you some headaches&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install jpeg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install tiff&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libogg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libvorbis&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install python25&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libdevil # as of October 12th 2009 the Macports install of libdevil (1.6.8-rc2_0) can be broken.  If you get errors like /opt/local/include/IL/il.h:505: error: â€˜&amp;lt;anonymous&amp;gt;â€™ has incomplete type while building spring, you&#039;ll probably need to install it from source. )&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all was successful, you are very close to being able to compile Spring natively!&lt;br /&gt;
&lt;br /&gt;
==Installing libdevil from source==&lt;br /&gt;
&lt;br /&gt;
Make sure that all the other port packages are installed first!&lt;br /&gt;
Download the source.  Right now 1.6.8-rc2_0 has the bug we&#039;re trying to work around, so don&#039;t use that one, or earlier versions.&lt;br /&gt;
&lt;br /&gt;
Extract the source code.&lt;br /&gt;
&lt;br /&gt;
Configure it.  I used this command.&lt;br /&gt;
./configure --enable-png --enable-ILU --enable-ILUT --enable-x86_64 CPPFLAGS=&amp;quot;-I/opt/local/include/ -L/opt/local/lib/&amp;quot; LDFLAGS=-L/opt/local/lib/&lt;br /&gt;
&lt;br /&gt;
Make sure you have support for png, jpg, dds, and tga&lt;br /&gt;
&lt;br /&gt;
Make it with &amp;quot;make&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Part way through you&#039;ll get an error about malloc.h not being found.  To fix it, replace &amp;lt;malloc.h&amp;gt; with &amp;lt;sys/malloc.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
install with sudo make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==OpenAL==&lt;br /&gt;
&lt;br /&gt;
After having mountains of problems myself with the OpenAL pre-installed with the Xcode tools, I discovered that it is version 1.0 of OpenAL (not the correct version we want).&lt;br /&gt;
&lt;br /&gt;
Head to your /System/Library/Framework/ folder and delete any trace of OpenAL framework / folders that are there.&lt;br /&gt;
&lt;br /&gt;
[http://kcat.strangesoft.net/openal-releases/openal-soft-1.8.466.tar.bz2 Now download this copy of OpenAL]&lt;br /&gt;
&lt;br /&gt;
Using the terminal, go into the folder where you downloaded openal-soft and pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;bzip2 -d openal-soft-xxxx.tar.bz2 | tar xvf -&amp;lt;br&amp;gt;&lt;br /&gt;
cd openal-soft-xxxx&amp;lt;br&amp;gt;&lt;br /&gt;
cmake .&amp;lt;br&amp;gt;&lt;br /&gt;
make&amp;lt;br&amp;gt;&lt;br /&gt;
make install&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All done, now you will have no problems compiling the Sound.cpp file in spring!&lt;br /&gt;
&lt;br /&gt;
=Build And Install=&lt;br /&gt;
&lt;br /&gt;
The build will spew out warnings like the following, which you can safely ignore:&amp;lt;br&amp;gt;&lt;br /&gt;
warning: division by zero&amp;lt;br&amp;gt;&lt;br /&gt;
warning: &#039;q&#039; may be used uninitialized in this function&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Removing duplicate libraries==&lt;br /&gt;
&lt;br /&gt;
Make sure that you remove all extra libraries before the first time you call cmake.  If not, cmake will make your life a living hell.  Check in /usr /usr/local /opt/local and /Library/Frameworks.  Also, don&#039;t change the location of the source directory, librarys, or includes after calling cmake.  If you do change any of the locations you can&#039;t just call cmake again.  The only way I know to tell it to recompute everything from scratch is this:&lt;br /&gt;
*Change to the root of the git tree&lt;br /&gt;
*Remove every single visible file.&lt;br /&gt;
*Run git reset --HARD&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer)==&lt;br /&gt;
This is the only way I have compiled spring successfully so far :&lt;br /&gt;
&lt;br /&gt;
(could someone please add a better way? As I cannot workout how to get xcodebuild to run the &amp;quot;install portion of the make file&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake .&lt;br /&gt;
make&lt;br /&gt;
make install&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will install spring in all the right places to be run from a command line (but don&#039;t yet, it compiles an unusable executable, we just needed to get the makefile to install everything to the right place)&lt;br /&gt;
&lt;br /&gt;
Now pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake -G Xcode&lt;br /&gt;
xcodebuild&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will have made a folder called &amp;quot;Debug&amp;quot; and will contain a command line program Spring, and Libunitsync.dylib&lt;br /&gt;
&lt;br /&gt;
now to make sure the correct copy of spring runs when you are using the terminal pass the following command&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;sudo cp spring /usr/local/bin&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Finalizing installation=&lt;br /&gt;
&lt;br /&gt;
Will update later once I update the Springlobby wiki with all my OSX information!&lt;br /&gt;
&lt;br /&gt;
If you need to contact me, send a PM to &#039;&#039;&#039;adso&#039;&#039;&#039; on the forums, or catch me in #sy or #springlobby in the lobby chat :)&lt;br /&gt;
&lt;br /&gt;
--[[User:Adso|Adso]] 06:23, 29 August 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_on_MacOSX&amp;diff=17607</id>
		<title>Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_on_MacOSX&amp;diff=17607"/>
		<updated>2009-10-16T16:57:52Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Tobi said 32bit builds will sync with 64-bit builds.  Cool&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Building_Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
= Whats up with spring on OS X =&lt;br /&gt;
There has been a working, compiled universal binary for Macintosh OSX 10.4. However, this is an outdated version, and development has ceased since the release.&lt;br /&gt;
&lt;br /&gt;
Because a lack of Mac developers (or maybe the lack of Macs for the developers) there is no Mac binary for any recent version of spring. Various people have managed to get it to compile and run on OS X, and we received some patches, but no one ever created a binary package.&lt;br /&gt;
&lt;br /&gt;
== We need YOU ==&lt;br /&gt;
If you have a  Mac, and want to help spring, make a binary package. Lots of people tried, some of them failed, some succeeded, some of them even send patches, but noone stayed long enough to make one.&lt;br /&gt;
&lt;br /&gt;
Thus, it should not be that hard to actually do it. All libraries used by spring are available on OS X, and beside some (or maybe even none) compile errors, spring will most likely compile and work fine.&lt;br /&gt;
&lt;br /&gt;
If you need help, post on forum or ask in the lobby (channel #sy).&lt;br /&gt;
&lt;br /&gt;
== Notes  ==&lt;br /&gt;
Network sync will work between 32-bit builds and 64-bit builds.  It does not, and probably never will work between PPCs and Intel/AMD processers because of Endien.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Lobby information for OSX are old &amp;amp; outdated, someone please update this page and the lobby link with fresh information. &amp;lt;Brain Damage&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Due to the lack of information about a working lobby, the only sure way play between two computers must be initiated manually via start scripts and/or command line.&lt;br /&gt;
&lt;br /&gt;
See the [[Lobby_on_MacOSX]] page for details and development progress&lt;br /&gt;
&lt;br /&gt;
== Building the Engine ==&lt;br /&gt;
&lt;br /&gt;
You can find more information at [[Building_Spring_on_MacOSX]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3433</id>
		<title>Building Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3433"/>
		<updated>2009-10-15T06:15:33Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Dire warnings about cmake&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Build from source on MacOSX=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Guide is for x86/Intel based OSX installs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I am hoping that with our efforts on the forum that we can have an .app bundle released everytime spring is updated and that will save most people needing to go through the headache of compiling from source code. But if you must try, then here&#039;s the steps to help!&lt;br /&gt;
&lt;br /&gt;
I cannot stress enough that this will most likely only work on Intel based systems at this stage. With my understanding of how unitsync works, it seems like online play will not be possible between PPC and x86 architecture.&lt;br /&gt;
&lt;br /&gt;
=Obtaining the Source=&lt;br /&gt;
{{Obtaining_The_Source_Code}}&lt;br /&gt;
&lt;br /&gt;
=Get Dependencies=&lt;br /&gt;
&lt;br /&gt;
You will need to install some development packages Spring depends on. Most of these are available using [http://http://www.macports.org/ Macports] (similar to portage / apt-get etc available on various linux distro&#039;s)&lt;br /&gt;
&lt;br /&gt;
You will also need to install the [http://developer.apple.com/TOOLS/Xcode/ Xcode developers package] (this requires a free membership to apple&#039;s ADC website)&lt;br /&gt;
&lt;br /&gt;
==Full list==&lt;br /&gt;
&lt;br /&gt;
*Programs necessary to build&lt;br /&gt;
**Xcode&lt;br /&gt;
**cmake (or scons)&lt;br /&gt;
**zip&lt;br /&gt;
**The usual build toolchain&lt;br /&gt;
***gcc &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
***make &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
*Libraries&lt;br /&gt;
**SDL&lt;br /&gt;
**boost (version 1.35 or later recommended)&lt;br /&gt;
***threads&lt;br /&gt;
***regex&lt;br /&gt;
***signals&lt;br /&gt;
***system&lt;br /&gt;
**DeviL (IL, ILU)&lt;br /&gt;
**OpenAL &#039;&#039;Please check the OpenAL section for MacOSX specific info&#039;&#039;&lt;br /&gt;
**OpenGL headers (mesa, glew, etc.) &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
**zlib&lt;br /&gt;
**freetype&lt;br /&gt;
**ogg,vorbis and vorbisfile&lt;br /&gt;
*Optional, for bindings and Ais&lt;br /&gt;
**Python (2.5)&lt;br /&gt;
**Java-SDK &#039;&#039;(pre-installed on OSX)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using Macports==&lt;br /&gt;
&lt;br /&gt;
Once you have downloaded and configured Macports use these commands to download / compile and install the required dependencies :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;sudo port install cmake&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl-framework&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost-jam&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libpng #These image libraries might not be needed, but ma save you some headaches&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install jpeg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install tiff&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libogg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libvorbis&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install python25&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libdevil # as of October 12th 2009 the Macports install of libdevil (1.6.8-rc2_0) can be broken.  If you get errors like /opt/local/include/IL/il.h:505: error: â€˜&amp;lt;anonymous&amp;gt;â€™ has incomplete type while building spring, you&#039;ll probably need to install it from source. )&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all was successful, you are very close to being able to compile Spring natively!&lt;br /&gt;
&lt;br /&gt;
==Installing libdevil from source==&lt;br /&gt;
&lt;br /&gt;
Make sure that all the other port packages are installed first!&lt;br /&gt;
Download the source.  Right now 1.6.8-rc2_0 has the bug we&#039;re trying to work around, so don&#039;t use that one, or earlier versions.&lt;br /&gt;
&lt;br /&gt;
Extract the source code.&lt;br /&gt;
&lt;br /&gt;
Configure it.  I used this command.&lt;br /&gt;
./configure --enable-png --enable-ILU --enable-ILUT --enable-x86_64 CPPFLAGS=&amp;quot;-I/opt/local/include/ -L/opt/local/lib/&amp;quot; LDFLAGS=-L/opt/local/lib/&lt;br /&gt;
&lt;br /&gt;
Make sure you have support for png, jpg, dds, and tga&lt;br /&gt;
&lt;br /&gt;
Make it with &amp;quot;make&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Part way through you&#039;ll get an error about malloc.h not being found.  To fix it, replace &amp;lt;malloc.h&amp;gt; with &amp;lt;sys/malloc.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
install with sudo make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==OpenAL==&lt;br /&gt;
&lt;br /&gt;
After having mountains of problems myself with the OpenAL pre-installed with the Xcode tools, I discovered that it is version 1.0 of OpenAL (not the correct version we want).&lt;br /&gt;
&lt;br /&gt;
Head to your /System/Library/Framework/ folder and delete any trace of OpenAL framework / folders that are there.&lt;br /&gt;
&lt;br /&gt;
[http://kcat.strangesoft.net/openal-releases/openal-soft-1.8.466.tar.bz2 Now download this copy of OpenAL]&lt;br /&gt;
&lt;br /&gt;
Using the terminal, go into the folder where you downloaded openal-soft and pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;bzip2 -d openal-soft-xxxx.tar.bz2 | tar xvf -&amp;lt;br&amp;gt;&lt;br /&gt;
cd openal-soft-xxxx&amp;lt;br&amp;gt;&lt;br /&gt;
cmake .&amp;lt;br&amp;gt;&lt;br /&gt;
make&amp;lt;br&amp;gt;&lt;br /&gt;
make install&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All done, now you will have no problems compiling the Sound.cpp file in spring!&lt;br /&gt;
&lt;br /&gt;
=Build And Install=&lt;br /&gt;
&lt;br /&gt;
The build will spew out warnings like the following, which you can safely ignore:&amp;lt;br&amp;gt;&lt;br /&gt;
warning: division by zero&amp;lt;br&amp;gt;&lt;br /&gt;
warning: &#039;q&#039; may be used uninitialized in this function&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Removing duplicate libraries==&lt;br /&gt;
&lt;br /&gt;
Make sure that you remove all extra libraries before the first time you call cmake.  If not it will make your life a living hell.  Check in /usr /usr/local /opt/local and /Library/Frameworks.  Also, don&#039;t change the location of the source directory, librarys, or includes after calling cmake.  If you do change any of the locations you can&#039;t just call cmake again.  There is probably a way to tell t to recompute everything from scratch, but if there is, I haven&#039;t found it yet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer)==&lt;br /&gt;
This is the only way I have compiled spring successfully so far :&lt;br /&gt;
&lt;br /&gt;
(could someone please add a better way? As I cannot workout how to get xcodebuild to run the &amp;quot;install portion of the make file&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake .&lt;br /&gt;
make&lt;br /&gt;
make install&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will install spring in all the right places to be run from a command line (but don&#039;t yet, it compiles an unusable executable, we just needed to get the makefile to install everything to the right place)&lt;br /&gt;
&lt;br /&gt;
Now pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake -G Xcode&lt;br /&gt;
xcodebuild&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will have made a folder called &amp;quot;Debug&amp;quot; and will contain a command line program Spring, and Libunitsync.dylib&lt;br /&gt;
&lt;br /&gt;
now to make sure the correct copy of spring runs when you are using the terminal pass the following command&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;sudo cp spring /usr/local/bin&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Finalizing installation=&lt;br /&gt;
&lt;br /&gt;
Will update later once I update the Springlobby wiki with all my OSX information!&lt;br /&gt;
&lt;br /&gt;
If you need to contact me, send a PM to &#039;&#039;&#039;adso&#039;&#039;&#039; on the forums, or catch me in #sy or #springlobby in the lobby chat :)&lt;br /&gt;
&lt;br /&gt;
--[[User:Adso|Adso]] 06:23, 29 August 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Template:Obtaining_The_Source_Code&amp;diff=23019</id>
		<title>Template:Obtaining The Source Code</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Template:Obtaining_The_Source_Code&amp;diff=23019"/>
		<updated>2009-10-15T05:51:55Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Another typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Current (0.80.4) ===&lt;br /&gt;
&#039;&#039;&#039;(For playing Spring online)&#039;&#039;&#039;&lt;br /&gt;
{{Template:Tarballs}}&lt;br /&gt;
&lt;br /&gt;
=== Development Sources from Git ===&lt;br /&gt;
&#039;&#039;&#039;(Bleeding-edge, unstable code for Development and Testing)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[http://github.com/spring/spring/tree/master &amp;lt;span style=&amp;quot;color:#bbf;&amp;quot;&amp;gt;Spring project page at github&amp;lt;/span&amp;gt;]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Git clone URL for the master repo: &#039;&#039;&#039;git://github.com/spring/spring.git&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For serious developers. This will also allow you to make a patch out of the changes you make to the code, and send it to one of the developers with repository access.&lt;br /&gt;
&lt;br /&gt;
Assuming the GIT-commandline client is installed, you can clone the repository with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;git clone git://github.com/spring/spring.git&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and  update it with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;git pull&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If github is unavailable or slow, there is a mirror (updated twice a day):&lt;br /&gt;
&#039;&#039;&#039;git://springrts.com/spring&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;There&#039;s a branch that&#039;s for MacOS development.  You can find it at git://github.com/yokosou/spring/spring.git.  If you want to include the recent changes in the main branch, you can checkout and merge both like this&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;git clone git://github.com/yokosou/spring.git&lt;br /&gt;
cd spring&lt;br /&gt;
git pull&lt;br /&gt;
git remote add official git://github.com/spring/spring.git&lt;br /&gt;
git fetch official&lt;br /&gt;
git pull official master&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3432</id>
		<title>Building Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3432"/>
		<updated>2009-10-14T21:39:57Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Minor formatting fixes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Build from source on MacOSX=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Guide is for x86/Intel based OSX installs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I am hoping that with our efforts on the forum that we can have an .app bundle released everytime spring is updated and that will save most people needing to go through the headache of compiling from source code. But if you must try, then here&#039;s the steps to help!&lt;br /&gt;
&lt;br /&gt;
I cannot stress enough that this will most likely only work on Intel based systems at this stage. With my understanding of how unitsync works, it seems like online play will not be possible between PPC and x86 architecture.&lt;br /&gt;
&lt;br /&gt;
=Obtaining the Source=&lt;br /&gt;
{{Obtaining_The_Source_Code}}&lt;br /&gt;
&lt;br /&gt;
=Get Dependencies=&lt;br /&gt;
&lt;br /&gt;
You will need to install some development packages Spring depends on. Most of these are available using [http://http://www.macports.org/ Macports] (similar to portage / apt-get etc available on various linux distro&#039;s)&lt;br /&gt;
&lt;br /&gt;
You will also need to install the [http://developer.apple.com/TOOLS/Xcode/ Xcode developers package] (this requires a free membership to apple&#039;s ADC website)&lt;br /&gt;
&lt;br /&gt;
==Full list==&lt;br /&gt;
&lt;br /&gt;
*Programs necessary to build&lt;br /&gt;
**Xcode&lt;br /&gt;
**cmake (or scons)&lt;br /&gt;
**zip&lt;br /&gt;
**The usual build toolchain&lt;br /&gt;
***gcc &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
***make &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
*Libraries&lt;br /&gt;
**SDL&lt;br /&gt;
**boost (version 1.35 or later recommended)&lt;br /&gt;
***threads&lt;br /&gt;
***regex&lt;br /&gt;
***signals&lt;br /&gt;
***system&lt;br /&gt;
**DeviL (IL, ILU)&lt;br /&gt;
**OpenAL &#039;&#039;Please check the OpenAL section for MacOSX specific info&#039;&#039;&lt;br /&gt;
**OpenGL headers (mesa, glew, etc.) &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
**zlib&lt;br /&gt;
**freetype&lt;br /&gt;
**ogg,vorbis and vorbisfile&lt;br /&gt;
*Optional, for bindings and Ais&lt;br /&gt;
**Python (2.5)&lt;br /&gt;
**Java-SDK &#039;&#039;(pre-installed on OSX)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using Macports==&lt;br /&gt;
&lt;br /&gt;
Once you have downloaded and configured Macports use these commands to download / compile and install the required dependencies :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;sudo port install cmake&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl-framework&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost-jam&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libpng #These image libraries might not be needed, but ma save you some headaches&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install jpeg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install tiff&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libogg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libvorbis&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install python25&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libdevil # as of October 12th 2009 the Macports install of libdevil (1.6.8-rc2_0) can be broken.  If you get errors like /opt/local/include/IL/il.h:505: error: â€˜&amp;lt;anonymous&amp;gt;â€™ has incomplete type while building spring, you&#039;ll probably need to install it from source. )&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all was successful, you are very close to being able to compile Spring natively!&lt;br /&gt;
&lt;br /&gt;
==Installing libdevil from source==&lt;br /&gt;
&lt;br /&gt;
Make sure that all the other port packages are installed first!&lt;br /&gt;
Download the source.  Right now 1.6.8-rc2_0 has the bug we&#039;re trying to work around, so don&#039;t use that one, or earlier versions.&lt;br /&gt;
&lt;br /&gt;
Extract the source code.&lt;br /&gt;
&lt;br /&gt;
Configure it.  I used this command.&lt;br /&gt;
./configure --enable-png --enable-ILU --enable-ILUT --enable-x86_64 CPPFLAGS=&amp;quot;-I/opt/local/include/ -L/opt/local/lib/&amp;quot; LDFLAGS=-L/opt/local/lib/&lt;br /&gt;
&lt;br /&gt;
Make sure you have support for png, jpg, dds, and tga&lt;br /&gt;
&lt;br /&gt;
Make it with &amp;quot;make&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Part way through you&#039;ll get an error about malloc.h not being found.  To fix it, replace &amp;lt;malloc.h&amp;gt; with &amp;lt;sys/malloc.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
install with sudo make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==OpenAL==&lt;br /&gt;
&lt;br /&gt;
After having mountains of problems myself with the OpenAL pre-installed with the Xcode tools, I discovered that it is version 1.0 of OpenAL (not the correct version we want).&lt;br /&gt;
&lt;br /&gt;
Head to your /System/Library/Framework/ folder and delete any trace of OpenAL framework / folders that are there.&lt;br /&gt;
&lt;br /&gt;
[http://kcat.strangesoft.net/openal-releases/openal-soft-1.8.466.tar.bz2 Now download this copy of OpenAL]&lt;br /&gt;
&lt;br /&gt;
Using the terminal, go into the folder where you downloaded openal-soft and pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;bzip2 -d openal-soft-xxxx.tar.bz2 | tar xvf -&amp;lt;br&amp;gt;&lt;br /&gt;
cd openal-soft-xxxx&amp;lt;br&amp;gt;&lt;br /&gt;
cmake .&amp;lt;br&amp;gt;&lt;br /&gt;
make&amp;lt;br&amp;gt;&lt;br /&gt;
make install&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All done, now you will have no problems compiling the Sound.cpp file in spring!&lt;br /&gt;
&lt;br /&gt;
=Build And Install=&lt;br /&gt;
&lt;br /&gt;
The build will spew out warnings like the following, which you can safely ignore:&amp;lt;br&amp;gt;&lt;br /&gt;
warning: division by zero&amp;lt;br&amp;gt;&lt;br /&gt;
warning: &#039;q&#039; may be used uninitialized in this function&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer)==&lt;br /&gt;
This is the only way I have compiled spring successfully so far :&lt;br /&gt;
&lt;br /&gt;
(could someone please add a better way? As I cannot workout how to get xcodebuild to run the &amp;quot;install portion of the make file&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake .&lt;br /&gt;
make&lt;br /&gt;
make install&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will install spring in all the right places to be run from a command line (but don&#039;t yet, it compiles an unusable executable, we just needed to get the makefile to install everything to the right place)&lt;br /&gt;
&lt;br /&gt;
Now pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake -G Xcode&lt;br /&gt;
xcodebuild&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will have made a folder called &amp;quot;Debug&amp;quot; and will contain a command line program Spring, and Libunitsync.dylib&lt;br /&gt;
&lt;br /&gt;
now to make sure the correct copy of spring runs when you are using the terminal pass the following command&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;sudo cp spring /usr/local/bin&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
=Finalizing installation=&lt;br /&gt;
&lt;br /&gt;
Will update later once I update the Springlobby wiki with all my OSX information!&lt;br /&gt;
&lt;br /&gt;
If you need to contact me, send a PM to &#039;&#039;&#039;adso&#039;&#039;&#039; on the forums, or catch me in #sy or #springlobby in the lobby chat :)&lt;br /&gt;
&lt;br /&gt;
--[[User:Adso|Adso]] 06:23, 29 August 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3431</id>
		<title>Building Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3431"/>
		<updated>2009-10-14T21:36:05Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Lots of changes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Build from source on MacOSX=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Guide is for x86/Intel based OSX installs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I am hoping that with our efforts on the forum that we can have an .app bundle released everytime spring is updated and that will save most people needing to go through the headache of compiling from source code. But if you must try, then here&#039;s the steps to help!&lt;br /&gt;
&lt;br /&gt;
I cannot stress enough that this will most likely only work on Intel based systems at this stage. With my understanding of how unitsync works, it seems like online play will not be possible between PPC and x86 architecture.&lt;br /&gt;
&lt;br /&gt;
=Obtaining the Source=&lt;br /&gt;
{{Obtaining_The_Source_Code}}&lt;br /&gt;
&lt;br /&gt;
=Get Dependencies=&lt;br /&gt;
&lt;br /&gt;
You will need to install some development packages Spring depends on. Most of these are available using [http://http://www.macports.org/ Macports] (similar to portage / apt-get etc available on various linux distro&#039;s)&lt;br /&gt;
&lt;br /&gt;
You will also need to install the [http://developer.apple.com/TOOLS/Xcode/ Xcode developers package] (this requires a free membership to apple&#039;s ADC website)&lt;br /&gt;
&lt;br /&gt;
==Full list==&lt;br /&gt;
&lt;br /&gt;
*Programs necessary to build&lt;br /&gt;
**Xcode&lt;br /&gt;
**cmake (or scons)&lt;br /&gt;
**zip&lt;br /&gt;
**The usual build toolchain&lt;br /&gt;
***gcc &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
***make &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
*Libraries&lt;br /&gt;
**SDL&lt;br /&gt;
**boost (version 1.35 or later recommended)&lt;br /&gt;
***threads&lt;br /&gt;
***regex&lt;br /&gt;
***signals&lt;br /&gt;
***system&lt;br /&gt;
**DeviL (IL, ILU)&lt;br /&gt;
**OpenAL &#039;&#039;Please check the OpenAL section for MacOSX specific info&#039;&#039;&lt;br /&gt;
**OpenGL headers (mesa, glew, etc.) &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
**zlib&lt;br /&gt;
**freetype&lt;br /&gt;
**ogg,vorbis and vorbisfile&lt;br /&gt;
*Optional, for bindings and Ais&lt;br /&gt;
**Python (2.5)&lt;br /&gt;
**Java-SDK &#039;&#039;(pre-installed on OSX)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using Macports==&lt;br /&gt;
&lt;br /&gt;
Once you have downloaded and configured Macports use these commands to download / compile and install the required dependencies :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;sudo port install cmake&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl-framework&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost-jam&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libpng #These image libraries might not be needed, but ma save you some headaches&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install jpeg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install tiff&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libogg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libvorbis&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install python25&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libdevil # as of October 12th 2009 the Macports install of libdevil (1.6.8-rc2_0) can be broken.  If you get errors like /opt/local/include/IL/il.h:505: error: â€˜&amp;lt;anonymous&amp;gt;â€™ has incomplete type while building spring, you&#039;ll probably need to install it from source. )&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all was successful, you are very close to being able to compile Spring natively!&lt;br /&gt;
&lt;br /&gt;
==Installing libdevil from source==&lt;br /&gt;
&lt;br /&gt;
Make sure that all the other port packages are installed first!&lt;br /&gt;
Download the source.  Right now 1.6.8-rc2_0 has the bug we&#039;re trying to work around, so don&#039;t use that one, or earlier versions.&lt;br /&gt;
&lt;br /&gt;
Extract the source code.&lt;br /&gt;
&lt;br /&gt;
Configure it.  I used this command.&lt;br /&gt;
./configure --enable-png --enable-ILU --enable-ILUT --enable-x86_64 CPPFLAGS=&amp;quot;-I/opt/local/include/ -L/opt/local/lib/&amp;quot; LDFLAGS=-L/opt/local/lib/&lt;br /&gt;
&lt;br /&gt;
Make sure you have support for png, jpg, dds, and tga&lt;br /&gt;
&lt;br /&gt;
Make it with &amp;quot;make&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Part way through you&#039;ll get an error about malloc.h not being found.  To fix it, replace &amp;lt;malloc.h&amp;gt; with &amp;lt;sys/malloc.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
install with sudo make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==OpenAL==&lt;br /&gt;
&lt;br /&gt;
After having mountains of problems myself with the OpenAL pre-installed with the Xcode tools, I discovered that it is version 1.0 of OpenAL (not the correct version we want).&lt;br /&gt;
&lt;br /&gt;
Head to your /System/Library/Framework/ folder and delete any trace of OpenAL framework / folders that are there.&lt;br /&gt;
&lt;br /&gt;
[http://kcat.strangesoft.net/openal-releases/openal-soft-1.8.466.tar.bz2 Now download this copy of OpenAL]&lt;br /&gt;
&lt;br /&gt;
Using the terminal, go into the folder where you downloaded openal-soft and pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;bzip2 -d openal-soft-xxxx.tar.bz2 | tar xvf -&amp;lt;br&amp;gt;&lt;br /&gt;
cd openal-soft-xxxx&amp;lt;br&amp;gt;&lt;br /&gt;
cmake .&amp;lt;br&amp;gt;&lt;br /&gt;
make&amp;lt;br&amp;gt;&lt;br /&gt;
make install&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All done, now you will have no problems compiling the Sound.cpp file in spring!&lt;br /&gt;
&lt;br /&gt;
=Build And Install=&lt;br /&gt;
&lt;br /&gt;
The build will spew out warnings like the following, which you can safely ignore:&lt;br /&gt;
warning: division by zero&lt;br /&gt;
warning: &#039;q&#039; may be used uninitialized in this function&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer)==&lt;br /&gt;
This is the only way I have compiled spring successfully so far :&lt;br /&gt;
&lt;br /&gt;
(could someone please add a better way? As I cannot workout how to get xcodebuild to run the &amp;quot;install portion of the make file&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake .&lt;br /&gt;
make&lt;br /&gt;
make install&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will install spring in all the right places to be run from a command line (but don&#039;t yet, it compiles an unusable executable, we just needed to get the makefile to install everything to the right place)&lt;br /&gt;
&lt;br /&gt;
Now pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake -G Xcode&lt;br /&gt;
xcodebuild&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will have made a folder called &amp;quot;Debug&amp;quot; and will contain a command line program Spring, and Libunitsync.dylib&lt;br /&gt;
&lt;br /&gt;
now to make sure the correct copy of spring runs when you are using the terminal pass the following command&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;sudo cp spring /usr/local/bin&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
=Finalizing installation=&lt;br /&gt;
&lt;br /&gt;
Will update later once I update the Springlobby wiki with all my OSX information!&lt;br /&gt;
&lt;br /&gt;
If you need to contact me, send a PM to &#039;&#039;&#039;adso&#039;&#039;&#039; on the forums, or catch me in #sy or #springlobby in the lobby chat :)&lt;br /&gt;
&lt;br /&gt;
--[[User:Adso|Adso]] 06:23, 29 August 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3430</id>
		<title>Building Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3430"/>
		<updated>2009-10-14T21:26:55Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Reformatting&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Build from source on MacOSX=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Guide is for x86/Intel based OSX installs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I am hoping that with our efforts on the forum that we can have an .app bundle released everytime spring is updated and that will save most people needing to go through the headache of compiling from source code. But if you must try, then here&#039;s the steps to help!&lt;br /&gt;
&lt;br /&gt;
I cannot stress enough that this will most likely only work on Intel based systems at this stage. With my understanding of how unitsync works, it seems like online play will not be possible between PPC and x86 architecture.&lt;br /&gt;
&lt;br /&gt;
=Obtaining the Source=&lt;br /&gt;
{{Obtaining_The_Source_Code}}&lt;br /&gt;
&lt;br /&gt;
=Get Dependencies=&lt;br /&gt;
&lt;br /&gt;
You will need to install some development packages Spring depends on. Most of these are vailable using [http://http://www.macports.org/ Macports] (similar to portage / apt-get etc available on various linux distro&#039;s)&lt;br /&gt;
&lt;br /&gt;
You will also need to install the [http://developer.apple.com/TOOLS/Xcode/ Xcode developers package] (this requires a free membership to apple&#039;s ADC website)&lt;br /&gt;
&lt;br /&gt;
==Full list==&lt;br /&gt;
&lt;br /&gt;
*Programs necessary to build&lt;br /&gt;
**Xcode&lt;br /&gt;
**cmake (or scons)&lt;br /&gt;
**zip&lt;br /&gt;
**The usual build toolchain&lt;br /&gt;
***gcc &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
***make &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
*Libraries&lt;br /&gt;
**SDL&lt;br /&gt;
**boost (version 1.35 or later recommended)&lt;br /&gt;
***threads&lt;br /&gt;
***regex&lt;br /&gt;
***signals&lt;br /&gt;
***system&lt;br /&gt;
**DeviL (IL, ILU)&lt;br /&gt;
**OpenAL &#039;&#039;Please check the OpenAL section for MacOSX specific info&#039;&#039;&lt;br /&gt;
**OpenGL headers (mesa, glew, etc.) &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
**zlib&lt;br /&gt;
**freetype&lt;br /&gt;
**ogg,vorbis and vorbisfile&lt;br /&gt;
*Optional, for bindings and Ais&lt;br /&gt;
**Python (2.5)&lt;br /&gt;
**Java-SDK &#039;&#039;(pre-installed on OSX)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using Macports==&lt;br /&gt;
&lt;br /&gt;
Once you have downloaded and configured Macports use these commands to download / compile and install the required dependencies :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;sudo port install cmake&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl-framework&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost-jam&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libpng #These image libraries might not be needed, but ma save you some headaches&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install jpeg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install tiff&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libogg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libvorbis&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install python25&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libdevil # as of October 12th 2009 the Macports install of libdevil (1.6.8-rc2_0) can be broken.  If you get errors like /opt/local/include/IL/il.h:505: error: â€˜&amp;lt;anonymous&amp;gt;â€™ has incomplete type while building spring, you&#039;ll probably need to install it from source. )&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all was successful, you are very close to being able to compile Spring natively!&lt;br /&gt;
&lt;br /&gt;
==OpenAL==&lt;br /&gt;
&lt;br /&gt;
After having mountains of problems myself with the OpenAL pre-installed with the Xcode tools, I discovered that it is version 1.0 of OpenAL (not the correct version we want).&lt;br /&gt;
&lt;br /&gt;
Head to your /System/Library/Framework/ folder and delete any trace of OpenAL framework / folders that are there.&lt;br /&gt;
&lt;br /&gt;
[http://kcat.strangesoft.net/openal-releases/openal-soft-1.8.466.tar.bz2 Now download this copy of OpenAL]&lt;br /&gt;
&lt;br /&gt;
Using the terminal, go into the folder where you downloaded openal-soft and pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;bzip2 -d openal-soft-xxxx.tar.bz2 | tar xvf -&amp;lt;br&amp;gt;&lt;br /&gt;
cd openal-soft-xxxx&amp;lt;br&amp;gt;&lt;br /&gt;
cmake .&amp;lt;br&amp;gt;&lt;br /&gt;
make&amp;lt;br&amp;gt;&lt;br /&gt;
make install&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All done, now you will have no problems compiling the Sound.cpp file in spring!&lt;br /&gt;
&lt;br /&gt;
=Build And Install=&lt;br /&gt;
&lt;br /&gt;
The build will spew out warnings like the following, which you can safely ignore:&lt;br /&gt;
warning: division by zero&lt;br /&gt;
warning: &#039;q&#039; may be used uninitialized in this function&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer)==&lt;br /&gt;
This is the only way I have compiled spring successfully so far :&lt;br /&gt;
&lt;br /&gt;
(could someone please add a better way? As I cannot workout how to get xcodebuild to run the &amp;quot;install portion of the make file&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake .&lt;br /&gt;
make&lt;br /&gt;
make install&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will install spring in all the right places to be run from a command line (but don&#039;t yet, it compiles an unusable executable, we just needed to get the makefile to install everything to the right place)&lt;br /&gt;
&lt;br /&gt;
Now pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake -G Xcode&lt;br /&gt;
xcodebuild&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will have made a folder called &amp;quot;Debug&amp;quot; and will contain a command line program Spring, and Libunitsync.dylib&lt;br /&gt;
&lt;br /&gt;
now to make sure the correct copy of spring runs when you are using the terminal pass the following command&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;sudo cp spring /usr/local/bin&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
=Finalizing installation=&lt;br /&gt;
&lt;br /&gt;
Will update later once I update the Springlobby wiki with all my OSX information!&lt;br /&gt;
&lt;br /&gt;
If you need to contact me, send a PM to &#039;&#039;&#039;adso&#039;&#039;&#039; on the forums, or catch me in #sy or #springlobby in the lobby chat :)&lt;br /&gt;
&lt;br /&gt;
--[[User:Adso|Adso]] 06:23, 29 August 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Mac&amp;diff=12562</id>
		<title>Mac</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Mac&amp;diff=12562"/>
		<updated>2009-10-14T20:57:44Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Evedently I don&amp;#039;t know how to make links either&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Spring_on_MacOSX]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you know how to make a redirect in a wiki, please change this into one.&lt;br /&gt;
&lt;br /&gt;
[[Category:Source development]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Mac&amp;diff=12561</id>
		<title>Mac</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Mac&amp;diff=12561"/>
		<updated>2009-10-14T20:57:03Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Way too old to bother saving.  Should be a redirect, but I don&amp;#039;t know how to do that.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[http://springrts.com/wiki/Spring_on_MacOSX]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you know how to make a redirect in a wiki, please change this into one.&lt;br /&gt;
&lt;br /&gt;
[[Category:Source development]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Template:Obtaining_The_Source_Code&amp;diff=23018</id>
		<title>Template:Obtaining The Source Code</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Template:Obtaining_The_Source_Code&amp;diff=23018"/>
		<updated>2009-10-12T21:35:48Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: /* Development Sources from Git */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Current (0.80.4) ===&lt;br /&gt;
&#039;&#039;&#039;(For playing Spring online)&#039;&#039;&#039;&lt;br /&gt;
{{Template:Tarballs}}&lt;br /&gt;
&lt;br /&gt;
=== Development Sources from Git ===&lt;br /&gt;
&#039;&#039;&#039;(Bleeding-edge, unstable code for Development and Testing)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[http://github.com/spring/spring/tree/master &amp;lt;span style=&amp;quot;color:#bbf;&amp;quot;&amp;gt;Spring project page at github&amp;lt;/span&amp;gt;]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Git clone URL for the master repo: &#039;&#039;&#039;git://github.com/spring/spring.git&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For serious developers. This will also allow you to make a patch out of the changes you make to the code, and send it to one of the developers with repository access.&lt;br /&gt;
&lt;br /&gt;
Assuming the GIT-commandline client is installed, you can clone the repository with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;git clone git://github.com/spring/spring.git&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and  update it with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;git pull&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If github is unavailable or slow, there is a mirror (updated twice a day):&lt;br /&gt;
&#039;&#039;&#039;git://springrts.com/spring&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;There&#039;s a branch that&#039;s for MacOS development.  You can find it at git://github.com/yokosou/spring/spring.git.  If you want to include the recent changes in the main branch, you can checkout and merge both like this&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;git clone git://github.com/yokosou/spring/spring.git&lt;br /&gt;
cd spring&lt;br /&gt;
git pull&lt;br /&gt;
git remote add official git://github.com/spring/spring.git&lt;br /&gt;
git fetch official&lt;br /&gt;
git pull official master&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3429</id>
		<title>Building Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3429"/>
		<updated>2009-10-12T21:29:04Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: /* Using Macports */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Build from source on MacOSX=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Guide is for x86/Intel based OSX installs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I am hoping that with our efforts on the forum that we can have an .app bundle released everytime spring is updated and that will save most people needing to go through the headache of compiling from source code. But if you must try, then here&#039;s the steps to help!&lt;br /&gt;
&lt;br /&gt;
I cannot stress enough that this will most likely only work on Intel based systems at this stage. With my understanding of how unitsync works, it seems like online play will not be possible between PPC and x86 architecture.&lt;br /&gt;
&lt;br /&gt;
=Obtaining the Source=&lt;br /&gt;
{{Obtaining_The_Source_Code}}&lt;br /&gt;
&lt;br /&gt;
=Get Dependencies=&lt;br /&gt;
&lt;br /&gt;
You will need to install some development packages Spring depends on. Most of these are vailable using [http://http://www.macports.org/ Macports] (similar to portage / apt-get etc available on various linux distro&#039;s)&lt;br /&gt;
&lt;br /&gt;
You will also need to install the [http://developer.apple.com/TOOLS/Xcode/ Xcode developers package] (this requires a free membership to apple&#039;s ADC website)&lt;br /&gt;
&lt;br /&gt;
==Full list==&lt;br /&gt;
&lt;br /&gt;
*Programs necessary to build&lt;br /&gt;
**Xcode&lt;br /&gt;
**cmake (or scons)&lt;br /&gt;
**zip&lt;br /&gt;
**The usual build toolchain&lt;br /&gt;
***gcc &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
***make &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
*Libraries&lt;br /&gt;
**SDL&lt;br /&gt;
**boost (version 1.35 or later recommended)&lt;br /&gt;
***threads&lt;br /&gt;
***regex&lt;br /&gt;
***signals&lt;br /&gt;
***system&lt;br /&gt;
**DeviL (IL, ILU)&lt;br /&gt;
**OpenAL &#039;&#039;Please check the OpenAL section for MacOSX specific info&#039;&#039;&lt;br /&gt;
**OpenGL headers (mesa, glew, etc.) &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
**zlib&lt;br /&gt;
**freetype&lt;br /&gt;
**ogg,vorbis and vorbisfile&lt;br /&gt;
*Optional, for bindings and Ais&lt;br /&gt;
**Python (2.5)&lt;br /&gt;
**Java-SDK &#039;&#039;(pre-installed on OSX)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using Macports==&lt;br /&gt;
&lt;br /&gt;
Once you have downloaded and configured Macports use these commands to download / compile and install the required dependencies :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;sudo port install cmake&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl-framework&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost-jam&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libdevil ( as of October 12th 2009 the Macports install of libdevil (1.6.8-rc2_0) can be broken.  If you get errors like /opt/local/include/IL/il.h:505: error: â€˜&amp;lt;anonymous&amp;gt;â€™ has incomplete type while building spring, you&#039;ll probably need to install it from source. )&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libogg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libvorbis&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install python25&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all was successful, you are very close to being able to compile Spring natively!&lt;br /&gt;
&lt;br /&gt;
==OpenAL==&lt;br /&gt;
&lt;br /&gt;
After having mountains of problems myself with the OpenAL pre-installed with the Xcode tools, I discovered that it is version 1.0 of OpenAL (not the correct version we want).&lt;br /&gt;
&lt;br /&gt;
Head to your /System/Library/Framework/ folder and delete any trace of OpenAL framework / folders that are there.&lt;br /&gt;
&lt;br /&gt;
[http://kcat.strangesoft.net/openal-releases/openal-soft-1.8.466.tar.bz2 Now download this copy of OpenAL]&lt;br /&gt;
&lt;br /&gt;
Using the terminal, go into the folder where you downloaded openal-soft and pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;bzip2 -d openal-soft-xxxx.tar.bz2 | tar xvf -&amp;lt;br&amp;gt;&lt;br /&gt;
cd openal-soft-xxxx&amp;lt;br&amp;gt;&lt;br /&gt;
cmake .&amp;lt;br&amp;gt;&lt;br /&gt;
make&amp;lt;br&amp;gt;&lt;br /&gt;
make install&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All done, now you will have no problems compiling the Sound.cpp file in spring!&lt;br /&gt;
&lt;br /&gt;
=Build And Install=&lt;br /&gt;
&lt;br /&gt;
The build will spew out warnings like the following, which you can safely ignore:&lt;br /&gt;
warning: division by zero&lt;br /&gt;
warning: &#039;q&#039; may be used uninitialized in this function&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer)==&lt;br /&gt;
This is the only way I have compiled spring successfully so far :&lt;br /&gt;
&lt;br /&gt;
(could someone please add a better way? As I cannot workout how to get xcodebuild to run the &amp;quot;install portion of the make file&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake .&lt;br /&gt;
make&lt;br /&gt;
make install&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will install spring in all the right places to be run from a command line (but don&#039;t yet, it compiles an unusable executable, we just needed to get the makefile to install everything to the right place)&lt;br /&gt;
&lt;br /&gt;
Now pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake -G Xcode&lt;br /&gt;
xcodebuild&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will have made a folder called &amp;quot;Debug&amp;quot; and will contain a command line program Spring, and Libunitsync.dylib&lt;br /&gt;
&lt;br /&gt;
now to make sure the correct copy of spring runs when you are using the terminal pass the following command&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;sudo cp spring /usr/local/bin&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
=Finalizing installation=&lt;br /&gt;
&lt;br /&gt;
Will update later once I update the Springlobby wiki with all my OSX information!&lt;br /&gt;
&lt;br /&gt;
If you need to contact me, send a PM to &#039;&#039;&#039;adso&#039;&#039;&#039; on the forums, or catch me in #sy or #springlobby in the lobby chat :)&lt;br /&gt;
&lt;br /&gt;
--[[User:Adso|Adso]] 06:23, 29 August 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_on_MacOSX&amp;diff=17606</id>
		<title>Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_on_MacOSX&amp;diff=17606"/>
		<updated>2009-10-12T16:42:00Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: The whole section &amp;quot;Building the Engine&amp;quot; was an out of date duplicate&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Building_Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
= Whats up with spring on OS X =&lt;br /&gt;
There has been a working, compiled universal binary for Macintosh OSX 10.4. However, this is an outdated version, and development has ceased since the release.&lt;br /&gt;
&lt;br /&gt;
Because a lack of Mac developers (or maybe the lack of Macs for the developers) there is no Mac binary for any recent version of spring. Various people have managed to get it to compile and run on OS X, and we received some patches, but no one ever created a binary package.&lt;br /&gt;
&lt;br /&gt;
== We need YOU ==&lt;br /&gt;
If you have a  Mac, and want to help spring, make a binary package. Lots of people tried, some of them failed, some succeeded, some of them even send patches, but noone stayed long enough to make one.&lt;br /&gt;
&lt;br /&gt;
Thus, it should not be that hard to actually do it. All libraries used by spring are available on OS X, and beside some (or maybe even none) compile errors, spring will most likely compile and work fine.&lt;br /&gt;
&lt;br /&gt;
If you need help, post on forum or ask in the lobby (channel #sy).&lt;br /&gt;
&lt;br /&gt;
== Notes  ==&lt;br /&gt;
Network sync presently restricts play to between computers of the same architecture type. Cross architecture network support is being worked on but will have to wait till there&#039;s hardware to work with. &lt;br /&gt;
&lt;br /&gt;
I was told in chat today that 64bit builds will sync with 32bit builds.  It might have changed.&lt;br /&gt;
--[[User:Patmo98|Patmo98]] 18:14, 28 September 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
Lobby informations for OSX are old &amp;amp; outdated, someone please update this page and the lobby link with fresh informations. &amp;lt;Brain Damage&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Due to the lack of information about a working lobby, the only sure way play between two computers must be initiated manually via start scripts and/or command line.&lt;br /&gt;
&lt;br /&gt;
See the [[Lobby_on_MacOSX]] page for details and development progress&lt;br /&gt;
&lt;br /&gt;
== Building the Engine ==&lt;br /&gt;
&lt;br /&gt;
You can find more information at [[Building_Spring_on_MacOSX]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3428</id>
		<title>Building Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3428"/>
		<updated>2009-10-12T16:38:04Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Build from source on MacOSX=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Guide is for x86/Intel based OSX installs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I am hoping that with our efforts on the forum that we can have an .app bundle released everytime spring is updated and that will save most people needing to go through the headache of compiling from source code. But if you must try, then here&#039;s the steps to help!&lt;br /&gt;
&lt;br /&gt;
I cannot stress enough that this will most likely only work on Intel based systems at this stage. With my understanding of how unitsync works, it seems like online play will not be possible between PPC and x86 architecture.&lt;br /&gt;
&lt;br /&gt;
=Obtaining the Source=&lt;br /&gt;
{{Obtaining_The_Source_Code}}&lt;br /&gt;
&lt;br /&gt;
=Get Dependencies=&lt;br /&gt;
&lt;br /&gt;
You will need to install some development packages Spring depends on. Most of these are vailable using [http://http://www.macports.org/ Macports] (similar to portage / apt-get etc available on various linux distro&#039;s)&lt;br /&gt;
&lt;br /&gt;
You will also need to install the [http://developer.apple.com/TOOLS/Xcode/ Xcode developers package] (this requires a free membership to apple&#039;s ADC website)&lt;br /&gt;
&lt;br /&gt;
==Full list==&lt;br /&gt;
&lt;br /&gt;
*Programs necessary to build&lt;br /&gt;
**Xcode&lt;br /&gt;
**cmake (or scons)&lt;br /&gt;
**zip&lt;br /&gt;
**The usual build toolchain&lt;br /&gt;
***gcc &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
***make &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
*Libraries&lt;br /&gt;
**SDL&lt;br /&gt;
**boost (version 1.35 or later recommended)&lt;br /&gt;
***threads&lt;br /&gt;
***regex&lt;br /&gt;
***signals&lt;br /&gt;
***system&lt;br /&gt;
**DeviL (IL, ILU)&lt;br /&gt;
**OpenAL &#039;&#039;Please check the OpenAL section for MacOSX specific info&#039;&#039;&lt;br /&gt;
**OpenGL headers (mesa, glew, etc.) &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
**zlib&lt;br /&gt;
**freetype&lt;br /&gt;
**ogg,vorbis and vorbisfile&lt;br /&gt;
*Optional, for bindings and Ais&lt;br /&gt;
**Python (2.5)&lt;br /&gt;
**Java-SDK &#039;&#039;(pre-installed on OSX)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using Macports==&lt;br /&gt;
&lt;br /&gt;
Once you have downloaded and configured Macports use these commands to download / compile and install the required dependencies :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;sudo port install cmake&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl-framework&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost-jam&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libdevil ( as of October 12th 2009 the ports install of libdevil (1.6.8-rc2_0) can be broken.  If you get errors like /opt/local/include/IL/il.h:505: error: â€˜&amp;lt;anonymous&amp;gt;â€™ has incomplete type while building spring, you&#039;ll probably need to install it from source. )&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libogg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libvorbis&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install python25&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all was successful, you are very close to being able to compile Spring natively!&lt;br /&gt;
&lt;br /&gt;
==OpenAL==&lt;br /&gt;
&lt;br /&gt;
After having mountains of problems myself with the OpenAL pre-installed with the Xcode tools, I discovered that it is version 1.0 of OpenAL (not the correct version we want).&lt;br /&gt;
&lt;br /&gt;
Head to your /System/Library/Framework/ folder and delete any trace of OpenAL framework / folders that are there.&lt;br /&gt;
&lt;br /&gt;
[http://kcat.strangesoft.net/openal-releases/openal-soft-1.8.466.tar.bz2 Now download this copy of OpenAL]&lt;br /&gt;
&lt;br /&gt;
Using the terminal, go into the folder where you downloaded openal-soft and pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;bzip2 -d openal-soft-xxxx.tar.bz2 | tar xvf -&amp;lt;br&amp;gt;&lt;br /&gt;
cd openal-soft-xxxx&amp;lt;br&amp;gt;&lt;br /&gt;
cmake .&amp;lt;br&amp;gt;&lt;br /&gt;
make&amp;lt;br&amp;gt;&lt;br /&gt;
make install&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All done, now you will have no problems compiling the Sound.cpp file in spring!&lt;br /&gt;
&lt;br /&gt;
=Build And Install=&lt;br /&gt;
&lt;br /&gt;
The build will spew out warnings like the following, which you can safely ignore:&lt;br /&gt;
warning: division by zero&lt;br /&gt;
warning: &#039;q&#039; may be used uninitialized in this function&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer)==&lt;br /&gt;
This is the only way I have compiled spring successfully so far :&lt;br /&gt;
&lt;br /&gt;
(could someone please add a better way? As I cannot workout how to get xcodebuild to run the &amp;quot;install portion of the make file&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake .&lt;br /&gt;
make&lt;br /&gt;
make install&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will install spring in all the right places to be run from a command line (but don&#039;t yet, it compiles an unusable executable, we just needed to get the makefile to install everything to the right place)&lt;br /&gt;
&lt;br /&gt;
Now pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake -G Xcode&lt;br /&gt;
xcodebuild&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will have made a folder called &amp;quot;Debug&amp;quot; and will contain a command line program Spring, and Libunitsync.dylib&lt;br /&gt;
&lt;br /&gt;
now to make sure the correct copy of spring runs when you are using the terminal pass the following command&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;sudo cp spring /usr/local/bin&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
=Finalizing installation=&lt;br /&gt;
&lt;br /&gt;
Will update later once I update the Springlobby wiki with all my OSX information!&lt;br /&gt;
&lt;br /&gt;
If you need to contact me, send a PM to &#039;&#039;&#039;adso&#039;&#039;&#039; on the forums, or catch me in #sy or #springlobby in the lobby chat :)&lt;br /&gt;
&lt;br /&gt;
--[[User:Adso|Adso]] 06:23, 29 August 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3427</id>
		<title>Building Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3427"/>
		<updated>2009-10-12T16:37:34Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: libdevil can be broken.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Build from source on MacOSX=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Guide is for x86/Intel based OSX installs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I am hoping that with our efforts on the forum that we can have an .app bundle released everytime spring is updated and that will save most people needing to go through the headache of compiling from source code. But if you must try, then here&#039;s the steps to help!&lt;br /&gt;
&lt;br /&gt;
I cannot stress enough that this will most likely only work on Intel based systems at this stage. With my understanding of how unitsync works, it seems like online play will not be possible between PPC and x86 architecture.&lt;br /&gt;
&lt;br /&gt;
=Obtaining the Source=&lt;br /&gt;
{{Obtaining_The_Source_Code}}&lt;br /&gt;
&lt;br /&gt;
=Get Dependencies=&lt;br /&gt;
&lt;br /&gt;
You will need to install some development packages Spring depends on. Most of these are vailable using [http://http://www.macports.org/ Macports] (similar to portage / apt-get etc available on various linux distro&#039;s)&lt;br /&gt;
&lt;br /&gt;
You will also need to install the [http://developer.apple.com/TOOLS/Xcode/ Xcode developers package] (this requires a free membership to apple&#039;s ADC website)&lt;br /&gt;
&lt;br /&gt;
==Full list==&lt;br /&gt;
&lt;br /&gt;
*Programs necessary to build&lt;br /&gt;
**Xcode&lt;br /&gt;
**cmake (or scons)&lt;br /&gt;
**zip&lt;br /&gt;
**The usual build toolchain&lt;br /&gt;
***gcc &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
***make &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
*Libraries&lt;br /&gt;
**SDL&lt;br /&gt;
**boost (version 1.35 or later recommended)&lt;br /&gt;
***threads&lt;br /&gt;
***regex&lt;br /&gt;
***signals&lt;br /&gt;
***system&lt;br /&gt;
**DeviL (IL, ILU)&lt;br /&gt;
**OpenAL &#039;&#039;Please check the OpenAL section for MacOSX specific info&#039;&#039;&lt;br /&gt;
**OpenGL headers (mesa, glew, etc.) &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
**zlib&lt;br /&gt;
**freetype&lt;br /&gt;
**ogg,vorbis and vorbisfile&lt;br /&gt;
*Optional, for bindings and Ais&lt;br /&gt;
**Python (2.5)&lt;br /&gt;
**Java-SDK &#039;&#039;(pre-installed on OSX)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using Macports==&lt;br /&gt;
&lt;br /&gt;
Once you have downloaded and configured Macports use these commands to download / compile and install the required dependencies :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;sudo port install cmake&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl-framework&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost-jam&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libdevil ( as of October 12th 2009 the ports install of libdevil (1.6.8-rc2_0) can be broken.  If you get errors like /opt/local/include/IL/il.h:505: error: â€˜&amp;lt;anonymous&amp;gt;â€™ has incomplete type while building spring, you&#039;ll probably need to install it from source. )&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libogg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libvorbis&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install python25&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all was successful, you are very close to being able to compile Spring natively!&lt;br /&gt;
&lt;br /&gt;
==OpenAL==&lt;br /&gt;
&lt;br /&gt;
After having mountains of problems myself with the OpenAL pre-installed with the Xcode tools, I discoverd that it is version 1.0 of OpenAL (not the correct version we want).&lt;br /&gt;
&lt;br /&gt;
Head to your /System/Library/Framework/ folder and delete any trace of OpenAL framework / folders that are there.&lt;br /&gt;
&lt;br /&gt;
[http://kcat.strangesoft.net/openal-releases/openal-soft-1.8.466.tar.bz2 Now download this copy of OpenAL]&lt;br /&gt;
&lt;br /&gt;
Using the terminal, go into the folder where you downloaded openal-soft and pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;bzip2 -d openal-soft-xxxx.tar.bz2 | tar xvf -&amp;lt;br&amp;gt;&lt;br /&gt;
cd openal-soft-xxxx&amp;lt;br&amp;gt;&lt;br /&gt;
cmake .&amp;lt;br&amp;gt;&lt;br /&gt;
make&amp;lt;br&amp;gt;&lt;br /&gt;
make install&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All done, now you will have no problems compiling the Sound.cpp file in spring!&lt;br /&gt;
&lt;br /&gt;
=Build And Install=&lt;br /&gt;
&lt;br /&gt;
The build will spew out warnings like the following, which you can safely ignore:&lt;br /&gt;
warning: division by zero&lt;br /&gt;
warning: &#039;q&#039; may be used uninitialized in this function&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer)==&lt;br /&gt;
This is the only way I have compiled spring successfully so far :&lt;br /&gt;
&lt;br /&gt;
(could someone please add a better way? As I cannot workout how to get xcodebuild to run the &amp;quot;install portion of the make file&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake .&lt;br /&gt;
make&lt;br /&gt;
make install&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will install spring in all the right places to be run from a command line (but don&#039;t yet, it compiles an unusable executable, we just needed to get the makefile to install everything to the right place)&lt;br /&gt;
&lt;br /&gt;
Now pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake -G Xcode&lt;br /&gt;
xcodebuild&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will have made a folder called &amp;quot;Debug&amp;quot; and will contain a command line program Spring, and Libunitsync.dylib&lt;br /&gt;
&lt;br /&gt;
now to make sure the correct copy of spring runs when you are using the terminal pass the following command&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;sudo cp spring /usr/local/bin&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
=Finalizing installation=&lt;br /&gt;
&lt;br /&gt;
Will update later once I update the Springlobby wiki with all my OSX information!&lt;br /&gt;
&lt;br /&gt;
If you need to contact me, send a PM to &#039;&#039;&#039;adso&#039;&#039;&#039; on the forums, or catch me in #sy or #springlobby in the lobby chat :)&lt;br /&gt;
&lt;br /&gt;
--[[User:Adso|Adso]] 06:23, 29 August 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_on_MacOSX&amp;diff=17605</id>
		<title>Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_on_MacOSX&amp;diff=17605"/>
		<updated>2009-09-28T18:14:12Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Added a quick mention of this page being a partial duplicate&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Building_Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
= Whats up with spring on OS X =&lt;br /&gt;
There has been a working, compiled universal binary for Macintosh OSX 10.4. However, this is an outdated version, and development has ceased since the release.&lt;br /&gt;
&lt;br /&gt;
Because a lack of Mac developers (or maybe the lack of Macs for the developers) there is no Mac binary for any recent version of spring. Various people have managed to get it to compile and run on OS X, and we received some patches, but no one ever created a binary package.&lt;br /&gt;
&lt;br /&gt;
== We need YOU ==&lt;br /&gt;
If you have a  Mac, and want to help spring, make a binary package. Lots of people tried, some of them failed, some succeeded, some of them even send patches, but noone stayed long enough to make one.&lt;br /&gt;
&lt;br /&gt;
Thus, it should not be that hard to actually do it. All libraries used by spring are available on OS X, and beside some (or maybe even none) compile errors, spring will most likely compile and work fine.&lt;br /&gt;
&lt;br /&gt;
If you need help, post on forum or ask in the lobby (channel #sy).&lt;br /&gt;
&lt;br /&gt;
== Notes  ==&lt;br /&gt;
Network sync presently restricts play to between computers of the same architecture type. Cross architecture network support is being worked on but will have to wait till there&#039;s hardware to work with. &lt;br /&gt;
&lt;br /&gt;
I was told in chat today that 64bit builds will sync with 32bit builds.  It might have changed.&lt;br /&gt;
--[[User:Patmo98|Patmo98]] 18:14, 28 September 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
Lobby informations for OSX are old &amp;amp; outdated, someone please update this page and the lobby link with fresh informations. &amp;lt;Brain Damage&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Due to the lack of information about a working lobby, the only sure way play between two computers must be initiated manually via start scripts and/or command line.&lt;br /&gt;
&lt;br /&gt;
See the [[Lobby_on_MacOSX]] page for details and development progress&lt;br /&gt;
&lt;br /&gt;
== Building the Engine ==&lt;br /&gt;
&lt;br /&gt;
Currently there are a number of efforts underway to get Spring ported to Mac OS X and able to play multiplayer online.&lt;br /&gt;
&lt;br /&gt;
You will need some 3rd party libraries installed in order to build the code yourself. The simplest way to do this is by using Darwin Ports - grab it from http://www.darwinports.com&lt;br /&gt;
&lt;br /&gt;
Once you have that, you will need to open a shell and install the Boost, DevIL and Glew libraries like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ sudo port install boost&amp;lt;br/&amp;gt;&lt;br /&gt;
$ sudo port install libdevil&amp;lt;br/&amp;gt;&lt;br /&gt;
$ sudo port install glew&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In each case the libraries and all their dependencies will be downloaded and compiled (could take quite some time, so be patient). Once you have that, and a Spring source repository on your Mac, go to your spring source root directory and do this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ mkdir build&amp;lt;br/&amp;gt;&lt;br /&gt;
$ cd build&amp;lt;br/&amp;gt;&lt;br /&gt;
$ ccmake ..&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will allow you to configure cmake according to your environment. Note that one of the options is to specify whether or not an .app bundle is produced by the build process. Once you have succesfully configured, you should be able to build the source using the make command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ make&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3426</id>
		<title>Building Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_MacOSX&amp;diff=3426"/>
		<updated>2009-09-28T18:14:06Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Added a quick mention of this page being a partial duplicate&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
= Duplicate and missing information =&lt;br /&gt;
&lt;br /&gt;
This page is a partial duplicate of [[Spring_on_MacOSX]] but both have unique information. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Build from source on MacOSX=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Guide is for x86/Intel based OSX installs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I am hoping that with our efforts on the forum that we can have an .app bundle released everytime spring is updated and that will save most people needing to go through the headache of compiling from source code. But if you must try, then here&#039;s the steps to help!&lt;br /&gt;
&lt;br /&gt;
I cannot stress enough that this will most likely only work on Intel based systems at this stage. With my understanding of how unitsync works, it seems like online play will not be possible between PPC and x86 architecture.&lt;br /&gt;
&lt;br /&gt;
=Obtaining the Source=&lt;br /&gt;
{{Obtaining_The_Source_Code}}&lt;br /&gt;
&lt;br /&gt;
=Get Dependencies=&lt;br /&gt;
&lt;br /&gt;
You will need to install some development packages Spring depends on. Most of these are vailable using [http://http://www.macports.org/ Macports] (similar to portage / apt-get etc available on various linux distro&#039;s)&lt;br /&gt;
&lt;br /&gt;
You will also need to install the [http://developer.apple.com/TOOLS/Xcode/ Xcode developers package] (this requires a free membership to apple&#039;s ADC website)&lt;br /&gt;
&lt;br /&gt;
==Full list==&lt;br /&gt;
&lt;br /&gt;
*Programs necessary to build&lt;br /&gt;
**Xcode&lt;br /&gt;
**cmake (or scons)&lt;br /&gt;
**zip&lt;br /&gt;
**The usual build toolchain&lt;br /&gt;
***gcc &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
***make &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
*Libraries&lt;br /&gt;
**SDL&lt;br /&gt;
**boost (version 1.35 or later recommended)&lt;br /&gt;
***threads&lt;br /&gt;
***regex&lt;br /&gt;
***signals&lt;br /&gt;
***system&lt;br /&gt;
**DeviL (IL, ILU)&lt;br /&gt;
**OpenAL &#039;&#039;Please check the OpenAL section for MacOSX specific info&#039;&#039;&lt;br /&gt;
**OpenGL headers (mesa, glew, etc.) &#039;&#039;(comes with Xcode tools)&#039;&#039;&lt;br /&gt;
**zlib&lt;br /&gt;
**freetype&lt;br /&gt;
**ogg,vorbis and vorbisfile&lt;br /&gt;
*Optional, for bindings and Ais&lt;br /&gt;
**Python (2.5)&lt;br /&gt;
**Java-SDK &#039;&#039;(pre-installed on OSX)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Using Macports==&lt;br /&gt;
&lt;br /&gt;
Once you have downloaded and configured Macports use these commands to download / compile and install the required dependencies :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;sudo port install cmake&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libsdl-framework&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install boost-jam&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libdevil&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libogg&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install libvorbis&amp;lt;br&amp;gt;&lt;br /&gt;
sudo port install python25&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all was successful, you are very close to being able to compile Spring natively!&lt;br /&gt;
&lt;br /&gt;
==OpenAL==&lt;br /&gt;
&lt;br /&gt;
After having mountains of problems myself with the OpenAL pre-installed with the Xcode tools, I discoverd that it is version 1.0 of OpenAL (not the correct version we want).&lt;br /&gt;
&lt;br /&gt;
Head to your /System/Library/Framework/ folder and delete any trace of OpenAL framework / folders that are there.&lt;br /&gt;
&lt;br /&gt;
[http://kcat.strangesoft.net/openal-releases/openal-soft-1.8.466.tar.bz2 Now download this copy of OpenAL]&lt;br /&gt;
&lt;br /&gt;
Using the terminal, go into the folder where you downloaded openal-soft and pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font face=&amp;quot;system&amp;quot;&amp;gt;bzip2 -d openal-soft-xxxx.tar.bz2 | tar xvf -&amp;lt;br&amp;gt;&lt;br /&gt;
cd openal-soft-xxxx&amp;lt;br&amp;gt;&lt;br /&gt;
cmake .&amp;lt;br&amp;gt;&lt;br /&gt;
make&amp;lt;br&amp;gt;&lt;br /&gt;
make install&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All done, now you will have no problems compiling the Sound.cpp file in spring!&lt;br /&gt;
&lt;br /&gt;
=Build And Install=&lt;br /&gt;
&lt;br /&gt;
The build will spew out warnings like the following, which you can safely ignore:&lt;br /&gt;
warning: division by zero&lt;br /&gt;
warning: &#039;q&#039; may be used uninitialized in this function&lt;br /&gt;
&lt;br /&gt;
==Using CMake (2.6 or newer)==&lt;br /&gt;
This is the only way I have compiled spring successfully so far :&lt;br /&gt;
&lt;br /&gt;
(could someone please add a better way? As I cannot workout how to get xcodebuild to run the &amp;quot;install portion of the make file&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake .&lt;br /&gt;
make&lt;br /&gt;
make install&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will install spring in all the right places to be run from a command line (but don&#039;t yet, it compiles an unusable executable, we just needed to get the makefile to install everything to the right place)&lt;br /&gt;
&lt;br /&gt;
Now pass these commands&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;cmake -G Xcode&lt;br /&gt;
xcodebuild&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will have made a folder called &amp;quot;Debug&amp;quot; and will contain a command line program Spring, and Libunitsync.dylib&lt;br /&gt;
&lt;br /&gt;
now to make sure the correct copy of spring runs when you are using the terminal pass the following command&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;sudo cp spring /usr/local/bin&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you are ready to ready to play Spring on your MacOSX system!&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
=Finalizing installation=&lt;br /&gt;
&lt;br /&gt;
Will update later once I update the Springlobby wiki with all my OSX information!&lt;br /&gt;
&lt;br /&gt;
If you need to contact me, send a PM to &#039;&#039;&#039;adso&#039;&#039;&#039; on the forums, or catch me in #sy or #springlobby in the lobby chat :)&lt;br /&gt;
&lt;br /&gt;
--[[User:Adso|Adso]] 06:23, 29 August 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_on_MacOSX&amp;diff=17604</id>
		<title>Spring on MacOSX</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_on_MacOSX&amp;diff=17604"/>
		<updated>2009-09-28T18:06:52Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Spelling&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Whats up with spring on OS X =&lt;br /&gt;
There has been a working, compiled universal binary for Macintosh OSX 10.4. However, this is an outdated version, and development has ceased since the release.&lt;br /&gt;
&lt;br /&gt;
Because a lack of Mac developers (or maybe the lack of Macs for the developers) there is no Mac binary for any recent version of spring. Various people have managed to get it to compile and run on OS X, and we received some patches, but no one ever created a binary package.&lt;br /&gt;
&lt;br /&gt;
== We need YOU ==&lt;br /&gt;
If you have a  Mac, and want to help spring, make a binary package. Lots of people tried, some of them failed, some succeeded, some of them even send patches, but noone stayed long enought to make one.&lt;br /&gt;
&lt;br /&gt;
Thus, it should not be that hard to actually do it. All libraries used by spring are available on OS X, and beside some (or maybe even none) compile errors, spring will most likely compile and work fine.&lt;br /&gt;
&lt;br /&gt;
If you need help, post on forum or ask in the lobby (channel #sy).&lt;br /&gt;
&lt;br /&gt;
== Notes  ==&lt;br /&gt;
Network sync presently restricts play to between computers of the same architecture type. Cross architecture network support is being worked on but will have to wait till there&#039;s hardware to work with. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Lobby informations for OSX are old &amp;amp; outdated, someone please update this page and the lobby link with fresh informations. &amp;lt;Brain Damage&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Due to the lack of information about a working lobby, the only sure way play between two computers must be initiated manually via start scripts and/or command line.&lt;br /&gt;
&lt;br /&gt;
See the [[Lobby_on_MacOSX]] page for details and development progress&lt;br /&gt;
&lt;br /&gt;
== Building the Engine ==&lt;br /&gt;
&lt;br /&gt;
Currently there are a number of efforts underway to get Spring ported to Mac OS X and able to play multiplayer online.&lt;br /&gt;
&lt;br /&gt;
You will need some 3rd party libraries installed in order to build the code yourself. The simplest way to do this is by using Darwin Ports - grab it from http://www.darwinports.com&lt;br /&gt;
&lt;br /&gt;
Once you have that, you will need to open a shell and install the Boost, DevIL and Glew libraries like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ sudo port install boost&amp;lt;br/&amp;gt;&lt;br /&gt;
$ sudo port install libdevil&amp;lt;br/&amp;gt;&lt;br /&gt;
$ sudo port install glew&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In each case the libraries and all their dependencies will be downloaded and compiled (could take quite some time, so be patient). Once you have that, and a Spring source repository on your Mac, go to your spring source root directory and do this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ mkdir build&amp;lt;br/&amp;gt;&lt;br /&gt;
$ cd build&amp;lt;br/&amp;gt;&lt;br /&gt;
$ ccmake ..&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will allow you to configure cmake according to your environment. Note that one of the options is to specify whether or not an .app bundle is produced by the build process. Once you have succesfully configured, you should be able to build the source using the make command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ make&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Development:Main&amp;diff=5576</id>
		<title>Development:Main</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Development:Main&amp;diff=5576"/>
		<updated>2006-08-17T00:50:34Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: /* Modifying and Compiling the Source */  Spelling&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Outlined below is information on assisting with the development of the Spring source itself.&lt;br /&gt;
&lt;br /&gt;
::&amp;lt;small&amp;gt;NOTE: For information about developing a mod (units, maps, etc.) see the [[Mod Development]] page.&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Below you can find information on how to work with the Spring source in the current mainline (Windows platform) if you like to work on another platform (Linux &amp;amp; Mac) please look at the bottem of this page under &amp;quot;Multiplatform development&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==Starting Development==&lt;br /&gt;
To start development, you will need&lt;br /&gt;
#The latest version of the source &lt;br /&gt;
#A good code manipulation program&lt;br /&gt;
#Compiling your modified source&lt;br /&gt;
&lt;br /&gt;
===Source Code Documentation===&lt;br /&gt;
A good place to start is the source code documentation, which can be found here: [http://taspring.clan-sy.com/doxygen/ doxygen]&lt;br /&gt;
&lt;br /&gt;
An explanation on how the code is executed in game can be found in the [[Spring Engine Code]]&lt;br /&gt;
page.&lt;br /&gt;
&lt;br /&gt;
===Obtaining the Source===&lt;br /&gt;
&lt;br /&gt;
If you just want to look at the code, you can use [http://svn.berlios.de/viewcvs/taspring-linux/trunk/ HTTP based viewing of the repository]&lt;br /&gt;
&lt;br /&gt;
Another option is to manually download it along with the latest released version of the game. However, for serious developers, a better way would be to download the source straight from the subversion (SVN) repository. This will also allow you to make a patch out of the changes you make to the code, and send it to one of the developers with SVN access.&lt;br /&gt;
&lt;br /&gt;
More information about downloading from the svn repository is available at the &lt;br /&gt;
[http://developer.berlios.de/projects/taspring-linux BerliOS Project page]&lt;br /&gt;
Two good windows SVN clients are SmartSVN and TortoiseSVN.&lt;br /&gt;
&lt;br /&gt;
Is this still any good: [[CVS tutorial]] ? --[[User:SeanHeron|SeanHeron]] 00:07, 17 Apr 2006 (W. Europe Daylight Time)&lt;br /&gt;
&lt;br /&gt;
Almost certainly not if they&#039;re using SVN for version control now. --[[User:Egarwaen|Egarwaen]] 22:30, 22 Apr 2006 (W. Europe Daylight Time)&lt;br /&gt;
&lt;br /&gt;
===Learning C++===&lt;br /&gt;
You will need to know C++ to modify or understand Spring&#039;s source code. If you are interested in learning C++, see [[Learning_CPP]]&lt;br /&gt;
&lt;br /&gt;
However please note that badly designed code (code created by a C++ novice for example), will even if working not be included in the spring code. Spring is a large project, and therefore it is necessary to stay away from hack jobs and create general solutions to problems.&lt;br /&gt;
&lt;br /&gt;
===Modifying and Compiling the Source===&lt;br /&gt;
See [[Development_IDEs]]. You have either to use the SCons build system that is multi platform, or use the vcproj for building spring in Visual Studio 2003.&lt;br /&gt;
Currently the build is actively updated for Linux and for Visual Studio 2003. A list of required libraries as well as pre-built packages of these follows.&lt;br /&gt;
&lt;br /&gt;
*[http://www.boost.org Boost C++ library]&lt;br /&gt;
*[http://www.openal.org OpenAL Audio library]&lt;br /&gt;
*[http://glew.sf.net GLEW (OpenGL extension loading)]&lt;br /&gt;
*[http://www.winimage.com/zLibDll/ zlib + minizip]&lt;br /&gt;
*[http://www.libsdl.org SDL]&lt;br /&gt;
*[http://openil.sf.net DevIL (Image loading)]&lt;br /&gt;
*[http://www.freetype.org Freetype font rendering]&lt;br /&gt;
&lt;br /&gt;
*[http://msdn.microsoft.com/directx/sdk/ DirectX SDK] (Windows, Visual Studio C++ only)&lt;br /&gt;
*PlatformSDK (Windows, Visual Studio C++ Only)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*[http://taspring.clan-sy.com/phpbb/viewtopic.php?p=49257#49257 Pre-Built package of most of dependencies].&lt;br /&gt;
*[http://taspring.clan-sy.com/phpbb/viewtopic.php?p=56846#56846 Pre-Built boost for VS8].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*[http://prdownloads.sourceforge.net/dev-cpp/devcpp-4.9.9.2_setup.exe Dev-Cpp installer] / [MinGW] Though I would not advise mingw because you have to set it up your self.&lt;br /&gt;
&lt;br /&gt;
*[http://www.python.org/ftp/python/2.4.2/python-2.4.2.msi Python 2.4 installer]&lt;br /&gt;
&lt;br /&gt;
*[http://prdownloads.sourceforge.net/pywin32/pywin32-208.win32-py2.4.exe?download Python win32 extensions installer] &lt;br /&gt;
&lt;br /&gt;
*[http://prdownloads.sourceforge.net/scons/scons-0.96.1.win32.exe Scons installer]&lt;br /&gt;
&lt;br /&gt;
Grab and install the above programs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Set-Up&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Make sure C:\Python2.4 and C:\Dev-Cpp\bin are in your PATH environment variable. Make sure a MINGDIR environment variable with value C:\Dev-Cpp exists. (Change paths where appropriate.) Set environment variables by: Start -&amp;gt; Settings -&amp;gt; Control Panel -&amp;gt; System -&amp;gt; Advanced -&amp;gt; Environment variables (for Windows XP), Checkout the TA Spring SVN repository. You will also need the [http://spring.clan-sy.com/dl/spring-mingwlibs.exe Mingw / DevCPP libs] extract to /taspring.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Compiling&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Open a console (Start -&amp;gt; Run -&amp;gt; cmd.exe -&amp;gt; Run), cd /where you checked it out in the previous step, if you use checked it out on a different drive make sure to change drives with DriveLetter:&amp;lt;enter&amp;gt; first then type scons configure&amp;lt;enter&amp;gt;, followed by scons&amp;lt;enter&amp;gt;. Refer to scons --help for options that can be passed to scons configure. Wait, this will take a while. Copy over data files and stuff from official spring to the game dir (where spring.exe is created). Copy missing DLLs from mingwlibs/dll, Start developing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you are using Linux, refer to the [[SetupGuide]] to build Spring and get it running.&lt;br /&gt;
&lt;br /&gt;
==Development Suggestions==&lt;br /&gt;
&lt;br /&gt;
Before starting to make modifications to the source, take a look at the [[development guidelines]] which outlines some important things to think about. To find something interesting to work on, look at the list of [[example projects]]. You can also check the list of [[whois doing what]] to see what others are doing. If you do edit the code, please add [[Doxygen style comments]] to the code, which will then enhance the source code documentation.&lt;br /&gt;
&lt;br /&gt;
===How to get your code included===&lt;br /&gt;
If you create something that you think should be included in the official source tree, you can send an email to the development mailing list shown at [[Linux]] page. Sending your code in the form of a patch (also known as a .diff file), will make the chances of including it in the main code.&lt;br /&gt;
It&#039;s also considered standard practice to post one&#039;s modifications in the [http://taspring.clan-sy.com/phpbb/viewforum.php?f=12 development forum] and get feedback.&lt;br /&gt;
&lt;br /&gt;
==Multiplatform development==&lt;br /&gt;
Current development is done on the portable code only, located at [http://developer.berlios.de/projects/taspring-linux Berlios]&lt;br /&gt;
All current and future releases will be based on this code.&lt;br /&gt;
The current spring code is being developed on Windows and linux. A mac port is being worked on, as well as other unixes. &lt;br /&gt;
Use the mailing list listed on the [[Linux]] page to reach all developers (windows and linux). However if you have a feature request or bug report, the mantis bugtracker is probably a better way.&lt;br /&gt;
Development information about the portable code can be found here: [[MultiplatformSpring]]&lt;br /&gt;
&lt;br /&gt;
==Spring Engine TODO list==&lt;br /&gt;
There is a TODO list for developers who want to contribute to the engine itself:&lt;br /&gt;
[[SpringEngineTODO]]&lt;br /&gt;
&lt;br /&gt;
See [[Glossary]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]] [[Category:Source development]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Absolute_Annihilation/Units&amp;diff=1632</id>
		<title>Absolute Annihilation/Units</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Absolute_Annihilation/Units&amp;diff=1632"/>
		<updated>2006-05-02T20:11:26Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: /* Advanced Solar Generator */ - Mentioned that it takes almost no more metal&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the Practical AA Guide.  It has information such as ways to best use units, and things to avoid.  To answer more technical questions, such as exactly how much damage per second a weapon is capable of, or precise build costs of a particular unit, you may want to visit the [http://ta-aa.sourceforge.net/modweb Technical AA Guide].&lt;br /&gt;
&lt;br /&gt;
Basic descriptions, hints, tactics, and tips for Absolute Annihilation units. Level 1 units are those that can be built by basic factories, Commanders, and level 1 construction units. Level 2 units are those that can be built by advanced factories and level 2 construction units. Level 3 units are those that are built by Experimental Gantries.&lt;br /&gt;
&lt;br /&gt;
==Commander==&lt;br /&gt;
&lt;br /&gt;
You only get one Commander when you start the game, so he&#039;s worth special mention. Builds a small selection of things, but has a powerful nanolathe, allowing him to build quickly and assist other construction units. Packs a fairly nasty laser and the D-Gun, a weapon that drains tremendous amounts of energy but does absurd damage. Has a radar and sonar, and can cloak to hide from enemy units. (Though if he&#039;s not in a jamming field, they&#039;ll see him on radar anyway) Causes an absolutely massive explosion when killed. Moves slowly, but can travel underwater and climb very steep hills. He can also capture enemy units, but this is tricky to pull off, as an alert enemy will usually self-destruct them before he can finish.&lt;br /&gt;
&lt;br /&gt;
There are two main victory conditions in Spring - Commander Dies, Game Continues  (Continues) and Commander Dies, Game Ends (Ends). In Continues games, keeping your Commander alive is nice but not vital. This often leads to the Commander being used very offensively in the late-game, and can also lead to assorted lame early-game Commander tactics. In Ends games, keeping the Commander alive in the late-game against the many things that can kill him in a handful of shots becomes very important. He often spends most of his time assisting construction in the back of your base, under heavy jamming and AA cover.&lt;br /&gt;
&lt;br /&gt;
Your Commander provides an excellent defence against early-game assaults and rushes. Do &#039;&#039;not&#039;&#039;, however, use your D-Gun unless your Commander&#039;s death is imminent or you are faced with a large, tightly-packed swarm of units. It eats up 400 energy a shot, which is a hefty chunk for a level 1 economy, and destroys any reclaimable wreckage. His laser should be more than enough against small groups of raiders, and his main function against larger groups should be to chase them away or into groups of proper combat units. Whatever you do, &#039;&#039;&#039;do not&#039;&#039;&#039; D-Gun your own structures or units unless it&#039;s that or lose the game.&lt;br /&gt;
&lt;br /&gt;
The Commander has a small but constant auto-repair, which makes him better able to handle fire from raiders and sporadic artillery hits.&lt;br /&gt;
&lt;br /&gt;
==Factories==&lt;br /&gt;
&lt;br /&gt;
Factories are what let you construct mobile units. We don&#039;t describe individual factories in detail, as most are fairly boring. Level 1 factories build Level 1 units and Level 1 construction units. Level 1 construction units build Level 1 structures and the Level 2 factory for their type. So a Level 1 Construction KBot can build a Level 2 KBot Lab, but can&#039;t build a Level 2 Vehicle Plant. Level 2 factories build Level 2 units and Level 2 (&amp;quot;Advanced&amp;quot;) Construction Units. Level 2 Construction units build Level 2 structures and, in the case of Advanced Construction KBots, the Level 3 factory.&lt;br /&gt;
&lt;br /&gt;
All factories can only be built on land, except for Shipyards, Amphibious Facilities, and Seaplane Pads, which must be built in water. Hovercraft factories can be built on water or land. Amphibious Facilities are odd in that they can construct amphibious units of a wide variety of types. All other factories can only construct units of the appropriate type.&lt;br /&gt;
&lt;br /&gt;
==Resource Structures==&lt;br /&gt;
&lt;br /&gt;
Resource structures produce resources - metal and energy - for you to use to build other things.  Quite often, but not always, the winner of a game is whoever builds and successfully protects the most resource-generating structures.&lt;br /&gt;
&lt;br /&gt;
===Common Level 1 Resource Structures===&lt;br /&gt;
&lt;br /&gt;
====Metal Extractor====&lt;br /&gt;
&lt;br /&gt;
The basic metal-producing structure. These are fairly cheap, but require a little energy to operate, so your metal production will falter if you overtax your energy! They work a little differently from metal extractors in the original Total Annihilation. Each has a range, represented by the red circle around the extractor when you go to place it, over which they extract metal. The extractor&#039;s income is determined by the amount of metal within its range. On maps without well-defined metal patches, space out your extractors and avoid overlapping their ranges!&lt;br /&gt;
&lt;br /&gt;
There is also an underwater version of this structure.&lt;br /&gt;
&lt;br /&gt;
====Wind Generator====&lt;br /&gt;
&lt;br /&gt;
A cheap, fast-building energy-producing structure. Wind generators can be built anywhere on the map, but their output varies randomly based on wind strength. They also need to be space out, as they explode fairly violently and don&#039;t have much health. Always be sure to check the wind strength before going into a game, so you know whether or not to build wind generators!&lt;br /&gt;
&lt;br /&gt;
====Solar Generator====&lt;br /&gt;
&lt;br /&gt;
More expensive than a wind generator, solars are also a lot tougher. They give you +20 energy. They close up into a more armored form when attacked. This protects your investment and lets them take a fair amount of punishment from raiders, but they don&#039;t produce any energy when closed.&lt;br /&gt;
&lt;br /&gt;
====Tidal Generator====&lt;br /&gt;
&lt;br /&gt;
Tidal generators provide cheap, constant power on water maps. The exact amount of energy a tidal generator provides varies from map to map, though they usually provide about as much as a Solar Generator. Always check the Tidal Generator income before starting a game on a water map.&lt;br /&gt;
&lt;br /&gt;
====Metal Maker====&lt;br /&gt;
&lt;br /&gt;
Metal Makers convert energy to metal, allowing you to continue expanding your economy even once all available metal has been claimed. Each Arm Metal Maker consumes 80e and produces 1m, and each Core Metal Maker consumes 90e and produces 1m. When building metal makers, always use the [[Metal Maker AI]].&lt;br /&gt;
&lt;br /&gt;
There are also floating versions of this structure.&lt;br /&gt;
&lt;br /&gt;
====Advanced Solar Generator====&lt;br /&gt;
&lt;br /&gt;
The Advanced Solar Generator produces more energy than a regular Solar Generator, but costs correspondingly more energy, but only a little more metal. Only useful on maps with poor wind and no geothermal vents.&lt;br /&gt;
&lt;br /&gt;
====Geothermal Powerplant====&lt;br /&gt;
&lt;br /&gt;
These expensive energy-producing structures can only be built on geothermal vents, but are a very efficient way to expand your energy production once you&#039;ve got a basic economy going. Be careful about when you choose to build them, though, as the geothermal vents on most maps are placed in vulnerable locations.&lt;br /&gt;
&lt;br /&gt;
Geothermal powerplants, much like the level 2 Moho Geothermal Powerplants, have a nasty explosion. Be careful what you build around them since they will be a prime target of opportunity.&lt;br /&gt;
&lt;br /&gt;
Absolute Annihilation gives Arm increased output from geothermal powerplants.&lt;br /&gt;
&lt;br /&gt;
====Energy/Metal Storage====&lt;br /&gt;
&lt;br /&gt;
As the name indicates, these structures provide you with additional energy and metal storage. Since level 2 resource structures in AA come with energy/metal storage (as appropriate), these aren&#039;t very useful. The energy storage can be handy for stockpiling energy for a push to level 2, but you&#039;re probably better off building Metal Makers to convert it to metal. The metal storage is virtually useless, as you should always be using up your metal as fast as you can without stalling, &#039;&#039;however&#039;&#039; if you&#039;re reclaiming a lot of things, especially any commander wreckage laying about, you&#039;ll need these in order to make sure you receive all your metal.&lt;br /&gt;
&lt;br /&gt;
===Arm Level 1 Resource Structures===&lt;br /&gt;
&lt;br /&gt;
====Twilight====&lt;br /&gt;
&lt;br /&gt;
A basic metal extractor that can cloak for a mere ten energy. This provides some protection against raiders, but is not infallible. The enemy can still spot them if they get too close, and there are only so many places a metal extractor can be put. When they explode, they paralyze everything in a quite big radius, and can thus be used as mines or traps if necessary. Watch out for this when killing them if the enemy has some units nearby, as paralyzed units are easy prey.&lt;br /&gt;
&lt;br /&gt;
===Core Level 1 Resource Structures===&lt;br /&gt;
&lt;br /&gt;
====Exploiter====&lt;br /&gt;
&lt;br /&gt;
A basic metal extractor with more armor and an LLT on top. Excellent for claiming territory once your basic economy&#039;s on solid ground or if your  enemy likes raiding.&lt;br /&gt;
&lt;br /&gt;
Has extra armor against attacks by Peewees/AKs and Flashes/Instigators.&lt;br /&gt;
&lt;br /&gt;
===Common Level 2 Resource Structures===&lt;br /&gt;
&lt;br /&gt;
====Moho Mine====&lt;br /&gt;
&lt;br /&gt;
A bigger, better metal extractor. Takes more energy to operate, but extracts more metal from the same ground. These are typically the first things you&#039;ll want to build when upgrading to a level 2 economy, as you should easily be able to afford them with a mature level 1 economy. Start with your biggest and best-protected metal patches, and work out from there.&lt;br /&gt;
&lt;br /&gt;
There are also underwater versions of this structure.&lt;br /&gt;
&lt;br /&gt;
====Fusion/Cloakable Fusion====&lt;br /&gt;
&lt;br /&gt;
These structures provide a high, constant energy income. Like Solar and Wind generators, they can be built anywhere on the map. The Cloakable variant is identical, except that it can cloak (to make it harder for the enemy to find), is slightly more expensive, and produces slightly more energy. If you have no easily-defendable geothermal vents available, one of these (with accompanying flak cannons) should be next in your level 2 upgrade plan after you have a few Moho Mines online. A common newbie mistake is building a Fusion plant too early or building too many of them. Don&#039;t do this.&lt;br /&gt;
&lt;br /&gt;
Fusions have an impressive explosion, so be sure to space them out.&lt;br /&gt;
&lt;br /&gt;
There are also underwater versions of the regular Fusion plant.&lt;br /&gt;
&lt;br /&gt;
Absolute Annihilation gives Core slightly better energy output on their fusion plants.&lt;br /&gt;
&lt;br /&gt;
====Moho Metal Maker====&lt;br /&gt;
&lt;br /&gt;
A bigger, better metal maker. Takes much more energy to operate, but produces much more metal. On metal-poor maps (or once you&#039;ve upgraded all your Metal Extractors to Moho Mines), you&#039;ll want to produce these to expand your economy, powered by Fusion plants.&lt;br /&gt;
&lt;br /&gt;
There is also an underwater version of this structure.&lt;br /&gt;
&lt;br /&gt;
====Metal Generator====&lt;br /&gt;
&lt;br /&gt;
A slightly better metal maker that doesn&#039;t consume any energy. Fairly expensive and explodes quite violently, so space them out and protect them well.&lt;br /&gt;
&lt;br /&gt;
====Moho Geothermal Powerplant====&lt;br /&gt;
&lt;br /&gt;
A bigger, better geothermal plant. More efficient than a Fusion with comparable energy output, but produces a &#039;&#039;really&#039;&#039; big blast when destroyed. Build these only in safe areas or with ample defences against air and land units, as they make very tempting targets.&lt;br /&gt;
&lt;br /&gt;
Absolute Annihilation gives Arm a hefty boost to their output from Moho Geothermal Powerplants.&lt;br /&gt;
&lt;br /&gt;
====Advanced Fusion Reactor====&lt;br /&gt;
&lt;br /&gt;
A bigger, better fusion reactor. All Advanced Fusions come with a cloaking device.  Usually only worthwhile if you&#039;re pressed for space or need energy really badly in the very late-game. Defend it very well, as it makes an extremely tempting target, and produces a very big explosion when destroyed. Can only be built by Advanced Construction Vehicles.&lt;br /&gt;
&lt;br /&gt;
Absolute Annihilation gives Core a hefty boost to their Advanced Fusion Reactor&#039;s energy output.  However, this is somewhat offset by the greater cost a Core player must pay if he or she wants to cloak their reactor.&lt;br /&gt;
&lt;br /&gt;
===Arm Level 2 Resource Structures===&lt;br /&gt;
&lt;br /&gt;
====Prude====&lt;br /&gt;
&lt;br /&gt;
A bigger, better geothermal plant. Doesn&#039;t produce quite as much energy as the Moho Geothermal Powerplant, but is cheaper and explodes significantly less violently. A good choice if you have potentially-threatened geothermal vents, or geothermal vents near other vital infrastructure.&lt;br /&gt;
&lt;br /&gt;
===Core Level 2 Resource Structures===&lt;br /&gt;
&lt;br /&gt;
====Moho Exploiter====&lt;br /&gt;
&lt;br /&gt;
A more heavily-armored Moho Mine with a built-in heavy laser and rocket battery. Looks just like a regular Moho Mine until the enemy comes calling, then deploys its weapons and armor and goes to town. These are a little expensive for general use, but great on or near the front lines.&lt;br /&gt;
&lt;br /&gt;
====Behemoth====&lt;br /&gt;
&lt;br /&gt;
A bigger, better geothermal plant with plasma cannons grafted on. Doesn&#039;t produce as much energy as the Prude and costs more, but can prove a nasty surprise for enemy assault forces and raiders, especially when near a couple Exploiters. Behemoths have the longest range of any structure except for LRPC/RFLRPCs.&lt;br /&gt;
&lt;br /&gt;
==Defensive Structures==&lt;br /&gt;
&lt;br /&gt;
Defensive structures are buildings that help protect your base. Most have guns, or are designed to help buildings with guns. Most don&#039;t do anything else, and are fairly well-armored. However, don&#039;t expect them to win you the game alone! At best, defensive structures will stop minor attacks and slow down major attacks until you can get your own combat units into position to respond.&lt;br /&gt;
&lt;br /&gt;
===Radar/Sonar/Jammer===&lt;br /&gt;
&lt;br /&gt;
Though unarmed, the humble Radar Tower is possibly the most important defensive structure, and one that less experienced players can easily underestimate.  It shows enemy units within range and unobstructed by terrain as radar dots.  This means that instead of noticing your opponent is trying to attack the back of your base when the back of your base starts blowing up, you notice when a bunch of dots head that way.  You can then move your mobile defensive units - and I hope you have some - to intercept the attack, and start beefing up your fortifications. Even more importantly, they let you watch the general pattern of enemy movement, giving you a rough idea of what your foe&#039;s up to and where he&#039;s massing units and defences, which can be invaluable when placing defences of your own or planning an attack.&lt;br /&gt;
&lt;br /&gt;
Longer range units will fire at enemy units shown on radar before they can see them.  The accuracy of a unit is reduced when firing at a target that&#039;s only visible as a radar dot, so these shots will often miss. Radar towers can see further than other units, so building them right next to other defensive structures may improve these structures&#039; line of sight, allowing them to fire more accurately at units a little further away.  Radar towers are cheap and fragile and often an early casualty of an enemy attack, so it doesn&#039;t hurt to build spares.&lt;br /&gt;
&lt;br /&gt;
In the early game on spread out maps, consider building radar towers to &#039;protect&#039; your expansion.  Instead of trying to build defensive structures everywhere, build good radar tower coverage and position your mobile forces to easily intercept attacking forces.&lt;br /&gt;
&lt;br /&gt;
Radar is not infallible. In addition to being blocked by terrain, it can be countered by radar jamming towers and units, which prevent radar detection of any units within their area of effect. There are also specialized late-game long-range weapons that quickly, cheaply, and efficiently destroy any radar or jammer towers within their area of effect. Finally, some units (such as the Arm Gremlin tank or Core Vamp fighter) are &amp;quot;Stealthy&amp;quot;, and cannot be detected by radar.&lt;br /&gt;
&lt;br /&gt;
Sonar Stations function similarly to Radar Towers, but can only detect units that are in the water.&lt;br /&gt;
&lt;br /&gt;
There are advanced versions of all of these structures available with a higher cost, more HP, and a longer effective range. There are also floating radar towers that can be built on water.&lt;br /&gt;
&lt;br /&gt;
===Dragon&#039;s Eye===&lt;br /&gt;
&lt;br /&gt;
The Dragon&#039;s Eye, like the Radar Tower, provides you with advance warning of threats to your base. Dragon&#039;s Eyes have a long visual range, can be built underwater, and are stealthy (cannot be detected by radar) and can cloak (hiding themselves from visual detection) for a modest -10e cost. Building Dragon&#039;s Eyes around the perimeter of your base near the edge of the sight range of your other defensive structures can help them engage incoming enemies more effectively and gives you information about &#039;&#039;what&#039;&#039; is attacking your base.&lt;br /&gt;
&lt;br /&gt;
===Dragon&#039;s Teeth/Fortification Walls===&lt;br /&gt;
&lt;br /&gt;
These defensive structures aren&#039;t really structures. They do nothing but block the movement of enemy units, but are very cheap and fast to build. They can take a lot of damage, but can be reclaimed by construction units. Heavy units, like [[#Bulldog|Bulldogs]] or [[#Goliath|Goliaths]], can drive over Dragon&#039;s Teeth, destroying them in the process.&lt;br /&gt;
&lt;br /&gt;
Commanders and construction planes have a speed advantage in building these, as construction bots and vehicles do a small animation whenver they start or finish constructing something.  This slows them down significantly on such cheap structures.&lt;br /&gt;
&lt;br /&gt;
These can be used in lines to block an enemy advance.  This is useful to prevent fast raiding units from simply rushing past your defences to attack key buildings in the back of your base.  They can also be used in small lines or squares surrounding a defensive structure such as a [[#Sentinel/Gaat_Gun_Heavy_Laser_Tower|heavy laser tower]].  This can provide some protection from small units with direct fire weapons such as the [[#Flash/Instigator|Flash tank]].&lt;br /&gt;
&lt;br /&gt;
Floating Dragon&#039;s Teeth can also be built on water.&lt;br /&gt;
&lt;br /&gt;
One interesting use of Dragon&#039;s Teeth is terrain modification. DTs have a substantially higher &amp;quot;slope tolerance&amp;quot; (the maximum slope they can be built on) than most structures. They can be reclaimed to recover much of the metal that went into their construction. This makes them excellent for &amp;quot;clearing terrain&amp;quot; for building other structures. Just build a single DT or a small block of them, reclaim them, and build on the now-flattened land! This is great for putting up LLTs on hills, but can also be used to place Guardians/Punishers in unexpected locations. (Tip from Felix the Cat)&lt;br /&gt;
&lt;br /&gt;
===Level 1 Defensive Structures===&lt;br /&gt;
&lt;br /&gt;
====Light Laser Tower====&lt;br /&gt;
&lt;br /&gt;
Very cheap defensive structure that you should build early and often.  Will stop those pesky players who like to send small squads a minute or two in the game from doing damage to your economy that you may never recover from.  This unit is good against light, fast ground forces, but is outranged by anything heavier.  It is weak against air, but does hit sometimes.  Often abbreviated as &amp;quot;LLT&amp;quot;. They&#039;re good for covering mostly-blocked approaches to your base (like hills), as they can kill most light raiding forces.&lt;br /&gt;
&lt;br /&gt;
A good way to defend against early to mid-game attacks is to build 3 LLTs in a loose cluster at the top of any hills or in choke points.  Then build a couple of radar towers behind them to help spot enemies.&lt;br /&gt;
&lt;br /&gt;
Throughout any game, even to the end, LLTs should be built in key areas of your base.  They will come in handy in case an enemy slips through your outer perimeter.&lt;br /&gt;
&lt;br /&gt;
====Beamer/Heavy Light Laser Turret (HLLT)====&lt;br /&gt;
&lt;br /&gt;
Designed as a more permanent defensive structure for highly valuable inner-base areas as well as mid-game frontline duty.  Beamers shoot a constant beam (get it? eh? eh?) which causes steady damage.  This makes it ideal for dealing with attacks from both heavier units like Hammers/Thuds or much lighter units like Fleas, where it can instantly move on to the next target when the first one is destroyed, rather than waiting for a lengthy cool-down period.  These also have a slightly longer range than vanilla LLTs.&lt;br /&gt;
&lt;br /&gt;
The HLLT, on the other hand, is pretty much just a beefed up LLT.  It has two turrets, allowing it to target two enemies simultaneously or concentrate on a single one.  They have more than their fair share of hit points.&lt;br /&gt;
&lt;br /&gt;
====Defender/Pulveriser Missile Tower====&lt;br /&gt;
&lt;br /&gt;
Very cheap defensive structure. It can provide protection against early air rushes. Does not need to be built as early as LLTs, as building an air force is slower. Will take out level 1 fighters and level 1 gunships easily.  Effective against level 1 bombers, but several are needed if the opponent attacks in numbers. Not a cost-effective defence against level 2 air, and quite easy to destroy. &#039;&#039;Will not shoot at land units.&#039;&#039; Often abbreviated as MT.&lt;br /&gt;
&lt;br /&gt;
There are also floating versions that can be built on water.&lt;br /&gt;
&lt;br /&gt;
====Packo/SAM Anti-air Turret====&lt;br /&gt;
&lt;br /&gt;
These are much more durable than standard missile towers and fire homing missiles quite rapidly.  They are good at taking out large number of lighter planes quickly, making them a very effective fighter swarm counter.  They will struggle to kill level 2 gunships and bombers unless used in large numbers, making flak cannons and level 2 missile towers a better choice against these units.  The Packo can retract into a shielded underground state, largely protecting it from ground attack.  The SAM just has more hitpoints.&lt;br /&gt;
&lt;br /&gt;
====Chainsaw/Eradicator Anti-bomber Turret====&lt;br /&gt;
&lt;br /&gt;
Moderately expensive heavy-duty version of the missile towers.  Fires a rapid stream of missiles. Quite tough to destroy and can take out large numbers of level 1 air units. Does ok against level 2 air units, but Flak cannons are a better option by this point as they&#039;re much more effective and not much more expensive. &#039;&#039;Will not shoot at land units.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Besides Mercury/Screamer towers, these are the longest-range anti-air units you can build.&lt;br /&gt;
&lt;br /&gt;
These buildings do extra damage against bombers.&lt;br /&gt;
&lt;br /&gt;
====Sentinel/Gaat Gun Heavy Laser Tower====&lt;br /&gt;
&lt;br /&gt;
Moderately expensive defensive structure.  Longer range and harder hitting than a LLT, can do serious damage to even level 2 attackers.  Effective against land but not air.  Can be outranged by longer-ranged level 2 ground units. Often abbreviated HLT. These are vital for protecting your expansions and base in the mid-game, as they can destroy massive swarms of L1 units. They require energy to fire, though, so be sure to have ample power available.&lt;br /&gt;
&lt;br /&gt;
There are also floating versions that can be built on water.&lt;br /&gt;
&lt;br /&gt;
====Guardian/Punisher Plasma Cannon====&lt;br /&gt;
&lt;br /&gt;
Expensive plasma cannons. Quite a long range and pack a fair bit of punch. Many games begin with an expansion phase with players marking out territory. Once the territories start to clash in the middle, you can almost guarantee that one or both players will start building plasma cannons.  These can then kill all the LLTs and HLTs in the opponent&#039;s front line. Once a cannon is completed it will start shelling any enemy forces that are within range. It can be set to &amp;quot;High Fire&amp;quot;, which causes it to fire more damaging but highly inaccurate shells with a large area of effect in a high arc, or &amp;quot;Low Fire&amp;quot;, which causes more direct, more accurate, but less powerful shells to be fired.&lt;br /&gt;
&lt;br /&gt;
The normal reaction is then for the enemy to rush at the Guardian with all available nearby units. An inexperienced player may find he has not adequately protected his Guardian with LLTs, HLTs, or mobile forces, and will then lose a unit that cost a large amount of resources to build. More experienced players learn to build adequate protection or place their Guardian in an established position. This allows them to to devastate the enemy&#039;s fixed defences and kill many of the units sent to take out the Guardian, yielding a net metal gain.  In some circumstances it may be better to retreat from the enemy&#039;s Guardian position and quickly tech to level 2 or build a small force of Thunders/Shadows for a definitive assault rather than losing units in a futile counter attack.&lt;br /&gt;
&lt;br /&gt;
Another option is to construct a radar jammer near your front lines, which prevents the Guardian from auto-targetting them until something actually sees the units. This allows you to construct a Guardian of your own and return fire.&lt;br /&gt;
&lt;br /&gt;
====Anenome/Jellyfish====&lt;br /&gt;
&lt;br /&gt;
The Anenome/Jellyfish are the only land-based anti-submarine weapon in AA. They launch depth charges that can damage submarines and submersed amphibious units. As land structures, most submarines cannot attack them. Their very short range means that they have to be built on the very edge of your coast, and are not a good general-purpose anti-submarine solution.&lt;br /&gt;
&lt;br /&gt;
These do extra damage against amphibious units, and are therefore a good choice for defending a shoreline against a &amp;quot;fully submerged&amp;quot; opponent.&lt;br /&gt;
&lt;br /&gt;
====Harpoon/Urchin====&lt;br /&gt;
&lt;br /&gt;
These floating torpedo launchers provide close-range anti-submarine/anti-ship defence. They can only be built in water, and can only attack units in the water. They&#039;re effective against raiders and submarines, but don&#039;t expect them to do much against a serious surface vessel assault, as even the humble plasma cannon on the Crusader/Enforcer outranges them by a significant margin. They are very effective against amphibious units, which move slowly and are unable to fire back.&lt;br /&gt;
&lt;br /&gt;
Cannot attack Hovercraft.&lt;br /&gt;
&lt;br /&gt;
===Level 2 Defensive Structures===&lt;br /&gt;
&lt;br /&gt;
====Flakker/Cobra====&lt;br /&gt;
&lt;br /&gt;
Late-game anti-aircraft defence, flak cannons are one of the two replacements for MTs. They&#039;re relatively short-ranged, but do a lot of damage, fire quickly, and have a massive area of effect. They&#039;re incredible against gunships, which tend to cluster, allowing the flak cannon to damage or destroy several with a single shot. Put these near vital late-game structures to prevent your enemy from swarming and destroying them with gunships. &#039;&#039;Flak cannons cannot attack ground units&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
There are also floating versions that can be built on water.&lt;br /&gt;
&lt;br /&gt;
====Mercury/Screamer====&lt;br /&gt;
&lt;br /&gt;
These upgraded MTs provide late-game anti-aircraft defence. Their guided missiles have a very long range - roughly half that of a VLRPC, do enough damage to kill almost any plane, and have an impressive blast radius.  Very good against level 2 bombers and fighters. &#039;&#039;Cannot attack ground units.&#039;&#039;  These units fire quite slowly, so should not be relied on as a primary anti air defence.&lt;br /&gt;
&lt;br /&gt;
====Annihilator/Doomsday Machine====&lt;br /&gt;
&lt;br /&gt;
The big brother of the HLT, these structures fill the same role in the late game. Their weapon, affectionately referred to as the &amp;quot;Blue Laser of Death&amp;quot;, is slow-firing but capable of destroying most units in a single shot. They have an impressive range, but are still outranged by several kinds of artillery, so don&#039;t expect them to create an unbreakable defence!&lt;br /&gt;
&lt;br /&gt;
Assaulting a line of BLoDs in the late game can be challenging, especially if they&#039;re properly supported by mobile units and anti-air. A good choice is to exploit their slow refire time and throw a swarm of fast, light, cheap units (like Flashes/Instigators, or even Jeffies/Weasels or Peewees/AKs) at them first, then hit them with longer-ranged units (Sharpshooters, Morties, Penetrators, Vanguards, Catapults, Tremors, etc.) while they&#039;re chewing on those. If the enemy&#039;s neglected to give his BLoDs proper AA support, gunships or bombers can be very effective. If all else fails, a barrage of Cruise Missiles will probably work.&lt;br /&gt;
&lt;br /&gt;
====Ambusher/Toaster====&lt;br /&gt;
&lt;br /&gt;
The big brother of the Guardian. They have a bit more range and a bit more firepower.  When not in use they fold away into a concrete bunker.  This allows them to survive much larger amounts of damage, making them virtually immune to long-range artillery or nuclear weapons.&lt;br /&gt;
&lt;br /&gt;
====Moray/Lamprey====&lt;br /&gt;
&lt;br /&gt;
Heavier versions of the Harpoon/Urchin. They do more damage and have a slightly longer range, but are still largely ineffective against surface vessels.  These structures are totally under water, and so can only be targeted by depth charges.&lt;br /&gt;
&lt;br /&gt;
Cannot attack Hovercraft.&lt;br /&gt;
&lt;br /&gt;
====Big Bertha/Intimidator====&lt;br /&gt;
&lt;br /&gt;
These massive plasma cannons, often called Very Long-Range Plasma Cannons (VLRPCs)  can deliver large amounts of firepower across a significant portion of even the largest maps. Their extreme range and destructive power are compensated for by their poor accuracy, low health, and high energy cost per shot. &lt;br /&gt;
&lt;br /&gt;
At first these appear to be a game ending weapon. They are capable of attacking pretty much anywhere on many maps, and so could, in theory, destroy an entire base. In practice, these seem to take a long time to do significant damage.  Many of the more critical structures, such as factories or Fusion Plants can survive fire from a VLRPC for long enough for a construction unit to repair the damage. Others can simply be rebuilt once the cannon&#039;s moved on to other targets.&lt;br /&gt;
&lt;br /&gt;
Sustained fire from several of these cannons over a base acts as an effective siege mechanism.  It makes it much harder to build, as anything under construction is quite vulnerable to being destroyed.  Construction units are also quite vulnerable, and many can be taken out at once by a lucky hit.  This can gradually tilt the balance of economic power in favour of a player with the VLRPC, even with the hefty cost of each shot.&lt;br /&gt;
&lt;br /&gt;
Once one of these cannons starts to fire, there are several possible replies.  An aggressive opponent will normally search for the VLRPC doing the damage, probably with scout aircraft.  Observing the direction the shells are coming from will give a reasonable indication of where to look.  If the cannon has been built without considerable protection, it will normally be attacked and destroyed. If it is heavily protected, the opponent may feel that they must attack anyway and lose a lot of units for nothing. Other options include building your own VRLPC (or better still half a dozen) scattered throughout your base to respond to your enemy&#039;s attacks.  Some players may try building a [http://taspring.clan-sy.com/w/index.php?title=Absolute_Annihilation/Units#Deflector deflector] to nullify the effect of the VRLPC, but this can be prohibitively expensive, especially if you try to carpet your entire base.  Building [http://taspring.clan-sy.com/w/index.php?title=Absolute_Annihilation/Units#Radar.2FSonar.2FJammer radar jammers] can be more useful, as these cannons won&#039;t fire at something they can&#039;t see.  Even with a jammer up, a few cheap air scouts will usually reveal plenty of targets for these cannons to fire at, so they typically have to be backed up with a Mercury/Screamer or two and some smaller MTs near the edges of your base.&lt;br /&gt;
&lt;br /&gt;
====Vulcan/Buzzsaw====&lt;br /&gt;
&lt;br /&gt;
A rapid-fire VLRPC that&#039;s even less accurate than its single-shot cousins. Definitely an [[Uberweapon]]. Like the Krogoth and Orcone, there&#039;s no reason to build one of these in most games, unless all other porc-cracking options have failed. It drains energy like mad, but its high damage, absurd rate of fire, and insane scatter will destroy all but the most hardened bases. Give it a lot of support, as your opponent &#039;&#039;will&#039;&#039; be coming to kill it as soon as it opens fire on him.&lt;br /&gt;
&lt;br /&gt;
====Protector/Fortitude====&lt;br /&gt;
&lt;br /&gt;
The Protector/Fortitude are purely defensive structures. They have no offensive weapons, but can intercept any nuclear weapons whose trajectories cross their operating range, which is displayed as a circle on your radar, as long as they have ammo. A must in most games as soon as your level 2 economy is on a solid footing, even if just as a precaution against a last-ditch strike by your enemy. In a Commander Dies, Game Ends game, you &#039;&#039;will&#039;&#039; want to keep your Commander well inside the range of a Protector/Fortitude at all times.&lt;br /&gt;
&lt;br /&gt;
You need to construct ammo stores for this weapon. This is done using the normal construction interface. Standard practice is to queue up at least 50 rounds while it&#039;s being built and then leave it. If you ever have to intercept more than 50 nuclear missiles, you&#039;re doing something wrong.&lt;br /&gt;
&lt;br /&gt;
Be sure to give these good AA cover. Standard practice when launching a nuke strike is to send a mob of Phoenix/Hurricanes to kill the enemy&#039;s anti-nuke, then follow up with a nuke volley.&lt;br /&gt;
&lt;br /&gt;
====Retaliator/Silencer====&lt;br /&gt;
&lt;br /&gt;
The Retaliator/Silencer are more offensive weapons than defensive weapons. They can fire nuclear missiles (which must be constructed before launch) all the way across any map, each of which can destroy a substantial portion of an enemy base. Very few things (such as specialized structures that are in an armoured state by default) can survive a nuke blast, though the missiles can be easily intercepted by Protectors/Fortitudes.&lt;br /&gt;
&lt;br /&gt;
====Detonator/Catalyst====&lt;br /&gt;
&lt;br /&gt;
These ballistic missile launchers fire EMP missiles that paralyze units caught inside the blast. Their projectiles cannot be intercepted, making them very useful for assaulting heavily-fortified positions. Like nukes and anti-nukes, the Detonator/Catalyst must build each shot before it can be used.&lt;br /&gt;
&lt;br /&gt;
====Juno====&lt;br /&gt;
&lt;br /&gt;
The Juno is a much more limited ballistic missile launcher. Its missiles cannot be intercepted, but do no damage to normal units. They will, however, destroy all radar, sonar, or radar/sonar jammer units within their area of effect, and will also destroy Dragon&#039;s Eye cameras.&lt;br /&gt;
&lt;br /&gt;
====Deflector====&lt;br /&gt;
&lt;br /&gt;
The Deflector is one of the few proper counters to VLRPCs, other than extensive jamming and AA. It generates a field that deflects most weapons fire targetted in or through a small area, but costs energy per shot deflected. It can deflect plasma shells, gauss shells, and EMG fire, but cannot deflect lasers, missiles, flamethrowers, lightning shots, or bombs. The field affects all fire directed into it from outside, but &#039;&#039;will not&#039;&#039; affect any shots fired from inside the field. This means that your units can safely fire out, but also that the field will be ineffective if the enemy manages to get inside.&lt;br /&gt;
&lt;br /&gt;
While it can provide protection against VLRPC and RFVLRPC fire, keep in mind that the shells still have to land &#039;&#039;somewhere&#039;&#039;. And that &amp;quot;somewhere&amp;quot; will likely be on top of any structures you have near the edge of the field.  And if you run out of energy they stop working; a large volume of weapon fire can overwhelm your energy sources and and then get through.&lt;br /&gt;
&lt;br /&gt;
VLRPCs cannot be safely placed close to a Deflector. They&#039;re tall enough that the deflector will actually catch and deflect the shot as it leaves the barrel, making the VLRPC even more incredibly inaccurate than usual. Deflectors are best used for protecting defensive structures whose weapons are unaffected by it (like lasers, missile towers, or flak cannons), resource-generating structures, factories, or your Commander.&lt;br /&gt;
&lt;br /&gt;
====Pitbull/Viper====&lt;br /&gt;
&lt;br /&gt;
Shorter-ranged pop-up weapons, the Arm Pitbull fires a line-of-sight gauss projectile and the Core Viper fires heavy rockets. These structures fill about the same role as an LLT in the late-game and can, if you have the resources, make good support for a BLoD or act as replacements for destroyed HLTs. A cluster of these structures packed into a chokepoint or lined up in front of some Annihilators/Doomsday Machines can do quite a lot of damage. When not in use, they fold away into a concrete bunker, making them effectively immune to long-range artillery and even nuke strikes.&lt;br /&gt;
&lt;br /&gt;
===Core Level 2 Defence Structures===&lt;br /&gt;
&lt;br /&gt;
====Inferno====&lt;br /&gt;
&lt;br /&gt;
Wide-arc flamethrower.  Good against swarms or for use in conjunction with several other Infernos against bigger units, or simply as one more extra support turret in a massively fortified front line.&lt;br /&gt;
&lt;br /&gt;
==Utility Structures==&lt;br /&gt;
&lt;br /&gt;
They don&#039;t, strictly speaking, help you kill your enemy, make more units to kill your enemy, or prevent your enemy from killing your base, but these structures can be important all the same.&lt;br /&gt;
&lt;br /&gt;
===Targeting Facility===&lt;br /&gt;
&lt;br /&gt;
This Level 2 structure makes your fire against targets that can be seen only on radar substantially more accurate. It&#039;s fairly costly and takes a reasonably hefty chunk of energy to operate, but can be very useful for bombarding your enemy&#039;s defences from outside of their effective range.&lt;br /&gt;
&lt;br /&gt;
There is also a floating version of this structure, which is very useful for naval battles, as engagements between surface ships will often happen without either side ever seeing the other.&lt;br /&gt;
&lt;br /&gt;
===Air Repair Pad===&lt;br /&gt;
&lt;br /&gt;
This Level 2 structure makes maintaining a large fleet of aircraft much easier. When switched on, it consumes a small amount of energy (250), and aircraft with &amp;quot;patrol&amp;quot; or &amp;quot;attack&amp;quot; orders will, when they&#039;re down to a certain health percentage, seek out an open air repair pad, land there, get repaired, and then return to carrying out their orders. The health percentage can be configured in the unit&#039;s orders panel.&lt;br /&gt;
&lt;br /&gt;
==KBots==&lt;br /&gt;
&lt;br /&gt;
KBots are units that use legs to move. They&#039;re generally more lightly armed than vehicles and can take less damage, but are cheaper, build faster, and can cross rough terrain and climb hills much better. KBots are generally good for massed assaults or surprise attacks over difficult terrain. The exception is &amp;quot;Level 3&amp;quot; KBots, which have incredibly powerful weapons and can take absurd amounts of damage.&lt;br /&gt;
&lt;br /&gt;
===Common Lvl 1 KBots===&lt;br /&gt;
&lt;br /&gt;
For many lvl1 units, there&#039;s no significant difference between the Arm and Core versions. These units get listed here.&lt;br /&gt;
&lt;br /&gt;
====Peewee/AK====&lt;br /&gt;
&lt;br /&gt;
Small cheap infantry KBot.  The die very quickly to any significant opposition, but are speedy and can see farther than other L1 KBots.  Can be used for scouting, [http://taspring.clan-sy.com/wiki/Swarming swarming] and as cannon fodder mixed with more valuable units. Good for early attacks on an enemy base, but they become obsolete very quickly.&lt;br /&gt;
&lt;br /&gt;
====Rocko/Storm====&lt;br /&gt;
&lt;br /&gt;
Slightly more expensive KBot with a long-range rocket launcher. Together with Hammers/Thuds, Rockos/Storms will tend to form the backbone of an early KBot force. Their rockets are direct-fire, so they can&#039;t fire over other units. Position them carefully, as they will occasionally try, damaging your units in the process! (Using a line-movement command works very nicely for them) Their long range lets them get off at least a couple shots at most L1 defensive structures. They outrange LLTs, but cannot fire at them effectively without spotters.&lt;br /&gt;
&lt;br /&gt;
====Hammer/Thud====&lt;br /&gt;
&lt;br /&gt;
The Hammer and Thud fire small plasma shells, which lets them fire over other units and small terrain obstructions.  This means that most units in a mass can fire, whereas for many other units only the front line can fire. They can also fire over wreckage, Dragon&#039;s Teeth, and other obstructions. Hammers and Thuds are best used as early heavy main battle units.&lt;br /&gt;
&lt;br /&gt;
====Jethro/Crasher====&lt;br /&gt;
&lt;br /&gt;
Fires guided missiles and can only attack air units.  Basic level 1 mobile anti-air. Pretty much a walking missile tower.&lt;br /&gt;
&lt;br /&gt;
===Arm Lvl 1 KBots===&lt;br /&gt;
&lt;br /&gt;
====Warrior====&lt;br /&gt;
&lt;br /&gt;
Costs a fair bit more than any other level KBot and is very slow. Has a lot of health and two fast-firing lasers. The Warrior is the Arm&#039;s L1 anti-swarm unit, and does more damage to (and takes less damage from) L1 swarm units.&lt;br /&gt;
&lt;br /&gt;
====Flea====&lt;br /&gt;
&lt;br /&gt;
Super cheap.  Very fast.  And dies if you yell at it.  Possibly try building a few of them first on large maps and sending a few towards your opponents.  Their speed and cheapness may catch them off guard if you are lucky.&lt;br /&gt;
&lt;br /&gt;
===Core Lvl 1 KBots===&lt;br /&gt;
&lt;br /&gt;
The Core has no unique Level 1 KBots.&lt;br /&gt;
&lt;br /&gt;
===Common Lvl 2 KBots===&lt;br /&gt;
&lt;br /&gt;
====Decoy Commander====&lt;br /&gt;
&lt;br /&gt;
Useless in Commander Dies, Game Continues games. In Commander Dies, Game Ends games, these units are very handy. They can be used to lure the enemy into making futile or ill-conceived attacks in hope of killing your Commander and wiping out your army. Does absolutely nothing else, but has a number of features to make it a more convincing decoy.&lt;br /&gt;
&lt;br /&gt;
====Rector/Necro====&lt;br /&gt;
&lt;br /&gt;
The stealthy Rector and Necro can bring other units back to life, provided their wreckage hasn&#039;t taken too much damage. While this is costly, it can allow you to recover from a well-executed attack by pressing the reanimated corpses of the enemy&#039;s attack force into your service to supplement your own army.&lt;br /&gt;
&lt;br /&gt;
====Invader/Roach====&lt;br /&gt;
&lt;br /&gt;
The humble Invader and Roach have no purpose in life beyond crawling towards the enemy extremely slowly and exploding extremely violently. These units can climb very steep hills and are amphibious, allowing them to pop up from unexpected directions. They die very easily, but if you can slip them past the enemy&#039;s defenses, they&#039;ll do a lot of damage to his economy. Their explosions are significantly more destructive if you self-destruct them.&lt;br /&gt;
&lt;br /&gt;
====Infiltrator/Parasite====&lt;br /&gt;
&lt;br /&gt;
A stealthy, cloakable KBot, the Infiltrator and Parasite are totally unarmed. They&#039;re good for finding out what your enemy&#039;s up to. They have the ability to create a medium sized paralysing explosion when they self destruct, making them useful for getting past an enemy&#039;s defences. They also have a nanolathe, which can be used to reclaim wreckage, Dragon&#039;s Teeth, or slow enemy construction projects, though this will probably reveal your spy&#039;s location very quickly..&lt;br /&gt;
&lt;br /&gt;
===Arm Lvl 2 KBots===&lt;br /&gt;
&lt;br /&gt;
====Fido====&lt;br /&gt;
&lt;br /&gt;
A very average level 2 KBot. Average cost, range, armour, speed, and firepower.  Versatile but not particularly good at any one thing. Not worth building in large numbers. It may be worth having a few to support other KBots.&lt;br /&gt;
&lt;br /&gt;
====Zipper====&lt;br /&gt;
&lt;br /&gt;
Fast [http://taspring.clan-sy.com/wiki/Swarming swarm] unit with a short range direct fire weapon.  Masses of these can survive surprising amounts of fire to do damage to undefended areas of a base. Seem to be able to push level 1 units out of the way, and are also very good at finding their way through wreckage fields due to their small size.&lt;br /&gt;
&lt;br /&gt;
====Maverick====&lt;br /&gt;
&lt;br /&gt;
Moderately expensive Kbot packing two gauss guns with medium range. Not particularly durable or fast, but if you can get it in range of a target it should do quite a lot of damage. Best against L1 units, which it destroys with ease. The Maverick also auto-repairs in combat and has a longer visual range than most units.&lt;br /&gt;
&lt;br /&gt;
====Zeus====&lt;br /&gt;
&lt;br /&gt;
Slow and tough. It has a short-ranged but powerful lightning cannon.  In numbers they can take and dish out a lot of damage, and are excellent defence-busters in the mid-to-late game.&lt;br /&gt;
&lt;br /&gt;
====FatBoy====&lt;br /&gt;
&lt;br /&gt;
Slower and tougher than the Zeus, the Fatboy carries a massive plasma cannon with a long range, high damage, and large area of effect. Very good at supporting swarms of Zeuses, but watch what they&#039;re shooting at to make sure they don&#039;t blow up your own units.&lt;br /&gt;
&lt;br /&gt;
====Pelican====&lt;br /&gt;
&lt;br /&gt;
This unique amphibious KBot travels quickly over the surface of the water. It packs a direct-fire laser for use against ground units and a homing missile launcher for use against aircraft.&lt;br /&gt;
&lt;br /&gt;
====Eraser====&lt;br /&gt;
&lt;br /&gt;
A mobile radar jammer. Useful for keeping the enemy from noticing an attack force until it&#039;s too late.&lt;br /&gt;
&lt;br /&gt;
====FARK====&lt;br /&gt;
&lt;br /&gt;
The Fast Assist Repair KBot can&#039;t build much, but is cheap and has a good nanolathe. This makes swarms of FARKs excellent assistants for primary construction units. FARKs are also fairly small and fast, which makes them better at supporting combat units than regular construction units.&lt;br /&gt;
&lt;br /&gt;
====Sharpshooter====&lt;br /&gt;
&lt;br /&gt;
One of the nastiest Arm Lvl2 Kbots, the Sharpshooter is stealthy &#039;&#039;and&#039;&#039; can cloak, making it very hard to spot when it&#039;s not firing. Even when firing, it can be tough to find, as its weapon is invisible, but has a very distinctive noise. Its weapon is very slow-firing and long-range, and does absurd amounts of damage. It does even more absurd damage to Krogoths, Orcones, and Juggarnauts, making swarms of Sharpshooters an excellent counter against Uberweapons.&lt;br /&gt;
&lt;br /&gt;
====Recluse====&lt;br /&gt;
&lt;br /&gt;
A spider KBot that can climb up almost anything.  Can cause nightmares for unprepared opponents who don&#039;t think land units will be able to cross a steep terrain barrier, and as a result don&#039;t build any suitable defence in that direction.  It fires heavy rockets that aren&#039;t particularly fast or accurate.&lt;br /&gt;
&lt;br /&gt;
Sometimes you can climb these halfway up a steep slope near some enemy units and stop.  The defenders units won&#039;t be able to shoot you because they would have to do so through the rock, but you can lob rockets up and over.&lt;br /&gt;
&lt;br /&gt;
====Spider====&lt;br /&gt;
&lt;br /&gt;
Another spider KBot, similar to the Recluse but smaller, faster, and armed with a paralysing weapon. Can be a nightmare even when not using it&#039;s wall-climbing ability to attack a base from an undefended angle, as it can prevent your units from effectively fighting the things that are killing them.&lt;br /&gt;
&lt;br /&gt;
====Hedgehog====&lt;br /&gt;
&lt;br /&gt;
A mobile anti-nuke. Useful for protecting a force of ground units dispatched to assault a nuclear missile silo, or for covering an expansion until you can get a proper anti-nuke built there.&lt;br /&gt;
&lt;br /&gt;
===Core Lvl 2 KBots===&lt;br /&gt;
&lt;br /&gt;
====Pyro====&lt;br /&gt;
&lt;br /&gt;
Core&#039;s level 2 [http://taspring.clan-sy.com/wiki/Swarming swarm] unit.  A bit tougher and slower than the Zipper.  Packs a flamethrower that can dish out a lot of damage to multiple units if you get within its short range. Doesn&#039;t leave wreckage, making it an excellent raider.&lt;br /&gt;
&lt;br /&gt;
====Can====&lt;br /&gt;
&lt;br /&gt;
Silly looking KBot that waddles along fairly slowly, but don&#039;t laugh if they are coming to get you.  Fairly expensive and very tough.  Packs a pretty fierce punch with its laser weapon, but does not have a big range. Enemy units can sometimes retreat, fire, and then continue retreating, staying out of The Can&#039;s range the entire time. They&#039;d better hope they kill it before they run out of room to retreat, though! The Can has a small auto-repair that functions even in combat, making it excellent at weathering sporadic fire and even harder to stop.&lt;br /&gt;
&lt;br /&gt;
====Sumo====&lt;br /&gt;
&lt;br /&gt;
Take The Can and make it much tougher and slower.  Longer weapon range and more power, as well as a much faster fire rate.  Doesn&#039;t look quite as silly. Can be used as an extremely slow but hard-to-stop offensive weapon, or as a mobile HLT in your base. Good at countering light Level 3 KBots. Like the Can, it has a combat auto-repair.&lt;br /&gt;
&lt;br /&gt;
====Morty====&lt;br /&gt;
&lt;br /&gt;
A support KBot with a very big gun.  Has a long range and fires fast, but doesn&#039;t do a lot of damage and isn&#039;t particularly durable. Keep them behind a line of Cans, Sumos, and Pyros, and use them to bombard enemy defences.&lt;br /&gt;
&lt;br /&gt;
====Gimp====&lt;br /&gt;
&lt;br /&gt;
A faster, weaker, amphibious version of the Can. Packs a slightly weaker version of the Can&#039;s lasers and a torpedo launcher. The torpedoes are extremely weak against submarines, though, so don&#039;t try using this as a general-purpose underwater combat unit!&lt;br /&gt;
&lt;br /&gt;
====Freaker====&lt;br /&gt;
&lt;br /&gt;
A fast-moving construction unit, the Freaker has a very eclectic build menu. It can construct mines, static defenses, and some combat units. Using them to construct Cans or Raiders near the front lines to reinforce your assault force can be very effective!&lt;br /&gt;
&lt;br /&gt;
====Dominator====&lt;br /&gt;
&lt;br /&gt;
Another artillery support KBot, the Dominator fires vertically-launched rockets. These are only slightly longer-ranged than the Morty&#039;s shells, but are much more powerful and can fire over practically anything. Protected by a wall of Cans and Sumos, Dominators are wonderful at destroying structures of all kinds. Just don&#039;t try using them on mobile units!&lt;br /&gt;
&lt;br /&gt;
====Voyeur====&lt;br /&gt;
&lt;br /&gt;
A walking radar tower.&lt;br /&gt;
&lt;br /&gt;
====Termite====&lt;br /&gt;
&lt;br /&gt;
This KBot can climb over practically anything. It&#039;s fairly tough and packs a heavy laser. Great for surprise attacks against an unprotected flank of the enemy base, but don&#039;t expect them to last long on the front lines.&lt;br /&gt;
&lt;br /&gt;
====Skuttle====&lt;br /&gt;
&lt;br /&gt;
A bigger, badder version of the Roach. Not only does it make a bigger bang, it can cloak and climb absolutely anything. Combined with radar jamming, a Skuttle can blast an impressive hole in even the toughest defences.&lt;br /&gt;
&lt;br /&gt;
===Common Lvl 3 KBots===&lt;br /&gt;
&lt;br /&gt;
====Avatar/Mauler====&lt;br /&gt;
&lt;br /&gt;
A mobile Big Bertha/Intimidator. Slow and dies pretty much as soon as the enemy looks at it, but can devastate enemy positions from unexpected directions.&lt;br /&gt;
&lt;br /&gt;
===Arm lvl 3===&lt;br /&gt;
&lt;br /&gt;
====Orcone====&lt;br /&gt;
&lt;br /&gt;
An [http://taspring.clan-sy.com/wiki/Uberweapon Uberweapon]. Costs absurd amounts of resources. Slow, but will destroy pretty much anything in its path. Very vulnerable to Sharpshooters, Annihilators/Doomsday Machines, and VLRPCs. Not generally worth investing in unless facing an enemy who&#039;s porcing heavily, and even then they need a lot of support from conventional units. If you see one coming, don&#039;t panic, start building Annihilators/Doomsday Machines, Sumos, or Sharpshooters and stick them (cloaked, in the case of Sharpshooters) in its path.&lt;br /&gt;
&lt;br /&gt;
====Bantha====&lt;br /&gt;
&lt;br /&gt;
Heavy attack mech.  Shoots guided rockets, blue lasers, and plasma projectiles.  Very hard to kill. Basically a mini-Orcone at a much more practical cost. It can be vulnerable to heavy attack from the air, and also dies to many of the same counters as the Orcone. Don&#039;t use these without a lot of support units backing them up!&lt;br /&gt;
&lt;br /&gt;
====Razorback====&lt;br /&gt;
&lt;br /&gt;
A light assault mech. Employs short-ranged but rapid-fire lasers and a multi-hit blaster. Faster than the Bantha or Orcone, much cheaper, and easier to fit into a regular assault force. Support them well, as they&#039;re very weak against Gunships, and can be taken out by sufficiently large groups of L2 units, or a few Sumos, though it can outrun the Sumos.&lt;br /&gt;
&lt;br /&gt;
====Marauder====&lt;br /&gt;
&lt;br /&gt;
A heavy amphibious assault unit. Fairly fast, and can be very deadly if your enemy hasn&#039;t protected his shoreline properly.&lt;br /&gt;
&lt;br /&gt;
====Vanguard====&lt;br /&gt;
&lt;br /&gt;
A slow but tough unit with a powerful long-range gun. Good as support for a mixed force of Razorbacks and L2 units. Can climb near-vertical walls to attack from unexpected directions and bypass enemy defences.&lt;br /&gt;
&lt;br /&gt;
====Aegis====&lt;br /&gt;
&lt;br /&gt;
A mobile tactical nuke launcher. Its missiles cannot be intercepted by anti-nukes, but do significantly less damage than regular nukes. Slow and dies very easily.&lt;br /&gt;
&lt;br /&gt;
===Core Lvl 3 KBots===&lt;br /&gt;
&lt;br /&gt;
====Krogoth====&lt;br /&gt;
&lt;br /&gt;
An [http://taspring.clan-sy.com/wiki/Uberweapon Uberweapon]. Costs absurd amounts of resources. Slightly more powerful and tougher than the Orcone, and features a shotgun-style blaster which is ideal for concentrated fire on a single heavy target or spread fire over a swarm of lesser units.&lt;br /&gt;
&lt;br /&gt;
====Krogtaar====&lt;br /&gt;
&lt;br /&gt;
A miniature Krogoth. Significantly cheaper, faster, and easier to kill. Fires a riot cannon with a medium range and high damage, making it very good against swarms of level 1 units. Much more practical than the Krogoth.&lt;br /&gt;
&lt;br /&gt;
====Karganeth====&lt;br /&gt;
&lt;br /&gt;
The smallest and cheapest of the Core lvl3 mechs, and thus the most practical. The Karganeth packs rapid-fire homing missiles, making it effective against both land and air targets. This also means it fits very well into a mixed assault force. It also has the ability to climb nearly vertical cliffs, allowing it to bypass an enemy&#039;s defences.&lt;br /&gt;
&lt;br /&gt;
====Shiva====&lt;br /&gt;
&lt;br /&gt;
The Core amphibious lvl3 mech, the Shiva is an impressive unit. It carries plasma cannons and a pair of vertical-launch rocket launchers. While vulnerable in the water, if one reaches your shore, you&#039;re in trouble. Only worth building on maps with sparse but restrictive water.&lt;br /&gt;
&lt;br /&gt;
====Juggernaut====&lt;br /&gt;
&lt;br /&gt;
Slower and weaker than a Krogoth, but about a quarter the cost. Carries a fast-firing multiple-hit gauss cannon with fairly good damage. Most useful as a mobile turret in your base. Juggernauts have a lot of hit points, so they can also be used as a sort of &amp;quot;rolling front line&amp;quot;. Should ideally have a group of support construction units for when its job is done and it&#039;s lost a lot of health.&lt;br /&gt;
&lt;br /&gt;
====Catapult====&lt;br /&gt;
&lt;br /&gt;
This Core Lvl3 mech can unleash a massive, near-continuous stream of powerful, unguided, long-range rockets. It can&#039;t take much fire, though.  In groups of three or more, these can tear apart an enemy base in as little as 60 seconds.  They should be guarded well by units such as Sumos, Cans, and Karganeths.&lt;br /&gt;
&lt;br /&gt;
==Vehicles==&lt;br /&gt;
&lt;br /&gt;
Vehicles use wheels or tracks to move. They&#039;re heavily armed and can take a lot of damage, but are more expensive and slower to build than KBots. They are also slowed or stopped entirely by rough terrain and can&#039;t climb hills very well. Vehicles are good for frontal assaults and generally smashing through defences.&lt;br /&gt;
&lt;br /&gt;
===Common Lvl 1 Vehicles===&lt;br /&gt;
&lt;br /&gt;
These vehicles are effectively identical for both races, and so are described only once.&lt;br /&gt;
&lt;br /&gt;
====Jeffy/Weasel====&lt;br /&gt;
&lt;br /&gt;
Cheap, fast units with a long line-of-sight. While they are armed, their weapon can&#039;t do much damage, and they have almost no HP. They&#039;re decent for scouting (you know you&#039;ve found an enemy when they explode) and good for raiding your enemy&#039;s resource structures in the early game.&lt;br /&gt;
&lt;br /&gt;
====Flash/Instigator====&lt;br /&gt;
&lt;br /&gt;
The tank equivalent of the Peewee/AK. Flashes and Instigators have slightly more health and can&#039;t see as far, but are otherwise very similar to their KBot cousins.&lt;br /&gt;
&lt;br /&gt;
====Stumpy/Raider====&lt;br /&gt;
&lt;br /&gt;
The tank equivallent of the Hammer/Thud. Stumpies and Raiders are very tough for L1 units, and are very good at killing LLTs and even HLTs. Sometimes they can even survive long enough to do decent damage to larger defensive structures.&lt;br /&gt;
&lt;br /&gt;
====Samson/Slasher====&lt;br /&gt;
&lt;br /&gt;
The tank equivalent of the Jethro/Crasher. These units &#039;&#039;can&#039;&#039; attack ground units, but are much more effective against aircraft. They&#039;re very slow, though, making them hard to use effectively.&lt;br /&gt;
&lt;br /&gt;
====Pincer/Garpike====&lt;br /&gt;
&lt;br /&gt;
This otherwise-unremarkable L1 tank can travel underwater, allowing it to cross rivers and small lakes to attack the enemy from an unexpected direction. Don&#039;t expect it to survive crossing larger bodies of water, though, as it dies fast to submarines and torpedo launchers.&lt;br /&gt;
&lt;br /&gt;
====Shellshocker/Wolverine====&lt;br /&gt;
&lt;br /&gt;
The only true L1 artillery unit, the Shellshocker and Wolverine fire a projectile that has a very high trajectory and long range but extremely poor accuracy. Useful for taking out fixed defences, but keep them well away from your combat units or set them to hold fire, as their shots will often hit friendly units in the middle of a skirmish.&lt;br /&gt;
&lt;br /&gt;
====Podger/Spoiler====&lt;br /&gt;
&lt;br /&gt;
This unit both lays and clears mines. Although powerful, mines require fairly hefty amounts of energy to stay cloaked. If you can spare the power, they&#039;re very good at blocking up chokepoints and slowing down attackers. Most players don&#039;t bother (to their peril).&lt;br /&gt;
&lt;br /&gt;
===Arm Lvl 1 Vehicles===&lt;br /&gt;
&lt;br /&gt;
====Janus====&lt;br /&gt;
&lt;br /&gt;
This tank packs a slow-firing but very powerful pair of heavy rocket launchers. Its rockets can&#039;t always fire over other units (and will do serious damage to them if they get in the way) but have a good range. Very good against most forms of static defence, as long as there are other units to soak up the damage.&lt;br /&gt;
&lt;br /&gt;
===Core Lvl 1 Vehicles===&lt;br /&gt;
&lt;br /&gt;
====Leveler====&lt;br /&gt;
&lt;br /&gt;
The Core&#039;s answer to swarm attacks by Flashes is the Leveler. The tank itself is slow, and its weapon is short-ranged, but it packs a &#039;&#039;massive&#039;&#039; punch and has a huge area of effect. Not only that, but it&#039;ll send enemy units flying and create craters, severely hampering the enemy&#039;s mobility.&lt;br /&gt;
&lt;br /&gt;
===Common Lvl 2 Vehicles===&lt;br /&gt;
&lt;br /&gt;
====Phalanx/Copperhead====&lt;br /&gt;
&lt;br /&gt;
A mobile flak cannon. Excellent anti-aircraft coverage for your level 2 attack force. In fact, the &#039;&#039;only&#039;&#039; dedicated level 2 anti-aircraft unit. Maneuver them carefully, as they&#039;re fragile. You want to keep them close enough to cover your forces, but far enough back that enemy ground units can&#039;t easily target them.&lt;br /&gt;
&lt;br /&gt;
====Luger/Pillager====&lt;br /&gt;
&lt;br /&gt;
A mobile artillery plasma cannon. Like the Shellshocker/Wolverine, fires its shells in a high arc, allowing them to travel over most things. Has less range and does less damage per shot than the Merl/Diplomat, but fires significantly faster. Decent support for a unit of tanks or Merls/Diplomats.&lt;br /&gt;
&lt;br /&gt;
====Merl/Diplomat====&lt;br /&gt;
&lt;br /&gt;
A mobile artillery missile launcher. The Merl/Diplomat fire their long-range, high-damage missiles vertically, which allows them to fire over practically anything. This also means their missiles take a long time to reach their targets, making them useless against mobile units. Set these things to Hold Fire if your enemy has mobile units (especially aircraft) around, or you &#039;&#039;will&#039;&#039; destroy your own mobile units.&lt;br /&gt;
&lt;br /&gt;
===Arm Lvl 2 Vehicles===&lt;br /&gt;
&lt;br /&gt;
====Bulldog====&lt;br /&gt;
&lt;br /&gt;
The basic, vanilla Arm level 2 tank. Heavily armored, fairly speedy, and equipped with a medium-range, medium-damage plasma cannon that can fire over other units. Bulldogs can drive over level 1 unit wreckage and Dragon&#039;s Teeth, which makes them good at breaking through heavily contested or fortified areas.&lt;br /&gt;
&lt;br /&gt;
====Triton====&lt;br /&gt;
&lt;br /&gt;
A light, amphibious level 2 tank. Faster than the Bulldog, but has less health and a smaller gun. Useful as a spearhead for amphibious assaults, to soak up fire and clear out defenders before heavier units come in.&lt;br /&gt;
&lt;br /&gt;
====Panther====&lt;br /&gt;
&lt;br /&gt;
A fast, light level 2 tank. Armed with a lightning cannon similar to the Zeus&#039; (for use against ground units) and a homing missile launcher (for use against aircraft). Its main advantage is its speed, which allows it to spot for heavier tanks and close with defensive structures to use its cannon. Dies very easily, so support them with bigger tanks.&lt;br /&gt;
&lt;br /&gt;
====Penetrator====&lt;br /&gt;
&lt;br /&gt;
A mobile Blue Laser of Death. Slow and not too tough, but can do a lot of damage. Excellent support for a force of Bulldogs, Demolishers, and Panthers. Its turret can only turn through a small firing arc, so it&#039;s easily destroyed by light, fast units. Keep them far back and well-covered.&lt;br /&gt;
&lt;br /&gt;
====Seer====&lt;br /&gt;
&lt;br /&gt;
Radar on wheels.&lt;br /&gt;
&lt;br /&gt;
====Gremlin====&lt;br /&gt;
&lt;br /&gt;
A stealthy, fast, cloakable light tank. It can&#039;t take much damage, and has a short-range, low-damage cannon, but is excellent at raiding. If you can find a hole in your enemy&#039;s lines and slip a few of these through, you can often do a lot of damage before he can stop them.&lt;br /&gt;
&lt;br /&gt;
====Consul====&lt;br /&gt;
&lt;br /&gt;
The Arm mobile engineer. Can build mines, a nice selection of defensive structures, and a few mobile units, including the Fido. This may be one of the few actual uses for the Fido: front-line reinforcements from a Consul.&lt;br /&gt;
&lt;br /&gt;
====Demolisher====&lt;br /&gt;
&lt;br /&gt;
A heavy tank with a medium-range, high-damage lightning cannon. Very tough and very slow. Best used mixed with other tanks, such as Bulldogs, Panthers, and Penetrators. Like the Bulldog, it can roll over wreckage and Dragon&#039;s Teeth.&lt;br /&gt;
&lt;br /&gt;
===Core Lvl 2 Vehicles===&lt;br /&gt;
&lt;br /&gt;
====Deleter====&lt;br /&gt;
&lt;br /&gt;
A mobile radar jammer.&lt;br /&gt;
&lt;br /&gt;
====Goliath====&lt;br /&gt;
&lt;br /&gt;
A very tough, very slow-moving tank with a big, indirect-fire, long-range gun with a hefty blast radius. The Goliath is the Core&#039;s primary level 2 tank, and while expensive, a force of them can do very impressive damage and can be very difficult to stop, especially since it auto-repairs even during combat. It can roll over most wreckage and Dragon&#039;s Teeth.&lt;br /&gt;
&lt;br /&gt;
====Poison Arrow====&lt;br /&gt;
&lt;br /&gt;
A heavy amphibious tank. Less well-armored than the Goliath but faster. Has a long-ranged, powerful, indirect-fire cannon. Only really useful on maps with small bodies of water as, like most amphibious vehicles, subs do a number on it.&lt;br /&gt;
&lt;br /&gt;
====Reaper====&lt;br /&gt;
&lt;br /&gt;
A tough, fast tank with a flamethrower. Best used as a screening force for Goliaths, as it can handle light, fast units very well. If you can&#039;t afford Goliaths, Reapers can make an acceptable assault unit, but are limited by their lack of range. Their damage more than makes up for it, especially if you can set a forest on fire with enemy units in it!&lt;br /&gt;
&lt;br /&gt;
====Croc====&lt;br /&gt;
&lt;br /&gt;
A medium amphibious tank, very similar to the Triton. The usual limitations of amphibious units apply.&lt;br /&gt;
&lt;br /&gt;
====Intruder====&lt;br /&gt;
&lt;br /&gt;
A heavy amphibious transport, the Intruder&#039;s very useful for moving around assault forces. It&#039;s quite quick, and can be used to ferry heavy but slow units (like the Can or Sumo) to the front lines, or to bring up additional units to support an amphibious assault.&lt;br /&gt;
&lt;br /&gt;
====Banisher====&lt;br /&gt;
&lt;br /&gt;
A reasonably fast, reasonably tough tank packing a heavy missile launcher. Note that, unlike most other level 2 tank weapons, its rockets &#039;&#039;cannot&#039;&#039; fire over other units. While they can do a lot of damage, this means that you&#039;d better make sure none of your units are in the line of fire.&lt;br /&gt;
&lt;br /&gt;
====Tremor====&lt;br /&gt;
&lt;br /&gt;
Absolutely terrifying mobile artillery. Quite tough, not too sluggish, and packs a rapid-fire indirect-fire cannon. (Basically a mini-Buzzsaw) Individual shots aren&#039;t particularly strong and it has about the same range as the Diplomat, but fires faster any other artillery unit. Its shots have a fairly large scatter, making them great at wiping out clustered defences or resource buildings.&lt;br /&gt;
&lt;br /&gt;
====Hedgehog====&lt;br /&gt;
&lt;br /&gt;
A mobile anti-nuke. Useful for protecting a force of ground units dispatched to assault a nuclear missile silo, or for covering an expansion until you can get a proper anti-nuke built there.&lt;br /&gt;
&lt;br /&gt;
==Aircraft==&lt;br /&gt;
&lt;br /&gt;
Aircraft are airborne combat units. They&#039;re fast, can cross any terrain, but can take very little damage. Most aircraft are specialized, and designed for a specific task. Against units not built specifically to counter them, aircraft are very effective. Against anti-air units, they are at a significant disadvantage. Generally air units are not a base busting assault weapon, but anyone who assumes that they are useless will play at a significant disadvantage. Aircraft can be put to several uses, even in the late game:&lt;br /&gt;
&lt;br /&gt;
Scouting: You&#039;ve built a [[#Big Bertha/Intimidator|VLRPC]] (or ten).  The sounds of each successive shell exploding in your enemy&#039;s base is slowly ratcheting up the pressure.  But how do you know whether the pride of your army is destroying important enemy buildings, or killing peewees and solar collectors?  Build some airplanes and have a look.  You can then aim your Big Bertha at a worthy target.  If your enemies build LRPCs, but only one player builds planes, guess who will find and destroy the opposing LRPCs first?  &lt;br /&gt;
&lt;br /&gt;
A few light aircraft can also be a great investment ahead of a ground attack.  You can spot holes in the defence to aim for or unexpected resistance to retreat from before taking losses.  They can provide line of sight for long range artillery to start pounding opposing defences.  And what is that blob of units coming towards you on the radar?  A plane can tell you if its 20 peewees or 20 goliaths.  Any empty space on the map?  Send a plane to scout at random intervals; you might find and prevent an opponent preparing a nasty surprise under cover of a radar jammer.&lt;br /&gt;
&lt;br /&gt;
In general terms, scout aircraft are invaluable, as they&#039;re a very reliable mechanism for gathering precise information about the battlefield, even through heavy radar jamming and enemy fire.&lt;br /&gt;
&lt;br /&gt;
Overwhelming:  Focus efforts on building a large devestating force of bombers or gunships.  With enough effort or against an unsuspecting victim, you may create a large enough air attack to devestate a base with insufficient anti-air defence.  If your opponent &#039;&#039;does&#039;&#039; build enough anti-air defences, the setback to your economy from this effort will be serious.&lt;br /&gt;
&lt;br /&gt;
Defence:  An often overlooked aspect of aircraft is their use for base defence.  They have the advantage of being able to intercept an attack from any direction quickly.  If the attack force does not include a significant anti air componenent, your planes can attack while taking very little damage in return. [[#Hawk/Vamp|Hawks/Vamps]] are particularly good at this, and while they&#039;re unlikely to do fatal damage to ground units, they&#039;re excellent at intercepting and destroying enemy airstrikes.&lt;br /&gt;
&lt;br /&gt;
Strategic strikes:  Sometimes your opponent has a key building you badly want to destroy.  It might be a [[#Retaliator/Silencer|nuclear silo]], [[#Protector/Fortitude|nuclear defence]], or a [[#Vulcan/Buzzsaw|rapid fire LRPC]].  Perhaps a [[#Moho Geothermal Powerplant|moho geothermal]], or [[#Advanced Fusion Reactor|advanced fusion]] that could take half the base with it if you can kill it.  Or a [[#Commander|Commander]].  A determined bombing assault can often do the trick.  Air has an unequaled ability to rapdily move and concentrate force to attack a key location.  Just make sure the target is worth the effort, as in most games the planes that will get destroyed by anti-air in such a strike will represent a significant investment of resources. You&#039;ll need to use ground forces to capitalize on the strike.&lt;br /&gt;
&lt;br /&gt;
All aircraft have a limited-range sonar, allowing them to see submerged units immediately under them.  Aircraft generally cost larger amounts of energy, and lower amounts of metal when compared with other units.  This can energy stall an unprepared player who tries to build an air force too early in the game.  Aircraft also take a long time to build. Building an Air Factory as your first factory is a high-risk move guaranteed to slow down economic expansion drastrically.&lt;br /&gt;
&lt;br /&gt;
===Common Lvl 1 Aircraft===&lt;br /&gt;
&lt;br /&gt;
====Peeper/Fink====&lt;br /&gt;
&lt;br /&gt;
A light recon aircraft. Unarmed and can&#039;t take much damage, but very fast, cheap, and nimble, with a long line of sight and a radar. Carries flares to reduce the effectiveness of guided AA weapons. They&#039;re best used as scouts, to spot targets for long-range artillery or attack forces. As they&#039;re cheap, fast, airborne, carry radar, and have a good sight range, Peepers and Finks are among the best scouts in the game. It&#039;s almost always worth building an L1 Aircraft Plant even if you only use it for building these.&lt;br /&gt;
&lt;br /&gt;
====Freedom Fighter/Avenger====&lt;br /&gt;
&lt;br /&gt;
A basic fighter aircraft. Fast and maneuverable, but can&#039;t take much damage. Carries a homing air-to-air missile and a weaker air-to-ground missile. Although they&#039;re not specifically designed for it, a group of 20-30 of these can be quickly and cheaply built to harass enemy units to great effect. Great against level 1 aircraft, and useful against level 2 aircraft if built in a large enough swarm.  A large swarm can also be surprisingly effective against light ground units.  However their weapons tend to fire infrequently at ground unless specifically ordered to do so.&lt;br /&gt;
&lt;br /&gt;
An effective tactic can be to slowly assemble a group of these and then use them to raid your enemy&#039;s resources; from then on, he&#039;ll be forced to build extensive anti-air even if you don&#039;t plan on ever using air again. If your enemy is spending half his resources to defend against an attack that&#039;s not coming....&lt;br /&gt;
&lt;br /&gt;
====Thunder/Shadow====&lt;br /&gt;
&lt;br /&gt;
A basic bomber aircraft. Slower and clumsier than the level 1 fighters, but much tougher. Attacks using a line of high-damage bombs, allowing it to damage or destroy several defensive structures in a single pass, or do more damage to larger structures. Not much use against mobile units, which can generally move out of the way before the bombs hit, but can do acceptable damage against packs of units.&lt;br /&gt;
&lt;br /&gt;
====Atlas/Valkyrie====&lt;br /&gt;
&lt;br /&gt;
A basic airborne transport. Can only carry one unit, but does so very quickly. Can&#039;t take a lot of damage, and accelerates slowly, but invaluable when you need to move a unit up a cliff or over some water in a hurry. Their low volume and vulnerability to AA fire makes them poorly-suited for assault roles.&lt;br /&gt;
&lt;br /&gt;
One common use for these units is kidnapping enemy construction units or Commanders. (Though the Commander&#039;s laser can often destroy them before they can grab him) This means it&#039;s a good idea to build one or two missile towers to cover your construction units as soon as you can spare the resources. Even a single missile tower will be able to do enough damage to destroy would-be kidnappers.&lt;br /&gt;
&lt;br /&gt;
===Arm Lvl 1 Aircraft===&lt;br /&gt;
&lt;br /&gt;
====Banshee====&lt;br /&gt;
&lt;br /&gt;
A basic ground attack aircraft. Slow but tough, and carries a weak, short-ranged EMG for use against ground units. While it doesn&#039;t do a lot of damage, an early Banshee assault can cripple an enemy who&#039;s neglected to build even a handful of missile towers. It can hover, allowing it to attack slow-moving or stationary ground units very effectively but making it vulnerable to flak.&lt;br /&gt;
&lt;br /&gt;
As with all gunships, banshees take slightly (~20%) reduced damage from missiles compared to other types of aircraft.&lt;br /&gt;
&lt;br /&gt;
===Core Lvl 1 Aircraft===&lt;br /&gt;
&lt;br /&gt;
====Bladewing====&lt;br /&gt;
&lt;br /&gt;
A basic gunship. Fast, but not very tough. Carries a laser that paralyzes its target. Best used in swarms to support other combat units in the field, by paralysing serious threats. It can hover, allowing it to attack slow-moving or stationary ground units very effectively but making it vulnerable to flak.&lt;br /&gt;
&lt;br /&gt;
Many Core players have gone on the record to say that the only reason they like Core so much is the Bladewing.  With its ability to temporarily remove any one unit from a fight, you can effectively take the wind out of your enemy&#039;s sails if that one unit is, for instance, a Bantha.&lt;br /&gt;
&lt;br /&gt;
Beware that superweapons and Commanders are nigh-invulnerable to paralyzer weapons. Concentrated fire may temporarily stun them, but the instant you stop firing they&#039;ll be back in action.&lt;br /&gt;
&lt;br /&gt;
===Common Lvl 2 Aircraft===&lt;br /&gt;
&lt;br /&gt;
====Brawler/Rapier====&lt;br /&gt;
&lt;br /&gt;
Tough but slow ground attack aircraft. The Brawler carries an rapid-fire weak weapon, while the Rapier has slower-firing but more powerful rockets. Both can hover, allowing them to attack slow-moving or stationary ground units effectively, but making them very vulnerable to flak. Before the enemy has significant flak defences, Brawlers and Rapiers are viable for assaults. After that point, they&#039;re best used to raid outposts that haven&#039;t yet had flak cannons installed, or harass assault forces that have insufficient AA cover.&lt;br /&gt;
&lt;br /&gt;
====Phoenix/Hurricane====&lt;br /&gt;
&lt;br /&gt;
A bigger, nastier bomber aircraft. Drops many more bombs that do much more damage. Unless heavy AA is present along their approach a swarm of bombers &#039;&#039;will&#039;&#039; release enough ordinance in a single pass to destroy their target, regardless of what it is. This makes them very effective first-strike weapons against things like Annihilators/Doomsday Machines, nuclear missile silos, VLRPCs, fusion plants, etc. Also carries a homing missile launcher to fend off fighters.&lt;br /&gt;
&lt;br /&gt;
As advanced missile towers and flak get built, the ability of Phoenixes and Hurricanes to hit targets anywhere in a base diminishes. They remain useful for striking targets near the edge, and can be good for softening up a defence line or breaking a hole in it before an attack, but typically need to withdraw (or will be destroyed) after one or two passes.&lt;br /&gt;
&lt;br /&gt;
Because of their bomb scattering attribute, a group of even 5+ Phoenix or Hurricanes can be used to quickly massacre even a moderately fast-moving attack group if it isn&#039;t protected by a strong anti-air presence.&lt;br /&gt;
&lt;br /&gt;
====Lancet/Titan====&lt;br /&gt;
&lt;br /&gt;
A bomber-type aircraft that fires homing torpedoes instead of normal bombs. Virtually useless against land units, very effective against ships.&lt;br /&gt;
&lt;br /&gt;
====Hawk/Vamp====&lt;br /&gt;
&lt;br /&gt;
A bigger, nastier fighter aircraft. The Hawk is slightly tougher and turns faster, and the Vamp is slightly faster. Both are stealthy, and are very good against enemy bombers and level 1 fighters. Not so good offensively, though, as they suck at attacking ground targets. They&#039;re good at intercepting enemy airstrikes and providing AA defence for the skies over your base or contested territory.&lt;br /&gt;
&lt;br /&gt;
====Eagle/Vulture====&lt;br /&gt;
&lt;br /&gt;
A more sophisticated recon plane. Has a longer radar range and carries a real sonar. Information about your enemy&#039;s activities is vital for both attack and defence, and the Eagle/Vulture can tell you a lot. Since they&#039;re more expensive than the Peeper/Fink, they&#039;re less expendable, making them less useful for quick scouting once AA is deployed. Carry flares to improve their survivability against guided missiles.&lt;br /&gt;
&lt;br /&gt;
===Arm Lvl 2 Aircraft===&lt;br /&gt;
&lt;br /&gt;
====Blade====&lt;br /&gt;
&lt;br /&gt;
A gunship with even more armor and an even bigger weapon. They&#039;re tough and reasonably fast, making them good support for your assault forces once the enemy deploys flak cannons and Mercuries/Screamers. Hawks/Vamps and Freedom Fighters/Avengers still work well against them.&lt;br /&gt;
&lt;br /&gt;
Because of a Blade&#039;s heavy armor, they take only 50% damage from flak guns, in addition to the standard 20% damage reduction for missile attacks on gunships.  In short, they&#039;re Arm&#039;s ultimate high-flying badasses.&lt;br /&gt;
&lt;br /&gt;
====Liche====&lt;br /&gt;
&lt;br /&gt;
A very powerful bomber. Drops only a single bomb, but it has a large blast radius and does a lot of damage. Very vulnerable to Hawks/Vamps and Freedom Fighters/Avengers, so give it lots of cover. Excellent for taking out big, expensive targets.&lt;br /&gt;
&lt;br /&gt;
====Dragonfly====&lt;br /&gt;
&lt;br /&gt;
A stealthy version of the Atlas. Tougher, and armed with a paralysing weapon. It is able to transport heavier units than the level 1 transports.&lt;br /&gt;
&lt;br /&gt;
====Stilleto====&lt;br /&gt;
&lt;br /&gt;
A stealthy bomber whose weapon paralyzes targets caught in the blast. Good for softening up a defence line or assault force with insufficient AA.&lt;br /&gt;
&lt;br /&gt;
===Core Lvl 2 Aircraft===&lt;br /&gt;
&lt;br /&gt;
====Seahook====&lt;br /&gt;
&lt;br /&gt;
A heavy but slow air transport that can lift absolutely anything. Yes, even a Krogoth or the largest battleship. Just hope that your enemy&#039;s fighters don&#039;t catch this thing in mid-air when it&#039;s lugging Kroggy around, though!&lt;br /&gt;
&lt;br /&gt;
====Krow====&lt;br /&gt;
&lt;br /&gt;
Flying instagib.  With its three heavy, rapid-firing lasers, it will kill anything that isn&#039;t a group of 5+ flak guns or a fighter swarm.&lt;br /&gt;
&lt;br /&gt;
==Ships and Submarines==&lt;br /&gt;
&lt;br /&gt;
Ships can only travel on water. They&#039;re fast, heavily armed, and can take absurd amounts of damage, but have very limited movement and turn slowly. Submarines travel under the water, can only be detected by sonar, and can only attack other units in or under the water. They&#039;re generally much weaker than surface vessels and have shorter-ranged weapons.&lt;br /&gt;
&lt;br /&gt;
===Common Lvl 1 Ships and Subs===&lt;br /&gt;
&lt;br /&gt;
====Skeeter/Searcher====&lt;br /&gt;
&lt;br /&gt;
The naval equivalent of the Peewee/AK. Fast, but not very tough (as ships go). Carries a laser, for use against ground units, and a homing missile launcher, for use on aircraft. They&#039;re best used for raiding, but will die easily to most real combat ships.&lt;br /&gt;
&lt;br /&gt;
====Decade/Supporter====&lt;br /&gt;
&lt;br /&gt;
These light corvettes are intended as a screening force for larger ships. They&#039;re slow, have little health, and carry pair of short-ranged, weak cannons, but they&#039;re very cheap.&lt;br /&gt;
&lt;br /&gt;
====Crusader/Enforcer====&lt;br /&gt;
&lt;br /&gt;
The meat of a level 1 navy (and good support for a level 2 navy), these destroyers are very flexible ships. They&#039;re fast, tough, and useful in a variety of roles. They carry a medium-range indirect fire plasma cannon for use against surface ships and shore targets, a deck laser for use against anything that gets close, and a depth-charge launcher for use on submarines. They also have a short-range sonar.&lt;br /&gt;
&lt;br /&gt;
====Lurker/Snake====&lt;br /&gt;
&lt;br /&gt;
A basic submarine, the Lurker/Snake remains useful throughout the game. While slow and with little health, it has a long-range sonar and packs a powerful torpedo launcher that only works on units in the water. These units can devastate surface or amphibious forces that lack proper anti-submarine support.&lt;br /&gt;
&lt;br /&gt;
====Hulk/Envy====&lt;br /&gt;
&lt;br /&gt;
A basic transport unit, the Hulk/Envy can quickly deliver a mass of units to the enemy&#039;s shore. They&#039;re very tough, but also very slow.&lt;br /&gt;
&lt;br /&gt;
===Common Lvl 2 Ships and Subs===&lt;br /&gt;
&lt;br /&gt;
====Abel/Caine====&lt;br /&gt;
&lt;br /&gt;
A medium-range bombardment ship, the Abel/Caine packs a rapid-fire, long-range, highly inaccurate plasma cannon intended for shelling large targets, such as a cluster of shipyards or an enemy base near to the shoreline.&lt;br /&gt;
&lt;br /&gt;
====Archer/Shredder====&lt;br /&gt;
&lt;br /&gt;
Carrying both anti-aircraft missile launchers and flak cannon, even a few of these ships can very effectively protect a fleet of ships from airborne attackers.&lt;br /&gt;
&lt;br /&gt;
====Millennium/Warlord====&lt;br /&gt;
&lt;br /&gt;
Expensive, tough, and slow (for a ship), forces of Millenniums and Warlords will be the centrepieces of mid-to-late-game fleets. The Millennium has two turreted plasma batteries, with a high rate of fire, damage, and range. The Warlord replaces one plasma battery with a much more accurate heavy laser. These ships can dominate enemy fleets but are expensive and very weak against submarines and aircraft. Don&#039;t build one unless you can defend it!&lt;br /&gt;
&lt;br /&gt;
====Colossus/Hive====&lt;br /&gt;
&lt;br /&gt;
A floating air repair pad, anti-nuke, radar, sonar, and miniature fusion reactor. Totally unarmed, so protect them well!&lt;br /&gt;
&lt;br /&gt;
====Atlantis/Zulu====&lt;br /&gt;
&lt;br /&gt;
A floating Big Bertha/Intimidator. The Zulu has a pair of VLRPCs, while the Atlantis drops one in exchange for an anti-aircraft missile launcher and lower price tag.&lt;br /&gt;
&lt;br /&gt;
====Conqueror/Executioner====&lt;br /&gt;
&lt;br /&gt;
The Conqueror and Executioner are significantly weaker than the Millennium or Warlord, but faster and cheaper. The Conqueror&#039;s main weapon is a long-range plasma cannon turret, while the Executioner carries a shorter-range but more accurate heavy laser. Both back up their primary weapons with a short-range deck laser, sonar, and depth-charge launcher.&lt;br /&gt;
&lt;br /&gt;
====Valiant/Limiter====&lt;br /&gt;
&lt;br /&gt;
A mine-layer submarine. Subject to the same limitations as the Podger/Spoiler.&lt;br /&gt;
&lt;br /&gt;
====Ranger/Messenger====&lt;br /&gt;
&lt;br /&gt;
A sea-borne version of the Merl/Diplomat, with correspondingly increased range and damage. Useful for attacking enemy structures or stationary ships. Also sports a radar and anti-air missile launcher.&lt;br /&gt;
&lt;br /&gt;
====Grim Reaper/Death Cavalry====&lt;br /&gt;
&lt;br /&gt;
A resurrection submarine, capable of resurrecting dead units if their wreckage hasn&#039;t been reclaimed or taken too much damage.&lt;br /&gt;
&lt;br /&gt;
====Escort/Phantom====&lt;br /&gt;
&lt;br /&gt;
Radar jamming ships. Useful if your opponent doesn&#039;t have sonar, or in combination with a sonar-jamming unit.&lt;br /&gt;
&lt;br /&gt;
====Pirannah/Shark====&lt;br /&gt;
&lt;br /&gt;
Submarines designed for fighting other submarines. Weaker but much faster than the Lurker/Snake, their torpedoes home, are longer-range, and do significantly more damage - enough to destroy a Lurker/Snake in a single hit.&lt;br /&gt;
&lt;br /&gt;
====Epoch/Black Hydra====&lt;br /&gt;
&lt;br /&gt;
Basically a floating Krogoth/Orcone. Useful in the same circumstances. Well-protected against air and surface units, weak against submarines.&lt;br /&gt;
&lt;br /&gt;
====Serpent/Leviathan====&lt;br /&gt;
&lt;br /&gt;
Heavy submarines, with more health than the lighter submarines and much bigger weapons. Both have homing torpedoes. The Leviathan has slightly more range and damage, while the Serpent fires faster.&lt;br /&gt;
&lt;br /&gt;
====Viking/Cronus====&lt;br /&gt;
&lt;br /&gt;
Short-range artillery ships, with weak, inaccurate, rapid-fire plasma cannons. Intended for cheap bombardment of shore targets and floating structures.&lt;br /&gt;
&lt;br /&gt;
==Hovercraft==&lt;br /&gt;
&lt;br /&gt;
Hovercraft are tanks that can travel over land or water. They&#039;re generally more lightly armed and can take less damage than regular tanks, and are more expensive and take longer to build. They also can&#039;t compete with ships at surface combat on the open water. They are, however, excellent on &amp;quot;swampy&amp;quot; maps, with interspersed water and land.&lt;br /&gt;
&lt;br /&gt;
===Common Lvl 1 Hovercraft===&lt;br /&gt;
&lt;br /&gt;
====Mausser/Navarone====&lt;br /&gt;
&lt;br /&gt;
A hovercraft version of the Luger/Pillager, but with a shorter range and less damage.&lt;br /&gt;
&lt;br /&gt;
====Swatter/Slinger====&lt;br /&gt;
&lt;br /&gt;
An anti-air hovercraft. Carries a homing missile launcher that can only attack airborne targets.&lt;br /&gt;
&lt;br /&gt;
====Anaconda/Snapper====&lt;br /&gt;
&lt;br /&gt;
The hovercraft main battle tank. Both carry a medium-range plasma cannon. Neither can stand up to proper tanks or ships, but they&#039;re very good for quick attacks over small bodies of water.&lt;br /&gt;
&lt;br /&gt;
====Wombat/Nixer====&lt;br /&gt;
&lt;br /&gt;
A hovercraft with a vertically-launched artillery rocket. Very similar to the Merl/Diplomat, but with a shorter range, faster fire rate, and lower damage.&lt;br /&gt;
&lt;br /&gt;
====Skimmer/Scrubber====&lt;br /&gt;
&lt;br /&gt;
A fast-moving scout hovercraft with a short-range laser. Useful for spotting for larger, tougher hovercraft.&lt;br /&gt;
&lt;br /&gt;
====Bear/Turtle====&lt;br /&gt;
&lt;br /&gt;
Transport hovercraft that can carry other units over both water and land. Medium speed, but very tough.&lt;br /&gt;
&lt;br /&gt;
==Seaplanes==&lt;br /&gt;
&lt;br /&gt;
Aircraft that can be built from a floating factory, and can take off and land from the water. (Though this is currently broken.) These effectively form the tier 3 of aircraft.  While the ranks of seaplanes do not include units like Krows or Krogoths, they are far more cost effective, more powerful, generally nimbler, faster, and so on.  Seaplane factories can only be built on the water by Advanced Construction Submarines and Aircraft&lt;br /&gt;
&lt;br /&gt;
===Common Lvl 1 Seaplanes===&lt;br /&gt;
&lt;br /&gt;
====Seahawk/Hunter====&lt;br /&gt;
&lt;br /&gt;
Recon seaplane. Quick and nimble but very weak. Totally unarmed, but carries both a sonar and radar. Very useful for spotting for naval forces. Carries flares to help protect it against guided missiles.&lt;br /&gt;
&lt;br /&gt;
====Tornado/Voodoo====&lt;br /&gt;
&lt;br /&gt;
Basic fighter seaplane. Similar to the Hawk/Vamp, but not stealthy and with a less powerful air-to-air missile. Although they will generally lose to a Hawk/Vamp in a head-to-head fight, they are far less expensive and faster to build.&lt;br /&gt;
&lt;br /&gt;
====Albatross/Typhoon====&lt;br /&gt;
&lt;br /&gt;
Basic naval attack seaplane, with an air-to-air guided missile launcher and a pair of powerful homing torpedo launchers. While it can protect itself against aircraft, it&#039;s not very good in a dogfight.&lt;br /&gt;
&lt;br /&gt;
====Sabre/Cutlass====&lt;br /&gt;
&lt;br /&gt;
Basic ground attack seaplane. About the same general power level as a Brawler/Rapier, but slightly more cost-effective, quick, and nimble. The Sabre has a fast-firing heavy laser, while the Cutlass has a slower-firing but more powerful riot cannon with a large area of effect.&lt;br /&gt;
&lt;br /&gt;
====Tsunami/Malestrom====&lt;br /&gt;
&lt;br /&gt;
Seaplane equivalent of the Phoenix/Hurricane. Uses the same bombs, but lacks the air-to-air missile launcher, and not quite as maneuverable. Effective in the same roles, and also possibly effective against slower ships.&lt;br /&gt;
&lt;br /&gt;
Back to [[Absolute Annihilation]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Mods]]&lt;br /&gt;
[[Category:Units]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Nanoblobs&amp;diff=15056</id>
		<title>Nanoblobs</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Nanoblobs&amp;diff=15056"/>
		<updated>2006-03-30T06:58:10Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Added the page to the mods catigory&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;== Project conceptual notes, by Argh ==&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NanoBlobs is an attempt to build a &amp;quot;new-new&amp;quot; RTS game, and to demonstrate some concepts for AI developers in a simple, straightforward game design.&lt;br /&gt;
&lt;br /&gt;
This is a fairly lengthy (and, if you are not a wanna-be game designer, fairly boring/philosophical) description of the NanoBlobs project.  If you are looking for a manual, look at the manual that comes with the mod.&lt;br /&gt;
&lt;br /&gt;
I came up with the idea for NanoBlobs after putting some thought into what AIs would really work with best.  AI developers for Spring were still having trouble getting their AIs to play humans well, and I thought that this design might show them some things that aren&#039;t inherently obvious- such as the relative strengths and weaknesses of an iterative code process vs. a human mind. &lt;br /&gt;
&lt;br /&gt;
After some thought, I built a very simplistic game design where mobile units of a single type, capable of attacking each other, would build &amp;quot;clones&amp;quot; of one another, and then attack.&lt;br /&gt;
&lt;br /&gt;
This worked fairly poorly, from a game-design standpoint.  While it was ideal for AIs (after all, if there&#039;s any way in which an AI can exceed people, it&#039;s in micromanagement and automated processes), it played very poorly for people- very simply, it lacked any variety, and wasn&#039;t much fun.  Thinking on this (at least, to me) fairly philosophical question of &amp;quot;deep gameplay&amp;quot;, I then proceeded to map out several archetypes that are found in many RTS games:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;quot;Serf&amp;quot;&#039;&#039;&#039; archetype:  The Serf, named many things in many RTS games, is a simplistic, non-combatant (or very weak combatant) unit that mainly exists to provide resources.  Since it isn&#039;t possible (yet) to do resource-gathering in the Spring game engine, I decided that the Serf archetype would have to produce all of the economic resources required, and I made this unit completely defenseless, easily killed, and a fairly weak builder.  This unit has been renamed the &amp;quot;Sheep&amp;quot;, because, like a Serf of feudal days, a Sheep is a fairly defenseless creature that can be vital to the economic health of a kingdom.  That, and I didn&#039;t want people feeling I was making a sociopolitical point ;-)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;quot;Wolf&amp;quot;&#039;&#039;&#039; archetype:  This archetype can be found in most RTS games.  In most games, these are light, fast units, capable of raiding your opponants&#039; economy.  For NanoBlobs, I picked the name &amp;quot;Wolf&amp;quot; because it stands in direct opposition to &amp;quot;Sheep&amp;quot;... and fits the general premise.  Like real-life wolves, my objective was to make them work better in packs than as individuals.  Thus, they are small, relatively weak attackers, but they move swiftly, and can concentrate rapidly.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;quot;Knight&amp;quot;&#039;&#039;&#039; archetype:  Knights are close-quarters experts, able to take a great deal of punishment.  There are many examples of these units in RTS games, from the Paladin/Troll of Warcraft 1/2 to the Zeus of Total Annihilation, to the many direct equivalents found in Kohan II.  I decided that I would accentuate the traditional archetype, and by using the current capabilities of the Spring game engine, I developed a unit that can heal itself extremely rapidly, that also takes damage very selectively from certain units.  Knights, in the NanoBlobs game design, are powerful assault units that can break through static defenders and destroy them.  Knights were/are the most difficult units to balance, in my opinion, because they required a very fine appreciation of their niche role.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;quot;Archer&amp;quot;&#039;&#039;&#039; archetype:  Archers can be found in most RTS game design.  Whether or not they are called &amp;quot;archers&amp;quot;, they serve the same purpose- long-distance fire support.  My main concern with this unit, really, was that they could serve their role, but not be unbalanced.  Therefore, they, along with the SpireRook and Knight, form a delicate troika of balanced forces, at the center of the game design.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;quot;Rook&amp;quot;&#039;&#039;&#039; archetype:  Rooks are usually boring, non-moving units in most RTS games, called &amp;quot;turrets&amp;quot;.  In most games, players simply &amp;quot;spiderweb&amp;quot; their opponants with these static defenses to control ground.  However, last year I played a game called Metal Fatigue that, while tragically flawed in many ways, provided a better model.  In Metal Fatigue, there were &amp;quot;mobile tower&amp;quot; units that could both move *and* hold ground.  They were implemented very, very poorly (in short, without too much micro, you could very easily own any size of normal ground force, if you collected a half-dozen towers and a half-dozen mechs armed with appropriate weapon mixes) in that game, but they gave me an inspiration for a unit that was mobile, could do area-control, but was not fast enough to act as a tactical weapon.  Thus, the SpireRook was born.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;quot;Lord&amp;quot;&#039;&#039;&#039; archetype:  one of the great legacies of the Total Annihilation game design, and (here I&#039;m going to offend OTA fans, but I don&#039;t really care) one of the few areas in which TA was really all that original in concept or execution... was in the amount of special power invested in the starting unit, known as the Commander.  I deliberately decided to preserve this unique unit&#039;s feel in NanoBlobs, as it was one of the better ideas in OTA, and I think that it contributes a great deal to the game design.  OTA fans will see immediately, however, that I have made some significant changes to this archetype.  For one thing... in the very few games that have even slightly attempted to emulate this feature of OTA, the Commander archetype is invariably slow.  In addition, the unit is usually only able to build on a rough par with later, stronger builders.  Turning this on its head, I made the Lord a fast unit that can rapidly move around the battlefield, seeking places to build new units and re-arrange the structure of the battlefield.  I am not sure how quickly players will take to this feature, if they ever do, but I was quite pleased with the overall feel- the Lord is a strategic unit, not merely tactical, and can very rapidly restructure a warzone.&lt;br /&gt;
&lt;br /&gt;
There are other units in NanoBlobs, to give the game additional structure and variety of play, but these are the primary concepts that I built the game design around.  I hope that anybody who reads this gets a better idea of what went into this very unusual game design.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Category:Mods}}&lt;br /&gt;
[[Category:Mods]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Development:Main&amp;diff=5559</id>
		<title>Development:Main</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Development:Main&amp;diff=5559"/>
		<updated>2006-03-16T16:38:14Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: /* Modifying and Compiling the Source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Outlined below is information on assisting with the development of the Spring source itself.&lt;br /&gt;
&lt;br /&gt;
::&amp;lt;small&amp;gt;NOTE: For information about developing a mod (units, maps, etc.) see the [[Mod Development]] page.&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Below you can find information on how to work with the Spring source in the current mainline (Windows platform) if you like to work on another platform (Linux &amp;amp; Mac) please look at the bottem of this page under &amp;quot;Multiplatform development&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==Starting Development==&lt;br /&gt;
To start development, you&#039;ll need&lt;br /&gt;
#The latest version of the source &lt;br /&gt;
#A good code manipulation program&lt;br /&gt;
#Compiling your modified source&lt;br /&gt;
&lt;br /&gt;
===Source Code Documentation===&lt;br /&gt;
A good place to start is the source code documentation, which can be found here: [http://taspring.clan-sy.com/doxygen/ doxygen]&lt;br /&gt;
&lt;br /&gt;
An explanation on how the code is executed ingame can be found in the [[Spring Engine Code]]&lt;br /&gt;
page.&lt;br /&gt;
&lt;br /&gt;
===Obtaining the Source===&lt;br /&gt;
&lt;br /&gt;
If you just want to take a look at the code you can use [http://svn.berlios.de/viewcvs/taspring-linux/trunk/ HTTP based viewing of the repository]&lt;br /&gt;
&lt;br /&gt;
Another option is to manually download it along with the latest released version of the game. However, for serious developers, a better way would be to download the source straight from the subversion(SVN) repository. This will also allow you to make a patch out of the changes you make to the code, and send it to one of the developers with SVN access.&lt;br /&gt;
&lt;br /&gt;
More information about downloading from the svn repository is avaiable at the &lt;br /&gt;
[http://developer.berlios.de/projects/taspring-linux BerliOS Project page]&lt;br /&gt;
Two good windows SVN clients are SmartSVN and TortoiseSVN.&lt;br /&gt;
&lt;br /&gt;
===Learning C++===&lt;br /&gt;
You will need to know C++ to modify or understand Spring&#039;s source code. If you&#039;re interested in learning C++, see [[Learning_CPP]]&lt;br /&gt;
&lt;br /&gt;
However please note that badly designed code (code created by a C++ novice for example), will even if working not be included in the spring code. Spring is a large project, and therefore it is necessary to stay away from hackjobs and create general solutions to problems.&lt;br /&gt;
&lt;br /&gt;
===Modifying and Compiling the Source===&lt;br /&gt;
See [[Development_IDEs]]. You either have to use the SCons buildsystem that is used on linux, or use the vcproj for building spring in Visual Studio 2003.&lt;br /&gt;
Currently the build is actively updated for linux and for Visual Studio 2003 &lt;br /&gt;
You will needs these libraries:&lt;br /&gt;
&lt;br /&gt;
*[http://www.boost.org Boost C++ library]&lt;br /&gt;
*[http://www.openal.org OpenAL Audio library]&lt;br /&gt;
*[http://glew.sf.net GLEW (OpenGL extension loading)]&lt;br /&gt;
*[http://www.winimage.com/zLibDll/ zlib + minizip]&lt;br /&gt;
*[http://www.libsdl.org SDL]&lt;br /&gt;
*[http://openil.sf.net DevIL (Image loading)]&lt;br /&gt;
*[http://www.freetype.org Freetype font rendering]&lt;br /&gt;
&lt;br /&gt;
*[http://msdn.microsoft.com/directx/sdk/ DirectX SDK] (Windows only)&lt;br /&gt;
*PlatformSDK (Windows Only)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you are using Windows, you can find most of the dependences pre-built at [http://taspring.clan-sy.com/phpbb/viewtopic.php?p=49257#49257 here].&lt;br /&gt;
A pre-built copy of boost for VS8 can be found [http://taspring.clan-sy.com/phpbb/viewtopic.php?p=56846#56846 here].&lt;br /&gt;
&lt;br /&gt;
==Development Suggestions==&lt;br /&gt;
&lt;br /&gt;
Before starting to make modifications to the source, take a look at the [[development guidelines]] which outlines some important things to think about. To find something interesting to work on, look at the list of [[example projects]]. You can also check the list of [[whois doing what]] to see what others are doing. If you do edit the code, please add [[Doxygen style comments]] to the code, which will then enhance the source code documentation.&lt;br /&gt;
&lt;br /&gt;
===How to get your code included===&lt;br /&gt;
If you create something that you think should be included in the official source tree, you can send an email to the development mailing list shown at [[Linux]] page. Sending your code in the form of a patch (also known as a .diff file), will make the chances of including it in the main code.&lt;br /&gt;
It&#039;s also considered standard practice to post one&#039;s modifications in the [http://taspring.clan-sy.com/phpbb/viewforum.php?f=12 development forum] and get feedback.&lt;br /&gt;
&lt;br /&gt;
==Multiplatform development==&lt;br /&gt;
Current development is done on the portable code only, located at [http://developer.berlios.de/projects/taspring-linux Berlios]&lt;br /&gt;
All future releases will be based on this code.&lt;br /&gt;
The current spring code is being developed on Windows and linux. A mac port, as well as other unixes, is very possible, but currently no developers are working on this. &lt;br /&gt;
Use the mailing list listed on the [[Linux]] page to reach all developers (windows and linux). However if you have a feature request or bug report, the mantis bugtracker is probably a better way.&lt;br /&gt;
Development information about the portable code can be found here: [[MultiplatformSpring]]&lt;br /&gt;
&lt;br /&gt;
==Spring Engine TODO list==&lt;br /&gt;
There is a TODO list for developers who want to contribute to the engine itself:&lt;br /&gt;
[[SpringEngineTODO]]&lt;br /&gt;
&lt;br /&gt;
See [[Glossary]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]] [[Category:Source development]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Development:Main&amp;diff=5558</id>
		<title>Development:Main</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Development:Main&amp;diff=5558"/>
		<updated>2006-03-16T16:37:49Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: /* Modifying and Compiling the Source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Outlined below is information on assisting with the development of the Spring source itself.&lt;br /&gt;
&lt;br /&gt;
::&amp;lt;small&amp;gt;NOTE: For information about developing a mod (units, maps, etc.) see the [[Mod Development]] page.&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Below you can find information on how to work with the Spring source in the current mainline (Windows platform) if you like to work on another platform (Linux &amp;amp; Mac) please look at the bottem of this page under &amp;quot;Multiplatform development&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==Starting Development==&lt;br /&gt;
To start development, you&#039;ll need&lt;br /&gt;
#The latest version of the source &lt;br /&gt;
#A good code manipulation program&lt;br /&gt;
#Compiling your modified source&lt;br /&gt;
&lt;br /&gt;
===Source Code Documentation===&lt;br /&gt;
A good place to start is the source code documentation, which can be found here: [http://taspring.clan-sy.com/doxygen/ doxygen]&lt;br /&gt;
&lt;br /&gt;
An explanation on how the code is executed ingame can be found in the [[Spring Engine Code]]&lt;br /&gt;
page.&lt;br /&gt;
&lt;br /&gt;
===Obtaining the Source===&lt;br /&gt;
&lt;br /&gt;
If you just want to take a look at the code you can use [http://svn.berlios.de/viewcvs/taspring-linux/trunk/ HTTP based viewing of the repository]&lt;br /&gt;
&lt;br /&gt;
Another option is to manually download it along with the latest released version of the game. However, for serious developers, a better way would be to download the source straight from the subversion(SVN) repository. This will also allow you to make a patch out of the changes you make to the code, and send it to one of the developers with SVN access.&lt;br /&gt;
&lt;br /&gt;
More information about downloading from the svn repository is avaiable at the &lt;br /&gt;
[http://developer.berlios.de/projects/taspring-linux BerliOS Project page]&lt;br /&gt;
Two good windows SVN clients are SmartSVN and TortoiseSVN.&lt;br /&gt;
&lt;br /&gt;
===Learning C++===&lt;br /&gt;
You will need to know C++ to modify or understand Spring&#039;s source code. If you&#039;re interested in learning C++, see [[Learning_CPP]]&lt;br /&gt;
&lt;br /&gt;
However please note that badly designed code (code created by a C++ novice for example), will even if working not be included in the spring code. Spring is a large project, and therefore it is necessary to stay away from hackjobs and create general solutions to problems.&lt;br /&gt;
&lt;br /&gt;
===Modifying and Compiling the Source===&lt;br /&gt;
See [[Development_IDEs]]. You either have to use the SCons buildsystem that is used on linux, or use the vcproj for building spring in Visual Studio 2003.&lt;br /&gt;
Currently the build is actively updated for linux and for Visual Studio 2003 &lt;br /&gt;
You will needs these libraries:&lt;br /&gt;
&lt;br /&gt;
*[http://www.boost.org Boost C++ library]&lt;br /&gt;
*[http://www.openal.org OpenAL Audio library]&lt;br /&gt;
*[http://glew.sf.net GLEW (OpenGL extension loading)]&lt;br /&gt;
*[http://www.winimage.com/zLibDll/ zlib + minizip]&lt;br /&gt;
*[http://www.libsdl.org SDL]&lt;br /&gt;
*[http://openil.sf.net DevIL (Image loading)]&lt;br /&gt;
*[http://www.freetype.org Freetype font rendering]&lt;br /&gt;
&lt;br /&gt;
*[http://msdn.microsoft.com/directx/sdk/ DirectX SDK] (Windows only)&lt;br /&gt;
*PlatformSDK (Windows Only)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you are using Windows, you can find most of the dependences pre-built at [http://taspring.clan-sy.com/phpbb/viewtopic.php?p=49257#49257 here].&lt;br /&gt;
A per-built copy of boost for VS8 can be found [http://taspring.clan-sy.com/phpbb/viewtopic.php?p=56846#56846 here].&lt;br /&gt;
&lt;br /&gt;
==Development Suggestions==&lt;br /&gt;
&lt;br /&gt;
Before starting to make modifications to the source, take a look at the [[development guidelines]] which outlines some important things to think about. To find something interesting to work on, look at the list of [[example projects]]. You can also check the list of [[whois doing what]] to see what others are doing. If you do edit the code, please add [[Doxygen style comments]] to the code, which will then enhance the source code documentation.&lt;br /&gt;
&lt;br /&gt;
===How to get your code included===&lt;br /&gt;
If you create something that you think should be included in the official source tree, you can send an email to the development mailing list shown at [[Linux]] page. Sending your code in the form of a patch (also known as a .diff file), will make the chances of including it in the main code.&lt;br /&gt;
It&#039;s also considered standard practice to post one&#039;s modifications in the [http://taspring.clan-sy.com/phpbb/viewforum.php?f=12 development forum] and get feedback.&lt;br /&gt;
&lt;br /&gt;
==Multiplatform development==&lt;br /&gt;
Current development is done on the portable code only, located at [http://developer.berlios.de/projects/taspring-linux Berlios]&lt;br /&gt;
All future releases will be based on this code.&lt;br /&gt;
The current spring code is being developed on Windows and linux. A mac port, as well as other unixes, is very possible, but currently no developers are working on this. &lt;br /&gt;
Use the mailing list listed on the [[Linux]] page to reach all developers (windows and linux). However if you have a feature request or bug report, the mantis bugtracker is probably a better way.&lt;br /&gt;
Development information about the portable code can be found here: [[MultiplatformSpring]]&lt;br /&gt;
&lt;br /&gt;
==Spring Engine TODO list==&lt;br /&gt;
There is a TODO list for developers who want to contribute to the engine itself:&lt;br /&gt;
[[SpringEngineTODO]]&lt;br /&gt;
&lt;br /&gt;
See [[Glossary]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]] [[Category:Source development]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Development:Main&amp;diff=5557</id>
		<title>Development:Main</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Development:Main&amp;diff=5557"/>
		<updated>2006-03-16T16:34:22Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: /* Modifying and Compiling the Source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Outlined below is information on assisting with the development of the Spring source itself.&lt;br /&gt;
&lt;br /&gt;
::&amp;lt;small&amp;gt;NOTE: For information about developing a mod (units, maps, etc.) see the [[Mod Development]] page.&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Below you can find information on how to work with the Spring source in the current mainline (Windows platform) if you like to work on another platform (Linux &amp;amp; Mac) please look at the bottem of this page under &amp;quot;Multiplatform development&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==Starting Development==&lt;br /&gt;
To start development, you&#039;ll need&lt;br /&gt;
#The latest version of the source &lt;br /&gt;
#A good code manipulation program&lt;br /&gt;
#Compiling your modified source&lt;br /&gt;
&lt;br /&gt;
===Source Code Documentation===&lt;br /&gt;
A good place to start is the source code documentation, which can be found here: [http://taspring.clan-sy.com/doxygen/ doxygen]&lt;br /&gt;
&lt;br /&gt;
An explanation on how the code is executed ingame can be found in the [[Spring Engine Code]]&lt;br /&gt;
page.&lt;br /&gt;
&lt;br /&gt;
===Obtaining the Source===&lt;br /&gt;
&lt;br /&gt;
If you just want to take a look at the code you can use [http://svn.berlios.de/viewcvs/taspring-linux/trunk/ HTTP based viewing of the repository]&lt;br /&gt;
&lt;br /&gt;
Another option is to manually download it along with the latest released version of the game. However, for serious developers, a better way would be to download the source straight from the subversion(SVN) repository. This will also allow you to make a patch out of the changes you make to the code, and send it to one of the developers with SVN access.&lt;br /&gt;
&lt;br /&gt;
More information about downloading from the svn repository is avaiable at the &lt;br /&gt;
[http://developer.berlios.de/projects/taspring-linux BerliOS Project page]&lt;br /&gt;
Two good windows SVN clients are SmartSVN and TortoiseSVN.&lt;br /&gt;
&lt;br /&gt;
===Learning C++===&lt;br /&gt;
You will need to know C++ to modify or understand Spring&#039;s source code. If you&#039;re interested in learning C++, see [[Learning_CPP]]&lt;br /&gt;
&lt;br /&gt;
However please note that badly designed code (code created by a C++ novice for example), will even if working not be included in the spring code. Spring is a large project, and therefore it is necessary to stay away from hackjobs and create general solutions to problems.&lt;br /&gt;
&lt;br /&gt;
===Modifying and Compiling the Source===&lt;br /&gt;
See [[Development_IDEs]]. You either have to use the SCons buildsystem that is used on linux, or use the vcproj for building spring in Visual Studio 2003.&lt;br /&gt;
Currently the build is actively updated for linux and for Visual Studio 2003 &lt;br /&gt;
You will needs these libraries:&lt;br /&gt;
&lt;br /&gt;
*[http://www.boost.org Boost C++ library]&lt;br /&gt;
*[http://www.openal.org OpenAL Audio library]&lt;br /&gt;
*[http://glew.sf.net GLEW (OpenGL extension loading)]&lt;br /&gt;
*[http://www.winimage.com/zLibDll/ zlib + minizip]&lt;br /&gt;
*[http://www.libsdl.org SDL]&lt;br /&gt;
*[http://openil.sf.net DevIL (Image loading)]&lt;br /&gt;
*[http://www.freetype.org Freetype font rendering]&lt;br /&gt;
&lt;br /&gt;
*[http://msdn.microsoft.com/directx/sdk/ DirectX SDK] (Windows only)&lt;br /&gt;
*PlatformSDK (Windows Only)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you are using Windows, you can find most of the dependences pre-built at XXX and [http://taspring.clan-sy.com/phpbb/viewtopic.php?p=56846#56846 here] if you use VS8.&lt;br /&gt;
&lt;br /&gt;
==Development Suggestions==&lt;br /&gt;
&lt;br /&gt;
Before starting to make modifications to the source, take a look at the [[development guidelines]] which outlines some important things to think about. To find something interesting to work on, look at the list of [[example projects]]. You can also check the list of [[whois doing what]] to see what others are doing. If you do edit the code, please add [[Doxygen style comments]] to the code, which will then enhance the source code documentation.&lt;br /&gt;
&lt;br /&gt;
===How to get your code included===&lt;br /&gt;
If you create something that you think should be included in the official source tree, you can send an email to the development mailing list shown at [[Linux]] page. Sending your code in the form of a patch (also known as a .diff file), will make the chances of including it in the main code.&lt;br /&gt;
It&#039;s also considered standard practice to post one&#039;s modifications in the [http://taspring.clan-sy.com/phpbb/viewforum.php?f=12 development forum] and get feedback.&lt;br /&gt;
&lt;br /&gt;
==Multiplatform development==&lt;br /&gt;
Current development is done on the portable code only, located at [http://developer.berlios.de/projects/taspring-linux Berlios]&lt;br /&gt;
All future releases will be based on this code.&lt;br /&gt;
The current spring code is being developed on Windows and linux. A mac port, as well as other unixes, is very possible, but currently no developers are working on this. &lt;br /&gt;
Use the mailing list listed on the [[Linux]] page to reach all developers (windows and linux). However if you have a feature request or bug report, the mantis bugtracker is probably a better way.&lt;br /&gt;
Development information about the portable code can be found here: [[MultiplatformSpring]]&lt;br /&gt;
&lt;br /&gt;
==Spring Engine TODO list==&lt;br /&gt;
There is a TODO list for developers who want to contribute to the engine itself:&lt;br /&gt;
[[SpringEngineTODO]]&lt;br /&gt;
&lt;br /&gt;
See [[Glossary]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]] [[Category:Source development]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Development:Main&amp;diff=5553</id>
		<title>Development:Main</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Development:Main&amp;diff=5553"/>
		<updated>2006-03-10T20:27:47Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: /* Modifying and Compiling the Source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Outlined below is information on assisting with the development of the Spring source itself.&lt;br /&gt;
&lt;br /&gt;
::&amp;lt;small&amp;gt;NOTE: For information about developing a mod (units, maps, etc.) see the [[Mod Development]] page.&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Below you can find information on how to work with the Spring source in the current mainline (Windows platform) if you like to work on another platform (Linux &amp;amp; Mac) please look at the bottem of this page under &amp;quot;Multiplatform development&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==Starting Development==&lt;br /&gt;
To start development, you&#039;ll need&lt;br /&gt;
#The latest version of the source &lt;br /&gt;
#A good code manipulation program&lt;br /&gt;
#Compiling your modified source&lt;br /&gt;
&lt;br /&gt;
===Source Code Documentation===&lt;br /&gt;
A good place to start is the source code documentation, which can be found here: [http://taspring.clan-sy.com/doxygen/ doxygen]&lt;br /&gt;
&lt;br /&gt;
An explanation on how the code is executed ingame can be found in the [[Spring Engine Code]]&lt;br /&gt;
page.&lt;br /&gt;
&lt;br /&gt;
===Obtaining the Source===&lt;br /&gt;
&lt;br /&gt;
If you just want to take a look at the code you can use [http://svn.berlios.de/viewcvs/taspring-linux/trunk/ HTTP based viewing of the repository]&lt;br /&gt;
&lt;br /&gt;
Another option is to manually download it along with the latest released version of the game. However, for serious developers, a better way would be to download the source straight from the subversion(SVN) repository. This will also allow you to make a patch out of the changes you make to the code, and send it to one of the developers with SVN access.&lt;br /&gt;
&lt;br /&gt;
More information about downloading from the svn repository is avaiable at the &lt;br /&gt;
[http://developer.berlios.de/projects/taspring-linux BerliOS Project page]&lt;br /&gt;
Two good windows SVN clients are SmartSVN and TortoiseSVN.&lt;br /&gt;
&lt;br /&gt;
===Learning C++===&lt;br /&gt;
You will need to know C++ to modify or understand Spring&#039;s source code. If you&#039;re interested in learning C++, see [[Learning_CPP]]&lt;br /&gt;
&lt;br /&gt;
However please note that badly designed code (code created by a C++ novice for example), will even if working not be included in the spring code. Spring is a large project, and therefore it is necessary to stay away from hackjobs and create general solutions to problems.&lt;br /&gt;
&lt;br /&gt;
===Modifying and Compiling the Source===&lt;br /&gt;
See [[Development_IDEs]]. You either have to use the SCons buildsystem that is used on linux, or use the vcproj for building spring in Visual Studio 2003.&lt;br /&gt;
Currently the build is actively updated for linux and for Visual Studio 2003 &lt;br /&gt;
You will needs these libraries:&lt;br /&gt;
&lt;br /&gt;
*[http://www.boost.org Boost C++ library]&lt;br /&gt;
*[http://www.openal.org OpenAL Audio library]&lt;br /&gt;
*[http://glew.sf.net GLEW (OpenGL extension loading)]&lt;br /&gt;
*[http://www.winimage.com/zLibDll/ zlib + minizip]&lt;br /&gt;
*[http://www.libsdl.org SDL]&lt;br /&gt;
*[http://openil.sf.net DevIL (Image loading)]&lt;br /&gt;
*[http://www.freetype.org Freetype font rendering]&lt;br /&gt;
&lt;br /&gt;
If you are using Windows, you can find most of the dependences at [http://taspring.clan-sy.com/phpbb/templates/subSilver/images/icon_minipost.gif this fourm post] and [http://taspring.clan-sy.com/phpbb/viewtopic.php?p=56846#56846 here] if you use VS8.&lt;br /&gt;
&lt;br /&gt;
==Development Suggestions==&lt;br /&gt;
&lt;br /&gt;
Before starting to make modifications to the source, take a look at the [[development guidelines]] which outlines some important things to think about. To find something interesting to work on, look at the list of [[example projects]]. You can also check the list of [[whois doing what]] to see what others are doing. If you do edit the code, please add [[Doxygen style comments]] to the code, which will then enhance the source code documentation.&lt;br /&gt;
&lt;br /&gt;
===How to get your code included===&lt;br /&gt;
If you create something that you think should be included in the official source tree, you can send an email to the development mailing list shown at [[Linux]] page. Sending your code in the form of a patch (also known as a .diff file), will make the chances of including it in the main code.&lt;br /&gt;
It&#039;s also considered standard practice to post one&#039;s modifications in the [http://taspring.clan-sy.com/phpbb/viewforum.php?f=12 development forum] and get feedback.&lt;br /&gt;
&lt;br /&gt;
==Multiplatform development==&lt;br /&gt;
Current development is done on the portable code only, located at [http://developer.berlios.de/projects/taspring-linux Berlios]&lt;br /&gt;
All future releases will be based on this code.&lt;br /&gt;
The current spring code is being developed on Windows and linux. A mac port, as well as other unixes, is very possible, but currently no developers are working on this. &lt;br /&gt;
Use the mailing list listed on the [[Linux]] page to reach all developers (windows and linux). However if you have a feature request or bug report, the mantis bugtracker is probably a better way.&lt;br /&gt;
Development information about the portable code can be found here: [[MultiplatformSpring]]&lt;br /&gt;
&lt;br /&gt;
==Spring Engine TODO list==&lt;br /&gt;
There is a TODO list for developers who want to contribute to the engine itself:&lt;br /&gt;
[[SpringEngineTODO]]&lt;br /&gt;
&lt;br /&gt;
See [[Glossary]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Maps&amp;diff=14085</id>
		<title>Maps</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Maps&amp;diff=14085"/>
		<updated>2006-01-23T06:17:38Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Maps ==&lt;br /&gt;
With version 0.6 Spring has a new map format.&lt;br /&gt;
&lt;br /&gt;
=== Download maps ===&lt;br /&gt;
You can find a lot of new maps at [http://www.fileuniverse.com/?page=listing&amp;amp;ID=121 FileUniverse].&lt;br /&gt;
&lt;br /&gt;
=== Map Information ===&lt;br /&gt;
*[[ Top 5 Maps]]: For information about the top 5 most played maps.&lt;br /&gt;
*[[Map reviews]]: Map reveiws galore&lt;br /&gt;
&lt;br /&gt;
=== Making Maps ===&lt;br /&gt;
*[[Maps:Tutorial]]: A simple tutorial for making maps in an image editor&lt;br /&gt;
*[[Map Making Guide]]: aGorms Map Making Guide. A more indepth tutorial but unfinished.&lt;br /&gt;
*[[A Complete Map Making Tutorial]]: Everything you need to know (under construction)&lt;br /&gt;
*[[Create maps]]: A slightly dissorganised, but complete tutorial. Needs cleaning up.&lt;br /&gt;
*[[MapsBalance]]: So, you&#039;re making a map. But how much resources should it have?&lt;br /&gt;
&lt;br /&gt;
=== Mappers Clan ===&lt;br /&gt;
[[Map Making Guild]]: That weird fish aGorm set up a clan for poor mappers that can&#039;t get into a clan on there gaming merit... (Mainly for himself therefor...)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
TIPS:&lt;br /&gt;
&lt;br /&gt;
A useful tip, on almost every map in a 1v1 you will start opposite your opponent unless you choose your position. this is because random order simply randomly distributes players at the default start points which in almost every map are opposite each other. One exception that I know of is flooded desert where you both start on the left hand island.&lt;br /&gt;
----&lt;br /&gt;
[[Category:Maps]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=FAQ&amp;diff=6842</id>
		<title>FAQ</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=FAQ&amp;diff=6842"/>
		<updated>2006-01-23T06:11:32Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Typo&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;
===When will Spring be ready?===&lt;br /&gt;
Now! You can get the latest beta from the [http://taspring.clan-sy.com/download.php download page].&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 one might call the official version, or at this point, simply the working version :) ) uses: OpenGL for rendering, DirectSound for sound, and Winsock for networking.&lt;br /&gt;
&lt;br /&gt;
The Linux port (more info below) will use 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;
&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 only runs on Windows.&lt;br /&gt;
Members of the community are working on porting the game to the Linux platform.&lt;br /&gt;
This will make the code more portable so if someone wants to port it to another platform please contact us.&lt;br /&gt;
We (the Sy) will not, however, port it ourselves at any time (in the foreseeable future). There is simply no compelling reason for us to do so. Additionally, we would like to focus on getting it to work well.&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;
===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 this doesn&#039;t solve the problem 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;
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 40 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.&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;
Go into your Spring folder and find the &#039;Spring.exe&#039; file. Double click on it and say &#039;yes&#039; to host.&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 I make games nobody joins.===&lt;br /&gt;
You are probably behind a firewall. See question above.&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;.&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;
----&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 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;
===When I start a game, I am 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;
This happens when you start a single player game or when the host uses force start.  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;
&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.  For versions 0,60 and 0.61, to view a demo start spring.exe as non server and enter the full demo name as server address (&amp;quot;050803-Ashpen-0.60b1.sdf&amp;quot; for example). Note that you don&#039;t need to enter the &amp;quot;demos&amp;quot; folder name. Due to the large font, you will find that the name is too big to fit on the screen. If you&#039;re confident typing blind from memory, that&#039;s OK. Otherwise go into windows explorer, select the demo file you want, press F2, Ctrl-C, and do Ctrl-V to paste it into the server address.&lt;br /&gt;
&lt;br /&gt;
For versions prior to 0.60b1, the game was always recorded to test.sdf which is overwritten by each new game, so the name had to be changed by hand if you wanted to save it. You had to use a name other than test.sdf to view a demo.&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 [[Maps]] page for all the map info.&lt;br /&gt;
&lt;br /&gt;
===How do I create units/mods?===&lt;br /&gt;
See the [[Unit Development]] or the [[Mod Development]] page on creating units.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_guide&amp;diff=17473</id>
		<title>Spring guide</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_guide&amp;diff=17473"/>
		<updated>2006-01-23T06:03:02Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Ã¢â‚¬ËœÃ¢â‚¬â„¢Keep in mind that spring still is a beta , therefore crashes happen (a lot) and we (well, not me!) havenÃ¢â‚¬â„¢t got everything fixed out yet.Ã¢â‚¬â„¢Ã¢â‚¬â„¢&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Before we start, letÃ¢â‚¬â„¢s have some background info.&lt;br /&gt;
&lt;br /&gt;
== TA: so what&#039;s so cool about this game ? ==&lt;br /&gt;
[warning, boring info that doesnÃ¢â‚¬â„¢t really mean anything]&lt;br /&gt;
&lt;br /&gt;
TA was created by Cavedog (R.I.P) in 1997, about half a year before(!!!) Starcraft was released. It was revolutionary in many ways, with 3D graphics (but a fixed camera) good animations (aircraft barrel rolled and leaned when they turned etc.), 3D terrain and many units (150 in the original game.) But in my not so humble opinion, the 3 greatest things that set TA apart were...&lt;br /&gt;
&lt;br /&gt;
* Its physics ! Every shot trajectory was calculated ! An artillery shell could try to get over a hill and hit an aircraft, which exploded into bits, damaging other troops nearby, which could also explode and set forests in fire. Yeah, might not sound that big after 7 years, but back then we had Starcraft, which defied at least a half dozen physics laws.&lt;br /&gt;
&lt;br /&gt;
(Example of the tentacle through space. Yeah, really realistic)&lt;br /&gt;
[http://fast.filespace.org/Kixxe/WTF.png Click here]&lt;br /&gt;
&lt;br /&gt;
* The order system ! You could have 300 units waiting to be built, and when they are done, they could go and patrol an area and attack anyone in it. Order queues were limitless. You could build your whole base and drink tea while it was getting built. Construction units on patrol would repair damaged units, help build things and reclaim stuff (sucking it in and transforming it into resources.)&lt;br /&gt;
&lt;br /&gt;
* The resources system ! Contrary to other RTS games, the resources in TA are infinite. What limits resource consumption is the rate at which they can be gathered. This sole fact would make for longer and more epic games, with hundreds or thousands of units fighting in the endgame.&lt;br /&gt;
&lt;br /&gt;
Pretty cool game. If you want, check out their old website for more info. [http://www.fileuniverse.com/Total_Annihilation_Mirror/totala/index.html Click here]&lt;br /&gt;
&lt;br /&gt;
[/warning, boring info that doesnÃ¢â‚¬â„¢t really mean anything]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Anyway, enough with my rambling, onto Spring!&lt;br /&gt;
&lt;br /&gt;
Now, as I told you, Spring was inspired by TA and has the same features TA had. Plus a few new thingsÃ¢â‚¬Â¦ check out Spring features page for more info.&lt;br /&gt;
[http://taspring.clan-sy.com/wiki/Features Click here]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Resources==&lt;br /&gt;
&lt;br /&gt;
There are two types of resources in spring, namely &#039;&#039;metal&#039;&#039; and &#039;&#039;energy&#039;&#039;. Each of these two resources can be collected in a number of different ways. The amount of each resource that you currently have stockpiled is represented by a coloured bar, one for each resource, along the upper edge of the screen. The rate at which you are presently collecting and consuming each of the two types is represented by a number and a + or - sign. If you are collecting at a faster rate then the rate at which you are consuming you will see your coloured bar grow as resources accumulate. Your stockpiled resources are being depleted whenever the coloured bar is shrinking. There are storage buildings which you can build for each type of resource and these will increase the amount of each which can be stored. Units and structures cost both metal and energy to build, while some units or structures also require energy to walk, shoot or operate in general.&lt;br /&gt;
&lt;br /&gt;
Metal is collected continuously from either a metal extractor, often called Ã¢â‚¬ËœmexesÃ¢â‚¬â„¢ which extract from certain areas of the map, or by using a metal maker, abbreviated as Ã¢â‚¬ËœMMÃ¢â‚¬â„¢ which convert energy into metal. Both will only operate so long as there is sufficient energy to power them. However, metal makers require a lot of energy. &lt;br /&gt;
A faster way to gather metal is by using either your commander or a construction bot to &#039;reclaim&#039; it from the remains of destroyed units and buildings! They can even reclaim buildings which have not been destroyed and they don&#039;t have to belong to your enemy to be reclaimed.&lt;br /&gt;
&lt;br /&gt;
Energy can be produced by a number of different buildings or it can be reclaimed (you can reclaim trees to gather energy). There are many different types of energy producers, including solar collectors and power plants, but they will be covered in another section.&lt;br /&gt;
&lt;br /&gt;
In a game, always Ã¢â‚¬Å“keep an eye on your metal and energy barÃ¢â‚¬Å“ because if one of them goes to zero, particularly energy, your building rate will stall,(metal makers and extractors will stop producing) and some units will be unable to fire their energy weapons (eg. LRPCs, Annihilators, Doomsday Machines). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==A Normal Spring Game==&lt;br /&gt;
&lt;br /&gt;
Anyway, now you will learn the basics of a normal Spring game, as I see it. &lt;br /&gt;
Every Spring game starts with all players only havingÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The COMMANDER&#039;&#039;&#039;! (Insert DUN DUN DUUUUUNN)&lt;br /&gt;
&lt;br /&gt;
The Commander is the unit you start with and the most important one in game. He is unique and cannot be rebuilt. In fact, there is a mode where the game ends when the commander dies, so never leave him alone.&lt;br /&gt;
&lt;br /&gt;
The fastest builder, he can walk and build under water, he makes a nuke sized explosion when he dies, he has a laser and the privilege of a Disintegrator gun (alias D-Gun). &lt;br /&gt;
The D-gun is the single most powerful weapon in the whole game, which kills ANY (ANY, I mean it!) unit in one hit (friend or foe no difference, be careful!). Even if that sounds a little overkill, keep in mind that the Commander has a very limited range, is defenceless against any aircraft and long range artillery and when he is submerged, he cannot shoot. (Subs! Onoz!)&lt;br /&gt;
&lt;br /&gt;
The Commander is used for setting up a base, and early base defences. The D-gun should protect him against any level 1 unit that tries to kill him, so if you lose your Commander in the beginning of the gameÃ¢â‚¬Â¦ then you&#039;re dead. You lose your best (only?) builder and attacker, plus you have a nuke size explosion that may destroy half or all of your base.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
AnywayÃ¢â‚¬Â¦ if you&#039;re seeing everything in a top down perspective, click the Commander (type Ctrl+C if you can&#039;t find him) with left mouse button to select him.&lt;br /&gt;
&lt;br /&gt;
(If you have a crosshair as a mouse, press j. If your camera is ZOOMED out or all jerky, press ctrl+j until you find OTA camera.)&lt;br /&gt;
&lt;br /&gt;
Okay, letÃ¢â‚¬â„¢s now discuss &#039;&#039;&#039;how to build stuff&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Like any normal RTS, itÃ¢â‚¬â„¢s choose and click location. But there is more with Spring. Hold shift and click on different locations to make the unit build the same building there. Hold shift and drag and you will make a line of the building. Hold ctrl and shift to make boxes/rectangular shapes of buildings. Use these ! Make a line of DT (Dragon Teeth, small piece of wall/cover) instead of clicking each and everyone. The controls are there to help you.&lt;br /&gt;
This is called queuing up stuff. You can use almost every single command in a queue. Buildings can be queued to build lots of different units, and then the other orders in the behaviour of the unit. You can make them walk to something, or guard/follow a unit by pressing G and selecting the unit to guard. Try it.&lt;br /&gt;
Selecting a unit and pressing Shift key will show the orders queue.&lt;br /&gt;
&lt;br /&gt;
Build 2 solar generators, or 4 wind generators to gather energy. Keep in mind that wind is pretty unstable, and that a number of maps (like lunar ones) have no wind at all ! (The level of wind and tides in the map is indicated in the Map Selector in the Lobby).&lt;br /&gt;
&lt;br /&gt;
Now select the Metal extractors and the whole screen turns black and green. Okay, place one on the green stuff. (The greener, the better! Like broccoli!)&lt;br /&gt;
&lt;br /&gt;
Oh, and the minimap controls in spring are reversed. Meaning that you have to rightclick to move the screen to the location. Once the new Gui is out and offical, this will be fixed.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==The TA bestiary==&lt;br /&gt;
&lt;br /&gt;
Okay, time to describe the cool units that are at your disposal to make your enemies bleed. 8)&lt;br /&gt;
&lt;br /&gt;
(Disclaimer : This will discuss the types of units, not every unit. Therefore, if I say that vehicles have large armour, I donÃ¢â‚¬â„¢t mean artillery of course.)&lt;br /&gt;
&lt;br /&gt;
On to the first level 1 lab/plant to build. The categories areÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
===Vehicles===&lt;br /&gt;
&lt;br /&gt;
These babies are all about armour. The level 1 units are pretty basic, with more armour and (build) speed and than their K-bot counterparts. Level 2 vehicles show even more of the same pattern: better armour than their K-bot counterparts. Level 2 also offers the mobile Flak unit, which is the only real level 2 mobile AA.&lt;br /&gt;
Their weakness is that they are clumsy, turn slowly, and most of them canÃ¢â‚¬â„¢t climb mountainsÃ¢â‚¬Â¦ at all. Leads to trouble when an explosion makes a crater: units survive but can get stuck in the crater. Or just when they are trying to get up a steep hill. But sooner or later, you&#039;ll learn what kind of destruction a rush of 30 Goliaths can do !&lt;br /&gt;
&lt;br /&gt;
===K-Bots===&lt;br /&gt;
&lt;br /&gt;
K-bots have genereally less powerful weapons than tanks, and are also less heavily armoured.&lt;br /&gt;
So why build them in the first place?&lt;br /&gt;
Because they are cheaper!  And since they are cheaper, you can build more and outnumber your enemies. This doesnÃ¢â‚¬â„¢t work out that good in game though, since tanks ARE stronger. K-bots are also smaller, and will slip through DT and such alike easier than tanks.&lt;br /&gt;
And finally, the third advantage (which IMO is the biggest) of K-bots are that they can climb most mountains with ease! Climb by defences, up on mountains, through holes, these are all-purpose units.&lt;br /&gt;
&lt;br /&gt;
===Aircraft===&lt;br /&gt;
&lt;br /&gt;
Planes are planes. In Spring, thereÃ¢â‚¬â„¢s a plane for every role. Bombers, fighters, gunships, flying radar, transports, stealth fighters and torpedo bombers. Planes are fast, and are not affected by terrain. There is no wall or relief that can stop a plane. You can just swoop in a base and take out AA with your gunship, and then bomb the crap out of their important structures. To stop them, you&#039;ve got to rely on Anti Air (AA) units.&lt;br /&gt;
&lt;br /&gt;
On the downside, planes are quite expensive to build and are relatively fragile. They are also the only units that have an anti unit against them (Except subs). When someone finds out you&#039;re building a large air fleet, they just cram their base full of AA and their army with mobile AA. And the only counter is more planes than their AA can handle, or a ground troop to take the AA down. A combined ground and air attack can be very destructive. Good luck!&lt;br /&gt;
&lt;br /&gt;
===Ships===&lt;br /&gt;
&lt;br /&gt;
Ships are good on a map with water. (DUH!) Ships come in many different kinds, but mostly for taking out other ships or bombing the crap out of land units in some way or another. The ships&#039; strength is their powerful weaponry and their long range. All ships made to take out land have long range. Ships also have lots of armour. Another thing thatÃ¢â‚¬â„¢s good about ships is that there is not much you can do to stop them because they are usually out of range. Once you see that the enemy has ships, either build a dock and a navy real fast or build planes and pray that he doesnÃ¢â‚¬â„¢t have too many AA ships. &lt;br /&gt;
Their weaknesses are slowness (especially when turning), they can be taken out by submarines, and of course they are confined to water, meaning that they are often stuck with units just outside of their reach.&lt;br /&gt;
&lt;br /&gt;
And they are *extremely* expensive, metal-wise.&lt;br /&gt;
&lt;br /&gt;
===Hovercraft===&lt;br /&gt;
&lt;br /&gt;
(These are counted as level 2 units, so I would not recommend them as the first to build unless itÃ¢â‚¬â„¢s the perfect map for them)&lt;br /&gt;
&lt;br /&gt;
Hovercrafts are a tank and a plane (some say ship, but I find planes to be more accurate for some reason O.o) mixed. Sure itÃ¢â‚¬â„¢s weaker than your average tank, and slower than your average plane. Whats their use? They are meant for swampy maps that means that both tanks and ships are a weakness, and offcourse since none can&#039;t be used, everyone just spams out AA since they think aircrafts are the only way. Great suprise for the enemy when 50 hovercrafts comes in agsint their flakkers and MT...&lt;br /&gt;
Long story short, Hovercrafts are good for those who like (or must) attack from the ground, but canÃ¢â‚¬â„¢t since there is too much water. &lt;br /&gt;
&lt;br /&gt;
Their weakness is their low climbing ability, and that they&#039;re weaker than a tank and slower than a plane. (DonÃ¢â‚¬â„¢t build them on a land map, tanks ARE better.)&lt;br /&gt;
&lt;br /&gt;
===Towers and Turrets===&lt;br /&gt;
&lt;br /&gt;
Like TA, Spring boasts an impressive range of plasma and laser towers, cannons and turrets. These cannons will undoubtly be essential parts of your offensive as well as defensive strategies.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Light laser tower (LLT)&#039;&#039;&#039;&lt;br /&gt;
A cheap and fast laser that hits almost every time. Mostly useful against level 1 units, but can be used in groups against level 2. They suffer from short range, so most long range weapons can kill them(Samsons, for example). Since they fire faster than their bigger brothers, LLTs are more useful against hordes of small weak units than a single strong one. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Heavy laser tower (HLT)&#039;&#039;&#039;&lt;br /&gt;
This is the only tower that works on those pesky level 2 units that just wonÃ¢â‚¬â„¢t die. These shoot slower, but with much more power than the LLT. They also have a longer range and can be quite effective against air attacks. They cost a fair amount and take a long time to build, but they are often worth it.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Missile Tower (MT)&#039;&#039;&#039;&lt;br /&gt;
The missile tower is good for planes or weak level 1 units. They shoot a weak rocket that almost hits their target every time. They have a fair range, but very low hp. They work on most level 2 planes as well, but should be backed up with Flack cannons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Pop-up Cannons&#039;&#039;&#039;&lt;br /&gt;
Pop-up cannons are pretty cheap middle range gun. A guardian can outshoot them, but they are still a choice to use. When Ã¢â‚¬ËœÃ¢â‚¬â„¢offÃ¢â‚¬â„¢Ã¢â‚¬â„¢ they take 50% less damage! I heard that a closed popup can withstand a nuke! (If itÃ¢â‚¬â„¢s not a direct hit) In XTA you can build them with level 1 construction K-bot or whatever.  Sometimes individual wars between 2 or 4 pop-ups break out, where both sides try to kill the other&#039;s ones. Just remember to repair them, as with all PCÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Middle range Plasma Cannons (MRPC)&#039;&#039;&#039;&lt;br /&gt;
Guardians and such alike. These arenÃ¢â‚¬â„¢t for attacking, but they have a pretty long range, and are not too expensive. Plus their targeting is pretty fast, meaning they are practically made for defence and very lethal. Perfect to have on a hill close to a HLT and some MTÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Long Range Plasma Cannons (LRPC)&#039;&#039;&#039;&lt;br /&gt;
We are talking Big berthas, Intimidators and such alike. These babies got the RANGE and may be the ultimate weapon on small maps. The Big Bertha, yeah. An amazing unit. Not the ultimate, but several times cheaper and more accurate than a Buzz Saw/Vulcan, and its accuracy will improve with every kill. Not good at defending, since its slow targeting makes it impossible to hit moving targets. Try to build one on a small maps, or just build one close to the enemy and your Bertha will start pounding his base mercilessly. In fact, build several, with a lot of AA around&#039;em (and ground, if thatÃ¢â‚¬â„¢s possible) and you&#039;ll see your enemy&#039;s morale quickly fall to the ground. A LRPC expansion can sometimes become the winning factor of a game.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Very long range plasma Cannons (VLRC)&#039;&#039;&#039;&lt;br /&gt;
Buzzsaws are big, cost much, are huge energy suckers, are VERY inaccurate and are pretty slow on targeting. BUT, they have the DOUBLE range of a normal LRPC and shoot 4(!!!) shots at a time. This is the one thing to finish those ÃƒÂ¼ber porckers. &lt;br /&gt;
Defend these well, with lots of AA around and in a wide circle. They only have about 5000 hp, so killing&#039;em is easy if you donÃ¢â‚¬â„¢t have AAÃ¢â‚¬Â¦&lt;br /&gt;
In OTA however Vulcans/Buzzsaws have SLIGHTLY LESS range than LRPCs, so LRPCs are generally better because they are so cheaper and each are a seperate entity with a fair bit of life(around 2500 i think).&lt;br /&gt;
&lt;br /&gt;
The obvious way to kill LRC is to use planes, since they are fast enough to enter and kill it all.&lt;br /&gt;
&lt;br /&gt;
===The first steps===&lt;br /&gt;
&lt;br /&gt;
Now comes the tricky part. The first minute is always the same really, so what after that?&lt;br /&gt;
Well, itÃ¢â‚¬â„¢s hard to judge. But here are some paths that can be taken.&lt;br /&gt;
&lt;br /&gt;
1. Build many construction units and send them out to build mexxes and Geothermal Power Plants. Then a defence and maybe some DT.&lt;br /&gt;
&lt;br /&gt;
2. Build some construction units, and then start building defences. Follow the Ã¢â‚¬ËœÃ¢â‚¬â„¢line defenceÃ¢â‚¬â„¢Ã¢â‚¬â„¢ guide lines.&lt;br /&gt;
Build Fusion Power Plants and Metal makers, and then an army. After that, use the army how armies are used best.&lt;br /&gt;
This strategy is called PORCING, and is considered by many as BAD.&lt;br /&gt;
There are disadvantages with this. You canÃ¢â‚¬â„¢t use many metal extractors or Geos, so you have slim to no resources to build your base. A popular strategy is to kill the anti-nuke, and then blow the whole compact base to bits.&lt;br /&gt;
&lt;br /&gt;
3. Build a small army of 3-6 units and attack the enemy. The goal isnÃ¢â‚¬â„¢t to kill him, but to do as much damage as possible to his resources and hinder his economy. Mexxes are the most important, and then look for wind or solar generators.&lt;br /&gt;
Try to keep on attacking him, but remember to still tech up and build defences.&lt;br /&gt;
&lt;br /&gt;
Anyway, use your construction units to build defences of SOME kind. Take advantage of Geothermal gases. Yeah the smoking stuff. You can place Geo plants there for good, cheap and space saving energy. If youÃ¢â‚¬â„¢re expanding, use every Mex&#039; positions, and try to find a place to settle your defence line.&lt;br /&gt;
&lt;br /&gt;
When you can defend yourself from most level 1 units, start on your level 2 building.&lt;br /&gt;
&lt;br /&gt;
When itÃ¢â‚¬â„¢s done, ALWAYS build a construction unit first. Use it for your first mini Fusion. (Or build some mobile fusion at the vehicle plant if you&#039;re Arm)&lt;br /&gt;
Build level 2 units in the meantime.&lt;br /&gt;
Low on metal? Upgrade the finest of your Mexxes to Moho Mexxes. They are bigger and better (but they suck up energy).&lt;br /&gt;
You can also build a Moho Metal maker if you have enough energy to support it. (MMM :p)&lt;br /&gt;
Okay, if you made this far, you must really start thinking about how to defeat the enemy. Look for his weak spot. Maybe a K-bot assault from the mountains ? Maybe planes. Maybe using amphibious units. That part is for you to figure out.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==STRATEGY==&lt;br /&gt;
&lt;br /&gt;
I read this guide through, and suddenly realisedÃ¢â‚¬Â¦ &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;where is the strategy?&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
So I fiddled this section up. Hope you&#039;ll learn something from it and thereby increase your Spring gaming experience.&lt;br /&gt;
&lt;br /&gt;
===Defence===&lt;br /&gt;
&lt;br /&gt;
AhÃ¢â‚¬Â¦ the overall defence. There are many different ways of making a good defence, but there are 3 main categories.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Compact defence!&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most common type of defence is a single line of defence, often with Dragon Teeth (DT) in front. Inside your base is some AA, and thatÃ¢â‚¬â„¢s about it. The good thing about this is that itÃ¢â‚¬â„¢s pretty easy and fast to set up, and you know where your territory ends, which can make the game much easier. Problem is, if something makes it past the line of defence, then youÃ¢â‚¬â„¢re screwed. Unless youÃ¢â‚¬â„¢re building line after line of defence, or have some units to stop em.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Spread out defence!&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I saw a guy pull this off one time, and he won with a large margin. The trick with this is to never really have a defined line of defence, just a Heavy Laser Tower (HLT) here, a radar there, some DT there, a mine here and thereÃ¢â‚¬Â¦&lt;br /&gt;
Basically, you expand every time you build a defence building, so in the end you have ENORMOUS space to move in. Since the defence is spread out, no one is gonna rush it past with some goliaths. You can have some units hide behind mountains and attack. He used merls who he trapped in fortification walls. I tried to run past the defence with an army of 30 bulldogs. His HLT and missile and plasma batteries stopped me before I even reached his final defence line.&lt;br /&gt;
Even though this defence are the best of &#039;em all, itÃ¢â‚¬â„¢s hard to build up, and requires lots off resources and time. IF youÃ¢â‚¬â„¢re able to pull it off, the only problem may be if they are fast enough to run by it all, or if you donÃ¢â‚¬â„¢t have much AA and 30 Brawlers are comingÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;No defenceÃ¢â‚¬Â¦ at all?&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Yes, this is an option. Okay, you may want some mines here and there, and some DT to stop them from running right through the door and AA in your base if their building planes. But how do you defend with no defence?&lt;br /&gt;
with units. The whole concept is that you put all your effort on making units. This works pretty well, since you can look where the enemy is going to attack, you can MOVE your whole defence to that location.&lt;br /&gt;
The problem with this defence, is that when you are attacking, you lose most of your defence. Sure you can leave units behind, but I find it hard mentally to leave half the army at home when i am attacking. &lt;br /&gt;
If you manage to pull this off, and make enough units to both attack and defend, then you have not wasted any money on defence, and you have a strong army!&lt;br /&gt;
&lt;br /&gt;
ThatÃ¢â‚¬â„¢s all I know of.&lt;br /&gt;
&lt;br /&gt;
Also, one thing to remember is to eliminate the largest threat first. If youÃ¢â‚¬â„¢re relying on DT, take out the FARK or construction planes first.&lt;br /&gt;
&lt;br /&gt;
Okay, you built a good defence&lt;br /&gt;
You must get into the mind of your enemy, and find the weakness of your defence.&lt;br /&gt;
Take a 4 seconds look through the enemyÃ¢â‚¬â„¢s eyes that just scouted the area. How would you attack something like this?&lt;br /&gt;
*&amp;quot;Well, I would try a gunship raid or attack from those undefended mountainsÃ¢â‚¬Â¦&amp;quot;&lt;br /&gt;
Then prevent that from happening, by reinforcing the area.&lt;br /&gt;
&lt;br /&gt;
-- addendum by Cain&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;The All Out Defence&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The opposite from the no defence, mixed with spread defence: the main concept is to invest resource in level 1 build planes, lot of them, and use them to quickly gather huge amounts of maps and resources, while keeping a lot of plane building / repairing turrets all over the places. This could be very effective on maps with few choke points where concentrate the defence or almost flats map where the overlapping range of defence will create a huge wall of shoot. The concept is to expand the defence line until you can shoot straight into the enemy base. Best used with a lot of level 2 aircraft defending the construction point. Note that the mobility of them is essential as you&#039;re concentrating all your resource in building plasma turrets. I usually end with a hundred of building planes and 20 to 50 brawler floating around... keep them away from Kroghot!&lt;br /&gt;
&lt;br /&gt;
===Moving===&lt;br /&gt;
Moving or attacking is pretty easy right? Just move from point a to point b and attack cÃ¢â‚¬Â¦&lt;br /&gt;
Nope.&lt;br /&gt;
First, you have to have your units move TOGETHER. . If some are trailing behind, then you just have to wait a little for them. DonÃ¢â‚¬â„¢t know how much of that is true. A way of having your units stick together is to take a pretty slow unit, like a Can and have others guard it.&lt;br /&gt;
Pressing control while moving units will make them keep their position, but not their speed. (they will spread out along the way, but &#039;&#039;try&#039;&#039; to get back into the position they was in when reaching the detination)&lt;br /&gt;
The &#039;&#039;Simple formation&#039;&#039; is also way of doing this, and will the units wiil automaticly form couple of lines. Ofen with the right units first also!&lt;br /&gt;
Transports are useful for moving units, but use the air transport (Valkyrie /Atlas) smartly and protect them. The other transportation units are harder to use, since they take more time to load/unload.&lt;br /&gt;
&lt;br /&gt;
===Attacking===&lt;br /&gt;
&lt;br /&gt;
When attacking, remember what the unit role in the fight is. Fark are used to heal your wounded important units or. Bulldogs are meant to take damage and give damage back. Merls are used to shot missiles from distance, and doesnÃ¢â‚¬â„¢t require a clear path. The question is what to heal. Merls die quickly, so one shot= dead can mean that the healing could be used on a bulldog instead. But bulldogs are ofen the first thing that the enemy targets and loses lots of HP fast. Wicht means that your healing may have slim effect on em... Therefore try to heal the middle mans. Not the giant hp monsters, not the weak defence strong/useful attack. Mobile artillery has enough hp to survive one or two attacks. Heal them so they stay alive.&lt;br /&gt;
&lt;br /&gt;
===Army vs Army===&lt;br /&gt;
&lt;br /&gt;
Many units attacking one unit is the best thing you can do, as if you kill one of theirs, they lose one source of fire power. Focus fire is the important. Using focus fire in a group of easy killed units is very effective. Using em all on the HP power houses is less effective.&lt;br /&gt;
When youÃ¢â‚¬â„¢re facing an army, always try to attack from behind or the side. Keep your units a little spread out when attacking. Not to far, but just so that area weapons donÃ¢â‚¬â„¢t do as much damage. Have your HP powerhouses at the front, or at the front plus sides. Keep em pretty close though but not too much. On the one hand, having them spread out makes it easier for the units behind to attack; on the other hand you donÃ¢â‚¬â„¢t want Zippers and Pyros running past them and flaming up everything.&lt;br /&gt;
&lt;br /&gt;
This is the normal way of attacking the army. There is the classical pincher movement tooÃ¢â‚¬Â¦&lt;br /&gt;
In this, you run one third of your HP powerhouses go to the left, one third to the right and have thze last third stay where they are. &lt;br /&gt;
This gives you 3 advantages: &lt;br /&gt;
*it&#039;s easier to get past the units and attack their weak units, or just run past them into the base, &lt;br /&gt;
*you do more damage, since their units will have to change their target all the time and can&#039;t escape &lt;br /&gt;
*it makes it MUCH harder for the enemy to run away or try to get past you.&lt;br /&gt;
&lt;br /&gt;
===Army vs Base===&lt;br /&gt;
&lt;br /&gt;
Okay, you may have made it past the ground troops, but the fight is not over (Unless he used units to defend, and didnÃ¢â‚¬â„¢t have any backup ones). Now you must face his base defence, and depending on the type of the defence he hasÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Line defence&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Gather your army and set up for battle a bit away from his base, and get ready to move in. Have the FARKS guard your main HP power houses, so they are in the front but still can hide behind em. Everything else behind that. When attacking, have several units attacking the HLT and plasma batteries, and use the FARKS to reclaim his Dragon Teeth. When you have a hole in it, just run like a maniac into the heart of the base. Split your tanks in 2 groups, 1 guarding your long range/high damage units and let the other go loose into the heart of the base. Find the Fusion reactors with your second group of tanks, and try to move the other big group to a place that is easy to defend while hitting the Fusions. Behind buildings is perfect! Kill as much as you can in short, or kill all^^. &lt;br /&gt;
If there are several lines of defence, dig the hole in each line of defence and repeat the same tactics.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Spread out defence&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
ArghÃ¢â‚¬Â¦ The tough one. While the individual towers are easy to beat, you canÃ¢â‚¬â„¢t run past his defences unless you like suicide. (And if you do, Ctrl+a and then ctrl+d will do the trick. A slice over the wrist works too.)&lt;br /&gt;
This is when you have to make penitence. Use your army, and slowly start killing the defence. Step by step, defence structure by defence structure. Keep building units, and moving them to the fray (you can use Air transports with repeat command and make them drop the units slightly away from the fight). Once you start getting close to his last line of defence, think of it as a line defence.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Units defence&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Think army vs army. DonÃ¢â‚¬â„¢t rush past &#039;em with all your units. Your units will spread out and try to go through holes in the enemyÃ¢â‚¬â„¢s formation. In a word, they are dead meat. If you MUST get to the base, have half of the tanks go round the units.&lt;br /&gt;
&lt;br /&gt;
===Naval Battles===&lt;br /&gt;
&lt;br /&gt;
Naval battles are hard to predict if you donÃ¢â‚¬â„¢t play island maps a lot, since there many factors to take into play. Since land units are removed, you have to think in a WHOLE new perspective. No land means that only Sea, Air and Hover units can fight (and LRC off course).&lt;br /&gt;
Anyway, try to have air units scouting land and sea, and looking how much AA the enemy has. Ships roam around assaulting other ships, with a mix of subs, sub killers, AA ships and normal ships. Hovercrafts should be the thing to use when assaulting land thatÃ¢â‚¬â„¢s a little far from shore. Have&#039;em escorted with planes or ships (or both).&lt;br /&gt;
&lt;br /&gt;
====Ships====&lt;br /&gt;
When using ships, have scout ships or planes scout the area in front, then subs and sub killers front. Use Long range ships at the sides to protect anything of value you might have with you (a sea transport or an aircraft carrier). When in battle, try to have the subs run away from sub killers, while your sub killers kill the enemy subs. Your subs should try to attack the most important ship they have, and then just go crazy.&lt;br /&gt;
When facing land, youÃ¢â‚¬â„¢re pretty much in for an easy win. Just have your ships blow it all up. If you face LRC, take them out first. The rest of it is out of your hands.&lt;br /&gt;
Remember if your opponent has air superiority or LRPCs use subs as they can&#039;t hit them :)&lt;br /&gt;
&lt;br /&gt;
====Hovercraft====&lt;br /&gt;
Use the Army vs Army or Army vs Base strategy here.&lt;br /&gt;
&lt;br /&gt;
-- addendum by Cain.&lt;br /&gt;
&lt;br /&gt;
Howercraft are quite expensive compared to other land units, but are very useful also in the map with a bit of water, targetting enemies without worring of those pesky gholiat... Note that they&#039;re much cheaper than ship, anyway.&lt;br /&gt;
&lt;br /&gt;
===Planes===&lt;br /&gt;
Hohoho, planes. Fun stuff to attack with. Anyway, the most stuff is basic with planes.&lt;br /&gt;
First, always attack the AA first. Unless your are going to do a suicide mission. Kill the AA with gunships, and use bombers to kill structures. Many players use gunships only, with is pretty wrong. Bombers take a little time to master but allied with gunships, they do a very good job. Scout early, so you can quickly see WHAT the enemy has and WHERE he has it. Use gunships to take out AA and act like overall decoys. Have Bombers fly in and bomb the crap out off his Fusion or whatever strategic point, and use the fighters to guard the bombers.&lt;br /&gt;
When facing units, do the same.&lt;br /&gt;
When facing sea, do the same thing, but add Torpedoes to bombers and gunships.&lt;br /&gt;
&lt;br /&gt;
-- addendum by Cain&lt;br /&gt;
&lt;br /&gt;
Know where the enemy commander is! In game where the commander death is a winning condition, a lot of bomber could just converge on him, killing on the first run.. especially the 2nd level bombers that have a nice turretted fast targetting laser! Also, gunship could distract enemy defence from your main attack force, or you can use them to make the defences of distract players shooting their own base....&lt;br /&gt;
&lt;br /&gt;
===Using Terrain===&lt;br /&gt;
&lt;br /&gt;
Using terrain wisely is very important. The issue of a game can depend on a good use of terrain.&lt;br /&gt;
First, Line of Sight (LOS) and RADAR. Both are blocked by terrain. So build your radars as high up as possibly, otherwise you may just not see anything. Use the relief at your advantage to hide an army or your important buildings from enemy radars.&lt;br /&gt;
Of course, one can also take advantage of altitude to increase fire range. A couple of Guardians on top of two high hills can easily devastate a small army.&lt;br /&gt;
Terrain also helps shield your units against attacks. Therefore, when youÃ¢â‚¬â„¢re building something high on top of a hill, try placing it a little behind the top. This is like crouching behind a crate when just your head and gun sticks up. But remember that terrain in Spring is deformable and can be leveled by impacts !&lt;br /&gt;
Know the climbing ability of your units. Hovercrafts and vehicles have pretty low climbing ability. But if a foe thinks he has sealed up all exits, your K-bots can still climb the mountains where he hasnÃ¢â‚¬â„¢t put any Dragon ToothÃ¢â‚¬Â¦ &lt;br /&gt;
Another good thing about terrain is that it mentally makes you feel safe. If there is a water barrier between me and the enemy, with 3 land bridges here and there, there probably wonÃ¢â‚¬â„¢t have much ground defence at a location AWAY from the bridges. Presuming the map is pretty flat (like &amp;quot;Flooded Desert&amp;quot;) a hovercraft assault would do A LOT of damage, right?&lt;br /&gt;
&lt;br /&gt;
===Energy and all the problems with it===&lt;br /&gt;
(in xta)&lt;br /&gt;
As I said before, most level 2 units require energy to move, shoot and operate in general. Meaning that if you have no energy to support your army, you can&#039;t do anything ! You can use this in your favor, by attacking his Fusions, or&lt;br /&gt;
by &#039;&#039;giving&#039;&#039; Metal makers to your enemy when you are attacking him(Edit:Metal makers are now turned off when given to an enemy), or he is attacking you!  Things that drain a lot of energy include LRPC, Goliaths, HLT, and most level 2 units.&lt;br /&gt;
(/in xta)&lt;br /&gt;
&lt;br /&gt;
===Paper-rock-scissor ?===&lt;br /&gt;
&lt;br /&gt;
Try to look at all units as individuals. Even if I didn&#039;t write much about each single unit, know your favorite ones and how to use them effectively in conjunction with the others. You&#039;ll find that some units are very complementary. The only real paper-rock relationships are AA and planes... Maybe subs vs sub killers...&lt;br /&gt;
&lt;br /&gt;
I didn&#039;t even mention cloaking, radar jamming, troops behaviour facing attacks, mines, etc, etc. The possibilities are immense, but I don&#039;t want to spoil your pleasure any longer, so I&#039;ll let you discover them by yourself.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Have fun !!!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Strategy Tips===&lt;br /&gt;
&lt;br /&gt;
-Expand! Metal is scarce. The more you get, the more you can build. Even if you have a good base, not a bad thing to do is to make it bigger.&lt;br /&gt;
&lt;br /&gt;
-Scout! Knowledge is power. You must know what your enemy is planning, and what the enemy knows about you. (Or thinks he know about youÃ¯?Å ) Check what he has, and what he is building. If heÃ¢â‚¬â„¢s building aircrafts, do something about it. Look for weaknesses in defence and such alike. If you or your ally are scouting, donÃ¢â‚¬â„¢t look away. Gather as much information as possible.&lt;br /&gt;
ALL buildings once in sight range will remain visible as &#039;ghost&#039; buildings if this option isn&#039;t turned off by the host.&lt;br /&gt;
&lt;br /&gt;
-Radar = GOOD^^. Radar checks areas for units, increases your units LOS and is overall helpful. A radar with your army makes a big difference when attacking. But so is Jamming. Jamming is good for sneak attacks. They are cheap, so just build one and make your units guard it.&lt;br /&gt;
&lt;br /&gt;
-Work Together! Often I see allies who just mind their own business and donÃ¢â‚¬â„¢t care what the other person&#039;s doing. DONÃ¢â‚¬â„¢TÃ¢â‚¬Â¦ DOÃ¢â‚¬Â¦ THIS!!! Listen to each other, make up a plan. Prepare combined attacks. If there is a 2v2, then itÃ¢â‚¬â„¢s 2 alliesÃ¢â‚¬â„¢ vs 2 allies. Not a ffa with neutral partners. Type h to share units. Left click on your resource bars to auto share resources with allies.&lt;br /&gt;
&lt;br /&gt;
-Power Plants. In order to level out the building costs, it is important to make a smooth transition from the least powerful generators to the most powerful ones stepwise. First solar, then Geo, then mobile/mini Fusion then Fusion.&lt;br /&gt;
&lt;br /&gt;
-Check your resource bar. Try to keep a fine line between having too much resources/wasting, and having a nanostall. Use your factories and such accordingly. If you have a lot of resources, try using your old level 1 factories to build some units. Also, try to find the time to build an energy/metal storage...&lt;br /&gt;
&lt;br /&gt;
-Spread out your buildings/units. Since every unit explodes, they damage units close to them. This is especially important with Fusions... (I once saw someone put 13 mobile fusions close to each other... blew up half his base with 2 (!!!) LRPC shots...)&lt;br /&gt;
&lt;br /&gt;
-Queue (yeah, easy word for it to:/) up orders! You can almost win the game by pausing, queuing up some stuff, and then go eat lunch. Not really, but holding shift is good whilst putting up buildings.&lt;br /&gt;
&lt;br /&gt;
-Guard = following and protection. Use planes to guard your tanks, subs to guard your transports, construction units to automatically repair important units or and so on. Then they will choose to attack whatever is hurting their guard object first. You can even do this to structures, for units who are built to move to a unitÃ¢â‚¬â„¢s position or AA to attack whatever is shooting on the Fusion reactors, etcÃ¢â‚¬Â¦ &lt;br /&gt;
Overall, this makes working with several unit types easier.&lt;br /&gt;
&lt;br /&gt;
-Reclaim stuff (sucking it in and transforming it into resources). When you&#039;re starting to run low on metal, reclaim the enemyÃ¢â‚¬â„¢s and your own corpses. Trees give energy, so if youÃ¢â‚¬â„¢re out on energy in the beginning... You can reclaim a whole area by shift-clicking.&lt;br /&gt;
&lt;br /&gt;
-The key for porcers are to build LRPC. Or even better, build a nuke and use LOTS of planes to kill his anti-nuke. Then BOOM!&lt;br /&gt;
Also as you have way loads more metal and space to move in than your opponent, you can easily afford 2 nukes. An anti-nuke can&#039;t deal with 2 nukes heading towards it(and if you aim the nukes at the antinuke...^^!&lt;br /&gt;
&lt;br /&gt;
-Experiment! I suggest you go into single player and try every unit. Use commanders for arm, and small battle (watch that Krogoth!) for core. Try every approach to a problem. Remember, just because a unit is good, itÃ¢â‚¬â„¢s not invincible. Also, try how much metal and energy a building uses while in operation. For instance, a level 1 factory uses about 50 energy and 5 metal. This varies depending on what you build. This could help you prevent nanostalling.&lt;br /&gt;
&lt;br /&gt;
-Several types of factories. Yeah, even if it costs money. A advanced building cost as much as a Bulldog or 2... You got the time, and the money. Build it.&lt;br /&gt;
&lt;br /&gt;
-Raid. Take the Weasel or a couple of Peewees on a cruise right by the enemyÃ¢â‚¬â„¢s mexxes. Having trouble finding&#039;em ? Type F4 to see where the ground is drained^^. A tip is to stay away from the Commander, or use buildings as hostages. Hide behind stuff and kill it off, then move on. If you&#039;re sure you&#039;re going to die, move close to a building and self-destruct.&lt;br /&gt;
&lt;br /&gt;
-Just because Peewees are better then AKÃ¢â‚¬â„¢s doesnÃ¢â‚¬â„¢t meant that AKÃ¢â‚¬â„¢s are useless. (And so onÃ¢â‚¬Â¦). In fact, no unit is useless. If you believe it is, try it once. On what it was meant to do.&lt;br /&gt;
&lt;br /&gt;
-Mix armies. O boy, if you havenÃ¢â‚¬â„¢t heard this one a thousand times before, you&#039;ve only been playing Half-Life for the last 7 years or something. Even if Goliaths rule, a couple of missile units will make them much more effective.&lt;br /&gt;
&lt;br /&gt;
-Farks are useful in combat. Always have 1-3 with you. Reclaiming DT, or doing what they were meant to do : Repair -.-* (also, when I say FARKs somewhere in the guide, construction units work to...)&lt;br /&gt;
&lt;br /&gt;
-Ask questions. No one is going to laugh at you. And if someone does, heÃ¢â‚¬â„¢s a ass and shouldnÃ¢â‚¬â„¢t even be poked a stick at. No question is too stupid. Just donÃ¢â‚¬â„¢t expect anyone in the heat of a battle to answer to Ã¢â‚¬ËœÃ¢â‚¬â„¢how do I play?Ã¢â‚¬â„¢Ã¢â‚¬â„¢.&lt;br /&gt;
&lt;br /&gt;
-Learn ! If you lost, use the replay too to watch the game and try to understand why you died. What did the enemy do better than you? What was the key to winning? And so on.&lt;br /&gt;
&lt;br /&gt;
-The Readme file has some cool keyboard shortcuts... check it out.&lt;br /&gt;
&lt;br /&gt;
-Develop! Are you a programmer, a 3D design artist or just some regular Joe? Come to the forum for a talk, chatter, and make wacky suggestions! In the end you may contribute of making Spring better! Remember, Spring is open source. So just dive into there and replace AKÃ¢â‚¬â„¢s with flying monkeys in space suits or whatever.&lt;br /&gt;
&lt;br /&gt;
-Try having some good music on when playing. It can give you a good kick. I recommend the WAR OF THE WORLD (the strategy game, yes it exists) Ã¢â‚¬ËœÃ¢â‚¬â„¢eve of the warÃ¢â‚¬â„¢Ã¢â‚¬â„¢  [http://www.fileuniverse.com/?page=listing&amp;amp;ID=54 the original TA music] &lt;br /&gt;
Or anything you like.&lt;br /&gt;
&lt;br /&gt;
-Need more strategy and tips? Since Spring is a remake of TA, any TA strategy guide works...&lt;br /&gt;
&lt;br /&gt;
-LAST BUT NOT LEAST : &#039;&#039;&#039;DonÃ¢â‚¬â„¢t get too serious. ItÃ¢â‚¬â„¢s only a game.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This guide was written by Kixxe aka Johan Wittrock before everyone edited (and improved!) it mercilessly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Back to [[Strategy_and_Tactics]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_guide&amp;diff=17472</id>
		<title>Spring guide</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_guide&amp;diff=17472"/>
		<updated>2006-01-23T06:00:13Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: /* Energy and all the problems with it */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Ã¢â‚¬ËœÃ¢â‚¬â„¢Keep in mind that spring still is a beta , therefore crashes happen (a lot) and we (well, not me!) havenÃ¢â‚¬â„¢t got everything fixed out yet.Ã¢â‚¬â„¢Ã¢â‚¬â„¢&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Before we start, letÃ¢â‚¬â„¢s have some background info.&lt;br /&gt;
&lt;br /&gt;
== TA: so what&#039;s so cool about this game ? ==&lt;br /&gt;
[warning, boring info that doesnÃ¢â‚¬â„¢t really mean anything]&lt;br /&gt;
&lt;br /&gt;
TA was created by Cavedog (R.I.P) in 1997, about half a year before(!!!) Starcraft was released. It was revolutionary in many ways, with 3D graphics (but a fixed camera) good animations (aircraft barrel rolled and leaned when they turned etc.), 3D terrain and many units (150 in the original game.) But in my not so humble opinion, the 3 greatest things that set TA apart were...&lt;br /&gt;
&lt;br /&gt;
* Its physics ! Every shot trajectory was calculated ! An artillery shell could try to get over a hill and hit an aircraft, which exploded into bits, damaging other troops nearby, which could also explode and set forests in fire. Yeah, might not sound that big after 7 years, but back then we had Starcraft, which defied at least a half dozen physics laws.&lt;br /&gt;
&lt;br /&gt;
(Example of the tentacle through space. Yeah, really realistic)&lt;br /&gt;
[http://fast.filespace.org/Kixxe/WTF.png Click here]&lt;br /&gt;
&lt;br /&gt;
* The order system ! You could have 300 units waiting to be built, and when they are done, they could go and patrol an area and attack anyone in it. Order queues were limitless. You could build your whole base and drink tea while it was getting built. Construction units on patrol would repair damaged units, help build things and reclaim stuff (sucking it in and transforming it into resources.)&lt;br /&gt;
&lt;br /&gt;
* The resources system ! Contrary to other RTS games, the resources in TA are infinite. What limits resource consumption is the rate at which they can be gathered. This sole fact would make for longer and more epic games, with hundreds or thousands of units fighting in the endgame.&lt;br /&gt;
&lt;br /&gt;
Pretty cool game. If you want, check out their old website for more info. [http://www.fileuniverse.com/Total_Annihilation_Mirror/totala/index.html Click here]&lt;br /&gt;
&lt;br /&gt;
[/warning, boring info that doesnÃ¢â‚¬â„¢t really mean anything]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Anyway, enough with my rambling, onto Spring!&lt;br /&gt;
&lt;br /&gt;
Now, as I told you, Spring was inspired by TA and has the same features TA had. Plus a few new thingsÃ¢â‚¬Â¦ check out Spring features page for more info.&lt;br /&gt;
[http://taspring.clan-sy.com/wiki/Features Click here]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Resources==&lt;br /&gt;
&lt;br /&gt;
There are two types of resources in spring, namely &#039;&#039;metal&#039;&#039; and &#039;&#039;energy&#039;&#039;. Each of these two resources can be collected in a number of different ways. The amount of each resource that you currently have stockpiled is represented by a coloured bar, one for each resource, along the upper edge of the screen. The rate at which you are presently collecting and consuming each of the two types is represented by a number and a + or - sign. If you are collecting at a faster rate then the rate at which you are consuming you will see your coloured bar grow as resources accumulate. Your stockpiled resources are being depleted whenever the coloured bar is shrinking. There are storage buildings which you can build for each type of resource and these will increase the amount of each which can be stored. Units and structures cost both metal and energy to build, while some units or structures also require energy to walk, shoot or operate in general.&lt;br /&gt;
&lt;br /&gt;
Metal is collected continuously from either a metal extractor, often called Ã¢â‚¬ËœmexesÃ¢â‚¬â„¢ which extract from certain areas of the map, or by using a metal maker, abbreviated as Ã¢â‚¬ËœMMÃ¢â‚¬â„¢ which convert energy into metal. Both will only operate so long as there is sufficient energy to power them. However, metal makers require a lot of energy. &lt;br /&gt;
A faster way to gather metal is by using either your commander or a construction bot to &#039;reclaim&#039; it from the remains of destroyed units and buildings! They can even reclaim buildings which have not been destroyed and they don&#039;t have to belong to your enemy to be reclaimed.&lt;br /&gt;
&lt;br /&gt;
Energy can be produced by a number of different buildings or it can be reclaimed (you can reclaim trees to gather energy). There are many different types of energy producers, including solar collectors and power plants, but they will be covered in another section.&lt;br /&gt;
&lt;br /&gt;
In a game, always Ã¢â‚¬Å“keep an eye on your metal and energy barÃ¢â‚¬Å“ because if one of them goes to zero, particularly energy, your building rate will stall,(metal makers and extractors will stop producing) and some units will be unable to fire their energy weapons (eg. LRPCs, Annihilators, Doomsday Machines). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==A Normal Spring Game==&lt;br /&gt;
&lt;br /&gt;
Anyway, now you will learn the basics of a normal Spring game, as I see it. &lt;br /&gt;
Every Spring game starts with all players only havingÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The COMMANDER&#039;&#039;&#039;! (Insert DUN DUN DUUUUUNN)&lt;br /&gt;
&lt;br /&gt;
The Commander is the unit you start with and the most important one in game. He is unique and cannot be rebuilt. In fact, there is a mode where the game ends when the commander dies, so never leave him alone.&lt;br /&gt;
&lt;br /&gt;
The fastest builder, he can walk and build under water, he makes a nuke sized explosion when he dies, he has a laser and the privilege of a Disintegrator gun (alias D-Gun). &lt;br /&gt;
The D-gun is the single most powerful weapon in the whole game, which kills ANY (ANY, I mean it!) unit in one hit (friend or foe no difference, be careful!). Even if that sounds a little overkill, keep in mind that the Commander has a very limited range, is defenceless against any aircraft and long range artillery and when he is submerged, he cannot shoot. (Subs! Onoz!)&lt;br /&gt;
&lt;br /&gt;
The Commander is used for setting up a base, and early base defences. The D-gun should protect him against any level 1 unit that tries to kill him, so if you lose your Commander in the beginning of the gameÃ¢â‚¬Â¦ then you&#039;re dead. You lose your best (only?) builder and attacker, plus you have a nuke size explosion that may destroy half or all of your base.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
AnywayÃ¢â‚¬Â¦ if you&#039;re seeing everything in a top down perspective, click the Commander (type Ctrl+C if you can&#039;t find him) with left mouse button to select him.&lt;br /&gt;
&lt;br /&gt;
(If you have a crosshair as a mouse, press j. If your camera is ZOOMED out or all jerky, press ctrl+j until you find OTA camera.)&lt;br /&gt;
&lt;br /&gt;
Okay, letÃ¢â‚¬â„¢s now discuss &#039;&#039;&#039;how to build stuff&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Like any normal RTS, itÃ¢â‚¬â„¢s choose and click location. But there is more with Spring. Hold shift and click on different locations to make the unit build the same building there. Hold shift and drag and you will make a line of the building. Hold ctrl and shift to make boxes/rectangular shapes of buildings. Use these ! Make a line of DT (Dragon Teeth, small piece of wall/cover) instead of clicking each and everyone. The controls are there to help you.&lt;br /&gt;
This is called queuing up stuff. You can use almost every single command in a queue. Buildings can be queued to build lots of different units, and then the other orders in the behaviour of the unit. You can make them walk to something, or guard/follow a unit by pressing G and selecting the unit to guard. Try it.&lt;br /&gt;
Selecting a unit and pressing Shift key will show the orders queue.&lt;br /&gt;
&lt;br /&gt;
Build 2 solar generators, or 4 wind generators to gather energy. Keep in mind that wind is pretty unstable, and that a number of maps (like lunar ones) have no wind at all ! (The level of wind and tides in the map is indicated in the Map Selector in the Lobby).&lt;br /&gt;
&lt;br /&gt;
Now select the Metal extractors and the whole screen turns black and green. Okay, place one on the green stuff. (The greener, the better! Like broccoli!)&lt;br /&gt;
&lt;br /&gt;
Oh, and the minimap controls in spring are reversed. Meaning that you have to rightclick to move the screen to the location. Once the new Gui is out and offical, this will be fixed.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==The TA bestiary==&lt;br /&gt;
&lt;br /&gt;
Okay, time to describe the cool units that are at your disposal to make your enemies bleed. 8)&lt;br /&gt;
&lt;br /&gt;
(Disclaimer : This will discuss the types of units, not every unit. Therefore, if I say that vehicles have large armour, I donÃ¢â‚¬â„¢t mean artillery of course.)&lt;br /&gt;
&lt;br /&gt;
On to the first level 1 lab/plant to build. The categories areÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
===Vehicles===&lt;br /&gt;
&lt;br /&gt;
These babies are all about armour. The level 1 units are pretty basic, with more armour and (build) speed and than their K-bot counterparts. Level 2 vehicles show even more of the same pattern: better armour than their K-bot counterparts. Level 2 also offers the mobile Flak unit, which is the only real level 2 mobile AA.&lt;br /&gt;
Their weakness is that they are clumsy, turn slowly, and most of them canÃ¢â‚¬â„¢t climb mountainsÃ¢â‚¬Â¦ at all. Leads to trouble when an explosion makes a crater: units survive but can get stuck in the crater. Or just when they are trying to get up a steep hill. But sooner or later, you&#039;ll learn what kind of destruction a rush of 30 Goliaths can do !&lt;br /&gt;
&lt;br /&gt;
===K-Bots===&lt;br /&gt;
&lt;br /&gt;
K-bots have genereally less powerful weapons than tanks, and are also less heavily armoured.&lt;br /&gt;
So why build them in the first place?&lt;br /&gt;
Because they are cheaper!  And since they are cheaper, you can build more and outnumber your enemies. This doesnÃ¢â‚¬â„¢t work out that good in game though, since tanks ARE stronger. K-bots are also smaller, and will slip through DT and such alike easier than tanks.&lt;br /&gt;
And finally, the third advantage (which IMO is the biggest) of K-bots are that they can climb most mountains with ease! Climb by defences, up on mountains, through holes, these are all-purpose units.&lt;br /&gt;
&lt;br /&gt;
===Aircraft===&lt;br /&gt;
&lt;br /&gt;
Planes are planes. In Spring, thereÃ¢â‚¬â„¢s a plane for every role. Bombers, fighters, gunships, flying radar, transports, stealth fighters and torpedo bombers. Planes are fast, and are not affected by terrain. There is no wall or relief that can stop a plane. You can just swoop in a base and take out AA with your gunship, and then bomb the crap out of their important structures. To stop them, you&#039;ve got to rely on Anti Air (AA) units.&lt;br /&gt;
&lt;br /&gt;
On the downside, planes are quite expensive to build and are relatively fragile. They are also the only units that have an anti unit against them (Except subs). When someone finds out you&#039;re building a large air fleet, they just cram their base full of AA and their army with mobile AA. And the only counter is more planes than their AA can handle, or a ground troop to take the AA down. A combined ground and air attack can be very destructive. Good luck!&lt;br /&gt;
&lt;br /&gt;
===Ships===&lt;br /&gt;
&lt;br /&gt;
Ships are good on a map with water. (DUH!) Ships come in many different kinds, but mostly for taking out other ships or bombing the crap out of land units in some way or another. The ships&#039; strength is their powerful weaponry and their long range. All ships made to take out land have long range. Ships also have lots of armour. Another thing thatÃ¢â‚¬â„¢s good about ships is that there is not much you can do to stop them because they are usually out of range. Once you see that the enemy has ships, either build a dock and a navy real fast or build planes and pray that he doesnÃ¢â‚¬â„¢t have too many AA ships. &lt;br /&gt;
Their weaknesses are slowness (especially when turning), they can be taken out by submarines, and of course they are confined to water, meaning that they are often stuck with units just outside of their reach.&lt;br /&gt;
&lt;br /&gt;
And they are *extremely* expensive, metal-wise.&lt;br /&gt;
&lt;br /&gt;
===Hovercraft===&lt;br /&gt;
&lt;br /&gt;
(These are counted as level 2 units, so I would not recommend them as the first to build unless itÃ¢â‚¬â„¢s the perfect map for them)&lt;br /&gt;
&lt;br /&gt;
Hovercrafts are a tank and a plane (some say ship, but I find planes to be more accurate for some reason O.o) mixed. Sure itÃ¢â‚¬â„¢s weaker than your average tank, and slower than your average plane. Whats their use? They are meant for swampy maps that means that both tanks and ships are a weakness, and offcourse since none can&#039;t be used, everyone just spams out AA since they think aircrafts are the only way. Great suprise for the enemy when 50 hovercrafts comes in agsint their flakkers and MT...&lt;br /&gt;
Long story short, Hovercrafts are good for those who like (or must) attack from the ground, but canÃ¢â‚¬â„¢t since there is too much water. &lt;br /&gt;
&lt;br /&gt;
Their weakness is their low climbing ability, and that they&#039;re weaker than a tank and slower than a plane. (DonÃ¢â‚¬â„¢t build them on a land map, tanks ARE better.)&lt;br /&gt;
&lt;br /&gt;
===Towers and Turrets===&lt;br /&gt;
&lt;br /&gt;
Like TA, Spring boasts an impressive range of plasma and laser towers, cannons and turrets. These cannons will undoubtly be essential parts of your offensive as well as defensive strategies.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Light laser tower (LLT)&#039;&#039;&#039;&lt;br /&gt;
A cheap and fast laser that hits almost every time. Mostly useful against level 1 units, but can be used in groups against level 2. They suffer from short range, so most long range weapons can kill them(Samsons, for example). Since they fire faster than their bigger brothers, LLTs are more useful against hordes of small weak units than a single strong one. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Heavy laser tower (HLT)&#039;&#039;&#039;&lt;br /&gt;
This is the only tower that works on those pesky level 2 units that just wonÃ¢â‚¬â„¢t die. These shoot slower, but with much more power than the LLT. They also have a longer range and can be quite effective against air attacks. They cost a fair amount and take a long time to build, but they are often worth it.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Missile Tower (MT)&#039;&#039;&#039;&lt;br /&gt;
The missile tower is good for planes or weak level 1 units. They shoot a weak rocket that almost hits their target every time. They have a fair range, but very low hp. They work on most level 2 planes as well, but should be backed up with Flack cannons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Pop-up Cannons&#039;&#039;&#039;&lt;br /&gt;
Pop-up cannons are pretty cheap middle range gun. A guardian can outshoot them, but they are still a choice to use. When Ã¢â‚¬ËœÃ¢â‚¬â„¢offÃ¢â‚¬â„¢Ã¢â‚¬â„¢ they take 50% less damage! I heard that a closed popup can withstand a nuke! (If itÃ¢â‚¬â„¢s not a direct hit) In XTA you can build them with level 1 construction K-bot or whatever.  Sometimes individual wars between 2 or 4 pop-ups break out, where both sides try to kill the other&#039;s ones. Just remember to repair them, as with all PCÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Middle range Plasma Cannons (MRPC)&#039;&#039;&#039;&lt;br /&gt;
Guardians and such alike. These arenÃ¢â‚¬â„¢t for attacking, but they have a pretty long range, and are not too expensive. Plus their targeting is pretty fast, meaning they are practically made for defence and very lethal. Perfect to have on a hill close to a HLT and some MTÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Long Range Plasma Cannons (LRPC)&#039;&#039;&#039;&lt;br /&gt;
We are talking Big berthas, Intimidators and such alike. These babies got the RANGE and may be the ultimate weapon on small maps. The Big Bertha, yeah. An amazing unit. Not the ultimate, but several times cheaper and more accurate than a Buzz Saw/Vulcan, and its accuracy will improve with every kill. Not good at defending, since its slow targeting makes it impossible to hit moving targets. Try to build one on a small maps, or just build one close to the enemy and your Bertha will start pounding his base mercilessly. In fact, build several, with a lot of AA around&#039;em (and ground, if thatÃ¢â‚¬â„¢s possible) and you&#039;ll see your enemy&#039;s morale quickly fall to the ground. A LRPC expansion can sometimes become the winning factor of a game.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Very long range plasma Cannons (VLRC)&#039;&#039;&#039;&lt;br /&gt;
Buzzsaws are big, cost much, are huge energy suckers, are VERY inaccurate and are pretty slow on targeting. BUT, they have the DOUBLE range of a normal LRPC and shoot 4(!!!) shots at a time. This is the one thing to finish those ÃƒÂ¼ber porckers. &lt;br /&gt;
Defend these well, with lots of AA around and in a wide circle. They only have about 5000 hp, so killing&#039;em is easy if you donÃ¢â‚¬â„¢t have AAÃ¢â‚¬Â¦&lt;br /&gt;
In OTA however Vulcans/Buzzsaws have SLIGHTLY LESS range than LRPCs, so LRPCs are generally better because they are so cheaper and each are a seperate entity with a fair bit of life(around 2500 i think).&lt;br /&gt;
&lt;br /&gt;
The obvious way to kill LRC is to use planes, since they are fast enough to enter and kill it all.&lt;br /&gt;
&lt;br /&gt;
===The first steps===&lt;br /&gt;
&lt;br /&gt;
Now comes the tricky part. The first minute is always the same really, so what after that?&lt;br /&gt;
Well, itÃ¢â‚¬â„¢s hard to judge. But here are some paths that can be taken.&lt;br /&gt;
&lt;br /&gt;
1. Build many construction units and send them out to build mexxes and Geothermal Power Plants. Then a defence and maybe some DT.&lt;br /&gt;
&lt;br /&gt;
2. Build some construction units, and then start building defences. Follow the Ã¢â‚¬ËœÃ¢â‚¬â„¢line defenceÃ¢â‚¬â„¢Ã¢â‚¬â„¢ guide lines.&lt;br /&gt;
Build Fusion Power Plants and Metal makers, and then an army. After that, use the army how armies are used best.&lt;br /&gt;
This strategy is called PORCING, and is considered by many as BAD.&lt;br /&gt;
There are disadvantages with this. You canÃ¢â‚¬â„¢t use many metal extractors or Geos, so you have slim to no resources to build your base. A popular strategy is to kill the anti-nuke, and then blow the whole compact base to bits.&lt;br /&gt;
&lt;br /&gt;
3. Build a small army of 3-6 units and attack the enemy. The goal isnÃ¢â‚¬â„¢t to kill him, but to do as much damage as possible to his resources and hinder his economy. Mexxes are the most important, and then look for wind or solar generators.&lt;br /&gt;
Try to keep on attacking him, but remember to still tech up and build defences.&lt;br /&gt;
&lt;br /&gt;
Anyway, use your construction units to build defences of SOME kind. Take advantage of Geothermal gases. Yeah the smoking stuff. You can place Geo plants there for good, cheap and space saving energy. If youÃ¢â‚¬â„¢re expanding, use every Mex&#039; positions, and try to find a place to settle your defence line.&lt;br /&gt;
&lt;br /&gt;
When you can defend yourself from most level 1 units, start on your level 2 building.&lt;br /&gt;
&lt;br /&gt;
When itÃ¢â‚¬â„¢s done, ALWAYS build a construction unit first. Use it for your first mini Fusion. (Or build some mobile fusion at the vehicle plant if you&#039;re Arm)&lt;br /&gt;
Build level 2 units in the meantime.&lt;br /&gt;
Low on metal? Upgrade the finest of your Mexxes to Moho Mexxes. They are bigger and better (but they suck up energy).&lt;br /&gt;
You can also build a Moho Metal maker if you have enough energy to support it. (MMM :p)&lt;br /&gt;
Okay, if you made this far, you must really start thinking about how to defeat the enemy. Look for his weak spot. Maybe a K-bot assault from the mountains ? Maybe planes. Maybe using amphibious units. That part is for you to figure out.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==STRATEGY==&lt;br /&gt;
&lt;br /&gt;
I read this guide through, and suddenly realisedÃ¢â‚¬Â¦ &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;where is the strategy?&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
So I fiddled this section up. Hope you&#039;ll learn something from it and thereby increase your Spring gaming experience.&lt;br /&gt;
&lt;br /&gt;
===Defence===&lt;br /&gt;
&lt;br /&gt;
AhÃ¢â‚¬Â¦ the overall defence. There are many different ways of making a good defence, but there are 3 main categories.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Compact defence!&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most common type of defence is a single line of defence, often with Dragon Teeth (DT) in front. Inside your base is some AA, and thatÃ¢â‚¬â„¢s about it. The good thing about this is that itÃ¢â‚¬â„¢s pretty easy and fast to set up, and you know where your territory ends, which can make the game much easier. Problem is, if something makes it past the line of defence, then youÃ¢â‚¬â„¢re screwed. Unless youÃ¢â‚¬â„¢re building line after line of defence, or have some units to stop em.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Spread out defence!&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I saw a guy pull this off one time, and he won with a large margin. The trick with this is to never really have a defined line of defence, just a Heavy Laser Tower (HLT) here, a radar there, some DT there, a mine here and thereÃ¢â‚¬Â¦&lt;br /&gt;
Basically, you expand every time you build a defence building, so in the end you have ENORMOUS space to move in. Since the defence is spread out, no one is gonna rush it past with some goliaths. You can have some units hide behind mountains and attack. He used merls who he trapped in fortification walls. I tried to run past the defence with an army of 30 bulldogs. His HLT and missile and plasma batteries stopped me before I even reached his final defence line.&lt;br /&gt;
Even though this defence are the best of &#039;em all, itÃ¢â‚¬â„¢s hard to build up, and requires lots off resources and time. IF youÃ¢â‚¬â„¢re able to pull it off, the only problem may be if they are fast enough to run by it all, or if you donÃ¢â‚¬â„¢t have much AA and 30 Brawlers are comingÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;No defenceÃ¢â‚¬Â¦ at all?&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Yes, this is an option. Okay, you may want some mines here and there, and some DT to stop them from running right through the door and AA in your base if their building planes. But how do you defend with no defence?&lt;br /&gt;
with units. The whole concept is that you put all your effort on making units. This works pretty well, since you can look where the enemy is going to attack, you can MOVE your whole defence to that location.&lt;br /&gt;
The problem with this defence, is that when you are attacking, you lose most of your defence. Sure you can leave units behind, but I find it hard mentally to leave half the army at home when i am attacking. &lt;br /&gt;
If you manage to pull this off, and make enough units to both attack and defend, then you have not wasted any money on defence, and you have a strong army!&lt;br /&gt;
&lt;br /&gt;
ThatÃ¢â‚¬â„¢s all I know of.&lt;br /&gt;
&lt;br /&gt;
Also, one thing to remember is to eliminate the largest threat first. If youÃ¢â‚¬â„¢re relying on DT, take out the FARK or construction planes first.&lt;br /&gt;
&lt;br /&gt;
Okay, you built a good defence&lt;br /&gt;
You must get into the mind of your enemy, and find the weakness of your defence.&lt;br /&gt;
Take a 4 seconds look through the enemyÃ¢â‚¬â„¢s eyes that just scouted the area. How would you attack something like this?&lt;br /&gt;
*&amp;quot;Well, I would try a gunship raid or attack from those undefended mountainsÃ¢â‚¬Â¦&amp;quot;&lt;br /&gt;
Then prevent that from happening, by reinforcing the area.&lt;br /&gt;
&lt;br /&gt;
-- addendum by Cain&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;The All Out Defence&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The opposite from the no defence, mixed with spread defence: the main concept is to invest resource in level 1 build planes, lot of them, and use them to quickly gather huge amounts of maps and resources, while keeping a lot of plane building / repairing turrets all over the places. This could be very effective on maps with few choke points where concentrate the defence or almost flats map where the overlapping range of defence will create a huge wall of shoot. The concept is to expand the defence line until you can shoot straight into the enemy base. Best used with a lot of level 2 aircraft defending the construction point. Note that the mobility of them is essential as you&#039;re concentrating all your resource in building plasma turrets. I usually end with a hundred of building planes and 20 to 50 brawler floating around... keep them away from Kroghot!&lt;br /&gt;
&lt;br /&gt;
===Moving===&lt;br /&gt;
Moving or attacking is pretty easy right? Just move from point a to point b and attack cÃ¢â‚¬Â¦&lt;br /&gt;
Nope.&lt;br /&gt;
First, you have to have your units move TOGETHER. . If some are trailing behind, then you just have to wait a little for them. DonÃ¢â‚¬â„¢t know how much of that is true. A way of having your units stick together is to take a pretty slow unit, like a Can and have others guard it.&lt;br /&gt;
Pressing control while moving units will make them keep their position, but not their speed. (they will spread out along the way, but &#039;&#039;try&#039;&#039; to get back into the position they was in when reaching the detination)&lt;br /&gt;
The &#039;&#039;Simple formation&#039;&#039; is also way of doing this, and will the units wiil automaticly form couple of lines. Ofen with the right units first also!&lt;br /&gt;
Transports are useful for moving units, but use the air transport (Valkyrie /Atlas) smartly and protect them. The other transportation units are harder to use, since they take more time to load/unload.&lt;br /&gt;
&lt;br /&gt;
===Attacking===&lt;br /&gt;
&lt;br /&gt;
When attacking, remember what the unit role in the fight is. Fark are used to heal your wounded important units or. Bulldogs are meant to take damage and give damage back. Merls are used to shot missiles from distance, and doesnÃ¢â‚¬â„¢t require a clear path. The question is what to heal. Merls die quickly, so one shot= dead can mean that the healing could be used on a bulldog instead. But bulldogs are ofen the first thing that the enemy targets and loses lots of HP fast. Wicht means that your healing may have slim effect on em... Therefore try to heal the middle mans. Not the giant hp monsters, not the weak defence strong/useful attack. Mobile artillery has enough hp to survive one or two attacks. Heal them so they stay alive.&lt;br /&gt;
&lt;br /&gt;
===Army vs Army===&lt;br /&gt;
&lt;br /&gt;
Many units attacking one unit is the best thing you can do, as if you kill one of theirs, they lose one source of fire power. Focus fire is the important. Using focus fire in a group of easy killed units is very effective. Using em all on the HP power houses is less effective.&lt;br /&gt;
When youÃ¢â‚¬â„¢re facing an army, always try to attack from behind or the side. Keep your units a little spread out when attacking. Not to far, but just so that area weapons donÃ¢â‚¬â„¢t do as much damage. Have your HP powerhouses at the front, or at the front plus sides. Keep em pretty close though but not too much. On the one hand, having them spread out makes it easier for the units behind to attack; on the other hand you donÃ¢â‚¬â„¢t want Zippers and Pyros running past them and flaming up everything.&lt;br /&gt;
&lt;br /&gt;
This is the normal way of attacking the army. There is the classical pincher movement tooÃ¢â‚¬Â¦&lt;br /&gt;
In this, you run one third of your HP powerhouses go to the left, one third to the right and have thze last third stay where they are. &lt;br /&gt;
This gives you 3 advantages: &lt;br /&gt;
*it&#039;s easier to get past the units and attack their weak units, or just run past them into the base, &lt;br /&gt;
*you do more damage, since their units will have to change their target all the time and can&#039;t escape &lt;br /&gt;
*it makes it MUCH harder for the enemy to run away or try to get past you.&lt;br /&gt;
&lt;br /&gt;
===Army vs Base===&lt;br /&gt;
&lt;br /&gt;
Okay, you may have made it past the ground troops, but the fight is not over (Unless he used units to defend, and didnÃ¢â‚¬â„¢t have any backup ones). Now you must face his base defence, and depending on the type of the defence he hasÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Line defence&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Gather your army and set up for battle a bit away from his base, and get ready to move in. Have the FARKS guard your main HP power houses, so they are in the front but still can hide behind em. Everything else behind that. When attacking, have several units attacking the HLT and plasma batteries, and use the FARKS to reclaim his Dragon Teeth. When you have a hole in it, just run like a maniac into the heart of the base. Split your tanks in 2 groups, 1 guarding your long range/high damage units and let the other go loose into the heart of the base. Find the Fusion reactors with your second group of tanks, and try to move the other big group to a place that is easy to defend while hitting the Fusions. Behind buildings is perfect! Kill as much as you can in short, or kill all^^. &lt;br /&gt;
If there are several lines of defence, dig the hole in each line of defence and repeat the same tactics.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Spread out defence&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
ArghÃ¢â‚¬Â¦ The tough one. While the individual towers are easy to beat, you canÃ¢â‚¬â„¢t run past his defences unless you like suicide. (And if you do, Ctrl+a and then ctrl+d will do the trick. A slice over the wrist works too.)&lt;br /&gt;
This is when you have to make penitence. Use your army, and slowly start killing the defence. Step by step, defence structure by defence structure. Keep building units, and moving them to the fray (you can use Air transports with repeat command and make them drop the units slightly away from the fight). Once you start getting close to his last line of defence, think of it as a line defence.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Units defence&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Think army vs army. DonÃ¢â‚¬â„¢t rush past &#039;em with all your units. Your units will spread out and try to go through holes in the enemyÃ¢â‚¬â„¢s formation. In a word, they are dead meat. If you MUST get to the base, have half of the tanks go round the units.&lt;br /&gt;
&lt;br /&gt;
===Naval Battles===&lt;br /&gt;
&lt;br /&gt;
Naval battles are hard to predict if you donÃ¢â‚¬â„¢t play island maps a lot, since there many factors to take into play. Since land units are removed, you have to think in a WHOLE new perspective. No land means that only Sea, Air and Hover units can fight (and LRC off course).&lt;br /&gt;
Anyway, try to have air units scouting land and sea, and looking how much AA the enemy has. Ships roam around assaulting other ships, with a mix of subs, sub killers, AA ships and normal ships. Hovercrafts should be the thing to use when assaulting land thatÃ¢â‚¬â„¢s a little far from shore. Have&#039;em escorted with planes or ships (or both).&lt;br /&gt;
&lt;br /&gt;
====Ships====&lt;br /&gt;
When using ships, have scout ships or planes scout the area in front, then subs and sub killers front. Use Long range ships at the sides to protect anything of value you might have with you (a sea transport or an aircraft carrier). When in battle, try to have the subs run away from sub killers, while your sub killers kill the enemy subs. Your subs should try to attack the most important ship they have, and then just go crazy.&lt;br /&gt;
When facing land, youÃ¢â‚¬â„¢re pretty much in for an easy win. Just have your ships blow it all up. If you face LRC, take them out first. The rest of it is out of your hands.&lt;br /&gt;
Remember if your opponent has air superiority or LRPCs use subs as they can&#039;t hit them :)&lt;br /&gt;
&lt;br /&gt;
====Hovercraft====&lt;br /&gt;
Use the Army vs Army or Army vs Base strategy here.&lt;br /&gt;
&lt;br /&gt;
-- addendum by Cain.&lt;br /&gt;
&lt;br /&gt;
Howercraft are quite expensive compared to other land units, but are very useful also in the map with a bit of water, targetting enemies without worring of those pesky gholiat... Note that they&#039;re much cheaper than ship, anyway.&lt;br /&gt;
&lt;br /&gt;
===Planes===&lt;br /&gt;
Hohoho, planes. Fun stuff to attack with. Anyway, the most stuff is basic with planes.&lt;br /&gt;
First, always attack the AA first. Unless your are going to do a suicide mission. Kill the AA with gunships, and use bombers to kill structures. Many players use gunships only, with is pretty wrong. Bombers take a little time to master but allied with gunships, they do a very good job. Scout early, so you can quickly see WHAT the enemy has and WHERE he has it. Use gunships to take out AA and act like overall decoys. Have Bombers fly in and bomb the crap out off his Fusion or whatever nevralgic point, and use the fighters to guard the bombers.&lt;br /&gt;
When facing units, do the same.&lt;br /&gt;
When facing sea, do the same thing, but add Torpedoes to bombers and gunships.&lt;br /&gt;
&lt;br /&gt;
-- addendum by Cain&lt;br /&gt;
&lt;br /&gt;
Know where the enemy commander is! In game where the commander death is a winning condition, a lot of bomber could just converge on him, killing on the first run.. especially the 2nd level bombers that have a nice turretted fast targetting laser! Also, gunship could distract enemy defence from your main attack force, or you can use them to make the defences of distract players shooting their own base....&lt;br /&gt;
&lt;br /&gt;
===Using Terrain===&lt;br /&gt;
&lt;br /&gt;
Using terrain wisely is very important. The issue of a game can depend on a good use of terrain.&lt;br /&gt;
First, Line of Sight (LOS) and RADAR. Both are blocked by terrain. So build your radars as high up as possibly, otherwise you may just not see anything. Use the relief at your advantage to hide an army or your important buildings from enemy radars.&lt;br /&gt;
Of course, one can also take advantage of altitude to increase fire range. A couple of Guardians on top of two high hills can easily devastate a small army.&lt;br /&gt;
Terrain also helps shield your units against attacks. Therefore, when youÃ¢â‚¬â„¢re building something high on top of a hill, try placing it a little behind the top. This is like crouching behind a crate when just your head and gun sticks up. But remember that terrain in Spring is deformable and can be leveled by impacts !&lt;br /&gt;
Know the climbing ability of your units. Hovercrafts and vehicles have pretty low climbing ability. But if a foe thinks he has sealed up all exits, your K-bots can still climb the mountains where he hasnÃ¢â‚¬â„¢t put any Dragon ToothÃ¢â‚¬Â¦ &lt;br /&gt;
Another good thing about terrain is that it mentally makes you feel safe. If there is a water barrier between me and the enemy, with 3 land bridges here and there, there probably wonÃ¢â‚¬â„¢t have much ground defence at a location AWAY from the bridges. Presuming the map is pretty flat (like &amp;quot;Flooded Desert&amp;quot;) a hovercraft assault would do A LOT of damage, right?&lt;br /&gt;
&lt;br /&gt;
===Energy and all the problems with it===&lt;br /&gt;
(in xta)&lt;br /&gt;
As I said before, most level 2 units require energy to move, shoot and operate in general. Meaning that if you have no energy to support your army, you can&#039;t do anything ! You can use this in your favor, by attacking his Fusions, or&lt;br /&gt;
by &#039;&#039;giving&#039;&#039; Metal makers to your enemy when you are attacking him(Edit:Metal makers are now turned off when given to an enemy), or he is attacking you!  Things that drain a lot of energy include LRPC, Goliaths, HLT, and most level 2 units.&lt;br /&gt;
(/in xta)&lt;br /&gt;
&lt;br /&gt;
===Paper-rock-scissor ?===&lt;br /&gt;
&lt;br /&gt;
Try to look at all units as individuals. Even if I didn&#039;t write much about each single unit, know your favorite ones and how to use them effectively in conjunction with the others. You&#039;ll find that some units are very complementary. The only real paper-rock relationships are AA and planes... Maybe subs vs sub killers...&lt;br /&gt;
&lt;br /&gt;
I didn&#039;t even mention cloaking, radar jamming, troops behaviour facing attacks, mines, etc, etc. The possibilities are immense, but I don&#039;t want to spoil your pleasure any longer, so I&#039;ll let you discover them by yourself.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Have fun !!!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Strategy Tips===&lt;br /&gt;
&lt;br /&gt;
-Expand! Metal is scarce. The more you get, the more you can build. Even if you have a good base, not a bad thing to do is to make it bigger.&lt;br /&gt;
&lt;br /&gt;
-Scout! Knowledge is power. You must know what your enemy is planning, and what the enemy knows about you. (Or thinks he know about youÃ¯?Å ) Check what he has, and what he is building. If heÃ¢â‚¬â„¢s building aircrafts, do something about it. Look for weaknesses in defence and such alike. If you or your ally are scouting, donÃ¢â‚¬â„¢t look away. Gather as much information as possible.&lt;br /&gt;
ALL buildings once in sight range will remain visible as &#039;ghost&#039; buildings if this option isn&#039;t turned off by the host.&lt;br /&gt;
&lt;br /&gt;
-Radar = GOOD^^. Radar checks areas for units, increases your units LOS and is overall helpful. A radar with your army makes a big difference when attacking. But so is Jamming. Jamming is good for sneak attacks. They are cheap, so just build one and make your units guard it.&lt;br /&gt;
&lt;br /&gt;
-Work Together! Often I see allies who just mind their own business and donÃ¢â‚¬â„¢t care what the other person&#039;s doing. DONÃ¢â‚¬â„¢TÃ¢â‚¬Â¦ DOÃ¢â‚¬Â¦ THIS!!! Listen to each other, make up a plan. Prepare combined attacks. If there is a 2v2, then itÃ¢â‚¬â„¢s 2 alliesÃ¢â‚¬â„¢ vs 2 allies. Not a ffa with neutral partners. Type h to share units. Left click on your resource bars to auto share resources with allies.&lt;br /&gt;
&lt;br /&gt;
-Power Plants. In order to level out the building costs, it is important to make a smooth transition from the least powerful generators to the most powerful ones stepwise. First solar, then Geo, then mobile/mini Fusion then Fusion.&lt;br /&gt;
&lt;br /&gt;
-Check your resource bar. Try to keep a fine line between having too much resources/wasting, and having a nanostall. Use your factories and such accordingly. If you have a lot of resources, try using your old level 1 factories to build some units. Also, try to find the time to build an energy/metal storage...&lt;br /&gt;
&lt;br /&gt;
-Spread out your buildings/units. Since every unit explodes, they damage units close to them. This is especially important with Fusions... (I once saw someone put 13 mobile fusions close to each other... blew up half his base with 2 (!!!) LRPC shots...)&lt;br /&gt;
&lt;br /&gt;
-Queue (yeah, easy word for it to:/) up orders! You can almost win the game by pausing, queuing up some stuff, and then go eat lunch. Not really, but holding shift is good whilst putting up buildings.&lt;br /&gt;
&lt;br /&gt;
-Guard = following and protection. Use planes to guard your tanks, subs to guard your transports, construction units to automatically repair important units or and so on. Then they will choose to attack whatever is hurting their guard object first. You can even do this to structures, for units who are built to move to a unitÃ¢â‚¬â„¢s position or AA to attack whatever is shooting on the Fusion reactors, etcÃ¢â‚¬Â¦ &lt;br /&gt;
Overall, this makes working with several unit types easier.&lt;br /&gt;
&lt;br /&gt;
-Reclaim stuff (sucking it in and transforming it into resources). When you&#039;re starting to run low on metal, reclaim the enemyÃ¢â‚¬â„¢s and your own corpses. Trees give energy, so if youÃ¢â‚¬â„¢re out on energy in the beginning... You can reclaim a whole area by shift-clicking.&lt;br /&gt;
&lt;br /&gt;
-The key for porcers are to build LRPC. Or even better, build a nuke and use LOTS of planes to kill his anti-nuke. Then BOOM!&lt;br /&gt;
Also as you have way loads more metal and space to move in than your opponent, you can easily afford 2 nukes. An anti-nuke can&#039;t deal with 2 nukes heading towards it(and if you aim the nukes at the antinuke...^^!&lt;br /&gt;
&lt;br /&gt;
-Experiment! I suggest you go into single player and try every unit. Use commanders for arm, and small battle (watch that Krogoth!) for core. Try every approach to a problem. Remember, just because a unit is good, itÃ¢â‚¬â„¢s not invincible. Also, try how much metal and energy a building uses while in operation. For instance, a level 1 factory uses about 50 energy and 5 metal. This varies depending on what you build. This could help you prevent nanostalling.&lt;br /&gt;
&lt;br /&gt;
-Several types of factories. Yeah, even if it costs money. A advanced building cost as much as a Bulldog or 2... You got the time, and the money. Build it.&lt;br /&gt;
&lt;br /&gt;
-Raid. Take the Weasel or a couple of Peewees on a cruise right by the enemyÃ¢â‚¬â„¢s mexxes. Having trouble finding&#039;em ? Type F4 to see where the ground is drained^^. A tip is to stay away from the Commander, or use buildings as hostages. Hide behind stuff and kill it off, then move on. If you&#039;re sure you&#039;re going to die, move close to a building and self-destruct.&lt;br /&gt;
&lt;br /&gt;
-Just because Peewees are better then AKÃ¢â‚¬â„¢s doesnÃ¢â‚¬â„¢t meant that AKÃ¢â‚¬â„¢s are useless. (And so onÃ¢â‚¬Â¦). In fact, no unit is useless. If you believe it is, try it once. On what it was meant to do.&lt;br /&gt;
&lt;br /&gt;
-Mix armies. O boy, if you havenÃ¢â‚¬â„¢t heard this one a thousand times before, you&#039;ve only been playing Half-Life for the last 7 years or something. Even if Goliaths rule, a couple of missile units will make them much more effective.&lt;br /&gt;
&lt;br /&gt;
-Farks are useful in combat. Always have 1-3 with you. Reclaiming DT, or doing what they were meant to do : Repair -.-* (also, when I say FARKs somewhere in the guide, construction units work to...)&lt;br /&gt;
&lt;br /&gt;
-Ask questions. No one is going to laugh at you. And if someone does, heÃ¢â‚¬â„¢s a ass and shouldnÃ¢â‚¬â„¢t even be poked a stick at. No question is too stupid. Just donÃ¢â‚¬â„¢t expect anyone in the heat of a battle to answer to Ã¢â‚¬ËœÃ¢â‚¬â„¢how do I play?Ã¢â‚¬â„¢Ã¢â‚¬â„¢.&lt;br /&gt;
&lt;br /&gt;
-Learn ! If you lost, use the replay too to watch the game and try to understand why you died. What did the enemy do better than you? What was the key to winning? And so on.&lt;br /&gt;
&lt;br /&gt;
-The Readme file has some cool keyboard shortcuts... check it out.&lt;br /&gt;
&lt;br /&gt;
-Develop! Are you a programmer, a 3D design artist or just some regular Joe? Come to the forum for a talk, chatter, and make wacky suggestions! In the end you may contribute of making Spring better! Remember, Spring is open source. So just dive into there and replace AKÃ¢â‚¬â„¢s with flying monkeys in space suits or whatever.&lt;br /&gt;
&lt;br /&gt;
-Try having some good music on when playing. It can give you a good kick. I recommend the WAR OF THE WORLD (the strategy game, yes it exists) Ã¢â‚¬ËœÃ¢â‚¬â„¢eve of the warÃ¢â‚¬â„¢Ã¢â‚¬â„¢  [http://www.fileuniverse.com/?page=listing&amp;amp;ID=54 the original TA music] &lt;br /&gt;
Or anything you like.&lt;br /&gt;
&lt;br /&gt;
-Need more strategy and tips? Since Spring is a remake of TA, any TA strategy guide works...&lt;br /&gt;
&lt;br /&gt;
-LAST BUT NOT LEAST : &#039;&#039;&#039;DonÃ¢â‚¬â„¢t get too serious. ItÃ¢â‚¬â„¢s only a game.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This guide was written by Kixxe aka Johan Wittrock before everyone edited (and improved!) it mercilessly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Back to [[Strategy_and_Tactics]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_guide&amp;diff=17471</id>
		<title>Spring guide</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_guide&amp;diff=17471"/>
		<updated>2006-01-23T05:58:28Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Ficed a few typos&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Ã¢â‚¬ËœÃ¢â‚¬â„¢Keep in mind that spring still is a beta , therefore crashes happen (a lot) and we (well, not me!) havenÃ¢â‚¬â„¢t got everything fixed out yet.Ã¢â‚¬â„¢Ã¢â‚¬â„¢&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Before we start, letÃ¢â‚¬â„¢s have some background info.&lt;br /&gt;
&lt;br /&gt;
== TA: so what&#039;s so cool about this game ? ==&lt;br /&gt;
[warning, boring info that doesnÃ¢â‚¬â„¢t really mean anything]&lt;br /&gt;
&lt;br /&gt;
TA was created by Cavedog (R.I.P) in 1997, about half a year before(!!!) Starcraft was released. It was revolutionary in many ways, with 3D graphics (but a fixed camera) good animations (aircraft barrel rolled and leaned when they turned etc.), 3D terrain and many units (150 in the original game.) But in my not so humble opinion, the 3 greatest things that set TA apart were...&lt;br /&gt;
&lt;br /&gt;
* Its physics ! Every shot trajectory was calculated ! An artillery shell could try to get over a hill and hit an aircraft, which exploded into bits, damaging other troops nearby, which could also explode and set forests in fire. Yeah, might not sound that big after 7 years, but back then we had Starcraft, which defied at least a half dozen physics laws.&lt;br /&gt;
&lt;br /&gt;
(Example of the tentacle through space. Yeah, really realistic)&lt;br /&gt;
[http://fast.filespace.org/Kixxe/WTF.png Click here]&lt;br /&gt;
&lt;br /&gt;
* The order system ! You could have 300 units waiting to be built, and when they are done, they could go and patrol an area and attack anyone in it. Order queues were limitless. You could build your whole base and drink tea while it was getting built. Construction units on patrol would repair damaged units, help build things and reclaim stuff (sucking it in and transforming it into resources.)&lt;br /&gt;
&lt;br /&gt;
* The resources system ! Contrary to other RTS games, the resources in TA are infinite. What limits resource consumption is the rate at which they can be gathered. This sole fact would make for longer and more epic games, with hundreds or thousands of units fighting in the endgame.&lt;br /&gt;
&lt;br /&gt;
Pretty cool game. If you want, check out their old website for more info. [http://www.fileuniverse.com/Total_Annihilation_Mirror/totala/index.html Click here]&lt;br /&gt;
&lt;br /&gt;
[/warning, boring info that doesnÃ¢â‚¬â„¢t really mean anything]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Anyway, enough with my rambling, onto Spring!&lt;br /&gt;
&lt;br /&gt;
Now, as I told you, Spring was inspired by TA and has the same features TA had. Plus a few new thingsÃ¢â‚¬Â¦ check out Spring features page for more info.&lt;br /&gt;
[http://taspring.clan-sy.com/wiki/Features Click here]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Resources==&lt;br /&gt;
&lt;br /&gt;
There are two types of resources in spring, namely &#039;&#039;metal&#039;&#039; and &#039;&#039;energy&#039;&#039;. Each of these two resources can be collected in a number of different ways. The amount of each resource that you currently have stockpiled is represented by a coloured bar, one for each resource, along the upper edge of the screen. The rate at which you are presently collecting and consuming each of the two types is represented by a number and a + or - sign. If you are collecting at a faster rate then the rate at which you are consuming you will see your coloured bar grow as resources accumulate. Your stockpiled resources are being depleted whenever the coloured bar is shrinking. There are storage buildings which you can build for each type of resource and these will increase the amount of each which can be stored. Units and structures cost both metal and energy to build, while some units or structures also require energy to walk, shoot or operate in general.&lt;br /&gt;
&lt;br /&gt;
Metal is collected continuously from either a metal extractor, often called Ã¢â‚¬ËœmexesÃ¢â‚¬â„¢ which extract from certain areas of the map, or by using a metal maker, abbreviated as Ã¢â‚¬ËœMMÃ¢â‚¬â„¢ which convert energy into metal. Both will only operate so long as there is sufficient energy to power them. However, metal makers require a lot of energy. &lt;br /&gt;
A faster way to gather metal is by using either your commander or a construction bot to &#039;reclaim&#039; it from the remains of destroyed units and buildings! They can even reclaim buildings which have not been destroyed and they don&#039;t have to belong to your enemy to be reclaimed.&lt;br /&gt;
&lt;br /&gt;
Energy can be produced by a number of different buildings or it can be reclaimed (you can reclaim trees to gather energy). There are many different types of energy producers, including solar collectors and power plants, but they will be covered in another section.&lt;br /&gt;
&lt;br /&gt;
In a game, always Ã¢â‚¬Å“keep an eye on your metal and energy barÃ¢â‚¬Å“ because if one of them goes to zero, particularly energy, your building rate will stall,(metal makers and extractors will stop producing) and some units will be unable to fire their energy weapons (eg. LRPCs, Annihilators, Doomsday Machines). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==A Normal Spring Game==&lt;br /&gt;
&lt;br /&gt;
Anyway, now you will learn the basics of a normal Spring game, as I see it. &lt;br /&gt;
Every Spring game starts with all players only havingÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The COMMANDER&#039;&#039;&#039;! (Insert DUN DUN DUUUUUNN)&lt;br /&gt;
&lt;br /&gt;
The Commander is the unit you start with and the most important one in game. He is unique and cannot be rebuilt. In fact, there is a mode where the game ends when the commander dies, so never leave him alone.&lt;br /&gt;
&lt;br /&gt;
The fastest builder, he can walk and build under water, he makes a nuke sized explosion when he dies, he has a laser and the privilege of a Disintegrator gun (alias D-Gun). &lt;br /&gt;
The D-gun is the single most powerful weapon in the whole game, which kills ANY (ANY, I mean it!) unit in one hit (friend or foe no difference, be careful!). Even if that sounds a little overkill, keep in mind that the Commander has a very limited range, is defenceless against any aircraft and long range artillery and when he is submerged, he cannot shoot. (Subs! Onoz!)&lt;br /&gt;
&lt;br /&gt;
The Commander is used for setting up a base, and early base defences. The D-gun should protect him against any level 1 unit that tries to kill him, so if you lose your Commander in the beginning of the gameÃ¢â‚¬Â¦ then you&#039;re dead. You lose your best (only?) builder and attacker, plus you have a nuke size explosion that may destroy half or all of your base.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
AnywayÃ¢â‚¬Â¦ if you&#039;re seeing everything in a top down perspective, click the Commander (type Ctrl+C if you can&#039;t find him) with left mouse button to select him.&lt;br /&gt;
&lt;br /&gt;
(If you have a crosshair as a mouse, press j. If your camera is ZOOMED out or all jerky, press ctrl+j until you find OTA camera.)&lt;br /&gt;
&lt;br /&gt;
Okay, letÃ¢â‚¬â„¢s now discuss &#039;&#039;&#039;how to build stuff&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Like any normal RTS, itÃ¢â‚¬â„¢s choose and click location. But there is more with Spring. Hold shift and click on different locations to make the unit build the same building there. Hold shift and drag and you will make a line of the building. Hold ctrl and shift to make boxes/rectangular shapes of buildings. Use these ! Make a line of DT (Dragon Teeth, small piece of wall/cover) instead of clicking each and everyone. The controls are there to help you.&lt;br /&gt;
This is called queuing up stuff. You can use almost every single command in a queue. Buildings can be queued to build lots of different units, and then the other orders in the behaviour of the unit. You can make them walk to something, or guard/follow a unit by pressing G and selecting the unit to guard. Try it.&lt;br /&gt;
Selecting a unit and pressing Shift key will show the orders queue.&lt;br /&gt;
&lt;br /&gt;
Build 2 solar generators, or 4 wind generators to gather energy. Keep in mind that wind is pretty unstable, and that a number of maps (like lunar ones) have no wind at all ! (The level of wind and tides in the map is indicated in the Map Selector in the Lobby).&lt;br /&gt;
&lt;br /&gt;
Now select the Metal extractors and the whole screen turns black and green. Okay, place one on the green stuff. (The greener, the better! Like broccoli!)&lt;br /&gt;
&lt;br /&gt;
Oh, and the minimap controls in spring are reversed. Meaning that you have to rightclick to move the screen to the location. Once the new Gui is out and offical, this will be fixed.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==The TA bestiary==&lt;br /&gt;
&lt;br /&gt;
Okay, time to describe the cool units that are at your disposal to make your enemies bleed. 8)&lt;br /&gt;
&lt;br /&gt;
(Disclaimer : This will discuss the types of units, not every unit. Therefore, if I say that vehicles have large armour, I donÃ¢â‚¬â„¢t mean artillery of course.)&lt;br /&gt;
&lt;br /&gt;
On to the first level 1 lab/plant to build. The categories areÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
===Vehicles===&lt;br /&gt;
&lt;br /&gt;
These babies are all about armour. The level 1 units are pretty basic, with more armour and (build) speed and than their K-bot counterparts. Level 2 vehicles show even more of the same pattern: better armour than their K-bot counterparts. Level 2 also offers the mobile Flak unit, which is the only real level 2 mobile AA.&lt;br /&gt;
Their weakness is that they are clumsy, turn slowly, and most of them canÃ¢â‚¬â„¢t climb mountainsÃ¢â‚¬Â¦ at all. Leads to trouble when an explosion makes a crater: units survive but can get stuck in the crater. Or just when they are trying to get up a steep hill. But sooner or later, you&#039;ll learn what kind of destruction a rush of 30 Goliaths can do !&lt;br /&gt;
&lt;br /&gt;
===K-Bots===&lt;br /&gt;
&lt;br /&gt;
K-bots have genereally less powerful weapons than tanks, and are also less heavily armoured.&lt;br /&gt;
So why build them in the first place?&lt;br /&gt;
Because they are cheaper!  And since they are cheaper, you can build more and outnumber your enemies. This doesnÃ¢â‚¬â„¢t work out that good in game though, since tanks ARE stronger. K-bots are also smaller, and will slip through DT and such alike easier than tanks.&lt;br /&gt;
And finally, the third advantage (which IMO is the biggest) of K-bots are that they can climb most mountains with ease! Climb by defences, up on mountains, through holes, these are all-purpose units.&lt;br /&gt;
&lt;br /&gt;
===Aircraft===&lt;br /&gt;
&lt;br /&gt;
Planes are planes. In Spring, thereÃ¢â‚¬â„¢s a plane for every role. Bombers, fighters, gunships, flying radar, transports, stealth fighters and torpedo bombers. Planes are fast, and are not affected by terrain. There is no wall or relief that can stop a plane. You can just swoop in a base and take out AA with your gunship, and then bomb the crap out of their important structures. To stop them, you&#039;ve got to rely on Anti Air (AA) units.&lt;br /&gt;
&lt;br /&gt;
On the downside, planes are quite expensive to build and are relatively fragile. They are also the only units that have an anti unit against them (Except subs). When someone finds out you&#039;re building a large air fleet, they just cram their base full of AA and their army with mobile AA. And the only counter is more planes than their AA can handle, or a ground troop to take the AA down. A combined ground and air attack can be very destructive. Good luck!&lt;br /&gt;
&lt;br /&gt;
===Ships===&lt;br /&gt;
&lt;br /&gt;
Ships are good on a map with water. (DUH!) Ships come in many different kinds, but mostly for taking out other ships or bombing the crap out of land units in some way or another. The ships&#039; strength is their powerful weaponry and their long range. All ships made to take out land have long range. Ships also have lots of armour. Another thing thatÃ¢â‚¬â„¢s good about ships is that there is not much you can do to stop them because they are usually out of range. Once you see that the enemy has ships, either build a dock and a navy real fast or build planes and pray that he doesnÃ¢â‚¬â„¢t have too many AA ships. &lt;br /&gt;
Their weaknesses are slowness (especially when turning), they can be taken out by submarines, and of course they are confined to water, meaning that they are often stuck with units just outside of their reach.&lt;br /&gt;
&lt;br /&gt;
And they are *extremely* expensive, metal-wise.&lt;br /&gt;
&lt;br /&gt;
===Hovercraft===&lt;br /&gt;
&lt;br /&gt;
(These are counted as level 2 units, so I would not recommend them as the first to build unless itÃ¢â‚¬â„¢s the perfect map for them)&lt;br /&gt;
&lt;br /&gt;
Hovercrafts are a tank and a plane (some say ship, but I find planes to be more accurate for some reason O.o) mixed. Sure itÃ¢â‚¬â„¢s weaker than your average tank, and slower than your average plane. Whats their use? They are meant for swampy maps that means that both tanks and ships are a weakness, and offcourse since none can&#039;t be used, everyone just spams out AA since they think aircrafts are the only way. Great suprise for the enemy when 50 hovercrafts comes in agsint their flakkers and MT...&lt;br /&gt;
Long story short, Hovercrafts are good for those who like (or must) attack from the ground, but canÃ¢â‚¬â„¢t since there is too much water. &lt;br /&gt;
&lt;br /&gt;
Their weakness is their low climbing ability, and that they&#039;re weaker than a tank and slower than a plane. (DonÃ¢â‚¬â„¢t build them on a land map, tanks ARE better.)&lt;br /&gt;
&lt;br /&gt;
===Towers and Turrets===&lt;br /&gt;
&lt;br /&gt;
Like TA, Spring boasts an impressive range of plasma and laser towers, cannons and turrets. These cannons will undoubtly be essential parts of your offensive as well as defensive strategies.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Light laser tower (LLT)&#039;&#039;&#039;&lt;br /&gt;
A cheap and fast laser that hits almost every time. Mostly useful against level 1 units, but can be used in groups against level 2. They suffer from short range, so most long range weapons can kill them(Samsons, for example). Since they fire faster than their bigger brothers, LLTs are more useful against hordes of small weak units than a single strong one. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Heavy laser tower (HLT)&#039;&#039;&#039;&lt;br /&gt;
This is the only tower that works on those pesky level 2 units that just wonÃ¢â‚¬â„¢t die. These shoot slower, but with much more power than the LLT. They also have a longer range and can be quite effective against air attacks. They cost a fair amount and take a long time to build, but they are often worth it.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Missile Tower (MT)&#039;&#039;&#039;&lt;br /&gt;
The missile tower is good for planes or weak level 1 units. They shoot a weak rocket that almost hits their target every time. They have a fair range, but very low hp. They work on most level 2 planes as well, but should be backed up with Flack cannons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Pop-up Cannons&#039;&#039;&#039;&lt;br /&gt;
Pop-up cannons are pretty cheap middle range gun. A guardian can outshoot them, but they are still a choice to use. When Ã¢â‚¬ËœÃ¢â‚¬â„¢offÃ¢â‚¬â„¢Ã¢â‚¬â„¢ they take 50% less damage! I heard that a closed popup can withstand a nuke! (If itÃ¢â‚¬â„¢s not a direct hit) In XTA you can build them with level 1 construction K-bot or whatever.  Sometimes individual wars between 2 or 4 pop-ups break out, where both sides try to kill the other&#039;s ones. Just remember to repair them, as with all PCÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Middle range Plasma Cannons (MRPC)&#039;&#039;&#039;&lt;br /&gt;
Guardians and such alike. These arenÃ¢â‚¬â„¢t for attacking, but they have a pretty long range, and are not too expensive. Plus their targeting is pretty fast, meaning they are practically made for defence and very lethal. Perfect to have on a hill close to a HLT and some MTÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Long Range Plasma Cannons (LRPC)&#039;&#039;&#039;&lt;br /&gt;
We are talking Big berthas, Intimidators and such alike. These babies got the RANGE and may be the ultimate weapon on small maps. The Big Bertha, yeah. An amazing unit. Not the ultimate, but several times cheaper and more accurate than a Buzz Saw/Vulcan, and its accuracy will improve with every kill. Not good at defending, since its slow targeting makes it impossible to hit moving targets. Try to build one on a small maps, or just build one close to the enemy and your Bertha will start pounding his base mercilessly. In fact, build several, with a lot of AA around&#039;em (and ground, if thatÃ¢â‚¬â„¢s possible) and you&#039;ll see your enemy&#039;s morale quickly fall to the ground. A LRPC expansion can sometimes become the winning factor of a game.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Very long range plasma Cannons (VLRC)&#039;&#039;&#039;&lt;br /&gt;
Buzzsaws are big, cost much, are huge energy suckers, are VERY inaccurate and are pretty slow on targeting. BUT, they have the DOUBLE range of a normal LRPC and shoot 4(!!!) shots at a time. This is the one thing to finish those ÃƒÂ¼ber porckers. &lt;br /&gt;
Defend these well, with lots of AA around and in a wide circle. They only have about 5000 hp, so killing&#039;em is easy if you donÃ¢â‚¬â„¢t have AAÃ¢â‚¬Â¦&lt;br /&gt;
In OTA however Vulcans/Buzzsaws have SLIGHTLY LESS range than LRPCs, so LRPCs are generally better because they are so cheaper and each are a seperate entity with a fair bit of life(around 2500 i think).&lt;br /&gt;
&lt;br /&gt;
The obvious way to kill LRC is to use planes, since they are fast enough to enter and kill it all.&lt;br /&gt;
&lt;br /&gt;
===The first steps===&lt;br /&gt;
&lt;br /&gt;
Now comes the tricky part. The first minute is always the same really, so what after that?&lt;br /&gt;
Well, itÃ¢â‚¬â„¢s hard to judge. But here are some paths that can be taken.&lt;br /&gt;
&lt;br /&gt;
1. Build many construction units and send them out to build mexxes and Geothermal Power Plants. Then a defence and maybe some DT.&lt;br /&gt;
&lt;br /&gt;
2. Build some construction units, and then start building defences. Follow the Ã¢â‚¬ËœÃ¢â‚¬â„¢line defenceÃ¢â‚¬â„¢Ã¢â‚¬â„¢ guide lines.&lt;br /&gt;
Build Fusion Power Plants and Metal makers, and then an army. After that, use the army how armies are used best.&lt;br /&gt;
This strategy is called PORCING, and is considered by many as BAD.&lt;br /&gt;
There are disadvantages with this. You canÃ¢â‚¬â„¢t use many metal extractors or Geos, so you have slim to no resources to build your base. A popular strategy is to kill the anti-nuke, and then blow the whole compact base to bits.&lt;br /&gt;
&lt;br /&gt;
3. Build a small army of 3-6 units and attack the enemy. The goal isnÃ¢â‚¬â„¢t to kill him, but to do as much damage as possible to his resources and hinder his economy. Mexxes are the most important, and then look for wind or solar generators.&lt;br /&gt;
Try to keep on attacking him, but remember to still tech up and build defences.&lt;br /&gt;
&lt;br /&gt;
Anyway, use your construction units to build defences of SOME kind. Take advantage of Geothermal gases. Yeah the smoking stuff. You can place Geo plants there for good, cheap and space saving energy. If youÃ¢â‚¬â„¢re expanding, use every Mex&#039; positions, and try to find a place to settle your defence line.&lt;br /&gt;
&lt;br /&gt;
When you can defend yourself from most level 1 units, start on your level 2 building.&lt;br /&gt;
&lt;br /&gt;
When itÃ¢â‚¬â„¢s done, ALWAYS build a construction unit first. Use it for your first mini Fusion. (Or build some mobile fusion at the vehicle plant if you&#039;re Arm)&lt;br /&gt;
Build level 2 units in the meantime.&lt;br /&gt;
Low on metal? Upgrade the finest of your Mexxes to Moho Mexxes. They are bigger and better (but they suck up energy).&lt;br /&gt;
You can also build a Moho Metal maker if you have enough energy to support it. (MMM :p)&lt;br /&gt;
Okay, if you made this far, you must really start thinking about how to defeat the enemy. Look for his weak spot. Maybe a K-bot assault from the mountains ? Maybe planes. Maybe using amphibious units. That part is for you to figure out.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==STRATEGY==&lt;br /&gt;
&lt;br /&gt;
I read this guide through, and suddenly realisedÃ¢â‚¬Â¦ &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;where is the strategy?&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
So I fiddled this section up. Hope you&#039;ll learn something from it and thereby increase your Spring gaming experience.&lt;br /&gt;
&lt;br /&gt;
===Defence===&lt;br /&gt;
&lt;br /&gt;
AhÃ¢â‚¬Â¦ the overall defence. There are many different ways of making a good defence, but there are 3 main categories.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Compact defence!&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most common type of defence is a single line of defence, often with Dragon Teeth (DT) in front. Inside your base is some AA, and thatÃ¢â‚¬â„¢s about it. The good thing about this is that itÃ¢â‚¬â„¢s pretty easy and fast to set up, and you know where your territory ends, which can make the game much easier. Problem is, if something makes it past the line of defence, then youÃ¢â‚¬â„¢re screwed. Unless youÃ¢â‚¬â„¢re building line after line of defence, or have some units to stop em.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Spread out defence!&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I saw a guy pull this off one time, and he won with a large margin. The trick with this is to never really have a defined line of defence, just a Heavy Laser Tower (HLT) here, a radar there, some DT there, a mine here and thereÃ¢â‚¬Â¦&lt;br /&gt;
Basically, you expand every time you build a defence building, so in the end you have ENORMOUS space to move in. Since the defence is spread out, no one is gonna rush it past with some goliaths. You can have some units hide behind mountains and attack. He used merls who he trapped in fortification walls. I tried to run past the defence with an army of 30 bulldogs. His HLT and missile and plasma batteries stopped me before I even reached his final defence line.&lt;br /&gt;
Even though this defence are the best of &#039;em all, itÃ¢â‚¬â„¢s hard to build up, and requires lots off resources and time. IF youÃ¢â‚¬â„¢re able to pull it off, the only problem may be if they are fast enough to run by it all, or if you donÃ¢â‚¬â„¢t have much AA and 30 Brawlers are comingÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;No defenceÃ¢â‚¬Â¦ at all?&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Yes, this is an option. Okay, you may want some mines here and there, and some DT to stop them from running right through the door and AA in your base if their building planes. But how do you defend with no defence?&lt;br /&gt;
with units. The whole concept is that you put all your effort on making units. This works pretty well, since you can look where the enemy is going to attack, you can MOVE your whole defence to that location.&lt;br /&gt;
The problem with this defence, is that when you are attacking, you lose most of your defence. Sure you can leave units behind, but I find it hard mentally to leave half the army at home when i am attacking. &lt;br /&gt;
If you manage to pull this off, and make enough units to both attack and defend, then you have not wasted any money on defence, and you have a strong army!&lt;br /&gt;
&lt;br /&gt;
ThatÃ¢â‚¬â„¢s all I know of.&lt;br /&gt;
&lt;br /&gt;
Also, one thing to remember is to eliminate the largest threat first. If youÃ¢â‚¬â„¢re relying on DT, take out the FARK or construction planes first.&lt;br /&gt;
&lt;br /&gt;
Okay, you built a good defence&lt;br /&gt;
You must get into the mind of your enemy, and find the weakness of your defence.&lt;br /&gt;
Take a 4 seconds look through the enemyÃ¢â‚¬â„¢s eyes that just scouted the area. How would you attack something like this?&lt;br /&gt;
*&amp;quot;Well, I would try a gunship raid or attack from those undefended mountainsÃ¢â‚¬Â¦&amp;quot;&lt;br /&gt;
Then prevent that from happening, by reinforcing the area.&lt;br /&gt;
&lt;br /&gt;
-- addendum by Cain&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;The All Out Defence&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The opposite from the no defence, mixed with spread defence: the main concept is to invest resource in level 1 build planes, lot of them, and use them to quickly gather huge amounts of maps and resources, while keeping a lot of plane building / repairing turrets all over the places. This could be very effective on maps with few choke points where concentrate the defence or almost flats map where the overlapping range of defence will create a huge wall of shoot. The concept is to expand the defence line until you can shoot straight into the enemy base. Best used with a lot of level 2 aircraft defending the construction point. Note that the mobility of them is essential as you&#039;re concentrating all your resource in building plasma turrets. I usually end with a hundred of building planes and 20 to 50 brawler floating around... keep them away from Kroghot!&lt;br /&gt;
&lt;br /&gt;
===Moving===&lt;br /&gt;
Moving or attacking is pretty easy right? Just move from point a to point b and attack cÃ¢â‚¬Â¦&lt;br /&gt;
Nope.&lt;br /&gt;
First, you have to have your units move TOGETHER. . If some are trailing behind, then you just have to wait a little for them. DonÃ¢â‚¬â„¢t know how much of that is true. A way of having your units stick together is to take a pretty slow unit, like a Can and have others guard it.&lt;br /&gt;
Pressing control while moving units will make them keep their position, but not their speed. (they will spread out along the way, but &#039;&#039;try&#039;&#039; to get back into the position they was in when reaching the detination)&lt;br /&gt;
The &#039;&#039;Simple formation&#039;&#039; is also way of doing this, and will the units wiil automaticly form couple of lines. Ofen with the right units first also!&lt;br /&gt;
Transports are useful for moving units, but use the air transport (Valkyrie /Atlas) smartly and protect them. The other transportation units are harder to use, since they take more time to load/unload.&lt;br /&gt;
&lt;br /&gt;
===Attacking===&lt;br /&gt;
&lt;br /&gt;
When attacking, remember what the unit role in the fight is. Fark are used to heal your wounded important units or. Bulldogs are meant to take damage and give damage back. Merls are used to shot missiles from distance, and doesnÃ¢â‚¬â„¢t require a clear path. The question is what to heal. Merls die quickly, so one shot= dead can mean that the healing could be used on a bulldog instead. But bulldogs are ofen the first thing that the enemy targets and loses lots of HP fast. Wicht means that your healing may have slim effect on em... Therefore try to heal the middle mans. Not the giant hp monsters, not the weak defence strong/useful attack. Mobile artillery has enough hp to survive one or two attacks. Heal them so they stay alive.&lt;br /&gt;
&lt;br /&gt;
===Army vs Army===&lt;br /&gt;
&lt;br /&gt;
Many units attacking one unit is the best thing you can do, as if you kill one of theirs, they lose one source of fire power. Focus fire is the important. Using focus fire in a group of easy killed units is very effective. Using em all on the HP power houses is less effective.&lt;br /&gt;
When youÃ¢â‚¬â„¢re facing an army, always try to attack from behind or the side. Keep your units a little spread out when attacking. Not to far, but just so that area weapons donÃ¢â‚¬â„¢t do as much damage. Have your HP powerhouses at the front, or at the front plus sides. Keep em pretty close though but not too much. On the one hand, having them spread out makes it easier for the units behind to attack; on the other hand you donÃ¢â‚¬â„¢t want Zippers and Pyros running past them and flaming up everything.&lt;br /&gt;
&lt;br /&gt;
This is the normal way of attacking the army. There is the classical pincher movement tooÃ¢â‚¬Â¦&lt;br /&gt;
In this, you run one third of your HP powerhouses go to the left, one third to the right and have thze last third stay where they are. &lt;br /&gt;
This gives you 3 advantages: &lt;br /&gt;
*it&#039;s easier to get past the units and attack their weak units, or just run past them into the base, &lt;br /&gt;
*you do more damage, since their units will have to change their target all the time and can&#039;t escape &lt;br /&gt;
*it makes it MUCH harder for the enemy to run away or try to get past you.&lt;br /&gt;
&lt;br /&gt;
===Army vs Base===&lt;br /&gt;
&lt;br /&gt;
Okay, you may have made it past the ground troops, but the fight is not over (Unless he used units to defend, and didnÃ¢â‚¬â„¢t have any backup ones). Now you must face his base defence, and depending on the type of the defence he hasÃ¢â‚¬Â¦&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Line defence&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Gather your army and set up for battle a bit away from his base, and get ready to move in. Have the FARKS guard your main HP power houses, so they are in the front but still can hide behind em. Everything else behind that. When attacking, have several units attacking the HLT and plasma batteries, and use the FARKS to reclaim his Dragon Teeth. When you have a hole in it, just run like a maniac into the heart of the base. Split your tanks in 2 groups, 1 guarding your long range/high damage units and let the other go loose into the heart of the base. Find the Fusion reactors with your second group of tanks, and try to move the other big group to a place that is easy to defend while hitting the Fusions. Behind buildings is perfect! Kill as much as you can in short, or kill all^^. &lt;br /&gt;
If there are several lines of defence, dig the hole in each line of defence and repeat the same tactics.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Spread out defence&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
ArghÃ¢â‚¬Â¦ The tough one. While the individual towers are easy to beat, you canÃ¢â‚¬â„¢t run past his defences unless you like suicide. (And if you do, Ctrl+a and then ctrl+d will do the trick. A slice over the wrist works too.)&lt;br /&gt;
This is when you have to make penitence. Use your army, and slowly start killing the defence. Step by step, defence structure by defence structure. Keep building units, and moving them to the fray (you can use Air transports with repeat command and make them drop the units slightly away from the fight). Once you start getting close to his last line of defence, think of it as a line defence.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Units defence&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Think army vs army. DonÃ¢â‚¬â„¢t rush past &#039;em with all your units. Your units will spread out and try to go through holes in the enemyÃ¢â‚¬â„¢s formation. In a word, they are dead meat. If you MUST get to the base, have half of the tanks go round the units.&lt;br /&gt;
&lt;br /&gt;
===Naval Battles===&lt;br /&gt;
&lt;br /&gt;
Naval battles are hard to predict if you donÃ¢â‚¬â„¢t play island maps a lot, since there many factors to take into play. Since land units are removed, you have to think in a WHOLE new perspective. No land means that only Sea, Air and Hover units can fight (and LRC off course).&lt;br /&gt;
Anyway, try to have air units scouting land and sea, and looking how much AA the enemy has. Ships roam around assaulting other ships, with a mix of subs, sub killers, AA ships and normal ships. Hovercrafts should be the thing to use when assaulting land thatÃ¢â‚¬â„¢s a little far from shore. Have&#039;em escorted with planes or ships (or both).&lt;br /&gt;
&lt;br /&gt;
====Ships====&lt;br /&gt;
When using ships, have scout ships or planes scout the area in front, then subs and sub killers front. Use Long range ships at the sides to protect anything of value you might have with you (a sea transport or an aircraft carrier). When in battle, try to have the subs run away from sub killers, while your sub killers kill the enemy subs. Your subs should try to attack the most important ship they have, and then just go crazy.&lt;br /&gt;
When facing land, youÃ¢â‚¬â„¢re pretty much in for an easy win. Just have your ships blow it all up. If you face LRC, take them out first. The rest of it is out of your hands.&lt;br /&gt;
Remember if your opponent has air superiority or LRPCs use subs as they can&#039;t hit them :)&lt;br /&gt;
&lt;br /&gt;
====Hovercraft====&lt;br /&gt;
Use the Army vs Army or Army vs Base strategy here.&lt;br /&gt;
&lt;br /&gt;
-- addendum by Cain.&lt;br /&gt;
&lt;br /&gt;
Howercraft are quite expensive compared to other land units, but are very useful also in the map with a bit of water, targetting enemies without worring of those pesky gholiat... Note that they&#039;re much cheaper than ship, anyway.&lt;br /&gt;
&lt;br /&gt;
===Planes===&lt;br /&gt;
Hohoho, planes. Fun stuff to attack with. Anyway, the most stuff is basic with planes.&lt;br /&gt;
First, always attack the AA first. Unless your are going to do a suicide mission. Kill the AA with gunships, and use bombers to kill structures. Many players use gunships only, with is pretty wrong. Bombers take a little time to master but allied with gunships, they do a very good job. Scout early, so you can quickly see WHAT the enemy has and WHERE he has it. Use gunships to take out AA and act like overall decoys. Have Bombers fly in and bomb the crap out off his Fusion or whatever nevralgic point, and use the fighters to guard the bombers.&lt;br /&gt;
When facing units, do the same.&lt;br /&gt;
When facing sea, do the same thing, but add Torpedoes to bombers and gunships.&lt;br /&gt;
&lt;br /&gt;
-- addendum by Cain&lt;br /&gt;
&lt;br /&gt;
Know where the enemy commander is! In game where the commander death is a winning condition, a lot of bomber could just converge on him, killing on the first run.. especially the 2nd level bombers that have a nice turretted fast targetting laser! Also, gunship could distract enemy defence from your main attack force, or you can use them to make the defences of distract players shooting their own base....&lt;br /&gt;
&lt;br /&gt;
===Using Terrain===&lt;br /&gt;
&lt;br /&gt;
Using terrain wisely is very important. The issue of a game can depend on a good use of terrain.&lt;br /&gt;
First, Line of Sight (LOS) and RADAR. Both are blocked by terrain. So build your radars as high up as possibly, otherwise you may just not see anything. Use the relief at your advantage to hide an army or your important buildings from enemy radars.&lt;br /&gt;
Of course, one can also take advantage of altitude to increase fire range. A couple of Guardians on top of two high hills can easily devastate a small army.&lt;br /&gt;
Terrain also helps shield your units against attacks. Therefore, when youÃ¢â‚¬â„¢re building something high on top of a hill, try placing it a little behind the top. This is like crouching behind a crate when just your head and gun sticks up. But remember that terrain in Spring is deformable and can be leveled by impacts !&lt;br /&gt;
Know the climbing ability of your units. Hovercrafts and vehicles have pretty low climbing ability. But if a foe thinks he has sealed up all exits, your K-bots can still climb the mountains where he hasnÃ¢â‚¬â„¢t put any Dragon ToothÃ¢â‚¬Â¦ &lt;br /&gt;
Another good thing about terrain is that it mentally makes you feel safe. If there is a water barrier between me and the enemy, with 3 land bridges here and there, there probably wonÃ¢â‚¬â„¢t have much ground defence at a location AWAY from the bridges. Presuming the map is pretty flat (like &amp;quot;Flooded Desert&amp;quot;) a hovercraft assault would do A LOT of damage, right?&lt;br /&gt;
&lt;br /&gt;
===Energy and all the problems with it===&lt;br /&gt;
(in xta)&lt;br /&gt;
As I said before, most level 2 units require energy to move, shoot and operate in general. Meaning that if you have no energy to support your army, you can&#039;t do anything ! You can use this in your favor, by attacking his Fusions, or&lt;br /&gt;
by &#039;&#039;giving&#039;&#039; Metal makers to your enemy when you are attacking him, or he is attacking you!  Things that drain a lot of energy include LRPC, Goliaths, HLT, and most level 2 units.&lt;br /&gt;
(/in xta)&lt;br /&gt;
&lt;br /&gt;
===Paper-rock-scissor ?===&lt;br /&gt;
&lt;br /&gt;
Try to look at all units as individuals. Even if I didn&#039;t write much about each single unit, know your favorite ones and how to use them effectively in conjunction with the others. You&#039;ll find that some units are very complementary. The only real paper-rock relationships are AA and planes... Maybe subs vs sub killers...&lt;br /&gt;
&lt;br /&gt;
I didn&#039;t even mention cloaking, radar jamming, troops behaviour facing attacks, mines, etc, etc. The possibilities are immense, but I don&#039;t want to spoil your pleasure any longer, so I&#039;ll let you discover them by yourself.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Have fun !!!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Strategy Tips===&lt;br /&gt;
&lt;br /&gt;
-Expand! Metal is scarce. The more you get, the more you can build. Even if you have a good base, not a bad thing to do is to make it bigger.&lt;br /&gt;
&lt;br /&gt;
-Scout! Knowledge is power. You must know what your enemy is planning, and what the enemy knows about you. (Or thinks he know about youÃ¯?Å ) Check what he has, and what he is building. If heÃ¢â‚¬â„¢s building aircrafts, do something about it. Look for weaknesses in defence and such alike. If you or your ally are scouting, donÃ¢â‚¬â„¢t look away. Gather as much information as possible.&lt;br /&gt;
ALL buildings once in sight range will remain visible as &#039;ghost&#039; buildings if this option isn&#039;t turned off by the host.&lt;br /&gt;
&lt;br /&gt;
-Radar = GOOD^^. Radar checks areas for units, increases your units LOS and is overall helpful. A radar with your army makes a big difference when attacking. But so is Jamming. Jamming is good for sneak attacks. They are cheap, so just build one and make your units guard it.&lt;br /&gt;
&lt;br /&gt;
-Work Together! Often I see allies who just mind their own business and donÃ¢â‚¬â„¢t care what the other person&#039;s doing. DONÃ¢â‚¬â„¢TÃ¢â‚¬Â¦ DOÃ¢â‚¬Â¦ THIS!!! Listen to each other, make up a plan. Prepare combined attacks. If there is a 2v2, then itÃ¢â‚¬â„¢s 2 alliesÃ¢â‚¬â„¢ vs 2 allies. Not a ffa with neutral partners. Type h to share units. Left click on your resource bars to auto share resources with allies.&lt;br /&gt;
&lt;br /&gt;
-Power Plants. In order to level out the building costs, it is important to make a smooth transition from the least powerful generators to the most powerful ones stepwise. First solar, then Geo, then mobile/mini Fusion then Fusion.&lt;br /&gt;
&lt;br /&gt;
-Check your resource bar. Try to keep a fine line between having too much resources/wasting, and having a nanostall. Use your factories and such accordingly. If you have a lot of resources, try using your old level 1 factories to build some units. Also, try to find the time to build an energy/metal storage...&lt;br /&gt;
&lt;br /&gt;
-Spread out your buildings/units. Since every unit explodes, they damage units close to them. This is especially important with Fusions... (I once saw someone put 13 mobile fusions close to each other... blew up half his base with 2 (!!!) LRPC shots...)&lt;br /&gt;
&lt;br /&gt;
-Queue (yeah, easy word for it to:/) up orders! You can almost win the game by pausing, queuing up some stuff, and then go eat lunch. Not really, but holding shift is good whilst putting up buildings.&lt;br /&gt;
&lt;br /&gt;
-Guard = following and protection. Use planes to guard your tanks, subs to guard your transports, construction units to automatically repair important units or and so on. Then they will choose to attack whatever is hurting their guard object first. You can even do this to structures, for units who are built to move to a unitÃ¢â‚¬â„¢s position or AA to attack whatever is shooting on the Fusion reactors, etcÃ¢â‚¬Â¦ &lt;br /&gt;
Overall, this makes working with several unit types easier.&lt;br /&gt;
&lt;br /&gt;
-Reclaim stuff (sucking it in and transforming it into resources). When you&#039;re starting to run low on metal, reclaim the enemyÃ¢â‚¬â„¢s and your own corpses. Trees give energy, so if youÃ¢â‚¬â„¢re out on energy in the beginning... You can reclaim a whole area by shift-clicking.&lt;br /&gt;
&lt;br /&gt;
-The key for porcers are to build LRPC. Or even better, build a nuke and use LOTS of planes to kill his anti-nuke. Then BOOM!&lt;br /&gt;
Also as you have way loads more metal and space to move in than your opponent, you can easily afford 2 nukes. An anti-nuke can&#039;t deal with 2 nukes heading towards it(and if you aim the nukes at the antinuke...^^!&lt;br /&gt;
&lt;br /&gt;
-Experiment! I suggest you go into single player and try every unit. Use commanders for arm, and small battle (watch that Krogoth!) for core. Try every approach to a problem. Remember, just because a unit is good, itÃ¢â‚¬â„¢s not invincible. Also, try how much metal and energy a building uses while in operation. For instance, a level 1 factory uses about 50 energy and 5 metal. This varies depending on what you build. This could help you prevent nanostalling.&lt;br /&gt;
&lt;br /&gt;
-Several types of factories. Yeah, even if it costs money. A advanced building cost as much as a Bulldog or 2... You got the time, and the money. Build it.&lt;br /&gt;
&lt;br /&gt;
-Raid. Take the Weasel or a couple of Peewees on a cruise right by the enemyÃ¢â‚¬â„¢s mexxes. Having trouble finding&#039;em ? Type F4 to see where the ground is drained^^. A tip is to stay away from the Commander, or use buildings as hostages. Hide behind stuff and kill it off, then move on. If you&#039;re sure you&#039;re going to die, move close to a building and self-destruct.&lt;br /&gt;
&lt;br /&gt;
-Just because Peewees are better then AKÃ¢â‚¬â„¢s doesnÃ¢â‚¬â„¢t meant that AKÃ¢â‚¬â„¢s are useless. (And so onÃ¢â‚¬Â¦). In fact, no unit is useless. If you believe it is, try it once. On what it was meant to do.&lt;br /&gt;
&lt;br /&gt;
-Mix armies. O boy, if you havenÃ¢â‚¬â„¢t heard this one a thousand times before, you&#039;ve only been playing Half-Life for the last 7 years or something. Even if Goliaths rule, a couple of missile units will make them much more effective.&lt;br /&gt;
&lt;br /&gt;
-Farks are useful in combat. Always have 1-3 with you. Reclaiming DT, or doing what they were meant to do : Repair -.-* (also, when I say FARKs somewhere in the guide, construction units work to...)&lt;br /&gt;
&lt;br /&gt;
-Ask questions. No one is going to laugh at you. And if someone does, heÃ¢â‚¬â„¢s a ass and shouldnÃ¢â‚¬â„¢t even be poked a stick at. No question is too stupid. Just donÃ¢â‚¬â„¢t expect anyone in the heat of a battle to answer to Ã¢â‚¬ËœÃ¢â‚¬â„¢how do I play?Ã¢â‚¬â„¢Ã¢â‚¬â„¢.&lt;br /&gt;
&lt;br /&gt;
-Learn ! If you lost, use the replay too to watch the game and try to understand why you died. What did the enemy do better than you? What was the key to winning? And so on.&lt;br /&gt;
&lt;br /&gt;
-The Readme file has some cool keyboard shortcuts... check it out.&lt;br /&gt;
&lt;br /&gt;
-Develop! Are you a programmer, a 3D design artist or just some regular Joe? Come to the forum for a talk, chatter, and make wacky suggestions! In the end you may contribute of making Spring better! Remember, Spring is open source. So just dive into there and replace AKÃ¢â‚¬â„¢s with flying monkeys in space suits or whatever.&lt;br /&gt;
&lt;br /&gt;
-Try having some good music on when playing. It can give you a good kick. I recommend the WAR OF THE WORLD (the strategy game, yes it exists) Ã¢â‚¬ËœÃ¢â‚¬â„¢eve of the warÃ¢â‚¬â„¢Ã¢â‚¬â„¢  [http://www.fileuniverse.com/?page=listing&amp;amp;ID=54 the original TA music] &lt;br /&gt;
Or anything you like.&lt;br /&gt;
&lt;br /&gt;
-Need more strategy and tips? Since Spring is a remake of TA, any TA strategy guide works...&lt;br /&gt;
&lt;br /&gt;
-LAST BUT NOT LEAST : &#039;&#039;&#039;DonÃ¢â‚¬â„¢t get too serious. ItÃ¢â‚¬â„¢s only a game.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This guide was written by Kixxe aka Johan Wittrock before everyone edited (and improved!) it mercilessly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Back to [[Strategy_and_Tactics]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_for_RTS_Players&amp;diff=17337</id>
		<title>Spring for RTS Players</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Spring_for_RTS_Players&amp;diff=17337"/>
		<updated>2006-01-23T05:46:27Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
If you already played a lot of RTS Games, this is a fast guide to Spring and it is useful for OTA players.&lt;br /&gt;
If you are new to RTS then you should read the [[Spring guide!]].&lt;br /&gt;
&lt;br /&gt;
I will only explain the major differences and leave the complicated stuff for you to learn by playing.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Resources ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In Spring resources (Metal and Energy) are unlimited, unlike in most other RTS Games. This means that once you have built i.e. a metal extractor(Mex)/Solarplant you will get metal/energy out of it until it&#039;s destroyed (as long as you have Energy for the Mex).&lt;br /&gt;
There are 2 major following Issues because of this:&lt;br /&gt;
*Your economy will grow exponentially (always more and more) if you invest most of your resources into it.&lt;br /&gt;
*You never end up with no resources to gather, but the battle builds up till one side is overpowered.&lt;br /&gt;
&lt;br /&gt;
At the top off the screen there is a grey (metal) and yellow (energy) bar, these show you how full your storages are. There is a green (income) and red (usage) number next to each.&lt;br /&gt;
If one or both bars are full, you are wasting resources, so you should be using more of them. If Metal is empty you should get more, but Energy should never be empty, because then all Metal producing Facilities stop working.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Especially for all OTA players, mexes have a radius, if you press f4, you will see green where there is metal (the greener the better) and red where your mexes are already collecting.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Units ===&lt;br /&gt;
&lt;br /&gt;
You start with the Commander (Comm), the unique builder unit who has the D-Gun. The D-Gun can destroy *anything* in one hit. The D-Gun, however, requires large amounts of energy, which is critical at the early stages in which it&#039;s use is more likely (to defend agaisnt rushes and the like). The Commander is furthermore the fastest builder that you start with (although better builders are avaible at techlevel 2, later in the game); you can snap to him with CTRL+C if he gets lost. Beware, though, because the Commander is ALSO a walking bomb - when he dies, he takes EVERYTHING around him with him.&lt;br /&gt;
&lt;br /&gt;
Construction Units (&amp;quot;Builders&amp;quot; or &amp;quot;con units&amp;quot; or just &amp;quot;conbots&amp;quot;) can help eachother building - the more conbots you put on a building, the faster it&#039;ll be constructed. Be aware that the rate at which metal and energy is consumed also increases - you cannot build if you do not have anything to build with. The same can be done to help factories build units - simply assign the conbot to Guard (hotkey G) the factory, and the conbot will automatically help build whatever it is the factory is building.&lt;br /&gt;
&lt;br /&gt;
There are, generally speaking, five kinds of units in Spring: Vehicles (tanks, cars, what have you), K-Bots (&amp;quot;infantry&amp;quot; robots, if you will), Hovercrafts (all-terrain tanks), aircraft (have wings, will fly) and Ships (including submarines). Vehicles are generally heavier and more hard-hitting than K-Bots, but since the K-Bots have legs, they can get to places the vehicles can&#039;t. Similarly, the hovercrafts are all capable of travelling on both land and water, but like the tanks, they are unable to traverse cliffsides and steep terrain. What&#039;s more, hovercrafts are generally lighter than tanks in regards to armor and armament. Aircrafts are generally more expensive and less deadly than vehicles and K-Bots, but they have the advantage of fast and unlimited movement.&lt;br /&gt;
&lt;br /&gt;
Ships are just big. Lots of armor, lots of guns. And they sail.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Radar ===&lt;br /&gt;
&lt;br /&gt;
The big colored blips on your screen are radar dots.&lt;br /&gt;
With radar covarage you can see things out of los, but only as moving blips. Radar doesn&#039;t go through hills, there are radar jammers and under water there is sonar instead.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Side Notes ===&lt;br /&gt;
&lt;br /&gt;
To improve your gameplay, watch replays of good players. But you should also watch your own, to see where your problems are. (spring.exe-&amp;gt;not server-&amp;gt;name of replay.sdf enter; + and - to change the speed)&amp;lt;br&amp;gt;&lt;br /&gt;
With shift you can que up things. (A must in this game)&amp;lt;br&amp;gt;&lt;br /&gt;
There are keybord shortcuts (uikeys.txt), and you can make some yourself with the selection editor.&amp;lt;br&amp;gt;&lt;br /&gt;
For a general Idea of how to start building look at the [[Base building tips]].&amp;lt;br&amp;gt;&lt;br /&gt;
And if you aren&#039;t a good strategist, you can look into the [[Spring guide!]] (long).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
If you have more Questions look in the FAQ, if theres nothing there, you are welcome to ask me (Metaltrash)&lt;br /&gt;
&lt;br /&gt;
I hope I could help you and have fun battling.&lt;br /&gt;
Feel free to edit, or enhance this i.e. with little explaining pictures.&lt;br /&gt;
It is supposed to be short so that its an easy quick read.&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Strategy_and_Tactics&amp;diff=17964</id>
		<title>Strategy and Tactics</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Strategy_and_Tactics&amp;diff=17964"/>
		<updated>2006-01-15T04:15:37Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following pages discuss or disclose tips, strategy &amp;amp; tactics.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;General TA Spring&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Rushing]]&lt;br /&gt;
&lt;br /&gt;
[[Spring guide!]]&lt;br /&gt;
&lt;br /&gt;
[[Base building tips]]&lt;br /&gt;
&lt;br /&gt;
[[Spring for RTS Players]]&lt;br /&gt;
&lt;br /&gt;
[[Spring Replays]]&lt;br /&gt;
&lt;br /&gt;
[[Mods, and their strategies/tactics]]&lt;br /&gt;
&lt;br /&gt;
[[Advanced_Strategy_Discussion]]&lt;br /&gt;
&lt;br /&gt;
Return to [[Main_Page]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=AI:NTAI&amp;diff=938</id>
		<title>AI:NTAI</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=AI:NTAI&amp;diff=938"/>
		<updated>2005-12-21T06:10:01Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: Spelling&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[http://img434.imageshack.us/img434/6500/screen0898vk.jpg http://img432.imageshack.us/img432/8080/thumb0896lz.jpg][http://img393.imageshack.us/img393/536/screen0920qb.jpg  http://img432.imageshack.us/img432/7251/thumb0924ca.jpg][http://img393.imageshack.us/img393/8756/screen0903up.jpg http://img432.imageshack.us/img432/5011/thumb0903nl.jpg]&lt;br /&gt;
&lt;br /&gt;
NTAI is an [[AI]] being developed by [http://taspring.clan-sy.com/phpbb/profile.php?mode=viewprofile&amp;amp;u=73 Alantai Firestar]. It is arguably better that [[AI:JCAI|JCAI]], with less crashes and a better performance when the two AI&#039;s battle each other.&lt;br /&gt;
&lt;br /&gt;
NTAI shares several components in collaboration with ZcAIn, most noticeably the metal extractor algorithm. NTAI is also the successor to the fabled attempt to create TAI. In time NTAI will become the TAI describe at darkstars.co.uk. Of all the AI&#039;s TAI+NTAI has the most theory and speculation available to read.&lt;br /&gt;
&lt;br /&gt;
While NTAI works, it may not be as effective as it could be due to the fact it was initially created in a 30 hour all nighter coding/playtesting session.&lt;br /&gt;
&lt;br /&gt;
Current version: 2.0&lt;br /&gt;
&lt;br /&gt;
=== Links ===&lt;br /&gt;
* [http://taspring.clan-sy.com/phpbb/viewtopic.php?t=2487 NTAI Forum Thread]&lt;br /&gt;
* [http://sourceforge.net/project/showfiles.php?group_id=141993 NTAI Downloads (Sourceforge)]&lt;br /&gt;
* [http://www.darkstars.co.uk NTAI site]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Back to [[AI]]&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Using_Spring&amp;diff=19283</id>
		<title>Using Spring</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Using_Spring&amp;diff=19283"/>
		<updated>2005-12-21T00:54:23Z</updated>

		<summary type="html">&lt;p&gt;Patmo98: /* Cloak(K) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;More Exaustive Decription of Contols, Interface and Features.  For Basic information, check the most current [http://cvs.sourceforge.net/viewcvs.py/*checkout*/springrts/taspring/README.html README.html] (should be mirrored [[Readme|here]])or [[Getting_Started]].  For an introduction to the srategy and overall gameplay in XTA (and most mods based on the orriginal Cavedog units) check out the [[Spring_guide%21]]&lt;br /&gt;
&lt;br /&gt;
For more advanced/current information check the most recent [http://taspring.clan-sy.com/changelog.txt changelog] or the [http://taspring.clan-sy.com/phpbb/ taspring/spring forums].&lt;br /&gt;
&lt;br /&gt;
=Camera Controls=&lt;br /&gt;
There are four camera modes in Spring. To change camera modes use CTRL+Middle Button (Mouse 3), CTRL+J or CTRL+Backspace (Also SHIFT+[Mouse 3,J or Backspace]). Middle button, Backspace or J toggle &amp;quot;free look&amp;quot; mode for the current camera view. (expand idividual controls for each camera mode)&lt;br /&gt;
&lt;br /&gt;
==Camera Modes==&lt;br /&gt;
&lt;br /&gt;
There are four different camera modes in Spring. Everyone likes a different one. Try them all out to decide what you like.&lt;br /&gt;
&lt;br /&gt;
===FPS Style===&lt;br /&gt;
This is the default view.  The camera is controlled just like in a First Person Shooter. Use arrow keys to fly forward/backward and strafe left/right. Hold the middle mouse button to aim the camera. Use the scroll wheel to zoom in and out.&lt;br /&gt;
&lt;br /&gt;
This is the easiest camera to position. However, it can get quite tedious in the middle of a battle trying to control the camera. Its good for screenshots and FPS junkies.&lt;br /&gt;
&lt;br /&gt;
===Classic Overhead(TA) Style===&lt;br /&gt;
Exactly the same view as OTA had. It has a fixed height above the ground, but allows you to zoom in and out. Use the arrow keys or move the mouse to the edge of the screen to pan around the map. The scroll wheel zooms in and out. Holding the middle mouse button also pans around the map.&lt;br /&gt;
&lt;br /&gt;
This is the easiest view for OTA players to use. It functions exactly the same as the OTA camera, so no new tricky controls are needed to properly enjoy the game. But there is no way to tilt the camera, so this view does not really show off the full glory of the Spring engine. It is the favorite view mode for most people, as most people play OTA.&lt;br /&gt;
&lt;br /&gt;
===Total War Style===&lt;br /&gt;
The same camera system as seen in the (Rome:?)Total War game. It runs at a fixed height above the ground, which is not changable. Use the arrow keys or move the mouse to the edge of the screen to pan around the map. Scrolling the scroll wheel tilts the camera. Putting the mouse in the top corners of the screen rotates the view. Holding down the middle mouse button pans around the map.&lt;br /&gt;
&lt;br /&gt;
Good for those familiar with the Total War games. But again it does not allow for full freedom in the movment, so does not show off the engine as much as it could do.&lt;br /&gt;
&lt;br /&gt;
===Rotatable Overhead Camera===&lt;br /&gt;
&lt;br /&gt;
This is a new camera system invented by the SY&#039;s. It has a fixed height, but you can change this height by scrolling. Use the arrow keys to pan around the map. The scroll wheel moves the camera up and down vertically. Holding the middle mouse button aims the camera.&lt;br /&gt;
&lt;br /&gt;
This is perhaps the best camera, as it allows for totally free movement and aiming, but with some handy restrictions on the height. It is the second most popular view behind OTA view.&lt;br /&gt;
&lt;br /&gt;
===FPS &amp;quot;Mode&amp;quot; (C)===&lt;br /&gt;
Press &#039;C&#039; to toggle &amp;quot;First Person Shooter Mode&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Controls:&lt;br /&gt;
*Up Arrow: Move in the direction the legs are facing&lt;br /&gt;
*Left Arrow: Rotate Legs to the left&lt;br /&gt;
*Right Arrow: Rotate Legs to the right&lt;br /&gt;
*Mouse: Aim default gun (may lock onto annoying targets such as the ground)&lt;br /&gt;
*Left Mouse Button: Shoot whatever guns the engine has decided to let you shoot&lt;br /&gt;
*Right Mouse Button: Free Fire Mode, the AI will aim and fire for you.&lt;br /&gt;
&lt;br /&gt;
==General Function Keys==&lt;br /&gt;
&lt;br /&gt;
For the most part the function keys control what the camera sees, so they are listed here for lack of a better place for them.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;F1&#039;&#039;&#039;: Toggles Contour Markings On/Off. Color coded contour markings of the map height. One iteration through the colors (ie: red-green-blue-red) is 32 units high.&lt;br /&gt;
*&#039;&#039;&#039;F2&#039;&#039;&#039;: Toggles Path map On/Off. The path map works the following way: &lt;br /&gt;
**&#039;&#039;&#039;Mobile Unit Selected&#039;&#039;&#039;: If you have a mobile unit selected, then the pathmap shows where that specific unit can move (green) and where it cant (red). The greener the map, the better the unit can walk on that area. Zones that cant be walked or driven on are always solid red.&lt;br /&gt;
**&#039;&#039;&#039;Builder Selected&#039;&#039;&#039;: When you have a builder selected, and click on a building in its build menu (i.e. a Kbot lab), the path map will show you where you can build that building. Its fairly easy to understand, with the green zones representing buildable areas, and the red zones representing the areas where you cannot build.&lt;br /&gt;
*&#039;&#039;&#039;F3&#039;&#039;&#039;: Moves the camara to the position of the last message. Messages can be from units, or alerts on the minimap from your allies.&lt;br /&gt;
*&#039;&#039;&#039;F4&#039;&#039;&#039;: Toggles Metal Map On/Off. If the map is green, there is metal there. if the map is black, there is no metal. If the map is white, there is lots of metal and it would be a good strategic place to hold.&lt;br /&gt;
*&#039;&#039;&#039;F5&#039;&#039;&#039;: Toggles the GUI On/Off. Good for taking screenshots.&lt;br /&gt;
*&#039;&#039;&#039;F6&#039;&#039;&#039;: Toggles Sound On/Off. Good for when your D-Gunning kroggies XD&lt;br /&gt;
*&#039;&#039;&#039;F7&#039;&#039;&#039;: Toggles the Dynamic sky. If the game is running slowly, try turning this off to speed it up a little bit.&lt;br /&gt;
*&#039;&#039;&#039;F8&#039;&#039;&#039;: Save the Game. Not sure exactly how this works, or how you then load a game again, but the button is here for using.&lt;br /&gt;
*&#039;&#039;&#039;F9&#039;&#039;&#039;: Show/Hide Unit Status. Unit Status bars are: Health, Building percentage, experience, and group numbers.&lt;br /&gt;
*&#039;&#039;&#039;F11/F12&#039;&#039;&#039;: Screenshots. Takes a screenshot and saves it to TASpring/Screenshot###.jpg, where ### is the number of the screenshot.&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; F10 is not bound to any control, but its good idea to map it to CreateVideo instead of &#039;v&#039;. Edit the TASpring/uikeys.txt and replace &amp;quot;bind &#039;v&#039; CreateVideo&amp;quot; with &amp;quot;bind f10 CreateVideo&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==Snapping/Panning Camera to a Specific View==&lt;br /&gt;
Right mouse button (MOUSE2) click on the mini-map to snap the center of the view to that point on the map, right click and drag to move the camera around the map.&lt;br /&gt;
&lt;br /&gt;
Press F3 to snap the camera view to the point of the last &amp;quot;message&amp;quot; (aka commander is under attack, player 1 has placed a point: look here!).&lt;br /&gt;
&lt;br /&gt;
Press T to lock the camera to track the currently selected units. (move the camera manually to stop the tracking)&lt;br /&gt;
&lt;br /&gt;
=Selections/Groups/Group Commands/Group AI=&lt;br /&gt;
&lt;br /&gt;
==The Selection Editor==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;SelectionEditor.exe&#039;&#039;&#039; is a program installed in your install directory, which is used for editing your &#039;&#039;&#039;selectkeys.txt&#039;&#039;&#039; configuration file, allowing you to make your own shortcut keys for selecting/filtering selection.&lt;br /&gt;
&lt;br /&gt;
[http://taspring.clan-sy.com/phpbb/viewtopic.php?t=2190 This] forum topic that should be duplicated here, with cleaning up and additions made... and permission probably.&lt;br /&gt;
&lt;br /&gt;
==Default Selection Controls==&lt;br /&gt;
&lt;br /&gt;
===Selecting/Deselecting Units===&lt;br /&gt;
Unless you have issued a pending command(see [[#Left Mouse Control (Mouse 1)|Left Mouse Control (Mouse 1)]]), left-clicking(Mouse Button 1) a unit will clear the current selection and select the left-clicked unit, if a spot with no valid selection is clicked(empty space, ground, unowned units), the current selection will be cleared. Left-clicking and dragging will draw a box, any units within this box will be selected when you release the mouse button.&lt;br /&gt;
&lt;br /&gt;
Shift+Left-clicking(including dragging a select box), unless you have a pending command, will add units to the current selection.&lt;br /&gt;
&lt;br /&gt;
CTRL+Left-clicking (including dragging a select box), unless you have a pending command, will remove units from the current selection.&lt;br /&gt;
&lt;br /&gt;
Unless the unit is in a group Double-left-clicking will select all visible(camera bounds) units of the clicked type(Shift+Double-left-clicking will add all units of the double-clicked unit&#039;s type to the current selection).&lt;br /&gt;
&lt;br /&gt;
CTRL+Z is a shortcut (which can be eddited in Selection Editor) to select all owned units of the current selected type.  For example, if a peewee and a brawler are selected, all peewees and brawlers will be selected.&lt;br /&gt;
&lt;br /&gt;
CTRL+A is a shortcut (which can be eddited in Selection Editor) to select all owned units.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;quot;Tooltips&amp;quot; are displayed in the bottom left of the current interface, if units are selected this information is the sum of all information about the selection (aka, select a bank of 5 solar collectors and it will show the total health and total energy being produced).  If you mouse-over a &amp;quot;build-pic&amp;quot; in a units command list it will show you the costs and stats associated with the unit represented by the &amp;quot;build-pic&amp;quot;.  If you have no selection, the tooltip will show information about what your mouse is over at that time (unit stats if it&#039;s a unit, otherwise information about the terrain).&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
[[Image:CommanderTooltip.png|thumb|120px|Commander Selected]]&lt;br /&gt;
[[Image:TerrainTooltip.png|thumb|120px|Terrain Hover (No Units Selected)]]&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
[[Image:BuildMexTooltip.png|thumb|120px|Metal Extractor Buildpic Hover]]&lt;br /&gt;
[[Image:RepairTooltip.png|thumb|120px|Repair Command Hover]]&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
[[Image:PeeweeGroupTooltip.png|frame|center|Group of units Selected]]&lt;br /&gt;
&lt;br /&gt;
===Basic Unit Groups===&lt;br /&gt;
&lt;br /&gt;
Spring supports what could be called quick control groups.  Basically you can assign the currently selected units to a numbered group with CTRL+# (where # is a number key) which will put that number(#) above all selected units, then later, you can quickly select these units by pressing SHIFT+#.&lt;br /&gt;
&lt;br /&gt;
If a factory is set to a group, all units built by this factory will also be automatically assigned to this group.&lt;br /&gt;
&lt;br /&gt;
Units can only be in one group at a time, so assigning a new group number to a unit will remove it from it&#039;s current group.&lt;br /&gt;
&lt;br /&gt;
Assigning a unit to a group overides normal double-clicking behaviour, if you double-click a member of a group, it&#039;s group is selected instead of the units of the same type in range.&lt;br /&gt;
&lt;br /&gt;
Also note, when you CTRL+# a group of units, the old group with that number will no longer exist. Therefore if you intend to add aditional units to a group, you first SHIFT+# the current members and then add (by holding SHIFT) the additional units to the selection group and the use CTRL+# to re-assign all the units to that group. A shortcut for this is holding down both SHIFT and CTRL and pressing a number(#) to add the current selection to that group, and select the entirety of that new group.&lt;br /&gt;
&lt;br /&gt;
===Advance Unit Groups with GroupAI===&lt;br /&gt;
&lt;br /&gt;
It is possible to assign groups 10 and up for automatic control control.&lt;br /&gt;
&lt;br /&gt;
see [[#Select_AI.28CTRL.2BQ.29|Select AI(CTRL+Q)]], to create groups 10 and above.&lt;br /&gt;
&lt;br /&gt;
see [[#Assign/Select_Current_Group(Q)|Assign/Select Current Group(Q)]], to select and add units to these groups.&lt;br /&gt;
&lt;br /&gt;
=Issuing Orders/Building=&lt;br /&gt;
&lt;br /&gt;
===Left Mouse Control (Mouse 1)===&lt;br /&gt;
As covered in [[#Selecting/Deselecting Units|Selecting/Deselecting Units]], left clicking is the primary control for selecting units.  If, however, a pending order is issued using the menu that appears on the left side of the screen or using a Hotkey, the mouse pointer will change to a symbol representing this action.  If there is a pending order and you left click on a valid target for the action the selcted units will perform this action on that target, otherwise the units will &amp;quot;do their best&amp;quot; to perform the action(which could mean just cancelling the Order.&lt;br /&gt;
&lt;br /&gt;
The menu will show all available commands for all selected units, except for wait and self destruct, in the menu, mousing over a menu item will also display the Tooltip for this item.&lt;br /&gt;
&lt;br /&gt;
===Right Mouse Control (Mouse 2)===&lt;br /&gt;
Right clicking will always give the selected units the default action for the target, if the order is invalid for some members of the group, it may or may not choose a suitable action for those units to perform.&lt;br /&gt;
&lt;br /&gt;
===Queueing Orders===&lt;br /&gt;
&lt;br /&gt;
Use Shift to queue orders. Queueing orders means that you can tell a unit, or a group of units to do multiple tasks, and they will go off and do them with out any more input from you. Just say you want a Construction Vehicle to build a line of defences around your base. Select the defence building you want, hold shift and click around a few times. The construction vehicle will now go and build (or try to build) all of the selected structures, and you can just sit back and watch. You can queue each and every type of order there is in game, with no limits. It would be possible (but not very smart) to order your commander to build a whole base for you while you go off and have lunch!&lt;br /&gt;
&lt;br /&gt;
If you have a unit selected, holding shift will show green outlined &amp;quot;ghosted&amp;quot; building for all units the selection has been ordered to build and simple green squares for all buildings that are queued for other units.  Also, when holding shift, a path (white line) will be shown representing the selected units order queue (even if there is only one order for that unit; aka a line to the building the unit has been ordered to build and the ghosted building).&lt;br /&gt;
&lt;br /&gt;
You can remove an order from the order queue by holding shift and repeating the same order. This doesn&#039;t work very well on area or movement type orders but can be useful for cancelling the construction of an un-needed building.&lt;br /&gt;
&lt;br /&gt;
Another use for this, is for issuing complicated movement orders. Say you wan your army to attck your enemy, but you want to attack from the side, where they are their weakest. just issuing one move command to attack the side of their base would send our units moving THROUGH your enemys base to try to get to the side. This is not very good. But if you tell your units to move to a location AWAY from the base and them attack from the side, by queuing up two or more move commands, this problem can be successfully avoided. Or you could tel your units to attack certain buildings in a certain order, for instance attack all the outlying metal extracors, and them go for the power plants in the base, they will follow these orders oblivious to anything else, while you go in and attack the other important things.&lt;br /&gt;
&lt;br /&gt;
learing how to sucessfully queue orders is a vital part of any game, and you will be lost with out it.&lt;br /&gt;
&lt;br /&gt;
==Building Buildings==&lt;br /&gt;
&lt;br /&gt;
When a contruction unit is selected you will see images in it&#039;s command list(menu on the left) representing the buildings that it can build (buildpics).  Mousing over this buildpic will update the tooltip to show information about the structure.  Clicking on a structure&#039;s buildpic will select it for contruction.  If multiple units are selected, all available structures (and mobile units) will appear in the command list.  Choosing to build a building when you have multiple units selected will usually assign all units to help build those buildings if this is a valid command.&lt;br /&gt;
&lt;br /&gt;
===Build (select structure + left-click)===&lt;br /&gt;
&lt;br /&gt;
Builds whatever structure selected in the location clicked by moving the builder unit selected there and nanolathing it into existance.  All Queued orders are cancelled&lt;br /&gt;
&lt;br /&gt;
===Build Queue (select structure + shift + left-click)===&lt;br /&gt;
&lt;br /&gt;
Puts the selected structure and location into your unit&#039;s order queue.&lt;br /&gt;
&lt;br /&gt;
===Build Line (select structure + shift + left-hold-drag)===&lt;br /&gt;
&lt;br /&gt;
Adds a straight line of the selected structure into your unit&#039;s build queue starting where your right hold first depressed and ending where you lift the key.&lt;br /&gt;
&lt;br /&gt;
===Build Box (select structure + shift + alt + left-hold-drag)===&lt;br /&gt;
&lt;br /&gt;
Adds a filled in square or rectangle box of the selected structures to your unit&#039;s build queue.  The location your first depressed rightmouse is one cornered border and the location you release is the opposing corner.  If you move the mouse straigt up your box will look like a vertical line.&lt;br /&gt;
&lt;br /&gt;
===Space Build (shift + mouse5/mouse4)===&lt;br /&gt;
&lt;br /&gt;
Gives your line and/or box structure queues an ammout of spacing between structures (default spacing starts at no space).  Each click of the spacing expand button gives you an extra LLTbased size space in between each structure on all 4 dimentions.  Similarly, each click of the spacing contract button removes that ammout of space.  You cannot remove spaces when structures are already placed with no spacing between them.&lt;br /&gt;
&lt;br /&gt;
==Building Mobile Units (Building with Factories)==&lt;br /&gt;
&lt;br /&gt;
Click on the picture of the unit you want to queue up for building. You can queue up many units this way.&lt;br /&gt;
&lt;br /&gt;
Hold SHIFT while clicking a buildpic to order 5 units at one time, hold CTRL while clicking to order 20, hold CTRL+SHIFT while clicking to order 100. Hold ALT while clicking a buildpic to cancel the current construction and add the clicked unit to beginning of the queue (starting the constuction of that unit immediately). Right clicking a buildpic will cancel 1,5,20 or 100 orders for that unit by the same combination of SHIFT and/or CTRL metioned before.&lt;br /&gt;
&lt;br /&gt;
Assigning a group number to a factory will cause the factory to pass this group number to the units it builds.&lt;br /&gt;
&lt;br /&gt;
You can give factories a Move, Guard, or other order and the factory will pass it on to the units it builds. YOu can use this to choose a better place for new units to go after being built, or to send them straight into construction or a battle without micromanaging them. This includes assigning queued orders (for example: multiple move points to get a unit out of the base in a straight line and then a guard repair order on a specific large unit under construction and then a guard order back on the orriginal factory to increase build speed).&lt;br /&gt;
&lt;br /&gt;
Construction/Repair units can be assigned to guard a factory to increase the speed of production for each of the units the factory makes.&lt;br /&gt;
&lt;br /&gt;
==Commands and Defaults and Hotkeys==&lt;br /&gt;
It is assumed that if a unit does not have an ability it will not be it&#039;s default action, priorities have been noted.&lt;br /&gt;
===Active State (X)===&lt;br /&gt;
This command toggles the active state of a unit.&lt;br /&gt;
If a unit can be turned off this will usually stop it&#039;s prodution and/or use of energy and/or metal and/or stop it from doing something and/or change it&#039;s stats.&lt;br /&gt;
For example, turning off a radar jamming building would make it stop drawing power and prevent it from jamming radar, or turning off a solar collector would stop it from producing power and cause it to &amp;quot;close up&amp;quot; increasing it&#039;s armor.&lt;br /&gt;
This behaviour is unit-scriptable so it could technically do anything the designer of the unit wants it to do.&lt;br /&gt;
&lt;br /&gt;
===Attack(A)===&lt;br /&gt;
Orders the unit to attack the target or location. If ordered to attack a unit, the selected unit or building will keep firing at the targeted unit/building until it is dead. If the targeted unit moves out of range, or out of sight(sp?), the selected unit will move to target the targeted unit again. If ordered to attack ground, the unit will never stop until told to do so by the user. Note that units automatically attack any visible enemy units inside their range, and will pursue them(depending on their Move State (see below)) to a certain distance before returning to their selected location.&lt;br /&gt;
&lt;br /&gt;
===Capture===&lt;br /&gt;
The unit will move up to the targeted unit or building and attempt to convert it to your team. So if the enemy has built a Geothermal power plant , and forgotten to protect it, grab a near by construction unit and try to capture it! Note that this takes quite a while, and it is not a good idea to try to capture a unit that is shooting at you.  The closer the unit is to 0 health the faster it will be captured.  Be careful to set your Commander&#039;s [[#Fire State|fire state]] to &amp;quot;hold fire&amp;quot; if you are trying to capture a unit with him, as you will likely detroy the target before it is captured.&lt;br /&gt;
&lt;br /&gt;
===Cloak(K)===&lt;br /&gt;
Makes a unit inivisble to the enemys units. Enemy units will not be able to shoot a unit while it is cloaked, but can still shoot it if it is on radar(I think?). Note that this uses an immense amount of energy, and units uncloak for a few seconds when they shoot.  This means that you might want to set the unit to Hold Fire, so the unit doesn&#039;t accidentally reveal itself.  Cloaking a unit also causes atacking units to lose their target lock.&lt;br /&gt;
&lt;br /&gt;
===DGun(D)===&lt;br /&gt;
Disintegrator Gun. A weapon held by the commander. It is a very powerful gun that will kill ANY unit in game. Use it in early game to ward off rushes, or against super units like the Krogoth, or the Goliath. Be careful, as it also destroys your units and buildings at the same time! Uses alot of energy to fire, so make sure you have the required energy before attmpting this, cause if it does not work, your commander will be a sitting duck.&lt;br /&gt;
&lt;br /&gt;
===Fire State===&lt;br /&gt;
Fire States are fairly simple to work out, and are fairly self explanatory. There are three different states, each with their advantages and disadvantages.&lt;br /&gt;
&lt;br /&gt;
==== Fire at Will ====&lt;br /&gt;
This is the default setting for all new units. It makes units fire at any visible enemy unit within its range. It is good for general destruction.&lt;br /&gt;
&lt;br /&gt;
==== Hold Fire ====&lt;br /&gt;
This makes units never fire unless ordered to. Even if they are attacked, they will not do anything. THis is good for sneaking units around the back of a base, as they will not draw any attention to themselfs.&lt;br /&gt;
&lt;br /&gt;
==== Return Fire ====&lt;br /&gt;
Units only fire at untis that shoot at them. Again, this is good for sneak attacks, but add that little bit more of self defence to them.&lt;br /&gt;
&lt;br /&gt;
===Guard(G)===&lt;br /&gt;
The current selection will &amp;quot;guard&amp;quot; the target owned or allied unit.&amp;lt;br /&amp;gt;&lt;br /&gt;
When a unit is order to guard another guarding unit it will:&lt;br /&gt;
&lt;br /&gt;
1) Any unit that is order to guard another will attempt to follow it&#039;s target anywhere.&lt;br /&gt;
&lt;br /&gt;
2) The Guarding unit will Defend the target if it becomes threatened and the guard has weapons.&lt;br /&gt;
&lt;br /&gt;
3) It will also Repair if the target if it&#039;s damaged and the guard has repair capabilities.&lt;br /&gt;
&lt;br /&gt;
4) Or it will Assist in any constructions the target is working on, if the guard can at least repair. This also applies to guarding units capable of repairing who are assigned to guard a factory. &lt;br /&gt;
&lt;br /&gt;
5) A guarding unit will: Repair a unit that has been just resurrected (if capable). But it will not attempt to assist in the actual resurrection, inspite of the guard&#039;s capabilities.&lt;br /&gt;
&lt;br /&gt;
6) If say 3 units were each told to guard eachother such that: Unit 1 guards Unit 2, Unit 2 guards Unit 3, and Unit 3 is told to build or repair or attack or whatever. Units 1 and 2 would also join unit 3 in doing what it was ordered to do.&lt;br /&gt;
&lt;br /&gt;
===High Trajectory===&lt;br /&gt;
If this option is available, click the button to toggle this state.&amp;lt;br /&amp;gt;&lt;br /&gt;
A unit with High Trajectory mode enabled will shoot almost vertically, allowing it to shoot over hills as well as other units and masking the direction/source of the shot.&amp;lt;br /&amp;gt;&lt;br /&gt;
Using this mode reduces accuracy greatly and also the increased distance of the higher trajectory will increase the amount of time a shot will take to reach it&#039;s target.&amp;lt;br /&amp;gt;&lt;br /&gt;
===Move(M)===&lt;br /&gt;
There are 4 ways to move a group of units in Spring: &lt;br /&gt;
&lt;br /&gt;
1) The usual move to point (works for single units or groups, pretty standard.) &lt;br /&gt;
&lt;br /&gt;
2) Holding down on ctrl while giving a move order issues a &amp;quot;Move in formation&amp;quot; command. In this case, formation means whatever formation or configuration the units were in when they were given the order.&lt;br /&gt;
&lt;br /&gt;
3) Holding down Alt during a move command issues a &amp;quot;Move into a square&amp;quot;. Units will try to move into a nice organised formation. However, this rarley ever works, as units tend to shove each other out of the way when trying to get into position. &lt;br /&gt;
&lt;br /&gt;
4) Click and drag at the waypoint and it issues a &amp;quot;Move to this line&amp;quot; command. (In this case the line can be oriented however the user wants.  The shorter the line the deeper the back the units will line up.  And by contrast the longer the line the more the units will line up along with it. If there&#039;s enough units in the group they will form double or even triple lines, which may cause some shoving as stated in #3.)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes:&#039;&#039;&#039; Certain formation commands might not work on every type of aircraft.&amp;lt;br&amp;gt;&lt;br /&gt;
By turning on [[#Repeat|Repeat]], units will move back into formation when shoved out of position. However, this should be used with caution, as it can lead to problems when trying to move units later&amp;lt;br&amp;gt;&lt;br /&gt;
Right clicking with a unit selected is usually as good as pressing the &amp;quot;M&amp;quot; key if the selected point doesn&#039;t have any objects at that location.&lt;br /&gt;
&lt;br /&gt;
===Move State===&lt;br /&gt;
&lt;br /&gt;
===Patrol(P)===&lt;br /&gt;
A unit given a command to patrol will move back and forth between its current position and the taget location.  Holding CTRL when giving a patrol command to a selection with more then one unit will cause the units to move to a location relative the the target point compared to the distance of the unit from the center of the selection.  Holding SHIFT while issueing a series of patrol orders will cause the unit to repeat this command, moving from current location to the targets and &amp;quot;circle around&amp;quot; through the points on the queued path.&lt;br /&gt;
&lt;br /&gt;
When a unit is patroling it will do whatever it can to &amp;quot;help out&amp;quot; along the path of it&#039;s patrol route.  How far it will go out of it&#039;s designated route is partially defined by line of sight, radar coverage, [[#Move State|move state]], and [[#Fire State|fire state]].&lt;br /&gt;
&lt;br /&gt;
Examples of Patrol Behaviour:&lt;br /&gt;
*If a unit that can repair patrols within range of a damaged (or under contsruction) owned or allied unit, the patrolling unit will repair the damaged unit.&lt;br /&gt;
*If a unit that can attack patrols within range of an enemy it will attack the enemy unit.&lt;br /&gt;
&lt;br /&gt;
===Reclaim(E)===&lt;br /&gt;
&lt;br /&gt;
Reclaiming will break down something and give you the metal/energy it is worth. Only certain units (namely, construction units and the Commander) have reclaim capabilities. Wrecks, enemy units, features, and your own units are reclaimable. 	Energy and metal will be added to storage when reclaiming process is complete. &lt;br /&gt;
&lt;br /&gt;
====Default Behavior====&lt;br /&gt;
Simply clicking on a feature, a wreck, or an enemy unit with a construction unit will reclaim it by default. Dragging as an area command draws a circle in which all valid objects will be reclaimed.&lt;br /&gt;
&lt;br /&gt;
Assigning multiple units to reclaim a target will increase the speed at which the target is reclaimed.&lt;br /&gt;
&lt;br /&gt;
===Repair(R)===&lt;br /&gt;
When repairing a damaged unit, uses a percentage of the metal and energy costs associated with a damaged unit to increase the speed at which a unit regains health.  When repairing a unit that is still being constructed the unit will help build the target, increasing the speed at which the unit is completed.&lt;br /&gt;
The repair command is cancelled when the target&#039;s health reaches 100%, so if a unit under construction is damaged the repair command will complete the building of the target and then continue to repair until the unit is at full health.&lt;br /&gt;
Valid targets are any damaged units(need to check but I believe this includes enemy units) and units currently being constucted.&lt;br /&gt;
Default behaviour for owned and ally units that are not at full health, including units being constructed by other units and factories.&lt;br /&gt;
The more units that are assigned to repair another unit, the faster the unit will be constructed/restored to full health, but the energy and metal costs will increase accordingly.&lt;br /&gt;
&lt;br /&gt;
===Assign/Select Current Group(Q)===&lt;br /&gt;
This key has a double function.&lt;br /&gt;
&lt;br /&gt;
If you have one unit belonguing to a group selected, when pressing Q it will select all the units that belong to this group.&lt;br /&gt;
&lt;br /&gt;
If several units are selected, and one belongs to any group, then, when pressing Q it will assign ALL the selected units to this group, and after that will select the group.&lt;br /&gt;
&lt;br /&gt;
It works with AI groups aswell as user generated (&amp;quot;tactical&amp;quot;?) groups.&lt;br /&gt;
&lt;br /&gt;
See [http://taspring.clan-sy.com/wiki/Using_Spring#Default_Selection_Controls Default selection Controls] for more info on groups.&lt;br /&gt;
&lt;br /&gt;
===Repeat===&lt;br /&gt;
Moves any orders that have been completed to the back of the order queue. For instance, If you tell a unit to more to one side of the base, and then to the other side of the base, it would keep going back and forwards forever, because when it completed the first move command, it would place that command at the back of the queue again. This is most usefull when building units. If you want a factory to continuously pump out a Sampson, then a Flash, then two Stumpy&#039;s, turn on repeat, and watch the units pump out!&lt;br /&gt;
&lt;br /&gt;
===Restore===&lt;br /&gt;
Drag an area of terrain to restore the terrain to it&#039;s original height if it has been &amp;quot;deformed&amp;quot;(damaged by explosions or flattened by the contruction of a building).&lt;br /&gt;
&lt;br /&gt;
===Resurrect===&lt;br /&gt;
In XTA only the Arm F.A.R.K. and the Core necro can use this order. Use this to ressurect dead units. If you see some wreakage on the map from some dead units, select a FARK or Necro and ressurect the dead units to have them fight along side your army. A good way to gain the upper hand later in game is to ressurect your opponents army after a battle. This does take a lot of energy and metal(half as much as building the unit originally), and ressurected units will start on 1 health, so are very vunerable.&amp;lt;br /&amp;gt;&lt;br /&gt;
Ressurect is the default order for corpses from destroyed units, this unfortunately includes wreackage that can&#039;t acctually be resurrected.(Tip: if you cannot tell what unit the wreakage was then most likely you cannot resurrect it)&amp;lt;br /&amp;gt;&lt;br /&gt;
Dragging this order as an area will cause all selected units to ressurect all valid targets in that area. If multiple units are given a common ressurect order, the target will be resurrected faster but only one of them(probably the one the engine decides acctually completed the process) will try to restore it to health.  In the case of an area command the units who do not stay behind to repair the target will move on to a new target.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Select AI(CTRL+Q)===&lt;br /&gt;
&lt;br /&gt;
Press Control+Q to assign the currently selected units with an &amp;quot;AI&amp;quot;.&lt;br /&gt;
Setting an AI will generate a &amp;quot;group&amp;quot; from that selection of units.&lt;br /&gt;
&lt;br /&gt;
In Spring, the term AI stands more for an aid or &amp;quot;helper&amp;quot; than for a Complete Control AI (as NTAI, ZCAIN, JCAI).&lt;br /&gt;
&lt;br /&gt;
Current available AIs.&lt;br /&gt;
&lt;br /&gt;
None&amp;lt;br&amp;gt;&lt;br /&gt;
[[Simple Formation]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Central Build AI]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Metal Maker AI]]&amp;lt;br&amp;gt;&lt;br /&gt;
Default = Will assign defaul ai for that unit (?)&lt;br /&gt;
&lt;br /&gt;
===Self Destruct(CTRL+D)===&lt;br /&gt;
Will detonate the selected units/buildings in a very spectacular explosion after a specific count-down (default is 5 seconds). Use this when destroying units/building that are in the way, or when detonationg mines or crawling bombs. A way to literally go out with a bang is to press Ctrl+A (Select All), Ctrl+D (Self Destruct). Note that this will make you lose the game, but is very spectacular!&lt;br /&gt;
&lt;br /&gt;
===Stop(S)===&lt;br /&gt;
Makes them stop any queued commands, and stop moving. They will not automatically stop attacking units, unless their fire state is set to Hold Fire.&lt;br /&gt;
&lt;br /&gt;
===Wait(W)===&lt;br /&gt;
If issued at some point in a command queue (holding shift for multiple commands) the unit will wait at that point in the queue until it is queued another wait command(which should cancel the other one out), or unitl it is given a non-queued order (no-shift, cancels command queue aswell as normal).  If it is loaded by a transport while waiting, it will cancel the wait command once it has been unloaded.&lt;br /&gt;
(I Haven&#039;t Tested this functionality, someone should try it out and see what it acctually does... got this from the forums [http://taspring.clan-sy.com/phpbb/viewtopic.php?t=2034&amp;amp;highlight=wait+command])&lt;br /&gt;
&lt;br /&gt;
=Chat, Cheats, and Text Commands=&lt;br /&gt;
&lt;br /&gt;
Pressing ENTER will bring up a &amp;quot;say:&amp;quot; prompt which you can use to communicate with other players or issue &amp;quot;Text Commands&amp;quot;.  To send a message to all who are connected, type your message and press ENTER.  To send a message only to your allies, preface your message with &amp;quot;a:&amp;quot;.  To send a message to any spectators, type &amp;quot;s:&amp;quot; then your message and press ENTER.  To enter a Text Command, simply type the command and press ENTER.&lt;br /&gt;
&lt;br /&gt;
===Basic Text Commands===&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, its CPU usage percentage 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;
===Cheat Codes=== &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;Insta-build; everything is built immediatly. (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;
=Map Doodles=&lt;br /&gt;
&lt;br /&gt;
Hold the ` key to draw on the map, only you and your allies can see these doodles.  Use this tool to mark out territory or warn of impending attacks or mark enemy bases or play tic-tac-toe before the game... be creative but not annoying.&lt;br /&gt;
&lt;br /&gt;
Hold ` while pressing the left mouse button (MOUSE1) to draw a line.&lt;br /&gt;
&lt;br /&gt;
Hold ` while double left clicking, then type a label then press ENTER to add a labled point(also minimap ping and chat message notification).&lt;br /&gt;
&lt;br /&gt;
Hold ` while clicking the middle mouse button (MOUSE3/Scrollwheel Button)  to add an empty point(also minimap ping and chat message notification).&lt;br /&gt;
&lt;br /&gt;
Hold ` and clicking the right mouse button (MOUSE2) to erase lines or points.&lt;/div&gt;</summary>
		<author><name>Patmo98</name></author>
	</entry>
</feed>