<?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=Argt</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=Argt"/>
	<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/wiki/Special:Contributions/Argt"/>
	<updated>2026-11-08T22:25:15Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Absolute_Annihilation&amp;diff=1440</id>
		<title>Absolute Annihilation</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Absolute_Annihilation&amp;diff=1440"/>
		<updated>2007-07-16T13:41:31Z</updated>

		<summary type="html">&lt;p&gt;Argt: /* Overview */ Fix mispelling&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===No longer in development===&lt;br /&gt;
&lt;br /&gt;
Absolute Annihilation&#039;s development has officially ceased as of January 30, 2007.&lt;br /&gt;
&lt;br /&gt;
===Overview===&lt;br /&gt;
[[Image:SpringAA.jpg|thumb|200px|right|A few of the larger units in AA]]&lt;br /&gt;
With 366 balanced units, Absolute Annihilation, or AA, was the single most-downloaded Total Annihilation units pack.  AA has been ported to Spring soon after Spring&#039;s development began in earnest and takes advantage of many of the engine&#039;s new features.  It is based on [[UberHack]] and so attempts to improve TA balance without radically changing gameplay. However, whereas UberHack added only a few extra units, AA incorporates many new units including some of the most impressive new units concocted by the ever-creative TA community.&lt;br /&gt;
&lt;br /&gt;
AA was under constant development until autumn of 2006, spurred on by its highly active community following, and [http://taspring.clan-sy.com/phpbb/profile.php?mode=viewprofile&amp;amp;u=107 Caydr], who headed up development.  Some units were subject to frequent and sometimes brutal tweaking and pruning, leading many players to feel that the changes were random - in fact, they were simply based on feedback sent through mediums besides the forum.  AA contained new factories, units, resource buildings, sneaky defensive structures and an array of massive &amp;quot;experimental&amp;quot; units for brutalizing the enemy&#039;s base.&lt;br /&gt;
&lt;br /&gt;
Players new to the mod should be warned that some old units [[Image:pano2.jpg|thumb|200px|right|Ridiculously huge image depicting every unit in AA]]now fill new roles, while some are more (or less) effective than they were in classic TA as of the 3.1c patch.&lt;br /&gt;
&lt;br /&gt;
AA:Spring is based mostly on version 6.0 of the OTA AA mod.&lt;br /&gt;
&lt;br /&gt;
===Strategy===&lt;br /&gt;
Absolute Annihilation is a modification of TA. Therefore, the same basic strategies and tactics that good TA players utilize are also utilized by good AA players.  Although AA is a very complex modification, some important points to remember are: &lt;br /&gt;
&lt;br /&gt;
# Expand whenever possible, because &amp;quot;porcing&amp;quot; (building nothing but defense) isn&#039;t a very good strategy in AA.  Moho metal extractors give greater income than in most other mods, rewarding players who can control the largest area of the map.&lt;br /&gt;
# The best defence is a good offense.  Make sure you are able to quickly respond to the unexpected by keeping a standing army even when you make an all-out attack.&lt;br /&gt;
# Beware of AA&#039;s &amp;quot;superweapons&amp;quot;.  Each side has a unique aircraft, ship, and experimental kbot.  Annihilators and Doomsday Machines are great for defending against Krogoths and Orcones.  Mercuries and Screamers are the best for defending against Liche atomic bombers, while Krow gunships are most vulnerable to advanced fighters.  Finally, heavy subs or an extremely powerful navy are the best way to defend against Epochs and Black Hydras.&lt;br /&gt;
&lt;br /&gt;
The actual units present in AA aren&#039;t so important; it takes little time to learn what they all do. The key to victory lies in utilizing them effectively. Always keep the above points in mind when playing, and above all, practice.  Even if you lose, ask the person to whom you lost what you did wrong and right.  Study replays involving experienced players to see what tricks they use.&lt;br /&gt;
&lt;br /&gt;
For further information go to the [[Strategy:Absolute Annihilation|AA Strategy Guide]].&lt;br /&gt;
&lt;br /&gt;
=== Downfall ===&lt;br /&gt;
&lt;br /&gt;
At the height of AA&#039;s popularity, Caydr finished his education and became a machinist.  His job and other aspects of real life occupied so much of his time that he became completely out of touch with the AA community for several months, not even realizing that a silly little typo bug, easily fixed, had basically destroyed gameplay for months on end.  This prompted others to try to fill his shoes, some successfully, some unsuccessfully.  A new mod, &amp;quot;Balanced Annihilation&amp;quot;, at first incorporating only minor changes with great gameplay fixes, slowly began to eat away at AA&#039;s previously untouchable popularity.&lt;br /&gt;
&lt;br /&gt;
When Caydr finally got some time off during the end of December 2006, he finally discovered what a shambles he&#039;d left AA in due to failing to quickly fix several major problems in the last released version, 2.22.  He realized that this state of affairs was obviously an indicator that he would not longer be able to responsibly remain the main developer of AA, and decided to let AA finally slip away.  Giving his blessing to those who continued the work in his stead, he posted one last message on his website, http://www.caydr.com, and hasn&#039;t been heard from since.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Links ===&lt;br /&gt;
*[http://ta-aa.sourceforge.net AA Homepage] &lt;br /&gt;
*[[Absolute Annihilation/Units|Unit Guide]]&lt;br /&gt;
[[Image:groupshot4.jpg|thumb|700px|center|Hey look!  Another freakishly huge picture!]]&lt;br /&gt;
*[[Strategy:Absolute_Annihilation|Additional Notes On Strategy In Absolute Annihilation]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Mods]]&lt;br /&gt;
{{Category:Mods}}&lt;/div&gt;</summary>
		<author><name>Argt</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=SetupGuide&amp;diff=16442</id>
		<title>SetupGuide</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=SetupGuide&amp;diff=16442"/>
		<updated>2007-07-16T13:32:11Z</updated>

		<summary type="html">&lt;p&gt;Argt: /* TASClient */ fix English syntax: &amp;quot;mingw32 is probably simple to install...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Linux Setup Guide ==&lt;br /&gt;
&lt;br /&gt;
=== Which Version To Install ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;0.75 has just been released. This affects some parts of this guide. Currently this guide is NOT updated. I will remove this notice when the pages are up to date.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
To play online, you must have the same version as everyone else in the game.&lt;br /&gt;
&lt;br /&gt;
Most people should get the current release, version 0.74b3. There are usually&lt;br /&gt;
between 100 and 200 people online in the lobby, and if you want to play with&lt;br /&gt;
them, you need this.&lt;br /&gt;
&lt;br /&gt;
Older versions should only be interesting to software archeologists.&lt;br /&gt;
&lt;br /&gt;
If you want to see the bleeding edge, you can checkout svn head of spring, but&lt;br /&gt;
it can not be used to play with people who have the release, so you are&lt;br /&gt;
practically limited to playing against nemo. This is mainly interesting for&lt;br /&gt;
people who want to contribute to the project, for testing, finding bugs and&lt;br /&gt;
fixing them, and implementing new features. Head can be seriously broken from&lt;br /&gt;
time to time, or not even compile.&lt;br /&gt;
&lt;br /&gt;
=== Installing With Package Managers On Various Distributions ===&lt;br /&gt;
&lt;br /&gt;
If there is a package for your distributions preferred package manager, it is&lt;br /&gt;
recommended to use it instead of compiling the program yourself from sources.&lt;br /&gt;
&lt;br /&gt;
==== 0.74b3 For Etch (Debian 4.0 Stable) With APT ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
echo &amp;quot;deb http://www.osrts.info/~tvo/deb etch spring&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
aptitude update&lt;br /&gt;
aptitude install spring spring-data&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Your paths are: Spring executable in &amp;lt;code&amp;gt;/usr/games/spring &amp;lt;/code&amp;gt; and&lt;br /&gt;
read-only data in &amp;lt;code&amp;gt;/usr/share/games/spring&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== 0.74b3 For Sid (Debian Unstable) With APT ====&lt;br /&gt;
&lt;br /&gt;
The current .deb for Sid is broken, because it depends on some boost packages&lt;br /&gt;
of version 1.33 that are not installable on sid, which has only 1.34. A&lt;br /&gt;
slightly more complex way to install is necessary:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
echo &amp;quot;deb http://www.osrts.info/~tvo/deb sid spring&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
echo &amp;quot;deb-src http://www.osrts.info/~tvo/deb sid spring&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
aptitude update&lt;br /&gt;
aptitude install dpkg-dev devscripts&lt;br /&gt;
apt-get source spring&lt;br /&gt;
apt-get build-dep spring&lt;br /&gt;
cd spring-0.74~b3/&lt;br /&gt;
debuild -us -uc&lt;br /&gt;
debi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Your paths are: Spring executable in &amp;lt;code&amp;gt;/usr/games/spring &amp;lt;/code&amp;gt; and&lt;br /&gt;
read-only data in &amp;lt;code&amp;gt; /usr/share/games/spring&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== 0.74b3 For Ubuntu (any version) With APT ====&lt;br /&gt;
&lt;br /&gt;
If you have boost 1.33, then all you need is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
echo &amp;quot;deb http://www.osrts.info/~tvo/deb edgy spring&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
aptitude update&lt;br /&gt;
aptitude install spring spring-data&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you have boost 1.34, you have to do it the same way as debian unstable:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
echo &amp;quot;deb http://www.osrts.info/~tvo/deb edgy spring&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
echo &amp;quot;deb-src http://www.osrts.info/~tvo/deb edgy spring&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
aptitude update&lt;br /&gt;
aptitude install dpkg-dev devscripts&lt;br /&gt;
apt-get source spring&lt;br /&gt;
apt-get build-dep spring&lt;br /&gt;
cd spring-0.74~b3/&lt;br /&gt;
debuild -us -uc&lt;br /&gt;
debi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Your paths are: Spring executable in &amp;lt;code&amp;gt;/usr/games/spring&amp;lt;/code&amp;gt; and&lt;br /&gt;
read-only data in &amp;lt;code&amp;gt;/usr/share/games/spring&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== 0.74b3 For Gentoo With Portage ====&lt;br /&gt;
&lt;br /&gt;
Make an overlay for portage, download the ebuilds, and extract to populate the overlay:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p /usr/local/portage&lt;br /&gt;
echo &#039;PORTDIR_OVERLAY=&amp;quot;/usr/local/portage&amp;quot;&#039; &amp;gt;&amp;gt; /etc/make.conf&lt;br /&gt;
wget http://download.berlios.de/taspring-linux/spring-ebuilds-0.74-r3.tar.bz2 ||&lt;br /&gt;
    wget http://download2.berlios.de/taspring-linux/spring-ebuilds-0.74-r3.tar.bz2&lt;br /&gt;
tar xjf spring-ebuilds-0.74-r3.tar.bz2 -C /usr/local/portage/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you are not running unstable (~x86), do the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
echo &amp;quot;games-strategy/spring               ~x86&amp;quot; &amp;gt;&amp;gt; /etc/portage/package.keywords&lt;br /&gt;
echo &amp;quot;games-strategy/spring-base-ota      ~x86&amp;quot; &amp;gt;&amp;gt; /etc/portage/package.keywords&lt;br /&gt;
echo &amp;quot;games-strategy/spring-mod-xta       ~x86&amp;quot; &amp;gt;&amp;gt; /etc/portage/package.keywords&lt;br /&gt;
echo &amp;quot;games-strategy/spring-mod-gundamrts ~x86&amp;quot; &amp;gt;&amp;gt; /etc/portage/package.keywords&lt;br /&gt;
echo &amp;quot;games-strategy/spring-mod-nanoblobs ~x86&amp;quot; &amp;gt;&amp;gt; /etc/portage/package.keywords&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some packages need to be built with certain use flags set, this makes sure it happens:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
echo &amp;quot;media-libs/libsdl    X opengl&amp;quot;     &amp;gt;&amp;gt; /etc/portage/package.use&lt;br /&gt;
echo &amp;quot;dev-libs/boost       threads&amp;quot;      &amp;gt;&amp;gt; /etc/portage/package.use&lt;br /&gt;
emerge media-libs/libsdl dev-libs/boost&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add yourself to the group &amp;lt;code&amp;gt;games&amp;lt;/code&amp;gt;. Don&#039;t do this as root, do this as&lt;br /&gt;
the user you normally use to play (you have to relogin afterwards to make it&lt;br /&gt;
work):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
gpasswd -a $(whoami) games&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally emerge spring itself, along with some datafile packages (ignore the&lt;br /&gt;
use flags for spring ebuild):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
emerge unzip spring spring-base-ota spring-mod-xta spring-mod-gundamrts&lt;br /&gt;
emerge spring-mod-nanoblobs&lt;br /&gt;
etc-update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Your paths are: Spring executable in &amp;lt;code&amp;gt;/usr/games/bin/spring&amp;lt;/code&amp;gt; and&lt;br /&gt;
read-only data in &amp;lt;code&amp;gt;/usr/share/games/spring&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Installing 0.74b3 From Source ===&lt;br /&gt;
&lt;br /&gt;
If there is no package tailored for your distribution, you have to install from sources manually. Doing this for distributions where packages are available is not recommended.&lt;br /&gt;
&lt;br /&gt;
==== Getting The Source ====&lt;br /&gt;
&lt;br /&gt;
You can either download the source as a 4.7MB tarball (recommended) or get it&lt;br /&gt;
from the subversion repository. Either way, the result is the same for 0.74b3.&lt;br /&gt;
&lt;br /&gt;
===== Downloading A Tarball =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
cd /tmp&lt;br /&gt;
wget http://download.berlios.de/taspring-linux/spring_0.74b3_src.tar.bz2 ||&lt;br /&gt;
    wget http://download2.berlios.de/taspring-linux/spring_0.74b3_src.tar.bz2&lt;br /&gt;
tar xjf spring_0.74b3_src.tar.bz2&lt;br /&gt;
cd spring_0.74b3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Checking Out From Subversion =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
aptitude install subversion # if you are not on debian, figure it out&lt;br /&gt;
svn co https://taspring.clan-sy.com/svn/spring/tags/taspring_0.74b3 /tmp/spring_0.74b3&lt;br /&gt;
cd /tmp/spring_0.74b3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Getting The Dependencies ====&lt;br /&gt;
&lt;br /&gt;
For Etch (debian 4.0 stable) and Sid (debian unstable), I&#039;ve confirmed the&lt;br /&gt;
following to be the minimal set that is necessary to get. I have not tested&lt;br /&gt;
with any version of Ubuntu, but the line is probably almost identical if not&lt;br /&gt;
the same.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
aptitude install scons build-essential zlib1g-dev libfreetype6-dev&lt;br /&gt;
aptitude install libsdl1.2-dev libopenal-dev libglew-dev libboost-dev&lt;br /&gt;
aptitude install libboost-thread-dev libboost-regex-dev libdevil-dev&lt;br /&gt;
aptitude install python2.4-dev zip&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This has been tested to work with a clean install of gentoo 2007.0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
emerge dev-util/scons \&amp;gt;=media-libs/freetype-2.0.0 \&amp;gt;=media-libs/libsdl-1.2.0&lt;br /&gt;
emerge media-libs/openal =dev-lang/python-2.4\* media-libs/glew dev-libs/boost&lt;br /&gt;
emerge media-libs/devil app-arch/zip&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Users of other distributions should be able to figure out the correct package&lt;br /&gt;
names from this. The scons configure will whine if you forget something, but it&lt;br /&gt;
does not check if you remembered to install zip, even though you still need it.&lt;br /&gt;
&lt;br /&gt;
==== Building And Installing ====&lt;br /&gt;
&lt;br /&gt;
The build will spew out warnings like the following, which you can safely ignore:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
warning: division by zero&lt;br /&gt;
warning: &#039;q&#039; may be used uninitialized in this function&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Configure, build and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
scons configure&lt;br /&gt;
scons&lt;br /&gt;
scons install&lt;br /&gt;
mkdir -p /etc/spring&lt;br /&gt;
echo &#039;$HOME/.spring&#039; &amp;gt; /etc/spring/datadir&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Your paths are: Spring executable in &amp;lt;code&amp;gt;/usr/local/games/spring&amp;lt;/code&amp;gt; and&lt;br /&gt;
read-only data in &amp;lt;code&amp;gt;/usr/local/share/games/spring&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Finalizing installation ==&lt;br /&gt;
&lt;br /&gt;
Now all the things you needed to run as root have been done. Some stuff needs to be done by the user who is going to play spring.&lt;br /&gt;
&lt;br /&gt;
I&#039;m assuming bash here, but you can use anything you like to do it of course.&lt;br /&gt;
&lt;br /&gt;
=== Making Data Directories ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p ~/.spring/{base,maps,mods}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Getting Maps ===&lt;br /&gt;
&lt;br /&gt;
You need at least one map to succesfully run spring.&lt;br /&gt;
&lt;br /&gt;
Go to [http://spring.unknown-files.net/category/13/Maps/ Unknown Files, Map Section] and download at least one map. Save it under ~/.spring/maps/ without unpacking the file in any way.&lt;br /&gt;
&lt;br /&gt;
Hint: If you know the map name you want, there is a Quick Search in the top right corner of the page. Just write a part of the name, like one word, and you&#039;ll easily find what you were looking for.&lt;br /&gt;
&lt;br /&gt;
=== Getting Mods ===&lt;br /&gt;
&lt;br /&gt;
You need at least one mod to successfully run spring.&lt;br /&gt;
&lt;br /&gt;
Go to [http://spring.unknown-files.net/category/14/Mods/ Unknown Files, Mod Section] and download at least one mod. Save it under ~/.spring/mods/ without unpacking the file in any way.&lt;br /&gt;
&lt;br /&gt;
Hint: If you know the mod name you want, there is a Quick Search in the top right corner of the page. Just write a part of the name, like one word, and you&#039;ll easily find what you were looking for.&lt;br /&gt;
&lt;br /&gt;
If you want to play mods based on Total Annihilation, for example XTA, AA, BA, then you have to do the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
wget http://ipxserver.dyndns.org/games/spring/mods/xta/base-ota-content.zip&lt;br /&gt;
unzip -d ~/.spring/base base-ota-content.zip&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that you need to own a copy of Total Annihilation, to download this file legally.&lt;br /&gt;
&lt;br /&gt;
If you want to view unit stats of mods, [http://modinfo.unknown-files.net/modit/modit.php this] is the site for you.&lt;br /&gt;
&lt;br /&gt;
=== Editing Settings === &lt;br /&gt;
Defaults should be usable, so you can ignore this until you want to maximise your eye candy or fps :)&lt;br /&gt;
&lt;br /&gt;
When you run spring the first time, it creates ~/.springrc which contains all the settings. It is a simple text file with name=value lines, most of which are pretty obvious and can be edited by hand.&lt;br /&gt;
&lt;br /&gt;
If you want a tool for editing the file, you can use Kloot&#039;s [http://members.chello.nl/mjtobi/Settings++.tar.gz Settings++]. Untar it anywhere and open it by typing &amp;quot;./Settings++&amp;quot; and edit away.&lt;br /&gt;
&lt;br /&gt;
=== Using LuaUI ===&lt;br /&gt;
&lt;br /&gt;
Spring UI is scriptable with Lua. This is called LuaUI, and it is not enabled per default.&lt;br /&gt;
&lt;br /&gt;
Replace LuaUI=0 with LuaUI=1 in your ~/.springrc to use LuaUI.&lt;br /&gt;
&lt;br /&gt;
In 0.74b3, when you host games, you might crash more often when you use Lua, but this should be fixed in 0.75.&lt;br /&gt;
&lt;br /&gt;
Lua scripts for LuaUI can be found in [http://spring.unknown-files.net/category/19/Lua_Scripts/ Unknown Files LuaUI Section].&lt;br /&gt;
&lt;br /&gt;
In 0.74b3, you have to move LuaUI directory from your read-only data dir to your read-write data dir, to be able to customize it.&lt;br /&gt;
&lt;br /&gt;
TODO need more stuff here.&lt;br /&gt;
&lt;br /&gt;
=== Installing Lobby Client ===&lt;br /&gt;
&lt;br /&gt;
To setup online games, you need a lobby client. There are several options to choose from.&lt;br /&gt;
&lt;br /&gt;
You can also use lobby client to setup single player matches against the AI. TODO more information about setting up tasclient to play against AI.&lt;br /&gt;
&lt;br /&gt;
==== Omni ====&lt;br /&gt;
&lt;br /&gt;
This project has been abandoned, and you should not use it.&lt;br /&gt;
&lt;br /&gt;
==== UnityLobby ====&lt;br /&gt;
&lt;br /&gt;
This project has been abandoned, and you should not use it.&lt;br /&gt;
&lt;br /&gt;
==== SpringLobby ====&lt;br /&gt;
&lt;br /&gt;
This project is very promising, but not yet ready enough for production use.&lt;br /&gt;
&lt;br /&gt;
Homepage of SpringLobby is [http://tc.serveftp.net/trac here].&lt;br /&gt;
&lt;br /&gt;
==== AFLobby ====&lt;br /&gt;
&lt;br /&gt;
This project is very promising, but is still in beta development. However, is usable for online multiplayer. See forum thread: http://spring.clan-sy.com/phpbb/viewtopic.php?t=8691&lt;br /&gt;
&lt;br /&gt;
==== TASClient ====&lt;br /&gt;
&lt;br /&gt;
This is a windows program, but it works just fine under wine in linux, and can be used together with native linux spring. I use it myself and recommend to use this temporarily until we all can migrate to SpringLobby or AFLobby.&lt;br /&gt;
&lt;br /&gt;
The only two downsides in using this are that you have to use wine (which should not be a big problem) and your rank won&#039;t increase as long as you use it (also because of win-linux binary interaction).&lt;br /&gt;
&lt;br /&gt;
Download the installer of Spring for Windows, and run it in wine:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
wget http://spring.clan-sy.com/dl/spring_0.74b3.exe&lt;br /&gt;
wine spring_0.74b3.exe&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No configuration of wine should be needed, if your distribution is sane.&lt;br /&gt;
&lt;br /&gt;
Complete the install, and let it install to the default location, which is Program Files\Spring.&lt;br /&gt;
&lt;br /&gt;
Assuming you completed the earlier step of creating the data directories, now we need to link the windows and linux data together:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
touch ~/.wine/drive_c/Program\ Files/Spring/script.txt&lt;br /&gt;
ln -s ~/.wine/drive_c/Program\ Files/Spring/script.txt ~/.spring/script.txt&lt;br /&gt;
&lt;br /&gt;
rm -r ~/.wine/drive_c/Program\ Files/Spring/maps&lt;br /&gt;
ln -s ~/.spring/maps ~/.wine/drive_c/Program\ Files/Spring/maps&lt;br /&gt;
&lt;br /&gt;
rm -r ~/.wine/drive_c/Program\ Files/Spring/mods&lt;br /&gt;
ln -s ~/.spring/mods ~/.wine/drive_c/Program\ Files/Spring/mods&lt;br /&gt;
&lt;br /&gt;
rm -r ~/.wine/drive_c/Program\ Files/Spring/base&lt;br /&gt;
ln -s ~/.spring/base ~/.wine/drive_c/Program\ Files/Spring/base&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the windows-TASClient to be able to launch native linux spring, we need a wrapper exe in between them. Source code for wrapper exe is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
#include &amp;lt;windows.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;tchar.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#define NATIVE_SPRING_LOCATION TEXT(&amp;quot;/usr/games/spring&amp;quot;)&lt;br /&gt;
#define SPRING_VERSION_REPLY &amp;quot;Spring 0.74b3&amp;quot;&lt;br /&gt;
&lt;br /&gt;
int main (int argc, char **argv)&lt;br /&gt;
{&lt;br /&gt;
  if (argc &amp;gt; 1 &amp;amp;&amp;amp; !strcmp(argv[1], &amp;quot;/V&amp;quot;))&lt;br /&gt;
  {&lt;br /&gt;
     puts(SPRING_VERSION_REPLY);&lt;br /&gt;
     return 0;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  STARTUPINFO si;&lt;br /&gt;
  ZeroMemory( &amp;amp;si, sizeof(si) );&lt;br /&gt;
  si.cb = sizeof(si);&lt;br /&gt;
&lt;br /&gt;
  PROCESS_INFORMATION pi;&lt;br /&gt;
  ZeroMemory( &amp;amp;pi, sizeof(pi) );&lt;br /&gt;
&lt;br /&gt;
  // Start the child process.&lt;br /&gt;
  if (!CreateProcess(&lt;br /&gt;
    _tcsdup(NATIVE_SPRING_LOCATION), // No module name (use command line)&lt;br /&gt;
    GetCommandLine(),                // Command line&lt;br /&gt;
    NULL,                            // Process handle not inheritable&lt;br /&gt;
    NULL,                            // Thread handle not inheritable&lt;br /&gt;
    FALSE,                           // Set handle inheritance to FALSE&lt;br /&gt;
    0,                               // No creation flags&lt;br /&gt;
    NULL,                            // Use parent&#039;s environment block&lt;br /&gt;
    NULL,                            // Use parent&#039;s starting directory&lt;br /&gt;
    &amp;amp;si,                             // Pointer to STARTUPINFO structure&lt;br /&gt;
    &amp;amp;pi))                            // Pointer to PROCESS_INFORMATION structure&lt;br /&gt;
    {&lt;br /&gt;
      printf( &amp;quot;CreateProcess failed (%d).\n&amp;quot;, GetLastError() );&lt;br /&gt;
      return 1;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
  // Wait until child process exits. Wine actually does not know how to wait&lt;br /&gt;
  // for native linux process, so this will return instantly and your gametime&lt;br /&gt;
  // counter does not increase so you don&#039;t get any rank.&lt;br /&gt;
  WaitForSingleObject( pi.hProcess, INFINITE );&lt;br /&gt;
&lt;br /&gt;
  // Close process and thread handles.&lt;br /&gt;
  CloseHandle( pi.hProcess );&lt;br /&gt;
  CloseHandle( pi.hThread );&lt;br /&gt;
&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might need to modify the define-lines in the beginning to match your location and version. Remember, the version reply must be exactly right, or your game just breaks totally in multiplayer or you can&#039;t even login to lobby server.&lt;br /&gt;
&lt;br /&gt;
Save this code to spring.cc for example, and then we need to install a windows-crosscompiler and compile a windows binary from it inside our linux box like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
aptitude install mingw32&lt;br /&gt;
i586-mingw32msvc-g++ spring.cc -o ~/.wine/drive_c/Program\ Files/Spring/spring.exe&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This assumed debian for installing the crosscompiler, but mingw32 is probably simple to install on other distributions as well.&lt;br /&gt;
&lt;br /&gt;
TODO should provide binary packages for this launcher, as all people don&#039;t have the possibility to set up cross compiler.&lt;br /&gt;
&lt;br /&gt;
Then you should make a script for launching TASClient. The script can be named tasclient for example, and just put it somewhere in your path and make it executable. The script code is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/usr/bin/env sh&lt;br /&gt;
cd ~/.wine/drive_c/Program\ Files/Spring&lt;br /&gt;
wine TASClient.exe&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you should be able to type tasclient on the command line, and the lobby appears. &#039;&#039;&#039;This cd operation is necessary. If your working directory is not the same as TASClient.exe&#039;s location, it will just give access violations to you.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Note that every time when you have added new maps, the lobby client caches them and this will take some time, or a long time if you downloaded many maps since last time. Just wait patiently.&lt;br /&gt;
&lt;br /&gt;
Then you should register an account and login with it, and you should be ready to join an online multiplayer game from the list that appears.&lt;br /&gt;
&lt;br /&gt;
It&#039;s likely that you don&#039;t have the correct map or mod at this point, so just get them and join the game. You don&#039;t need to restart your lobby client after downloading the files.&lt;br /&gt;
&lt;br /&gt;
It&#039;s recommended that you spectate a couple of high rank games first, to get some idea of how the game should be played. Some hosts don&#039;t allow spectators, but most do.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
&lt;br /&gt;
==== Problems With Boost 1.34 ====&lt;br /&gt;
&lt;br /&gt;
If you get an error message when starting spring, which looks like the following but can be from any tdf file and the line numbers don&#039;t need to match either:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
Parse error in gamedata/explosion_alias.tdf at line 48 column 34 near&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then you need this patch:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: rts/System/tdf_grammar.hpp&lt;br /&gt;
===================================================================&lt;br /&gt;
--- rts/System/tdf_grammar.hpp	(revision 1919)&lt;br /&gt;
+++ rts/System/tdf_grammar.hpp	(revision 3798)&lt;br /&gt;
@@ -99,6 +99,7 @@&lt;br /&gt;
             section(self.section) &lt;br /&gt;
             | gather_junk_line  // if this rule gets hit then section did not consume everything,&lt;br /&gt;
          ) &lt;br /&gt;
+        &amp;gt;&amp;gt; end_p&lt;br /&gt;
         ;&lt;br /&gt;
 &lt;br /&gt;
       gather_junk_line = &lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Save it to a file and go to spring source directory and say:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
patch -p0 &amp;lt; mypatchfilename&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You need to have patch installed to be able to do this. After successfully patching, compile and install.&lt;br /&gt;
&lt;br /&gt;
==== If You Still Have Problems ====&lt;br /&gt;
&lt;br /&gt;
Join to #taspring on Freenode and tell me (semi_) that you have problems with installing, and I&#039;ll try to improve this guide to solve your problem, if I have time.&lt;br /&gt;
&lt;br /&gt;
However, generic linux problems not really related to installing this should be asked elsewhere.&lt;br /&gt;
&lt;br /&gt;
Prepare to tell me your distribution, which installation method you used, and what exactly is the error. Don&#039;t ask if I&#039;m here or not, just state your problem there and I&#039;ll look into it when I come back.&lt;br /&gt;
&lt;br /&gt;
Other common problems and solutions coming soon.&lt;br /&gt;
&lt;br /&gt;
==== Can&#039;t See Configure Options Before Configuring ====&lt;br /&gt;
&lt;br /&gt;
If you want to see the configure options, because of a bug in the buildsystem you have to have spring configured first. But if configure fails, you are out of luck. So I have listed the options here:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
$ scons --help&lt;br /&gt;
scons: Reading SConscript files ...&lt;br /&gt;
make: Nothing to be done for `all&#039;.&lt;br /&gt;
Succes building streflop!&lt;br /&gt;
Updating bitmaps.sdz&lt;br /&gt;
Updating springcontent.sdz&lt;br /&gt;
scons: done reading SConscript files.&lt;br /&gt;
&lt;br /&gt;
platform: Set to linux, freebsd or windows&lt;br /&gt;
    default: None&lt;br /&gt;
    actual: linux&lt;br /&gt;
&lt;br /&gt;
debug: Set to yes to produce a binary with debug information&lt;br /&gt;
    default: 0&lt;br /&gt;
    actual: 0&lt;br /&gt;
&lt;br /&gt;
syncdebug: Set to yes to enable the sync debugger&lt;br /&gt;
    default: False&lt;br /&gt;
    actual: False&lt;br /&gt;
&lt;br /&gt;
optimize: Enable processor optimizations during compilation&lt;br /&gt;
    default: 1&lt;br /&gt;
    actual: 2&lt;br /&gt;
&lt;br /&gt;
profile: Set to yes to produce a binary with profiling information&lt;br /&gt;
    default: False&lt;br /&gt;
    actual: False&lt;br /&gt;
&lt;br /&gt;
cpppath: Set path to extra header files&lt;br /&gt;
    default: []&lt;br /&gt;
    actual: &lt;br /&gt;
&lt;br /&gt;
libpath: Set path to extra libraries&lt;br /&gt;
    default: []&lt;br /&gt;
    actual: &lt;br /&gt;
&lt;br /&gt;
fpmath: Set to 387 or SSE on i386 and AMD64 architectures&lt;br /&gt;
    default: 387&lt;br /&gt;
    actual: 387&lt;br /&gt;
&lt;br /&gt;
prefix: Install prefix used at runtime&lt;br /&gt;
    default: /usr/local&lt;br /&gt;
    actual: /usr/local&lt;br /&gt;
&lt;br /&gt;
installprefix: Install prefix used for installion&lt;br /&gt;
    default: /usr/local&lt;br /&gt;
    actual: /usr/local&lt;br /&gt;
&lt;br /&gt;
datadir: Data directory (relative to prefix)&lt;br /&gt;
    default: share/games/spring&lt;br /&gt;
    actual: share/games/spring&lt;br /&gt;
&lt;br /&gt;
bindir: Directory for executables (rel. to prefix)&lt;br /&gt;
    default: games&lt;br /&gt;
    actual: games&lt;br /&gt;
&lt;br /&gt;
libdir: Directory for AI plugin modules (rel. to prefix)&lt;br /&gt;
    default: lib/spring&lt;br /&gt;
    actual: lib/spring&lt;br /&gt;
&lt;br /&gt;
strip: Discard symbols from the executable &lt;br /&gt;
(only when neither debugging nor profiling)&lt;br /&gt;
    default: True&lt;br /&gt;
    actual: True&lt;br /&gt;
&lt;br /&gt;
disable_avi: Set to no to turn on avi support&lt;br /&gt;
    default: False on windows, True otherwise&lt;br /&gt;
    actual: True&lt;br /&gt;
&lt;br /&gt;
use_tcmalloc: Use tcmalloc from goog-perftools for memory allocation&lt;br /&gt;
    default: False&lt;br /&gt;
    actual: False&lt;br /&gt;
&lt;br /&gt;
use_mmgr: Use memory manager&lt;br /&gt;
    default: False&lt;br /&gt;
    actual: False&lt;br /&gt;
&lt;br /&gt;
cachedir: Cache directory (see scons manual)&lt;br /&gt;
    default: None&lt;br /&gt;
    actual: &lt;br /&gt;
&lt;br /&gt;
Use scons -H for help about command-line options.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== LuaUI Crash Ingame ====&lt;br /&gt;
&lt;br /&gt;
LuaUI can crash during game, because some lua script you use has a bug. 0.75 should be resistant to this problem, but 0.74b3 is not. After crash, you won&#039;t see the bottom left tooltip box and top right resource bar anymore. Fear not, help is near:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
/resbar 1&lt;br /&gt;
/tooltip 1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These might not be necessary in 0.75 anymore at all.&lt;br /&gt;
&lt;br /&gt;
Also, you won&#039;t be able to change the build menu page with mouse anymore, but keys , and . do the trick.&lt;br /&gt;
&lt;br /&gt;
=== Tips ===&lt;br /&gt;
&lt;br /&gt;
* If spring hangs/crashes while in full screen mode, you can press ctrl+alt+backspace to restart X, so no need for a reboot.&lt;br /&gt;
&lt;br /&gt;
* Spring uses OpenAL for sound, Config your sound output i.e esd / arts / oss / alsa by editing /etc/openalrc or ~/.openalrc, example: (&amp;quot;&#039;(&amp;quot; is not a typo)&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;(define devices &#039;(alsa))&amp;lt;br&amp;gt;(define speaker-num 2)&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;(define alsa-out-device &amp;quot;hw:0,0&amp;quot;)&amp;lt;br&amp;gt;(define alsa-in-device &amp;quot;hw:0,0&amp;quot;)&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Adventurous people with an emu10k1 based card (sblive) can try the accelerated openal version. http://www.lost.org.uk/openal.html , don&#039;t submit audiobugs if you do.&lt;br /&gt;
&lt;br /&gt;
* If you really can&#039;t figure out how to get spring compiled, or you think there&#039;s a bug in the code or the buildsystem...&lt;br /&gt;
:* Just poke any developer on IRC:&lt;br /&gt;
::* channel &amp;lt;code&amp;gt;#taspring&amp;lt;/code&amp;gt; on [http://freenode.net/ FreeNode]&lt;br /&gt;
::* or channel &amp;lt;code&amp;gt;#sy&amp;lt;/code&amp;gt; on [http://www.quakenet.org/ QuakeNet]&lt;br /&gt;
:* Post it on [http://taspring.clan-sy.com/phpbb/ the forum]&lt;br /&gt;
:* or file a bug in our [http://taspring.clan-sy.com/mantis/ bug tracking system].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; [[Main_Page|&amp;lt;- Back to Main page]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux Port]][[Category:Playing]]&lt;/div&gt;</summary>
		<author><name>Argt</name></author>
	</entry>
</feed>