<?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=Andrej</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=Andrej"/>
	<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/wiki/Special:Contributions/Andrej"/>
	<updated>2026-11-08T19:49:18Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=User:Andrej/Building_Spring_on_Windows_2_temp&amp;diff=20392</id>
		<title>User:Andrej/Building Spring on Windows 2 temp</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=User:Andrej/Building_Spring_on_Windows_2_temp&amp;diff=20392"/>
		<updated>2013-12-03T15:13:30Z</updated>

		<summary type="html">&lt;p&gt;Andrej: CMake issue resolved at Spring side, version juggling no longer necessary&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Source Code GIT URLs =&lt;br /&gt;
Modified Spring github URL: &amp;lt;code&amp;gt;https://github.com/nOOb3167/spring/tree/develop&amp;lt;/code&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Modified vclibs11 github URL: &amp;lt;code&amp;gt;https://github.com/nOOb3167/vclibs11/&amp;lt;/code&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Prerequisites =&lt;br /&gt;
&lt;br /&gt;
- Visual Studio 2012 (v11)&lt;br /&gt;
&lt;br /&gt;
- Microsoft Visual C++ Compiler Nov 2012 CTP&lt;br /&gt;
&lt;br /&gt;
Download link: http://www.microsoft.com/en-us/download/details.aspx?id=35515&lt;br /&gt;
&lt;br /&gt;
How to tell if you have Nov 2012 CTP installed:&lt;br /&gt;
Start Visual Studio and open any Solution. Open the &#039;Property Pages&#039; of any Project inside this solution, and check available values of &#039;Platform Toolset&#039; under &#039;Configuration Properties -&amp;gt; General&#039;. Nov 2012 CTP should be listed.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake09.png|500px]]&lt;br /&gt;
&lt;br /&gt;
- GIT&lt;br /&gt;
&lt;br /&gt;
If you can open command line and run git you should be fine.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake08.png|300px]]&lt;br /&gt;
&lt;br /&gt;
- CMake&lt;br /&gt;
&lt;br /&gt;
= Building =&lt;br /&gt;
&lt;br /&gt;
First clone the git repositories.&lt;br /&gt;
&lt;br /&gt;
Second configure through CMake.&lt;br /&gt;
&lt;br /&gt;
Third compile through Visual Studio.&lt;br /&gt;
&lt;br /&gt;
== Cloning the git repositories ==&lt;br /&gt;
 - Spring into any directory.&lt;br /&gt;
 - vclibs11 into subdirectory of Spring, named &#039;vclibs&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
cd someEmptyDirectory&lt;br /&gt;
git clone git://github.com/nOOb3167/spring.git&lt;br /&gt;
cd spring&lt;br /&gt;
git clone git://github.com/nOOb3167/vclibs11.git vclibs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- This is the only command line step.&lt;br /&gt;
  The directory structure should end up looking like below.&lt;br /&gt;
  A &#039;spring&#039; directory with spring source, and a &#039;vclibs&#039; subdirectory&lt;br /&gt;
  inside.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake07.png|700px]]&lt;br /&gt;
&lt;br /&gt;
== Configuring through CMake ==&lt;br /&gt;
Start CMake GUI.&lt;br /&gt;
 - There should be a start menu shortcut if you used the CMake installer.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake10.png|150px]]&lt;br /&gt;
&lt;br /&gt;
Set Source and Build paths.&lt;br /&gt;
 - Source path should be set to where you cloned the Spring repository.&lt;br /&gt;
   You should find a file CMakeLists.txt in that directory&lt;br /&gt;
 - Build path can be set to whatever empty directory, or just same as Source path.&lt;br /&gt;
   On the screenshot below, Build path is set to a subdirectory named &#039;Build&#039;.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake00.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Set CMAKE_INSTALL_PREFIX to where you want Spring installed.&lt;br /&gt;
 - This is necessary because the default, Program Files, requires&lt;br /&gt;
   admin permissions to write.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake01.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Press Configure.&lt;br /&gt;
 - The correct option to select for compiler is as shown below.&lt;br /&gt;
   (Should be the default)&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake02.png|200px]]&lt;br /&gt;
&lt;br /&gt;
 - For comparison, here is what is output for me after Configure.&lt;br /&gt;
   The warnings shown here are normal / expected.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake03.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Press Generate.&lt;br /&gt;
 - This should generate the Visual Studio solution and project files.&lt;br /&gt;
   Those will be used to compile through Visual Studio next.&lt;br /&gt;
&lt;br /&gt;
== Compiling Solution through Visual Studio ==&lt;br /&gt;
&lt;br /&gt;
Open the solution file.&lt;br /&gt;
 - There should be a Spring.sln file, in the location you set as the Build path CMake.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake04.png|300px]]&lt;br /&gt;
&lt;br /&gt;
Select the INSTALL Project.&lt;br /&gt;
 - Unfortunately I have not found a way to do this automatically.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake06.png|300px]]&lt;br /&gt;
&lt;br /&gt;
Build Project&lt;br /&gt;
 - There should be no compile / link errors (But many warnings).&lt;br /&gt;
   If you forgot to change CMAKE_INSTALL_PREFIX from the default path&lt;br /&gt;
   (Program Files, requiring admin access), the installation step will complain.&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=User:Andrej/Building_Spring_on_Windows_2_temp&amp;diff=20391</id>
		<title>User:Andrej/Building Spring on Windows 2 temp</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=User:Andrej/Building_Spring_on_Windows_2_temp&amp;diff=20391"/>
		<updated>2013-12-03T07:59:17Z</updated>

		<summary type="html">&lt;p&gt;Andrej: Update CMake note after having investigated the issue&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Source Code GIT URLs =&lt;br /&gt;
Modified Spring github URL: &amp;lt;code&amp;gt;https://github.com/nOOb3167/spring/tree/develop&amp;lt;/code&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Modified vclibs11 github URL: &amp;lt;code&amp;gt;https://github.com/nOOb3167/vclibs11/&amp;lt;/code&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Prerequisites =&lt;br /&gt;
&lt;br /&gt;
- Visual Studio 2012 (v11)&lt;br /&gt;
&lt;br /&gt;
- Microsoft Visual C++ Compiler Nov 2012 CTP&lt;br /&gt;
&lt;br /&gt;
Download link: http://www.microsoft.com/en-us/download/details.aspx?id=35515&lt;br /&gt;
&lt;br /&gt;
How to tell if you have Nov 2012 CTP installed:&lt;br /&gt;
Start Visual Studio and open any Solution. Open the &#039;Property Pages&#039; of any Project inside this solution, and check available values of &#039;Platform Toolset&#039; under &#039;Configuration Properties -&amp;gt; General&#039;. Nov 2012 CTP should be listed.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake09.png|500px]]&lt;br /&gt;
&lt;br /&gt;
- GIT&lt;br /&gt;
&lt;br /&gt;
If you can open command line and run git you should be fine.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake08.png|300px]]&lt;br /&gt;
&lt;br /&gt;
- CMake&lt;br /&gt;
&lt;br /&gt;
The newest release of CMake at time of writing, 2.8.12.1, introduces a regression that breaks Spring&#039;s use of some obscure CMake construct. It therefore can not be used to Configure Spring. (I&#039;ve reported the issue to CMake bug tracker: http://www.cmake.org/Bug/view.php?id=14619 )&lt;br /&gt;
&lt;br /&gt;
The recommended CMake release is version 2.8.11.1. (Search for cmake-2.8.11.1-win32-x86.exe on the CMake download site: http://www.cmake.org/files/v2.8/ )&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake05.png|200px]]&lt;br /&gt;
&lt;br /&gt;
= Building =&lt;br /&gt;
&lt;br /&gt;
First clone the git repositories.&lt;br /&gt;
&lt;br /&gt;
Second configure through CMake.&lt;br /&gt;
&lt;br /&gt;
Third compile through Visual Studio.&lt;br /&gt;
&lt;br /&gt;
== Cloning the git repositories ==&lt;br /&gt;
 - Spring into any directory.&lt;br /&gt;
 - vclibs11 into subdirectory of Spring, named &#039;vclibs&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
cd someEmptyDirectory&lt;br /&gt;
git clone git://github.com/nOOb3167/spring.git&lt;br /&gt;
cd spring&lt;br /&gt;
git clone git://github.com/nOOb3167/vclibs11.git vclibs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- This is the only command line step.&lt;br /&gt;
  The directory structure should end up looking like below.&lt;br /&gt;
  A &#039;spring&#039; directory with spring source, and a &#039;vclibs&#039; subdirectory&lt;br /&gt;
  inside.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake07.png|700px]]&lt;br /&gt;
&lt;br /&gt;
== Configuring through CMake ==&lt;br /&gt;
Start CMake GUI.&lt;br /&gt;
 - There should be a start menu shortcut if you used the CMake installer.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake10.png|150px]]&lt;br /&gt;
&lt;br /&gt;
Set Source and Build paths.&lt;br /&gt;
 - Source path should be set to where you cloned the Spring repository.&lt;br /&gt;
   You should find a file CMakeLists.txt in that directory&lt;br /&gt;
 - Build path can be set to whatever empty directory, or just same as Source path.&lt;br /&gt;
   On the screenshot below, Build path is set to a subdirectory named &#039;Build&#039;.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake00.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Set CMAKE_INSTALL_PREFIX to where you want Spring installed.&lt;br /&gt;
 - This is necessary because the default, Program Files, requires&lt;br /&gt;
   admin permissions to write.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake01.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Press Configure.&lt;br /&gt;
 - The correct option to select for compiler is as shown below.&lt;br /&gt;
   (Should be the default)&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake02.png|200px]]&lt;br /&gt;
&lt;br /&gt;
 - For comparison, here is what is output for me after Configure.&lt;br /&gt;
   The warnings shown here are normal / expected.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake03.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Press Generate.&lt;br /&gt;
 - This should generate the Visual Studio solution and project files.&lt;br /&gt;
   Those will be used to compile through Visual Studio next.&lt;br /&gt;
&lt;br /&gt;
== Compiling Solution through Visual Studio ==&lt;br /&gt;
&lt;br /&gt;
Open the solution file.&lt;br /&gt;
 - There should be a Spring.sln file, in the location you set as the Build path CMake.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake04.png|300px]]&lt;br /&gt;
&lt;br /&gt;
Select the INSTALL Project.&lt;br /&gt;
 - Unfortunately I have not found a way to do this automatically.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake06.png|300px]]&lt;br /&gt;
&lt;br /&gt;
Build Project&lt;br /&gt;
 - There should be no compile / link errors (But many warnings).&lt;br /&gt;
   If you forgot to change CMAKE_INSTALL_PREFIX from the default path&lt;br /&gt;
   (Program Files, requiring admin access), the installation step will complain.&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=User:Andrej/Building_Spring_on_Windows_2_temp&amp;diff=20390</id>
		<title>User:Andrej/Building Spring on Windows 2 temp</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=User:Andrej/Building_Spring_on_Windows_2_temp&amp;diff=20390"/>
		<updated>2013-11-21T05:13:51Z</updated>

		<summary type="html">&lt;p&gt;Andrej: Link directly to develop branch instead of master&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Source Code GIT URLs =&lt;br /&gt;
Modified Spring github URL: &amp;lt;code&amp;gt;https://github.com/nOOb3167/spring/tree/develop&amp;lt;/code&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Modified vclibs11 github URL: &amp;lt;code&amp;gt;https://github.com/nOOb3167/vclibs11/&amp;lt;/code&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Prerequisites =&lt;br /&gt;
&lt;br /&gt;
- Visual Studio 2012 (v11)&lt;br /&gt;
&lt;br /&gt;
- Microsoft Visual C++ Compiler Nov 2012 CTP&lt;br /&gt;
&lt;br /&gt;
Download link: http://www.microsoft.com/en-us/download/details.aspx?id=35515&lt;br /&gt;
&lt;br /&gt;
How to tell if you have Nov 2012 CTP installed:&lt;br /&gt;
Start Visual Studio and open any Solution. Open the &#039;Property Pages&#039; of any Project inside this solution, and check available values of &#039;Platform Toolset&#039; under &#039;Configuration Properties -&amp;gt; General&#039;. Nov 2012 CTP should be listed.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake09.png|500px]]&lt;br /&gt;
&lt;br /&gt;
- GIT&lt;br /&gt;
&lt;br /&gt;
If you can open command line and run git you should be fine.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake08.png|300px]]&lt;br /&gt;
&lt;br /&gt;
- CMake&lt;br /&gt;
&lt;br /&gt;
I (Andrej) use version 2.8.11.1. Search for cmake-2.8.11.1-win32-x86.exe on the CMake download site: http://www.cmake.org/files/v2.8/&lt;br /&gt;
&lt;br /&gt;
The newest release, 2.8.12.1, fails - If you already have the newest version , and are getting errors during CMake configure step, try an older release.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake05.png|200px]]&lt;br /&gt;
&lt;br /&gt;
= Building =&lt;br /&gt;
&lt;br /&gt;
First clone the git repositories.&lt;br /&gt;
&lt;br /&gt;
Second configure through CMake.&lt;br /&gt;
&lt;br /&gt;
Third compile through Visual Studio.&lt;br /&gt;
&lt;br /&gt;
== Cloning the git repositories ==&lt;br /&gt;
 - Spring into any directory.&lt;br /&gt;
 - vclibs11 into subdirectory of Spring, named &#039;vclibs&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
cd someEmptyDirectory&lt;br /&gt;
git clone git://github.com/nOOb3167/spring.git&lt;br /&gt;
cd spring&lt;br /&gt;
git clone git://github.com/nOOb3167/vclibs11.git vclibs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- This is the only command line step.&lt;br /&gt;
  The directory structure should end up looking like below.&lt;br /&gt;
  A &#039;spring&#039; directory with spring source, and a &#039;vclibs&#039; subdirectory&lt;br /&gt;
  inside.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake07.png|700px]]&lt;br /&gt;
&lt;br /&gt;
== Configuring through CMake ==&lt;br /&gt;
Start CMake GUI.&lt;br /&gt;
 - There should be a start menu shortcut if you used the CMake installer.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake10.png|150px]]&lt;br /&gt;
&lt;br /&gt;
Set Source and Build paths.&lt;br /&gt;
 - Source path should be set to where you cloned the Spring repository.&lt;br /&gt;
   You should find a file CMakeLists.txt in that directory&lt;br /&gt;
 - Build path can be set to whatever empty directory, or just same as Source path.&lt;br /&gt;
   On the screenshot below, Build path is set to a subdirectory named &#039;Build&#039;.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake00.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Set CMAKE_INSTALL_PREFIX to where you want Spring installed.&lt;br /&gt;
 - This is necessary because the default, Program Files, requires&lt;br /&gt;
   admin permissions to write.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake01.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Press Configure.&lt;br /&gt;
 - The correct option to select for compiler is as shown below.&lt;br /&gt;
   (Should be the default)&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake02.png|200px]]&lt;br /&gt;
&lt;br /&gt;
 - For comparison, here is what is output for me after Configure.&lt;br /&gt;
   The warnings shown here are normal / expected.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake03.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Press Generate.&lt;br /&gt;
 - This should generate the Visual Studio solution and project files.&lt;br /&gt;
   Those will be used to compile through Visual Studio next.&lt;br /&gt;
&lt;br /&gt;
== Compiling Solution through Visual Studio ==&lt;br /&gt;
&lt;br /&gt;
Open the solution file.&lt;br /&gt;
 - There should be a Spring.sln file, in the location you set as the Build path CMake.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake04.png|300px]]&lt;br /&gt;
&lt;br /&gt;
Select the INSTALL Project.&lt;br /&gt;
 - Unfortunately I have not found a way to do this automatically.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake06.png|300px]]&lt;br /&gt;
&lt;br /&gt;
Build Project&lt;br /&gt;
 - There should be no compile / link errors (But many warnings).&lt;br /&gt;
   If you forgot to change CMAKE_INSTALL_PREFIX from the default path&lt;br /&gt;
   (Program Files, requiring admin access), the installation step will complain.&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=User:Andrej/Building_Spring_on_Windows_2_temp&amp;diff=20389</id>
		<title>User:Andrej/Building Spring on Windows 2 temp</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=User:Andrej/Building_Spring_on_Windows_2_temp&amp;diff=20389"/>
		<updated>2013-11-21T02:56:18Z</updated>

		<summary type="html">&lt;p&gt;Andrej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Source Code GIT URLs =&lt;br /&gt;
Modified Spring github URL: &amp;lt;code&amp;gt;https://github.com/nOOb3167/spring/&amp;lt;/code&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Modified vclibs11 github URL: &amp;lt;code&amp;gt;https://github.com/nOOb3167/vclibs11/&amp;lt;/code&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Prerequisites =&lt;br /&gt;
&lt;br /&gt;
- Visual Studio 2012 (v11)&lt;br /&gt;
&lt;br /&gt;
- Microsoft Visual C++ Compiler Nov 2012 CTP&lt;br /&gt;
&lt;br /&gt;
Download link: http://www.microsoft.com/en-us/download/details.aspx?id=35515&lt;br /&gt;
&lt;br /&gt;
How to tell if you have Nov 2012 CTP installed:&lt;br /&gt;
Start Visual Studio and open any Solution. Open the &#039;Property Pages&#039; of any Project inside this solution, and check available values of &#039;Platform Toolset&#039; under &#039;Configuration Properties -&amp;gt; General&#039;. Nov 2012 CTP should be listed.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake09.png|500px]]&lt;br /&gt;
&lt;br /&gt;
- GIT&lt;br /&gt;
&lt;br /&gt;
If you can open command line and run git you should be fine.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake08.png|300px]]&lt;br /&gt;
&lt;br /&gt;
- CMake&lt;br /&gt;
&lt;br /&gt;
I (Andrej) use version 2.8.11.1. Search for cmake-2.8.11.1-win32-x86.exe on the CMake download site: http://www.cmake.org/files/v2.8/&lt;br /&gt;
&lt;br /&gt;
The newest release, 2.8.12.1, fails - If you already have the newest version , and are getting errors during CMake configure step, try an older release.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake05.png|200px]]&lt;br /&gt;
&lt;br /&gt;
= Building =&lt;br /&gt;
&lt;br /&gt;
First clone the git repositories.&lt;br /&gt;
&lt;br /&gt;
Second configure through CMake.&lt;br /&gt;
&lt;br /&gt;
Third compile through Visual Studio.&lt;br /&gt;
&lt;br /&gt;
== Cloning the git repositories ==&lt;br /&gt;
 - Spring into any directory.&lt;br /&gt;
 - vclibs11 into subdirectory of Spring, named &#039;vclibs&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
cd someEmptyDirectory&lt;br /&gt;
git clone git://github.com/nOOb3167/spring.git&lt;br /&gt;
cd spring&lt;br /&gt;
git clone git://github.com/nOOb3167/vclibs11.git vclibs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- This is the only command line step.&lt;br /&gt;
  The directory structure should end up looking like below.&lt;br /&gt;
  A &#039;spring&#039; directory with spring source, and a &#039;vclibs&#039; subdirectory&lt;br /&gt;
  inside.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake07.png|700px]]&lt;br /&gt;
&lt;br /&gt;
== Configuring through CMake ==&lt;br /&gt;
Start CMake GUI.&lt;br /&gt;
 - There should be a start menu shortcut if you used the CMake installer.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake10.png|150px]]&lt;br /&gt;
&lt;br /&gt;
Set Source and Build paths.&lt;br /&gt;
 - Source path should be set to where you cloned the Spring repository.&lt;br /&gt;
   You should find a file CMakeLists.txt in that directory&lt;br /&gt;
 - Build path can be set to whatever empty directory, or just same as Source path.&lt;br /&gt;
   On the screenshot below, Build path is set to a subdirectory named &#039;Build&#039;.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake00.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Set CMAKE_INSTALL_PREFIX to where you want Spring installed.&lt;br /&gt;
 - This is necessary because the default, Program Files, requires&lt;br /&gt;
   admin permissions to write.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake01.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Press Configure.&lt;br /&gt;
 - The correct option to select for compiler is as shown below.&lt;br /&gt;
   (Should be the default)&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake02.png|200px]]&lt;br /&gt;
&lt;br /&gt;
 - For comparison, here is what is output for me after Configure.&lt;br /&gt;
   The warnings shown here are normal / expected.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake03.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Press Generate.&lt;br /&gt;
 - This should generate the Visual Studio solution and project files.&lt;br /&gt;
   Those will be used to compile through Visual Studio next.&lt;br /&gt;
&lt;br /&gt;
== Compiling Solution through Visual Studio ==&lt;br /&gt;
&lt;br /&gt;
Open the solution file.&lt;br /&gt;
 - There should be a Spring.sln file, in the location you set as the Build path CMake.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake04.png|300px]]&lt;br /&gt;
&lt;br /&gt;
Select the INSTALL Project.&lt;br /&gt;
 - Unfortunately I have not found a way to do this automatically.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake06.png|300px]]&lt;br /&gt;
&lt;br /&gt;
Build Project&lt;br /&gt;
 - There should be no compile / link errors (But many warnings).&lt;br /&gt;
   If you forgot to change CMAKE_INSTALL_PREFIX from the default path&lt;br /&gt;
   (Program Files, requiring admin access), the installation step will complain.&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=User:Andrej/Building_Spring_on_Windows_2_temp&amp;diff=20388</id>
		<title>User:Andrej/Building Spring on Windows 2 temp</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=User:Andrej/Building_Spring_on_Windows_2_temp&amp;diff=20388"/>
		<updated>2013-11-21T02:44:18Z</updated>

		<summary type="html">&lt;p&gt;Andrej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Source Code GIT URLs =&lt;br /&gt;
Spring   repo URI: &amp;lt;code&amp;gt;git://github.com/nOOb3167/spring.git&amp;lt;/code&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
vclibs11 repo URI: &amp;lt;code&amp;gt;git://github.com/nOOb3167/vclibs11.git&amp;lt;/code&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Prerequisites =&lt;br /&gt;
&lt;br /&gt;
- Visual Studio 2012 (v11)&lt;br /&gt;
&lt;br /&gt;
- Microsoft Visual C++ Compiler Nov 2012 CTP&lt;br /&gt;
&lt;br /&gt;
Download link: http://www.microsoft.com/en-us/download/details.aspx?id=35515&lt;br /&gt;
&lt;br /&gt;
How to tell if you have Nov 2012 CTP installed:&lt;br /&gt;
Start Visual Studio and open any Solution. Open the &#039;Property Pages&#039; of any Project inside this solution, and check available values of &#039;Platform Toolset&#039; under &#039;Configuration Properties -&amp;gt; General&#039;. Nov 2012 CTP should be listed.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake09.png|500px]]&lt;br /&gt;
&lt;br /&gt;
- GIT&lt;br /&gt;
&lt;br /&gt;
If you can open command line and run git you should be fine.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake08.png|300px]]&lt;br /&gt;
&lt;br /&gt;
- CMake&lt;br /&gt;
&lt;br /&gt;
I (Andrej) use version 2.8.11.1. Search for cmake-2.8.11.1-win32-x86.exe on the CMake download site: http://www.cmake.org/files/v2.8/&lt;br /&gt;
&lt;br /&gt;
The newest release, 2.8.12.1, fails - If you already have the newest version , and are getting errors during CMake configure step, try an older release.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake05.png|200px]]&lt;br /&gt;
&lt;br /&gt;
= Building =&lt;br /&gt;
&lt;br /&gt;
First clone the git repositories.&lt;br /&gt;
&lt;br /&gt;
Second configure through CMake.&lt;br /&gt;
&lt;br /&gt;
Third compile through Visual Studio.&lt;br /&gt;
&lt;br /&gt;
== Cloning the git repositories ==&lt;br /&gt;
 - Spring into any directory.&lt;br /&gt;
 - vclibs11 into subdirectory of Spring, named &#039;vclibs&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
cd someEmptyDirectory&lt;br /&gt;
git clone git://github.com/nOOb3167/spring.git&lt;br /&gt;
cd spring&lt;br /&gt;
git clone git://github.com/nOOb3167/vclibs11.git vclibs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- This is the only command line step.&lt;br /&gt;
  The directory structure should end up looking like below.&lt;br /&gt;
  A &#039;spring&#039; directory with spring source, and a &#039;vclibs&#039; subdirectory&lt;br /&gt;
  inside.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake07.png|700px]]&lt;br /&gt;
&lt;br /&gt;
== Configuring through CMake ==&lt;br /&gt;
Start CMake GUI.&lt;br /&gt;
 - There should be a start menu shortcut if you used the CMake installer.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake10.png|150px]]&lt;br /&gt;
&lt;br /&gt;
Set Source and Build paths.&lt;br /&gt;
 - Source path should be set to where you cloned the Spring repository.&lt;br /&gt;
   You should find a file CMakeLists.txt in that directory&lt;br /&gt;
 - Build path can be set to whatever empty directory, or just same as Source path.&lt;br /&gt;
   On the screenshot below, Build path is set to a subdirectory named &#039;Build&#039;.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake00.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Set CMAKE_INSTALL_PREFIX to where you want Spring installed.&lt;br /&gt;
 - This is necessary because the default, Program Files, requires&lt;br /&gt;
   admin permissions to write.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake01.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Press Configure.&lt;br /&gt;
 - The correct option to select for compiler is as shown below.&lt;br /&gt;
   (Should be the default)&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake02.png|200px]]&lt;br /&gt;
&lt;br /&gt;
 - For comparison, here is what is output for me after Configure.&lt;br /&gt;
   The warnings shown here are normal / expected.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake03.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Press Generate.&lt;br /&gt;
 - This should generate the Visual Studio solution and project files.&lt;br /&gt;
   Those will be used to compile through Visual Studio next.&lt;br /&gt;
&lt;br /&gt;
== Compiling Solution through Visual Studio ==&lt;br /&gt;
&lt;br /&gt;
Open the solution file.&lt;br /&gt;
 - There should be a Spring.sln file, in the location you set as the Build path CMake.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake04.png|300px]]&lt;br /&gt;
&lt;br /&gt;
Select the INSTALL Project.&lt;br /&gt;
 - Unfortunately I have not found a way to do this automatically.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake06.png|300px]]&lt;br /&gt;
&lt;br /&gt;
Build Project&lt;br /&gt;
 - There should be no compile / link errors (But many warnings).&lt;br /&gt;
   If you forgot to change CMAKE_INSTALL_PREFIX from the default path&lt;br /&gt;
   (Program Files, requiring admin access), the installation step will complain.&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=User:Andrej/Building_Spring_on_Windows_2_temp&amp;diff=20387</id>
		<title>User:Andrej/Building Spring on Windows 2 temp</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=User:Andrej/Building_Spring_on_Windows_2_temp&amp;diff=20387"/>
		<updated>2013-11-21T02:40:15Z</updated>

		<summary type="html">&lt;p&gt;Andrej: Created page with &amp;quot;= Source Code GIT URLs = Spring   repo URI: &amp;lt;code&amp;gt;git://github.com/nOOb3167/spring.git&amp;lt;/code&amp;gt;&amp;lt;br/&amp;gt; vclibs11 repo URI: &amp;lt;code&amp;gt;git://github.com/nOOb3167/vclibs11.git&amp;lt;/code&amp;gt;&amp;lt;br/&amp;gt; ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Source Code GIT URLs =&lt;br /&gt;
Spring   repo URI: &amp;lt;code&amp;gt;git://github.com/nOOb3167/spring.git&amp;lt;/code&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
vclibs11 repo URI: &amp;lt;code&amp;gt;git://github.com/nOOb3167/vclibs11.git&amp;lt;/code&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Prerequisites =&lt;br /&gt;
&lt;br /&gt;
- Visual Studio 2012 (v11)&lt;br /&gt;
&lt;br /&gt;
- Microsoft Visual C++ Compiler Nov 2012 CTP&lt;br /&gt;
&lt;br /&gt;
Download link: http://www.microsoft.com/en-us/download/details.aspx?id=35515&lt;br /&gt;
&lt;br /&gt;
How to tell if you have Nov 2012 CTP installed:&lt;br /&gt;
Start Visual Studio and open any Solution. Open the &#039;Property Pages&#039; of any Project inside this solution, and check available values of &#039;Platform Toolset&#039; under &#039;Configuration Properties -&amp;gt; General&#039;. Nov 2012 CTP should be listed.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake09.png|500px]]&lt;br /&gt;
&lt;br /&gt;
- GIT&lt;br /&gt;
&lt;br /&gt;
If you can open command line and run git you should be fine.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake08.png|300px]]&lt;br /&gt;
&lt;br /&gt;
- CMake&lt;br /&gt;
&lt;br /&gt;
I (Andrej) use version 2.8.11.1. Search for cmake-2.8.11.1-win32-x86.exe on the CMake download site: http://www.cmake.org/files/v2.8/&lt;br /&gt;
&lt;br /&gt;
The newest release, 2.8.12.1, fails - If you already have the newest version , and are getting errors during CMake configure step, try an older release.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake05.png|200px]]&lt;br /&gt;
&lt;br /&gt;
= Building =&lt;br /&gt;
&lt;br /&gt;
First clone the git repositories.&lt;br /&gt;
&lt;br /&gt;
Second configure through CMake.&lt;br /&gt;
&lt;br /&gt;
Third compile through Visual Studio.&lt;br /&gt;
&lt;br /&gt;
== Cloning the git repositories ==&lt;br /&gt;
 - Spring into any directory.&lt;br /&gt;
 - vclibs11 into subdirectory of Spring, named &#039;vclibs&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
cd someEmptyDirectory&lt;br /&gt;
git clone git://github.com/nOOb3167/spring.git&lt;br /&gt;
cd spring&lt;br /&gt;
git clone git://github.com/nOOb3167/vclibs11.git vclibs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- This is the only command line step.&lt;br /&gt;
  The directory structure should end up looking like below.&lt;br /&gt;
  A &#039;spring&#039; directory with spring source, and a &#039;vclibs&#039; subdirectory&lt;br /&gt;
  inside.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake07.png|700px]]&lt;br /&gt;
&lt;br /&gt;
== Configuring through CMake ==&lt;br /&gt;
Start CMake GUI.&lt;br /&gt;
 - There should be a start menu shortcut if you used the CMake installer.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake10.png|150px]]&lt;br /&gt;
&lt;br /&gt;
Set Source and Build paths.&lt;br /&gt;
 - Source path should be where you cloned the Spring repository.&lt;br /&gt;
   You should find a file CMakeLists.txt in that directory&lt;br /&gt;
 - Build path can be whatever empty directory, or just same as Source path.&lt;br /&gt;
   On the screenshot below, Build path is set to a subdirectory named &#039;Build&#039;.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake00.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Set CMAKE_INSTALL_PREFIX to where you want Spring installed.&lt;br /&gt;
 - This is necessary because the default, Program Files, requires&lt;br /&gt;
   admin permissions to write.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake01.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Press Configure.&lt;br /&gt;
 - The correct option to select for compiler is as shown below.&lt;br /&gt;
   (Should be the default)&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake02.png|200px]]&lt;br /&gt;
&lt;br /&gt;
 - For comparison, here is what is output for me after Configure.&lt;br /&gt;
   The warnings shown here are normal / expected.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake03.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Press Generate.&lt;br /&gt;
 - This should generate the Visual Studio solution and project files.&lt;br /&gt;
   Those will be used to compile through Visual Studio next.&lt;br /&gt;
&lt;br /&gt;
== Compiling Solution through Visual Studio ==&lt;br /&gt;
&lt;br /&gt;
Open the solution file.&lt;br /&gt;
 - There should be a Spring.sln file, in the location you set as the Build path CMake.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake04.png|300px]]&lt;br /&gt;
&lt;br /&gt;
Select the INSTALL Project.&lt;br /&gt;
 - Unfortunately I have not found a way to do this automatically.&lt;br /&gt;
&lt;br /&gt;
[[image:Spring_build_cmake06.png|300px]]&lt;br /&gt;
&lt;br /&gt;
Build Project&lt;br /&gt;
 - There should be no compile / link errors (But many warnings).&lt;br /&gt;
   If you forgot to set CMAKE_INSTALL_PREFIX from the default path&lt;br /&gt;
   (In Program Files, requiring admin access), the installation step will complain.&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake10.png&amp;diff=22101</id>
		<title>File:Spring build cmake10.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake10.png&amp;diff=22101"/>
		<updated>2013-11-21T02:33:42Z</updated>

		<summary type="html">&lt;p&gt;Andrej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake09.png&amp;diff=22100</id>
		<title>File:Spring build cmake09.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake09.png&amp;diff=22100"/>
		<updated>2013-11-21T02:25:27Z</updated>

		<summary type="html">&lt;p&gt;Andrej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake08.png&amp;diff=22099</id>
		<title>File:Spring build cmake08.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake08.png&amp;diff=22099"/>
		<updated>2013-11-21T02:20:16Z</updated>

		<summary type="html">&lt;p&gt;Andrej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake07.png&amp;diff=22098</id>
		<title>File:Spring build cmake07.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake07.png&amp;diff=22098"/>
		<updated>2013-11-21T02:13:55Z</updated>

		<summary type="html">&lt;p&gt;Andrej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake06.png&amp;diff=22097</id>
		<title>File:Spring build cmake06.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake06.png&amp;diff=22097"/>
		<updated>2013-11-21T01:58:49Z</updated>

		<summary type="html">&lt;p&gt;Andrej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake04.png&amp;diff=22095</id>
		<title>File:Spring build cmake04.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake04.png&amp;diff=22095"/>
		<updated>2013-11-21T01:57:22Z</updated>

		<summary type="html">&lt;p&gt;Andrej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake03.png&amp;diff=22094</id>
		<title>File:Spring build cmake03.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake03.png&amp;diff=22094"/>
		<updated>2013-11-21T01:53:09Z</updated>

		<summary type="html">&lt;p&gt;Andrej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake02.png&amp;diff=22093</id>
		<title>File:Spring build cmake02.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake02.png&amp;diff=22093"/>
		<updated>2013-11-21T01:51:49Z</updated>

		<summary type="html">&lt;p&gt;Andrej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake01.png&amp;diff=22092</id>
		<title>File:Spring build cmake01.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake01.png&amp;diff=22092"/>
		<updated>2013-11-21T01:51:12Z</updated>

		<summary type="html">&lt;p&gt;Andrej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake05.png&amp;diff=22096</id>
		<title>File:Spring build cmake05.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake05.png&amp;diff=22096"/>
		<updated>2013-11-21T01:50:05Z</updated>

		<summary type="html">&lt;p&gt;Andrej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake00.png&amp;diff=22091</id>
		<title>File:Spring build cmake00.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Spring_build_cmake00.png&amp;diff=22091"/>
		<updated>2013-11-21T01:42:40Z</updated>

		<summary type="html">&lt;p&gt;Andrej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Lua_Beginners_FAQ&amp;diff=11095</id>
		<title>Lua Beginners FAQ</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Lua_Beginners_FAQ&amp;diff=11095"/>
		<updated>2010-03-10T00:31:31Z</updated>

		<summary type="html">&lt;p&gt;Andrej: Undo revision 18525, redo changing all headings, allows them to be linked as anchors or we/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Lua_Scripting|Lua Scripting]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Q: I&#039;m interested in learning to use Lua with Spring. Where should I start?==&lt;br /&gt;
&lt;br /&gt;
A: You can start by reading the tutorial  [http://lua-users.org/wiki/TutorialDirectory here]. The &amp;quot;Introductory topics&amp;quot; and &amp;quot;Programming in Lua&amp;quot; sections should suffice, in the beginning. After that, you can try editing simple LuaUI widgets, like snd_chatterbox.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Q: Where can I find documentation?==&lt;br /&gt;
&lt;br /&gt;
A: &amp;quot;Spring/LuaUI/widgets.lua&amp;quot; and &amp;quot;&amp;lt;modname&amp;gt;/LuaRules/gadgets.lua&amp;quot; contain the call-ins and their arguments. Almost all call-outs are documented in the following wiki articles: &amp;lt;br&amp;gt;&lt;br /&gt;
{{LuaInterfaces}}&lt;br /&gt;
You can also consult the [http://spring.clan-sy.com/wiki/Engine_Development#Obtaining_the_Source Spring source code].&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Q: What can&#039;t Lua do in the current version of Spring?==&lt;br /&gt;
&lt;br /&gt;
A: You can&#039;t ...&lt;br /&gt;
*write to the metal/texture map.&lt;br /&gt;
*control the ground LOS (but you can set the los status of units!).&lt;br /&gt;
&lt;br /&gt;
==Q: How do I open &amp;quot;.lua&amp;quot; files?==&lt;br /&gt;
&lt;br /&gt;
A: Notepad or any text editor might be enough. If you are using windows and the text is all garbled, try a programmer&#039;s editor. [http://notepad-plus.sourceforge.net/uk/site.htm Notepad++] can read Lua files with syntax highlighting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Q: What is a call-in? And a call-out?==&lt;br /&gt;
&lt;br /&gt;
Call-ins are functions defined in your script that Spring calls when a determined event takes place. For example, the gadget:Initialize() call-in is run by Spring when the widget is loaded.&lt;br /&gt;
Call-outs are functions defined in Spring you can run at whichever moment you desire. For example, when you call Spring.GetUnitTeam(unitID), the engine returns the teamID of the unit identified by &amp;quot;unitID&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Q: What is the difference between a widget and a gadget?==&lt;br /&gt;
&lt;br /&gt;
A: A widget is a Lua script that works with LuaUI. A gadget works with LuaRules, LuaCob or LuaGaia. Widgets allow you to customize your interface, and must be unsynced. They can be bundled with the mod or you can save them in your &amp;quot;Spring/LuaUI/Wigets&amp;quot; directory. Gadgets can be synced or unsynced. LuaRules and LuaCob gadgets are usually part of a mod. LuaGaia gadgets should be part of a map. Gadgets can contain both synced and unsynced code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Q: Where can I find examples?==&lt;br /&gt;
&lt;br /&gt;
A: The &amp;quot;Spring/LuaUI/Widgets&amp;quot; directory contains many examples. More can be found at [http://spring.jobjol.nl/files.php?subcategory_id=12 SpringFiles] or in the [http://www.caspring.org/ Complete Annihilation] mod.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Q: Can I reload a script without restarting Spring?==&lt;br /&gt;
&lt;br /&gt;
Yes, you can type &amp;quot;/luaui reload&amp;quot; or &amp;quot;.luarules reload&amp;quot;. If you just need to check for syntax error, you can do it without having to load Spring by compiling the code. You can find a Lua compiler [http://luaforge.net/frs/?group_id=110&amp;amp;release_id=694 here]. [http://luaforge.net/frs/download.php/2218/lua5_1_2_Win32_bin.zip This] is the download for Windows users..&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Q: Why does the print function seem to do nothing?==&lt;br /&gt;
&lt;br /&gt;
A: Its output is displayed in stdout. If you have no easy way to see it, you can is Spring.Echo which prints to the ingame chat and infolog.txt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Q: How do I print the &amp;quot;UnitDefs[unitDefID]&amp;quot; or &amp;quot;WeaponDefs[weaponDefID]&amp;quot; tables? &amp;quot;for k, v in ipairs(t) do print(k, v) end&amp;quot; does not behave as expected.==&lt;br /&gt;
&lt;br /&gt;
A: Use &amp;quot;for k,v in UnitDefs[unitDefID]:pairs() do print(k, v) end&amp;quot; instead.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Q: Where can I find help?==&lt;br /&gt;
&lt;br /&gt;
A: There is a [http://spring.clan-sy.com/phpbb/viewforum.php?f=23 Lua section] in the Spring forums. Probably the most effective way, though, is to join #lua on the lobby.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Q: Who implemented LuaUI, LuaRules and LuaGaia?==&lt;br /&gt;
&lt;br /&gt;
A: They were written by trepan.&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Lua_Beginners_FAQ&amp;diff=11094</id>
		<title>Lua Beginners FAQ</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Lua_Beginners_FAQ&amp;diff=11094"/>
		<updated>2010-03-10T00:27:10Z</updated>

		<summary type="html">&lt;p&gt;Andrej: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Lua_Scripting|Lua Scripting]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Q: I&#039;m interested in learning to use Lua with Spring. Where should I start?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
A: You can start by reading the tutorial  [http://lua-users.org/wiki/TutorialDirectory here]. The &amp;quot;Introductory topics&amp;quot; and &amp;quot;Programming in Lua&amp;quot; sections should suffice, in the beginning. After that, you can try editing simple LuaUI widgets, like snd_chatterbox.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Q: Where can I find documentation?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
A: &amp;quot;Spring/LuaUI/widgets.lua&amp;quot; and &amp;quot;&amp;lt;modname&amp;gt;/LuaRules/gadgets.lua&amp;quot; contain the call-ins and their arguments. Almost all call-outs are documented in the following wiki articles: &amp;lt;br&amp;gt;&lt;br /&gt;
{{LuaInterfaces}}&lt;br /&gt;
You can also consult the [http://spring.clan-sy.com/wiki/Engine_Development#Obtaining_the_Source Spring source code].&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Q: What can&#039;t Lua do in the current version of Spring?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
A: You can&#039;t ...&lt;br /&gt;
*write to the metal/texture map.&lt;br /&gt;
*control the ground LOS (but you can set the los status of units!).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Q: How do I open &amp;quot;.lua&amp;quot; files?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
A: Notepad or any text editor might be enough. If you are using windows and the text is all garbled, try a programmer&#039;s editor. [http://notepad-plus.sourceforge.net/uk/site.htm Notepad++] can read Lua files with syntax highlighting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Q: What is a call-in? And a call-out?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Call-ins are functions defined in your script that Spring calls when a determined event takes place. For example, the gadget:Initialize() call-in is run by Spring when the widget is loaded.&lt;br /&gt;
Call-outs are functions defined in Spring you can run at whichever moment you desire. For example, when you call Spring.GetUnitTeam(unitID), the engine returns the teamID of the unit identified by &amp;quot;unitID&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Q: What is the difference between a widget and a gadget?==&lt;br /&gt;
&lt;br /&gt;
A: A widget is a Lua script that works with LuaUI. A gadget works with LuaRules, LuaCob or LuaGaia. Widgets allow you to customize your interface, and must be unsynced. They can be bundled with the mod or you can save them in your &amp;quot;Spring/LuaUI/Wigets&amp;quot; directory. Gadgets can be synced or unsynced. LuaRules and LuaCob gadgets are usually part of a mod. LuaGaia gadgets should be part of a map. Gadgets can contain both synced and unsynced code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Q: Where can I find examples?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
A: The &amp;quot;Spring/LuaUI/Widgets&amp;quot; directory contains many examples. More can be found at [http://spring.jobjol.nl/files.php?subcategory_id=12 SpringFiles] or in the [http://www.caspring.org/ Complete Annihilation] mod.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Q: Can I reload a script without restarting Spring?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Yes, you can type &amp;quot;/luaui reload&amp;quot; or &amp;quot;.luarules reload&amp;quot;. If you just need to check for syntax error, you can do it without having to load Spring by compiling the code. You can find a Lua compiler [http://luaforge.net/frs/?group_id=110&amp;amp;release_id=694 here]. [http://luaforge.net/frs/download.php/2218/lua5_1_2_Win32_bin.zip This] is the download for Windows users..&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Q: Why does the print function seem to do nothing?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
A: Its output is displayed in stdout. If you have no easy way to see it, you can is Spring.Echo which prints to the ingame chat and infolog.txt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Q: How do I print the &amp;quot;UnitDefs[unitDefID]&amp;quot; or &amp;quot;WeaponDefs[weaponDefID]&amp;quot; tables? &amp;quot;for k, v in ipairs(t) do print(k, v) end&amp;quot; does not behave as expected.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
A: Use &amp;quot;for k,v in UnitDefs[unitDefID]:pairs() do print(k, v) end&amp;quot; instead.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Q: Where can I find help?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
A: There is a [http://spring.clan-sy.com/phpbb/viewforum.php?f=23 Lua section] in the Spring forums. Probably the most effective way, though, is to join #lua on the lobby.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Q: Who implemented LuaUI, LuaRules and LuaGaia?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
A: They were written by trepan.&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=FAQ:Content&amp;diff=7077</id>
		<title>FAQ:Content</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=FAQ:Content&amp;diff=7077"/>
		<updated>2010-02-16T21:31:03Z</updated>

		<summary type="html">&lt;p&gt;Andrej: http://springrts.com/phpbb/viewtopic.php?p=395299#p395299 there is a /packages/ but not a /content/ ?&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Spring Modification and Game Developement FAQ + Basics =&lt;br /&gt;
== How To Get Help ==&lt;br /&gt;
* &#039;&#039;&#039;Play Before You Ask Anything:&#039;&#039;&#039; If you found this site as part of you trying to figure out how to make your dream game that&#039;s awesome.  Regardless of why you are here, if you want to design games you&#039;ll need to familiarize yourself with the engine&#039;s capabilities and the best way to do that is to play the games that already exist.  As a basic rule, before posting a question, make sure you have at least learned how to download and install content packages and played a multi-player game... if you don&#039;t want to play a multi-player game you should at-least spectate a few of them.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Don&#039;t Be Stupid:&#039;&#039;&#039; If You post in a forum and don&#039;t present yourself in an intelligent manner demonstrating commitment to your project in the form of actual work or demonstrating the intelligence needed to actually do what what you are asking for, most of the people who reply will be doing so to mock you/scare you away. There are many projects all in competition for help, your project will at many times be just you and you need to be able to do all project related tasks if you expect to reach completion.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Figure Out What You Are Asking For:&#039;&#039;&#039; If you are unsure where to start, posting a &amp;quot;Where do I start?&amp;quot; topic without any details is not the right approach. Figure out what you want to do (make a new Game Type or Mutator, Make New Units, Make a New Map, Make a Mission or Campaign, Make an AI) and ask for that specifically.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;We Help Those Who Help Themselves:&#039;&#039;&#039; Don&#039;t post something like &amp;quot;I have this awesome Idea, help me make it!&amp;quot;, without also posting what contributions you intend to provide to the project... if you are just posting an idea and intend to be &amp;quot;The Idea Guy&amp;quot; then you probably want to post it in the Off-Topic forums.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Don&#039;t Take It Personally:&#039;&#039;&#039; Without exception, no matter how hard you try, no matter how awesome you are at modeling, scripting or game design... someone is going to try to &amp;quot;Help&amp;quot; you by being a jerk to you... These people have usually interpreted your behavior as being cocky or n00bish and want to tear you down as a way of weeding useless people out of the community.  When this happens, just ignore them and press on or leave.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;If No One Helps You Don&#039;t Get Mad:&#039;&#039;&#039; If people don&#039;t respond to your post it&#039;s likely because the people who know the answer are busy working on their own projects and haven&#039;t taken the time to check the forums.  First, be patient. Second, poke around with the documentation or crack open a pre-existing Package and try to figure out a better way to ask your question. Finally, you can also log in to the lobby software and ask there, check the list of available channels, there&#039;s usually one about the topic you are trying to learn... if all else fails just ask in #main.&lt;br /&gt;
&lt;br /&gt;
== Stuff Everyone Should Know ==&lt;br /&gt;
Spring is an Engine designed to allow people to make real-time strategy games... It is not a game in itself.  Unfortunately this has lead to a lot of very complex and bitter arguments on semantics, the results of which can be summarized as follows:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Content&amp;quot; can be developed for Spring and distributed in &amp;quot;Content Packages&amp;quot; (namely SDZ, SD7 Files or SDD folders) or dumped into your Spring directory structure directly (a bad idea in many cases, as except for certain notable exceptions it will cause you to be unable to synchronize with other players).  The content of these Packages can take the form of Units, Textures, Models (3DO or S30), Game Types and Maps... (Lua and COB Scripts along with other Data Files may also count in certain contexts...)&lt;br /&gt;
&lt;br /&gt;
This leads to a bunch of quazi-defined meta-terminology:&lt;br /&gt;
&lt;br /&gt;
=== General Terminology ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;TA-ist/TA-isms&#039;&#039;&#039;: Spring was initially designed to play a Port of XTA, a Mod of Total Annihilation build for the original Total Annihilation engine. As such there are a number of things, like the resource structure, the general interface, unit tags (and to be honest nearly everything that isn&#039;t Lua) that are essentially extensions of this concept.&lt;br /&gt;
&lt;br /&gt;
=== &amp;quot;Game Type&amp;quot; Terminology ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mods, Games and Mutators&#039;&#039;&#039; are all essentially synonyms for &amp;quot;A Content Package Containing At Least One Game Type&amp;quot;. Colloquially speaking: &lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Mods&#039;&#039;&#039; are modifications of existing games, in almost all cases these are a Derivative Work of Total Annihilation. &lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Games&#039;&#039;&#039; Projects creating Original Works, independent of the aforementioned Total Annihilation data and Copyright.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Mutators&#039;&#039;&#039; are new Game Types meant to be used in conjunction with an existing Package called a &amp;quot;dependency&amp;quot;. They are not meant to be mods as they exist to facilitate the addition of features or the altering of gameplay for the core of a project. In the more common vernacular of video gaming these would have been mods.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Modders and (Mod-)Devs&#039;&#039;&#039; are interchangeable terms for the people working on a Project.  Typically someone who is working with existing content developed by someone else falls into the &#039;&#039;&#039;&amp;quot;Modders&amp;quot;&#039;&#039;&#039; category and and those who are creating all new content are called &#039;&#039;&#039;&amp;quot;Content Developers&amp;quot;&#039;&#039;&#039;, but most content developers tend to both create new content and modify existing content so the terms are really more a matter of preference. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Game Designers&#039;&#039;&#039;&lt;br /&gt;
Aka, idea men, most of us are intelligent enough to come up with the code to pull off these crazy ideas you suggest. Odds are that intellect also comes with the creativity to have our own ideas. Idea men are not needed here and will find themselves alone and without the ability to finish their project.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Units&#039;&#039;&#039; are entity templates defined in text files that reference Model, Other Text Files, Script and Texture files (sometimes this reference is inferred).  Like most RTS Games, a Game Type in Spring will typically define one or more kind of starting unit which will be able to be given orders to do things like move, attack and build new other units.  The term.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Features and Wreckage&#039;&#039;&#039; are special types of Units that are not owned by any player.  These include things like rocks and trees as well as the corpses of fallen units.&lt;br /&gt;
&lt;br /&gt;
=== Map Terminology ===&lt;br /&gt;
A map in Spring consist of a heightfield, environmental lighting and sky settings, type map, metal map and features.&lt;br /&gt;
the Map Data Files:&lt;br /&gt;
*(SMD), contains parameters that set things such as lighting and startpoints&lt;br /&gt;
*(SMT), Tiles File &lt;br /&gt;
*(SMF), &#039;&#039;&#039;Unsure needs more info&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Maps may also include their own lua gadgets, which are to be stored in lua gaia. They may have their own feature models, units, effects and even map options which allow a host to change properties of the map.&lt;br /&gt;
&lt;br /&gt;
=== Scripting Terminology ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Synchronized Code&#039;&#039;&#039;&lt;br /&gt;
Lua Gadgets and Unit Scripts (Lua or COB) are what is refereed to as synchronized code.  They define much of the behavior of all Games of a given Game Type and as such must act the same on all players computers.  Because Unit animation is used for things like aiming speed, how long it takes a unit to open and close, or when it is able to shoot a specific weapon, all of the code for this behavior is synchronized.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Gadgets&#039;&#039;&#039; are Lua scripts that are inherent to a &amp;quot;Game Type&amp;quot;, they can define pretty much anything from which units are available to custom resources to unit animations to GUI elements.  If you ask a question like &amp;quot;Is it possible for the game I&#039;m building to do X&amp;quot; the answer is most-probably, &amp;quot;Yes, with enough Lua&amp;quot;.  You could, for example, use Lua in conjunction with the Spring Engine to, build a first person shooter or turn based strategy game... though it would take an awful lot of creative Lua to do so.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Lua Unit Definitions and Scripts&#039;&#039;&#039; Lua can also be used within the traditional TA-ist framework to set the values of a Unit&#039;s tags and define the Unit&#039;s animation scripts.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Widgets&#039;&#039; are Lua scripts that are not inherent to &amp;lt;s&amp;gt;the&amp;lt;/s&amp;gt; &amp;lt;s&amp;gt;a&amp;lt;/s&amp;gt; yes &amp;quot;Game Type&amp;quot; (though they might be included along with a Game Type in a Package).  They define things like custom GUI elements, macro-equivalent short-cut commands or pretty much anything that is specific to your individual client session and not the game simulation.  Widgets are one of the few things you can drop relatively safely into your Spring directory structure without interfering with sync.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;COB&#039;&#039;&#039; is a compiled script that is a derived form of the unit script files in Total Annihilation.  Many Game Types still use COB to define how their units behave.&lt;br /&gt;
&lt;br /&gt;
== General Development FAQ ==&lt;br /&gt;
&lt;br /&gt;
This covers the basic concepts of Spring Content creation that are common to all Game Types, Maps or Content in general.&lt;br /&gt;
&lt;br /&gt;
=== How I Mod?! ===&lt;br /&gt;
In general, the first thing you&#039;ll want to do is crack open an existing Package for the type of thing you want to modify.&lt;br /&gt;
&lt;br /&gt;
Packages Will contain some or all of the following Files:&lt;br /&gt;
Data Files (Plain Text files with the extension .TDF for &amp;quot;Total Annihilation Data File)&lt;br /&gt;
Textures&lt;br /&gt;
Models (in 3DO or S3O format)&lt;br /&gt;
Scripts (in Lua or compiled COB format)&lt;br /&gt;
Map Tiles (Compiled SMT files (not human readable))&lt;br /&gt;
Map Data (Plain Text Files)&lt;br /&gt;
Map &amp;quot;Everything Else&amp;quot; Files (Compiled SMT files (not human readable))&lt;br /&gt;
&lt;br /&gt;
These are all stored in either ZIP or 7zip Format and can both be opened with [http://www.7-zip.org/ 7zip]&lt;br /&gt;
&lt;br /&gt;
=== So Really, How do I Mod the Spring Engine? ===&lt;br /&gt;
You Don&#039;t, see next section.&lt;br /&gt;
=== Okay... How do Create a new Project or Modify an existing Package For the Spring Engine? ===&lt;br /&gt;
That depends, do you want to:&lt;br /&gt;
* Make a New Unit&lt;br /&gt;
* Modify an Existing Game Type&lt;br /&gt;
* [[FAQ:Content:Mapping|Make a Map]]&lt;br /&gt;
* Script a Widget&lt;br /&gt;
* Make a New Game Type&lt;br /&gt;
=== Where do I put all these files? ===&lt;br /&gt;
The folder structure for a Package is the same for every Game Type:&lt;br /&gt;
&lt;br /&gt;
First start with a &amp;quot;.SDD&amp;quot; folder or SDZ/SD7 Archive within the &amp;quot;Packages&amp;quot;, &amp;quot;Maps&amp;quot; or &amp;quot;Mods&amp;quot; Folder chosen within your Spring Preferences:&lt;br /&gt;
* &#039;&#039;&#039;.SDD Folder:&#039;&#039;&#039; Create a folder called &amp;quot;ModName.SDD&amp;quot; containing your files&lt;br /&gt;
* &#039;&#039;&#039;SDZ:&#039;&#039;&#039; Create a ZIP file containing your files and rename it to ModName.SDZ&lt;br /&gt;
* &#039;&#039;&#039;SD7:&#039;&#039;&#039; Create a 7z file containing your files and rename it to ModName.SD7&lt;br /&gt;
&lt;br /&gt;
Within your mod folder or archive you need to have the following folder structure:&lt;br /&gt;
{{Volatile_Documentation|date=Not Yet|user=No One}}&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=FAQ:Content&amp;diff=7076</id>
		<title>FAQ:Content</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=FAQ:Content&amp;diff=7076"/>
		<updated>2010-02-16T21:29:02Z</updated>

		<summary type="html">&lt;p&gt;Andrej: Improved GNU FSF Words to Avoid compliance: http://www.gnu.org/philosophy/words-to-avoid.html (#7 content) || http://www.linuxjournal.com/article/6366&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Spring Modification and Game Developement FAQ + Basics =&lt;br /&gt;
== How To Get Help ==&lt;br /&gt;
* &#039;&#039;&#039;Play Before You Ask Anything:&#039;&#039;&#039; If you found this site as part of you trying to figure out how to make your dream game that&#039;s awesome.  Regardless of why you are here, if you want to design games you&#039;ll need to familiarize yourself with the engine&#039;s capabilities and the best way to do that is to play the games that already exist.  As a basic rule, before posting a question, make sure you have at least learned how to download and install content packages and played a multi-player game... if you don&#039;t want to play a multi-player game you should at-least spectate a few of them.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Don&#039;t Be Stupid:&#039;&#039;&#039; If You post in a forum and don&#039;t present yourself in an intelligent manner demonstrating commitment to your project in the form of actual work or demonstrating the intelligence needed to actually do what what you are asking for, most of the people who reply will be doing so to mock you/scare you away. There are many projects all in competition for help, your project will at many times be just you and you need to be able to do all project related tasks if you expect to reach completion.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Figure Out What You Are Asking For:&#039;&#039;&#039; If you are unsure where to start, posting a &amp;quot;Where do I start?&amp;quot; topic without any details is not the right approach. Figure out what you want to do (make a new Game Type or Mutator, Make New Units, Make a New Map, Make a Mission or Campaign, Make an AI) and ask for that specifically.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;We Help Those Who Help Themselves:&#039;&#039;&#039; Don&#039;t post something like &amp;quot;I have this awesome Idea, help me make it!&amp;quot;, without also posting what contributions you intend to provide to the project... if you are just posting an idea and intend to be &amp;quot;The Idea Guy&amp;quot; then you probably want to post it in the Off-Topic forums.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Don&#039;t Take It Personally:&#039;&#039;&#039; Without exception, no matter how hard you try, no matter how awesome you are at modeling, scripting or game design... someone is going to try to &amp;quot;Help&amp;quot; you by being a jerk to you... These people have usually interpreted your behavior as being cocky or n00bish and want to tear you down as a way of weeding useless people out of the community.  When this happens, just ignore them and press on or leave.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;If No One Helps You Don&#039;t Get Mad:&#039;&#039;&#039; If people don&#039;t respond to your post it&#039;s likely because the people who know the answer are busy working on their own projects and haven&#039;t taken the time to check the forums.  First, be patient. Second, poke around with the documentation or crack open a pre-existing Package and try to figure out a better way to ask your question. Finally, you can also log in to the lobby software and ask there, check the list of available channels, there&#039;s usually one about the topic you are trying to learn... if all else fails just ask in #main.&lt;br /&gt;
&lt;br /&gt;
== Stuff Everyone Should Know ==&lt;br /&gt;
Spring is an Engine designed to allow people to make real-time strategy games... It is not a game in itself.  Unfortunately this has lead to a lot of very complex and bitter arguments on semantics, the results of which can be summarized as follows:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Content&amp;quot; can be developed for Spring and distributed in &amp;quot;Content Packages&amp;quot; (namely SDZ, SD7 Files or SDD folders) or dumped into your Spring directory structure directly (a bad idea in many cases, as except for certain notable exceptions it will cause you to be unable to synchronize with other players).  The content of these Packages can take the form of Units, Textures, Models (3DO or S30), Game Types and Maps... (Lua and COB Scripts along with other Data Files may also count in certain contexts...)&lt;br /&gt;
&lt;br /&gt;
This leads to a bunch of quazi-defined meta-terminology:&lt;br /&gt;
&lt;br /&gt;
=== General Terminology ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;TA-ist/TA-isms&#039;&#039;&#039;: Spring was initially designed to play a Port of XTA, a Mod of Total Annihilation build for the original Total Annihilation engine. As such there are a number of things, like the resource structure, the general interface, unit tags (and to be honest nearly everything that isn&#039;t Lua) that are essentially extensions of this concept.&lt;br /&gt;
&lt;br /&gt;
=== &amp;quot;Game Type&amp;quot; Terminology ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mods, Games and Mutators&#039;&#039;&#039; are all essentially synonyms for &amp;quot;A Content Package Containing At Least One Game Type&amp;quot;. Colloquially speaking: &lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Mods&#039;&#039;&#039; are modifications of existing games, in almost all cases these are a Derivative Work of Total Annihilation. &lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Games&#039;&#039;&#039; Projects creating Original Works, independent of the aforementioned Total Annihilation data and Copyright.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Mutators&#039;&#039;&#039; are new Game Types meant to be used in conjunction with an existing Package called a &amp;quot;dependency&amp;quot;. They are not meant to be mods as they exist to facilitate the addition of features or the altering of gameplay for the core of a project. In the more common vernacular of video gaming these would have been mods.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Modders and (Mod-)Devs&#039;&#039;&#039; are interchangeable terms for the people working on a Project.  Typically someone who is working with existing content developed by someone else falls into the &#039;&#039;&#039;&amp;quot;Modders&amp;quot;&#039;&#039;&#039; category and and those who are creating all new content are called &#039;&#039;&#039;&amp;quot;Content Developers&amp;quot;&#039;&#039;&#039;, but most content developers tend to both create new content and modify existing content so the terms are really more a matter of preference. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Game Designers&#039;&#039;&#039;&lt;br /&gt;
Aka, idea men, most of us are intelligent enough to come up with the code to pull off these crazy ideas you suggest. Odds are that intellect also comes with the creativity to have our own ideas. Idea men are not needed here and will find themselves alone and without the ability to finish their project.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Units&#039;&#039;&#039; are entity templates defined in text files that reference Model, Other Text Files, Script and Texture files (sometimes this reference is inferred).  Like most RTS Games, a Game Type in Spring will typically define one or more kind of starting unit which will be able to be given orders to do things like move, attack and build new other units.  The term.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Features and Wreckage&#039;&#039;&#039; are special types of Units that are not owned by any player.  These include things like rocks and trees as well as the corpses of fallen units.&lt;br /&gt;
&lt;br /&gt;
=== Map Terminology ===&lt;br /&gt;
A map in Spring consist of a heightfield, environmental lighting and sky settings, type map, metal map and features.&lt;br /&gt;
the Map Data Files:&lt;br /&gt;
*(SMD), contains parameters that set things such as lighting and startpoints&lt;br /&gt;
*(SMT), Tiles File &lt;br /&gt;
*(SMF), &#039;&#039;&#039;Unsure needs more info&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Maps may also include their own lua gadgets, which are to be stored in lua gaia. They may have their own feature models, units, effects and even map options which allow a host to change properties of the map.&lt;br /&gt;
&lt;br /&gt;
=== Scripting Terminology ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Synchronized Code&#039;&#039;&#039;&lt;br /&gt;
Lua Gadgets and Unit Scripts (Lua or COB) are what is refereed to as synchronized code.  They define much of the behavior of all Games of a given Game Type and as such must act the same on all players computers.  Because Unit animation is used for things like aiming speed, how long it takes a unit to open and close, or when it is able to shoot a specific weapon, all of the code for this behavior is synchronized.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Gadgets&#039;&#039;&#039; are Lua scripts that are inherent to a &amp;quot;Game Type&amp;quot;, they can define pretty much anything from which units are available to custom resources to unit animations to GUI elements.  If you ask a question like &amp;quot;Is it possible for the game I&#039;m building to do X&amp;quot; the answer is most-probably, &amp;quot;Yes, with enough Lua&amp;quot;.  You could, for example, use Lua in conjunction with the Spring Engine to, build a first person shooter or turn based strategy game... though it would take an awful lot of creative Lua to do so.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Lua Unit Definitions and Scripts&#039;&#039;&#039; Lua can also be used within the traditional TA-ist framework to set the values of a Unit&#039;s tags and define the Unit&#039;s animation scripts.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Widgets&#039;&#039; are Lua scripts that are not inherent to &amp;lt;s&amp;gt;the&amp;lt;/s&amp;gt; &amp;lt;s&amp;gt;a&amp;lt;/s&amp;gt; yes &amp;quot;Game Type&amp;quot; (though they might be included along with a Game Type in a Package).  They define things like custom GUI elements, macro-equivalent short-cut commands or pretty much anything that is specific to your individual client session and not the game simulation.  Widgets are one of the few things you can drop relatively safely into your Spring directory structure without interfering with sync.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;COB&#039;&#039;&#039; is a compiled script that is a derived form of the unit script files in Total Annihilation.  Many Game Types still use COB to define how their units behave.&lt;br /&gt;
&lt;br /&gt;
== General Development FAQ ==&lt;br /&gt;
&lt;br /&gt;
This covers the basic concepts of Spring Content creation that are common to all Game Types, Maps or Content in general.&lt;br /&gt;
&lt;br /&gt;
=== How I Mod?! ===&lt;br /&gt;
In general, the first thing you&#039;ll want to do is crack open an existing Package for the type of thing you want to modify.&lt;br /&gt;
&lt;br /&gt;
Packages Will contain some or all of the following Files:&lt;br /&gt;
Data Files (Plain Text files with the extension .TDF for &amp;quot;Total Annihilation Data File)&lt;br /&gt;
Textures&lt;br /&gt;
Models (in 3DO or S3O format)&lt;br /&gt;
Scripts (in Lua or compiled COB format)&lt;br /&gt;
Map Tiles (Compiled SMT files (not human readable))&lt;br /&gt;
Map Data (Plain Text Files)&lt;br /&gt;
Map &amp;quot;Everything Else&amp;quot; Files (Compiled SMT files (not human readable))&lt;br /&gt;
&lt;br /&gt;
These are all stored in either ZIP or 7zip Format and can both be opened with [http://www.7-zip.org/ 7zip]&lt;br /&gt;
&lt;br /&gt;
=== So Really, How do I Mod the Spring Engine? ===&lt;br /&gt;
You Don&#039;t, see next section.&lt;br /&gt;
=== Okay... How do Create a new Project or Modify an existing Package For the Spring Engine? ===&lt;br /&gt;
That depends, do you want to:&lt;br /&gt;
* Make a New Unit&lt;br /&gt;
* Modify an Existing Game Type&lt;br /&gt;
* [[FAQ:Content:Mapping|Make a Map]]&lt;br /&gt;
* Script a Widget&lt;br /&gt;
* Make a New Game Type&lt;br /&gt;
=== Where do I put all these files? ===&lt;br /&gt;
The folder structure for a Package is the same for every Game Type:&lt;br /&gt;
&lt;br /&gt;
First start with a &amp;quot;.SDD&amp;quot; folder or SDZ/SD7 Archive within the &amp;quot;Content&amp;quot;, &amp;quot;Maps&amp;quot; or &amp;quot;Mods&amp;quot; Folder chosen within your Spring Preferences:&lt;br /&gt;
* &#039;&#039;&#039;.SDD Folder:&#039;&#039;&#039; Create a folder called &amp;quot;ModName.SDD&amp;quot; containing your files&lt;br /&gt;
* &#039;&#039;&#039;SDZ:&#039;&#039;&#039; Create a ZIP file containing your files and rename it to ModName.SDZ&lt;br /&gt;
* &#039;&#039;&#039;SD7:&#039;&#039;&#039; Create a 7z file containing your files and rename it to ModName.SD7&lt;br /&gt;
&lt;br /&gt;
Within your mod folder or archive you need to have the following folder structure:&lt;br /&gt;
{{Volatile_Documentation|date=Not Yet|user=No One}}&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Help:Editing&amp;diff=23339</id>
		<title>Help:Editing</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Help:Editing&amp;diff=23339"/>
		<updated>2010-02-16T20:32:23Z</updated>

		<summary type="html">&lt;p&gt;Andrej: http://en.wikipedia.org/wiki/Conservation_of_energy&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains tips on editing wiki pages, for full details of editing the Wiki see [http://meta.wikipedia.org/wiki/MediaWiki_User%27s_Guide User&#039;s Guide]&lt;br /&gt;
&lt;br /&gt;
==Basic Editing==&lt;br /&gt;
&lt;br /&gt;
*Choose what you want to do:&lt;br /&gt;
*# &#039;&#039;&#039;Make a new page&#039;&#039;&#039;&amp;lt;br&amp;gt;Type the URL of the page you want to create into the address bar. &amp;lt;br&amp;gt;EG: &amp;lt;nowiki&amp;gt;http://springrts.com/wiki/Page_that_doesnt_exist&amp;lt;/nowiki&amp;gt; &lt;br /&gt;
*# &#039;&#039;&#039;Edit an existing page&#039;&#039;&#039;&amp;lt;br&amp;gt;Goto the page you want to edit, either through Links, or a URL.&lt;br /&gt;
*Then, click the &#039;Edit this page&#039; link at the bottom.&lt;br /&gt;
*A page with a text box in the middle of it will appear.&lt;br /&gt;
*Enter text into this box.&lt;br /&gt;
*To insert formatting, click the formatting buttons above the text box.&lt;br /&gt;
*For a full list of formatting tags, and their effects, see below&lt;br /&gt;
*Click the &#039;Preview Page&#039; button below the text box to preview the page.&lt;br /&gt;
*Fix any errors you spot.&lt;br /&gt;
*Click &#039;Save page&#039; next to the Preview button.&lt;br /&gt;
*You&#039;re Done!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dont worry if you stuff things up. Its very easy to fix. Any changes that are made are automatically logged, and we can easily revert to an old version if you totally screw a page up.&lt;br /&gt;
And if your still worried of messing something up, you can always play around in the [[sandbox]] first.&lt;br /&gt;
&lt;br /&gt;
==Markup==&lt;br /&gt;
The following [[w:HTML element|HTML element]]s are currently permitted, however most of the useful ones have a convenient shorthand (see table below):&lt;br /&gt;
	&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;|&lt;br /&gt;
* [[Wikipedia:HTML_element#Presentational_markup|&amp;amp;lt;b&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Presentational_markup|&amp;amp;lt;big&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Text_containers|&amp;amp;lt;blockquote&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Others|&amp;amp;lt;br&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Tables|&amp;amp;lt;caption&amp;amp;gt;]]&lt;br /&gt;
* &amp;amp;lt;center&amp;amp;gt;&lt;br /&gt;
* &amp;amp;lt;cite&amp;amp;gt;&lt;br /&gt;
* [[Wikipedia:HTML_element#Logical_markup|&amp;amp;lt;code&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Lists|&amp;amp;lt;dd&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Other_containers|&amp;amp;lt;div&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Lists|&amp;amp;lt;dl&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Lists|&amp;amp;lt;dt&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Logical_markup|&amp;amp;lt;em&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Presentational_markup|&amp;amp;lt;font&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Headings|&amp;amp;lt;h1&amp;amp;gt;]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;|&lt;br /&gt;
* [[Wikipedia:HTML_element#Headings|&amp;amp;lt;h2&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Headings|&amp;amp;lt;h3&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Headings|&amp;amp;lt;h4&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Headings|&amp;amp;lt;h5&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Headings|&amp;amp;lt;h6&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Other_containers|&amp;amp;lt;hr&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Presentational_markup|&amp;amp;lt;i&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Lists|&amp;amp;lt;li&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Lists|&amp;amp;lt;ol&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Text_containers|&amp;amp;lt;p&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Text_containers|&amp;amp;lt;pre&amp;amp;gt;]]&lt;br /&gt;
* &amp;amp;lt;rb&amp;amp;gt;&lt;br /&gt;
* &amp;amp;lt;rp&amp;amp;gt;&lt;br /&gt;
* &amp;amp;lt;rt&amp;amp;gt;&lt;br /&gt;
* &amp;amp;lt;ruby&amp;amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot;|&lt;br /&gt;
* [[Wikipedia:HTML_element#Presentational_markup|&amp;amp;lt;s&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Presentational_markup|&amp;amp;lt;small&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Presentational_markup|&amp;amp;lt;strike&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Logical_markup|&amp;amp;lt;strong&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Presentational_markup|&amp;amp;lt;sub&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Presentational_markup|&amp;amp;lt;sup&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Tables|&amp;amp;lt;table&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Tables|&amp;amp;lt;td&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Tables|&amp;amp;lt;th&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Tables|&amp;amp;lt;tr&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Presentational_markup|&amp;amp;lt;tt&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Presentational_markup|&amp;amp;lt;u&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Lists|&amp;amp;lt;ul&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Logical_markup|&amp;amp;lt;var&amp;amp;gt;]]&lt;br /&gt;
* [[Wikipedia:HTML_element#Others|&amp;amp;lt;!-- ... --&amp;amp;gt;]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Sections, paragraphs, lists and lines ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;What it looks like&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;What you type&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
Start your sections with header lines:&lt;br /&gt;
&lt;br /&gt;
Note: Single equal signs work for formatting headings, however as a convention for this wiki, do not use them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- This is the original&lt;br /&gt;
= DO NOT USE THIS =&lt;br /&gt;
== New section ==&lt;br /&gt;
=== Subsection ===&lt;br /&gt;
==== Sub-subsection ====&lt;br /&gt;
 --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- next set&lt;br /&gt;
&amp;lt;h1&amp;gt; DO NOT USE THIS &amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt; New section &amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt; Subsection &amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;h4&amp;gt; Sub-subsection &amp;lt;/h4&amp;gt;&lt;br /&gt;
 --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- This code prevents confusion in the section editing feature--&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;font style=&amp;quot;font-size:120%&amp;quot;&amp;gt; New section &amp;lt;/font&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;font style=&amp;quot;font-size:110%&amp;quot;&amp;gt; Subsection&amp;lt;/font&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;font style=&amp;quot;font-size:100%&amp;quot;&amp;gt; Sub-subsection&amp;lt;/font&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== New section ==&lt;br /&gt;
&lt;br /&gt;
=== Subsection ===&lt;br /&gt;
&lt;br /&gt;
==== Sub-subsection ====&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
[[en:newline|Newline]]:&lt;br /&gt;
&lt;br /&gt;
A single&lt;br /&gt;
newline&lt;br /&gt;
has no&lt;br /&gt;
effect on the&lt;br /&gt;
layout.&lt;br /&gt;
&lt;br /&gt;
But an empty line&lt;br /&gt;
starts a new paragraph.&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;nowiki&amp;gt;&amp;lt;p&amp;gt;&amp;lt;/nowiki&amp;gt; disables this paragraphing until &amp;lt;nowiki&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;/nowiki&amp;gt; or the end  of the section)&lt;br /&gt;
&lt;br /&gt;
(in Cologne Blue two newlines and a div tag give just one newline; in the order newline, div tag, newline, the result is two newlines)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A single&lt;br /&gt;
newline&lt;br /&gt;
has no&lt;br /&gt;
effect on the&lt;br /&gt;
layout.&lt;br /&gt;
&lt;br /&gt;
But an empty line&lt;br /&gt;
starts a new paragraph.&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;td&amp;gt;You can break lines&amp;lt;br&amp;gt;&lt;br /&gt;
without starting a new paragraph.&amp;lt;p&amp;gt;&lt;br /&gt;
Sufficient as wikitext code is &amp;lt;nowiki&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/nowiki&amp;gt;, the XHTML code &amp;lt;nowiki&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;/nowiki&amp;gt; is not needed, the system produces this code.&amp;lt;/p&amp;gt;&amp;lt;/td&amp;gt; &lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;You can break lines&amp;lt;br&amp;gt;&lt;br /&gt;
without starting a new paragraph.&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
* [[Help:List|Lists]] are easy to do:&lt;br /&gt;
** start every line with a star&lt;br /&gt;
*** more stars means deeper levels&lt;br /&gt;
*A newline&lt;br /&gt;
*in a list  &lt;br /&gt;
marks the end of the list.&lt;br /&gt;
*Of course&lt;br /&gt;
*you can&lt;br /&gt;
*start again.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;* Lists are easy to do:&lt;br /&gt;
** start every line with a star&lt;br /&gt;
*** more stars means deeper levels&lt;br /&gt;
*A newline&lt;br /&gt;
*in a list  &lt;br /&gt;
marks the end of the list.&lt;br /&gt;
*Of course&lt;br /&gt;
*you can&lt;br /&gt;
*start again.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
# Numbered lists are also good&lt;br /&gt;
## very organized&lt;br /&gt;
## easy to follow&lt;br /&gt;
#A newline&lt;br /&gt;
#in a list  &lt;br /&gt;
marks the end of the list.&lt;br /&gt;
#New numbering starts&lt;br /&gt;
#with 1.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;# Numbered lists are also good&lt;br /&gt;
## very organized&lt;br /&gt;
## easy to follow&lt;br /&gt;
#A newline&lt;br /&gt;
#in a list  &lt;br /&gt;
marks the end of the list.&lt;br /&gt;
#New numbering starts&lt;br /&gt;
#with 1.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
* You can even do mixed lists&lt;br /&gt;
*# and nest them&lt;br /&gt;
*#* like this&amp;lt;br&amp;gt;or have newlines&amp;lt;br&amp;gt;inside lists&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;* You can even do mixed lists&lt;br /&gt;
*# and nest them&lt;br /&gt;
*#* like this&amp;lt;br&amp;gt;or have newlines&amp;lt;br&amp;gt;inside lists&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
* You can also&lt;br /&gt;
**break lines&amp;lt;br&amp;gt;inside lists&amp;lt;br&amp;gt;like this&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;* You can also&lt;br /&gt;
**break lines&amp;lt;br&amp;gt;inside lists&amp;lt;br&amp;gt;like this&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
; Definition list : list of definitions&lt;br /&gt;
; item : the item&#039;s definition&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;; Definition list : list of definitions&lt;br /&gt;
; item : the item&#039;s definition&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
:A colon indents a line or paragraph.&lt;br /&gt;
A manual newline starts a new paragraph.&lt;br /&gt;
* This is primarily for displayed material, but is also used for discussion on [[Help:Talk page|Talk page]]s.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;: A colon indents a line or paragraph.&lt;br /&gt;
A manual newline starts a new paragraph.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr valign=top&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;IF a line of plain text starts &lt;br /&gt;
with a space THEN&lt;br /&gt;
  it will be formatted exactly&lt;br /&gt;
    as typed;&lt;br /&gt;
  in a fixed-width font;&lt;br /&gt;
  lines won&#039;t wrap;&lt;br /&gt;
ENDIF&lt;br /&gt;
this is useful for:&lt;br /&gt;
  * pasting preformatted text;&lt;br /&gt;
  * algorithm descriptions;&lt;br /&gt;
  * program source code&lt;br /&gt;
  * ASCII art;&lt;br /&gt;
  * chemical structures;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
WARNING If you make it wide,&lt;br /&gt;
you [[en:page widening|force the whole page to be wide]] and&lt;br /&gt;
hence less readable. Never start ordinary lines with spaces.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;center&amp;gt;(see also below)&amp;lt;/center&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt; IF a line of plain text starts &lt;br /&gt;
with a space THEN&lt;br /&gt;
   it will be formatted exactly&lt;br /&gt;
     as typed;&lt;br /&gt;
   in a fixed-width font;&lt;br /&gt;
   lines won&#039;t wrap;&lt;br /&gt;
 ENDIF&lt;br /&gt;
 this is useful for:&lt;br /&gt;
   * pasting preformatted text;&lt;br /&gt;
   * algorithm descriptions;&lt;br /&gt;
   * program source code&lt;br /&gt;
   * ASCII art;&lt;br /&gt;
   * chemical structures;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;td&amp;gt;&amp;lt;center&amp;gt;Centered text.&amp;lt;/center&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;center&amp;gt;Centered text.&amp;lt;/center&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;A [[en:horizontal dividing line|horizontal dividing line]]: above&lt;br /&gt;
----&lt;br /&gt;
and below.&lt;br /&gt;
&lt;br /&gt;
(However, in most cases a section header is more useful. The horizontal dividing line should only be used if what follows is logically part of the same section; otherwise that part would be hidden in the TOC.)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;A horizontal dividing line: above&lt;br /&gt;
----&lt;br /&gt;
and below. &amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Summarizing the effect of a single newline: no effect in general, but it ends a list item or indented part; thus changing some text into a list item, or indenting it, is more cumbersome if it contains newlines, they have to be removed; see also [http://en.wikipedia.org/wiki/Wikipedia:Don%27t_use_line_breaks Don&#039;t use line breaks] (wikipedia).&lt;/div&gt;</summary>
		<author><name>Andrej</name></author>
	</entry>
</feed>