<?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=Zwzsg</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=Zwzsg"/>
	<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/wiki/Special:Contributions/Zwzsg"/>
	<updated>2026-11-08T23:52:12Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=GamesDownloads&amp;diff=9260</id>
		<title>GamesDownloads</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=GamesDownloads&amp;diff=9260"/>
		<updated>2022-01-09T18:58:38Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#css:&lt;br /&gt;
  table.glossy {&lt;br /&gt;
    width: 200px;&lt;br /&gt;
    margin: 9px; padding:3px;&lt;br /&gt;
    border: 1px solid rgba(0,0,0,0.5);&lt;br /&gt;
    border-radius: 10px 10px 10px 10px;&lt;br /&gt;
    box-shadow: 0 2px 6px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3), inset 0 10px rgba(255,255,255,0.2), inset 0 10px 20px rgba(255,255,255,0.25), inset 0 -15px 30px rgba(0,0,0,0.3);&lt;br /&gt;
    text-align: center;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  /*#installers img {&lt;br /&gt;
    border: 1px solid rgba(0,0,0,0.5);&lt;br /&gt;
    box-shadow: 0px -1px 3px rgba(0,0,0,0.8), 0px 1px 3px rgba(255,255,255,0.5);&lt;br /&gt;
  }*/&lt;br /&gt;
&lt;br /&gt;
  /*table.glossy:hover {&lt;br /&gt;
    background: rgba(160,160,220,0.4);&lt;br /&gt;
  }*/&lt;br /&gt;
}}&lt;br /&gt;
[[Download]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
== Spring Lobby ==&lt;br /&gt;
&lt;br /&gt;
For the Spring engine and a variety of games to play on it! Online battlerooms and singleplayer. Also, there is a lobby to chat in.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding-left:7px&amp;quot;&amp;gt;&lt;br /&gt;
{{Template:GamesDownload|name=SpringLobby|image=Springlobby_64.png|url=https://springlobby.springrts.com/}}&lt;br /&gt;
 The easiest way to play: download SpringLobby, join the Spring server and enter an online battleroom.&lt;br /&gt;
&lt;br /&gt;
MacOS players: see https://springrts.com/phpbb/viewtopic.php?f=65&amp;amp;t=32970 for the SpringLobby download link. Engine must be downloaded seperately (103.0 is current), in the same forum.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
{{Template:GamesDownload|name=Spring Web Lobby|image=Blobby.png|url=http://weblobby.springrts.com}}&lt;br /&gt;
A well featured lobby that can be used to play any game. (Windows &amp;amp; Linux)&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Games available via [https://www.steampowered.com Valve Steam] for Windows ==&lt;br /&gt;
&amp;lt;div id=&amp;quot;steam&amp;quot; style=&amp;quot;padding-left:7px&amp;quot;&amp;gt;&lt;br /&gt;
{{Template:GamesDownload|name=Zero-K|image=eclipse.jpg|url=https://store.steampowered.com/app/334920/ZeroK/}}&lt;br /&gt;
{{Template:GamesDownload|name=Evolution RTS|image=Evoimg.jpg|url=https://store.steampowered.com/app/291150/Evolution_RTS/}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Games available via [https://www.itch.io itch.io] for Linux ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;itch&amp;quot; style=&amp;quot;padding-left:7px&amp;quot;&amp;gt;&lt;br /&gt;
{{Template:GamesDownload|name=Zero-K|image=eclipse.jpg|url=https://zerok.itch.io/zero-k}}&lt;br /&gt;
{{Template:GamesDownload|name=Evolution RTS|image=Evoimg.jpg|url=https://forboding-angel.itch.io/evolution-rts}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Individual game installers ==&lt;br /&gt;
A handful of Spring games also provide their own installers (and/or other infrastructure). These usually contain everything you need to play that game, but they might not allow you to play other games too.&lt;br /&gt;
&amp;lt;div id=&amp;quot;installers&amp;quot; style=&amp;quot;padding-left:7px&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Template:GamesDownload|name=Zero-K|image=eclipse.jpg|url=https://zero-k.info/Wiki/Download}}&lt;br /&gt;
&amp;lt;span class=&amp;quot;warning&amp;quot;&amp;gt;(!)&amp;lt;/span&amp;gt; This lobby is limited to playing Zero-K. (Windows &amp;amp; Linux)&lt;br /&gt;
&lt;br /&gt;
{{Template:GamesDownload|name=NOTA|image=notAgame02.jpg|url=http://nota.machys.net/downloads}}&lt;br /&gt;
&amp;lt;span class=&amp;quot;warning&amp;quot;&amp;gt;(!)&amp;lt;/span&amp;gt; This lobby is limited to playing NOTA. (Windows &amp;amp; Linux &amp;amp; Mac OS X)&lt;br /&gt;
&lt;br /&gt;
{{Template:GamesDownload|name=Spring 1944|image=S44_tigers.jpg|notAs44lobby|url=https://trello.com/c/XllGyMqI/}}&lt;br /&gt;
&amp;lt;span class=&amp;quot;warning&amp;quot;&amp;gt;(!)&amp;lt;/span&amp;gt; This lobby is limited to playing Spring 1944, NOTA and Kernel Panic. (Windows &amp;amp; Linux)&lt;br /&gt;
&lt;br /&gt;
{{Template:GamesDownload|name=Kernel Panic|image=Kernel_Panic_3.4.jpg|url=https://www.moddb.com/games/kernel-panic}} &amp;lt;span class=&amp;quot;warning&amp;quot;&amp;gt;(!)&amp;lt;/span&amp;gt; This lobby is limited to playing Kernel Panic. (Windows)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For more Spring games, check out the [[Games]] page. Please note that some of them will require you to have the engine installed in order to work, as well as some maps, as they don&#039;t come with their own installer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Spring]]&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10066</id>
		<title>Kernel Panic</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10066"/>
		<updated>2021-07-13T23:20:58Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Add Mod DB link (to installer)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;[http://timblokdijk.nl/spring/Kernel%20Panic/logo/kernel0_hd.png https://springrts.com/mediawiki/images/f/fc/Kernel_Panic_Alpha_Title_Half.png]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Overview:==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;For the latest news and/or assistance, try the [http://springrts.com/phpbb/viewforum.php?f=43&#039;&#039;&#039;KP forum&#039;&#039;&#039;] or go to #kp when you log onto the lobby.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kernel Panic&#039;&#039;&#039; is a game about computers. Systems, Hackers and Networks wage war in a matrix of DOOM! The only constraints are time and space; unlike other real time strategy games, no resource economy exists in KP. &lt;br /&gt;
&lt;br /&gt;
All units are free in this game, every factory built will be spamming units at all times. You can build more factories, but only on pre-defined areas (geothermal vents). All that remains is pure strategy and tactics. &lt;br /&gt;
&lt;br /&gt;
KP makes for a frantically fast-paced, action-oriented game, with a very unique graphical style.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Download links:==&lt;br /&gt;
&lt;br /&gt;
Current Version of Kernel Panic is 4.9&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Newcomers:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you run &#039;&#039;&#039;Windows&#039;&#039;&#039; (2000,XP,Vista,7,8,10):&lt;br /&gt;
*** Here you can get a complete installer:&lt;br /&gt;
**** http://zwzsg.ddns.net/kp/installers/Kernel_Panic_4.9_Including_Spring_105.0_Installer39.exe&lt;br /&gt;
**** Mod DB mirror: https://www.moddb.com/games/kernel-panic/downloads/kernel-panic-49-installer-39&lt;br /&gt;
*** Use it to install both Spring and Kernel Panic in one go.&lt;br /&gt;
*** Then use the shortcuts created in your Start Menu or Desktop.&lt;br /&gt;
** If you run &#039;&#039;&#039;Linux&#039;&#039;&#039;:&lt;br /&gt;
*** Get a Linux static build of the Spring engine from https://springrts.com/wiki/Download&lt;br /&gt;
*** Get and unzip that file: http://zwzsg.ddns.net/kp/zips/Kernel_Panic_4.9.zip&lt;br /&gt;
*** Unzip both in the same folder, so that Kernel_Panic_4.9_Launcher_Linux is next to spring executable&lt;br /&gt;
*** Run Kernel_Panic_4.9_Launcher_Linux&lt;br /&gt;
*** Alternatively, running spring directly would bring a greenish menu once ingame&lt;br /&gt;
*** For multiplayer or advanced options, run SpringLobby&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Experienced Users:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you have already the Spring engine (or prefer to install it yourself): Here you can get a zip with the mod file, the maps, and a tiny executable for single player frontend. Unzip into your Spring root folder: http://zwzsg.ddns.net/kp/zips/Kernel_Panic_4.9.zip&lt;br /&gt;
** If you are certain you have all the maps and just need a quick link to the mod file itself: http://zwzsg.ddns.net/kp/mods/Kernel_Panic_4.9.sd7&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Media:==&lt;br /&gt;
&lt;br /&gt;
===Youtube Videos:===&lt;br /&gt;
&lt;br /&gt;
[http://youtube.com/watch?v=doF7owZ0blk&amp;amp;fmt=18 http://i.ytimg.com/vi/doF7owZ0blk/default.jpg] &lt;br /&gt;
[http://youtube.com/watch?v=Ug1c19yaZac http://i.ytimg.com/vi/Ug1c19yaZac/default.jpg] [http://youtube.com/watch?v=GAZQhRlt5bU http://i.ytimg.com/vi/GAZQhRlt5bU/default.jpg]&lt;br /&gt;
[http://www.youtube.com/watch?v=3q48ys5hFtI&amp;amp;fmt=18 http://i.ytimg.com/vi/3q48ys5hFtI/default.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Still shots:===&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg http://tof.canardpc.com/preview/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg] [http://tof.canardpc.com/view/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg http://tof.canardpc.com/preview/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg] [http://tof.canardpc.com/view/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg http://tof.canardpc.com/preview/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg]&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg http://tof.canardpc.com/preview/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg] [http://tof.canardpc.com/view/e5184baf-6c95-4c90-8469-b00a4f092054.jpg http://tof.canardpc.com/preview/e5184baf-6c95-4c90-8469-b00a4f092054.jpg] [http://tof.canardpc.com/view/cbe6dae0-a696-450a-bf22-236043d76511.jpg http://tof.canardpc.com/preview/cbe6dae0-a696-450a-bf22-236043d76511.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==License:==&lt;br /&gt;
Extracted from the &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt; file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
========--------------------------------------------&lt;br /&gt;
License:&lt;br /&gt;
--------&lt;br /&gt;
- The content of the /mods/Kernel*.sd7 is Public Domain, save:&lt;br /&gt;
  /LuaUI/Widgets/kp_buildbar.lua&lt;br /&gt;
  /LuaRules/Gadgets/autohold.lua&lt;br /&gt;
  /LuaRules/Gadgets/Burrow.lua&lt;br /&gt;
  /LuaRules/Gadgets/game_spawn.lua&lt;br /&gt;
  which are GPL, taken from http://www.caspring.org or http://springrts.com&lt;br /&gt;
- The maps Marble Madness and Direct Memory Access are Public Domain&lt;br /&gt;
- The maps Major Madness and Speed Balls 16 Way status are unknown&lt;br /&gt;
- The maps Central Hub, Corrupted Core, Dual Core, Quad Core were CC BY-NC-SA and are now CC-BY-SA&lt;br /&gt;
   https://springrts.com/phpbb/viewtopic.php?f=43&amp;amp;t=21331&amp;amp;p=401680#p397471&lt;br /&gt;
   https://springrts.com/phpbb/viewtopic.php?f=43&amp;amp;t=27499&amp;amp;start=6&lt;br /&gt;
- The Spring engine is GPL, available from http://spring.clan-sy.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Game Modes:==&lt;br /&gt;
By default the aim is to destroy the homebase and all the minifacs of all opposing teams.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Other &amp;quot;mod options&amp;quot; available are:&lt;br /&gt;
* &#039;&#039;&#039;King Of The Hill :&#039;&#039;&#039; Keeps control of the map center for a given time to win.&lt;br /&gt;
* &#039;&#039;&#039;O.N.S. :&#039;&#039;&#039; Adds shields to buildings, preventing homebase rush.&lt;br /&gt;
* &#039;&#039;&#039;Save Our Mem :&#039;&#039;&#039; Unit leave &amp;quot;leaks&amp;quot; that must be reclaimed.&lt;br /&gt;
* &#039;&#039;&#039;Color Wars :&#039;&#039;&#039; Whoever controls the most territory when timer elapse wins.&lt;br /&gt;
* &#039;&#039;&#039;Heroes of Mainframe :&#039;&#039;&#039; You only control a very buffed up but single unit. Best used with &amp;quot;Pre-placed Minifacs&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;Rebalancing formula :&#039;&#039;&#039; Let you change the stat of any units of weapons without the hassle of making a mutator. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For details, read [http://zwzsg.ddns.net/kp/Kernel_Panic_readme.txt &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] or click [?] next to each mod option in your lobby.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Units and Buildings:==&lt;br /&gt;
&lt;br /&gt;
===System units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/5/54/96x96Kernel.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Kernel:&#039;&#039;&#039; You start with one of these. It can build all mobile units in the game. Has rapid auto-heal and lots of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/b/b2/96x96Socket.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Socket:&#039;&#039;&#039; The socket is a factory which can only be built on a geothermal vent. It can solely build bits, and slower than the kernel can. It autoheals, and has a decent amount of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/8c/96x96Terminal.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Terminal:&#039;&#039;&#039; This is a new structure that gets placed on geovents. It can dispatch a nuclear bomber once every 90 seconds that will deal about 16000 damage to a large target area, i.e. it destroys everything except factories. It does much less damage to the kernel and hole. The bomber can strike any position on the map, there is no defense.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/1/1e/96x96Assembler.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Assembler:&#039;&#039;&#039; The assembler is a construction unit. It can build sockets, but it cannot assist-build. Slow, little health. Equipped with a radar to detect mines and other cloacked units.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/0/0a/96x96Bit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bit:&#039;&#039;&#039; Your basic attacking unit. Cheap, fast, small, not very much health. Is armed with a SPARCling laser. Can be built by a kernel or a socket.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/e/e3/96x96Byte.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Byte:&#039;&#039;&#039; A large, strong, and slow attacking unit. Can holds it&#039;s own against many bits, as it has lots of health and a powerful gun. More armored when closed. Can plow through bad blocks. The byte has an alternate firing mode, the mine launcher, which throws 5 mines at the cost of much health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/5/51/96x96Pointer.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Pointer:&#039;&#039;&#039; An artillery unit. Its normal shot is not so useful against moving units, but can kill kernels and sockets pretty quickly. Is slow and has little health, so it needs protection. The pointer has an alternate firing mode, the NX Flag, which set a wide area ablaze for a minute, causing constant damage to all units, or buildings within it&#039;s range.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Hacker units:===&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/7f/96x96NewHoleLow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Security Hole:&#039;&#039;&#039; The Hacker kernel equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/70/96x96Window.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Window:&#039;&#039;&#039; The Hacker socket equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/fb/96x96Obelisk.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Obelisk:&#039;&#039;&#039; This building is a stationary artillery weapon, it can fire an infection shot every 40 seconds (the obelisk has a pink fire on top when it&#039;s ready to shoot) that will cover a large area in poison. The poison does a bit of damage (about 1000) and turns any enemy that dies inside the cloud into a Virus. The weapon&#039;s range is fairly limited. Best used against stationnary herds of Bits/Bugs.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/c/c5/96x96NewTrojan.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Trojan:&#039;&#039;&#039; This unit is your constructor as well as radar platform (needed for detecting mines and cloaked units), just like the assembler. It builds all the same stuff as the assembler, except it has the window instead of the socket and the obelisk instead of the terminal.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/9/94/96x96Virus.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Virus:&#039;&#039;&#039; A crappy little swarm unit. It cannot be built but is produced when killing enemy units with certain weapons. Namely, the Virus, the Worm, and the Obelisk.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/ff/96x96NewBug.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Bug:&#039;&#039;&#039; The Hacker spam unit. The Bug is weaker than the Bit but can sense movement outside of its LOS. It has a stronger weapon and more range but cannot shoot at things behind it or through friendly units and won&#039;t take much damage before dying. The mine ability of the old bug has been removed. Instead it can now morph into the Exploit with the deploy button, or the bombard button.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/c/c4/96x96Exploit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Exploit:&#039;&#039;&#039; This is the new name for the bug cannon. It&#039;s a building the Bug morphs into with the deploy or bombard command. The Exploit is a stationary artillery emplacement that does more damage the further the target is away. Even more frail than the Bug, so don&#039;t let any foe come near.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/4/40/96x96NewWorm.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Worm:&#039;&#039;&#039; The worm is a sneaky assassin, travelling cloacked, then surfacing only to kill many bits at once with its large area of effect weapon, which turn any slain units into virus. The worm large splash damage will damage your own units. However, it does practicaly no damage against other worms or virus. When cloacked, the worm does not automatically attack, you have to give attack orders manually. If you&#039;d rather have your worms auto-attack even when cloacked, set autohold to off. The autohold setting of new worms is inherited from the Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/f4/96x96DoS.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Denial of Service:&#039;&#039;&#039; Not an artillery, but close: fire a beam that stun units. For bigger targets it&#039;ll take longer to stun them so perform a DDoS (use multiple) to stun them fast. Once the DoS stops firing the target will quickly unfreeze. It moves faster than the pointer but causes a particle trail that can be seen from far away.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Network units:===&lt;br /&gt;
The network faction is built around mobility, its small factories (Ports) don&#039;t produce units openly but instead increment a virtual counter (the Buffer). Packets in the Buffer can be materialized at any teleporter unit (currently that means the Port and the Connection), it&#039;s also possible to dematerialize the Packets back into the Buffer by making them enter a teleport.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/76/96x96Carrier.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Carrier:&#039;&#039;&#039; The base building, like a Kernel or Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/4/46/96x96Port.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Port:&#039;&#039;&#039; The production building. It puts Packets into the Buffer, to materialize them select the Dispatch command. Dispatch will send 12 Packets if available, you can hold ALT when giving the order to make the Port dispatch until the Buffer is empty.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/83/96x96Firewall.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Firewall:&#039;&#039;&#039; This building can cover units (affects friendly units in a certain radius around the target location) in a protective shield for 20 seconds. The shield halves all damage the unit receives and throws the other half back at the attacker.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/6/6c/96x96Gateway.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Gateway:&#039;&#039;&#039; The constructor. It is lightly armed to help against enemy raids.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/8b/96x96Packet.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Packet:&#039;&#039;&#039; The basic light spam unit, it&#039;s weaker in combat than both competitors but much faster.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/2/26/96x96Connection.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Connection:&#039;&#039;&#039; Mostly a mobile teleporter (i.e. can dispatch Packets and let them enter like a Port). The Connection has decent armor and an arc beam that can do a lot of damage to single targets and has good range. It can defeat most large units one on one but engaging Bytes will probably result in pointer fire which the Connection cannot withstand and the arc beam is not optimal for engaging swarms.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/0/01/96x96Flow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Flow:&#039;&#039;&#039; An air unit. The Flow moves fairly slowly but can of course cross any terrain. It&#039;s equipped to attack light targets (spam units and fire support) but it&#039;s highly vulnerable to return fire. If you want to use them in open combat give them a meatshield and hope the enemy doesn&#039;t field long range units, Pointers, DoSes and Connections make short work of Flows if they hit.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===All side Units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/9/98/96x96BadBlock.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bad Block:&#039;&#039;&#039; A tiny wall, built by Assembler/Trojan/Gateway. Blocks small units movement. Do not block shots however. Easily removed by the Debug or simply crushing them with a Byte or Connection.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/a/a4/96x96Mine.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Logic Bomb:&#039;&#039;&#039; A mine that can be built by the Assembler/Trojan/Gateway. And also launched by Bytes. It takes out Bits &amp;amp; Bugs in a single blow, has a decent damage radius, and doesn&#039;t chain explode. Use with care, as the blast hurts your own units too. Limited to 32.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/3/35/96x96MineBlaster.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Debug:&#039;&#039;&#039; An easy way to clear an area of all mines and walls, this is a one shot weapon built by the Assembler/Trojan/Gateway.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Playing Guide for System:==&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
&lt;br /&gt;
Attention all editors: Try and improve this playing guide to make less assumptions about the setup, and allow for team maps, larger maps, and generally teach more general strategy &lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Playing Kernel Panic is fairly simple and quickly learned, but can be hard to master and can be very complex. It is recommended that beginners start with play the System faction, as they can be considered the least &amp;quot;gimmicky&amp;quot; of the factions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Maybe it might be a good idea to move this to after the next two paragraphs.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
One rather effective general strategy for a duel on small maps is to send three to five bits to destroy your enemy&#039;s early game units, and, to a lesser degree, for scouting purposes. This is most effective if they started with construction units, as this will likely cripple their plans for an early expansion, and gives you a slight head start. After the initial attack, if your scouting shows that your enemy started with offensive units, build a byte for defense, and place it between your Kernel and the hill. After that, build an assembler and use it to build a socket on one the three closest building locations, which should automatically start producing bits. After this, you should order your assembler to build more sockets on free spots close to it. It is crucial that all sockets&#039; rally points are below them, as bits turning inside a socket will stall production until it is able to exit the factory. It is sometimes wise to repeat the prior process with one or two other assemblers. After this is done, construct about ten bits from your factor, and set your kernel to alternate between building bytes and pointers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
 A section on the uses of the faction&#039;s special units, and buildings (sigterm, pointer&#039;s fire, and byte&#039;s mine layer) could be useful, and these paragraphs might need modification.&lt;br /&gt;
&lt;br /&gt;
Making them flow better, and more coherent will help.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
What units you build at your kernel, and what you use them for, is an important factor in winning. As buildings can&#039;t be resumed, sending in groups of bits to kill construction units creating buildings can be very effective at stopping expansion attempts. Building too many pointers, will result in them being destroyed by connections, bits and especially worms, due to their stealth. Also, bytes are easily destroyer by and pointers, and exploits. A good general purpose ratio seems to be to queue one byte and one pointer, but this will need adapting as the game develops, and depending on the enemy&#039;s play style. &lt;br /&gt;
&lt;br /&gt;
Scouting is important too, as many enemies will leave their factories undefended, and knowing their build, and general unit use can help you in adapting the units you use to better fight them. Note that the Network can instantly spawn packets at any of their ports, or connections with their buffer system, meaning that all their factories should be considered defended. Single bits can be used to scout to find the enemy&#039;s current expansion attempts. &lt;br /&gt;
&lt;br /&gt;
When attacking a Byte or Connection with bits, it is important to overwhelm it with large numbers of bits. For bytes, try to exploit a byte&#039;s blind spot directly under it, by moving bits into that area. If your byte is under attack, moving it backwards to keep the attacking units in it&#039;s shooting arc can help repel the attack. It is not recommended to engage a worm with bits, as it&#039;s attack will convert your bits to viruses on the worm&#039;s owner&#039;s side.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Might reposition this section. Feel free to add map specific paragraphs for other maps as well. In fact, this will be very helpful to newcomers, I bet.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
On Marble Madness, there are two main ways paths to victory. The simplest one is to control the hill and use pointers stationed on the hill to destroy the enemy&#039;s factories, and kernel. Gaining control of the hilltop will likely not be without resistance, because it requires a decent amount of time for units to reach the top of the hill, meaning most units involved will be spam units from your factories on it, and the fact that it will likely be highly contended. However, if you control it, you have a large advantage over the enemy as you can shell your opponents home base with ease. The other way is around the hill, which can be very effective if you control terrain you can use pointers to great effect. In both strategies, using pointers is the crucial factor. While they are hard to use correctly, they are game-winners as they destroy home bases and enemy units with ease.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Credits:==&lt;br /&gt;
- Original concept by Boirunner&amp;lt;br&amp;gt;&lt;br /&gt;
- About all the work done by KDR_11k&amp;lt;br&amp;gt;&lt;br /&gt;
- Sounds by Noruas&amp;lt;br&amp;gt;&lt;br /&gt;
- Maintenance by zwzsg&amp;lt;br&amp;gt;&lt;br /&gt;
- Maps by Boirunner, Runecrafter, zwzsg, and TradeMark&amp;lt;br&amp;gt;&lt;br /&gt;
- Some Lua interface upgrade based of jK and trepan code&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Back to [[Games]]&lt;br /&gt;
[[Category:Games]]&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10065</id>
		<title>Kernel Panic</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10065"/>
		<updated>2021-06-25T00:38:32Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: KP 4.8 -&amp;gt; KP 4.9 + fixed links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;[http://timblokdijk.nl/spring/Kernel%20Panic/logo/kernel0_hd.png https://springrts.com/mediawiki/images/f/fc/Kernel_Panic_Alpha_Title_Half.png]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Overview:==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;For the latest news and/or assistance, try the [http://springrts.com/phpbb/viewforum.php?f=43&#039;&#039;&#039;KP forum&#039;&#039;&#039;] or go to #kp when you log onto the lobby.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kernel Panic&#039;&#039;&#039; is a game about computers. Systems, Hackers and Networks wage war in a matrix of DOOM! The only constraints are time and space; unlike other real time strategy games, no resource economy exists in KP. &lt;br /&gt;
&lt;br /&gt;
All units are free in this game, every factory built will be spamming units at all times. You can build more factories, but only on pre-defined areas (geothermal vents). All that remains is pure strategy and tactics. &lt;br /&gt;
&lt;br /&gt;
KP makes for a frantically fast-paced, action-oriented game, with a very unique graphical style.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Download links:==&lt;br /&gt;
&lt;br /&gt;
Current Version of Kernel Panic is 4.9&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Newcomers:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you run &#039;&#039;&#039;Windows&#039;&#039;&#039; (2000,XP,Vista,7,8,10):&lt;br /&gt;
*** Here you can get a complete installer:&lt;br /&gt;
*** http://zwzsg.ddns.net/kp/installers/Kernel_Panic_4.9_Including_Spring_105.0_Installer39.exe&lt;br /&gt;
*** Use it to install both Spring and Kernel Panic in one go.&lt;br /&gt;
*** Then use the shortcuts created in your Start Menu or Desktop.&lt;br /&gt;
** If you run &#039;&#039;&#039;Linux&#039;&#039;&#039;:&lt;br /&gt;
*** Get a Linux static build of the Spring engine from https://springrts.com/wiki/Download&lt;br /&gt;
*** Get and unzip that file: http://zwzsg.ddns.net/kp/zips/Kernel_Panic_4.9.zip&lt;br /&gt;
*** Unzip both in the same folder, so that Kernel_Panic_4.9_Launcher_Linux is next to spring executable&lt;br /&gt;
*** Run Kernel_Panic_4.9_Launcher_Linux&lt;br /&gt;
*** Alternatively, running spring directly would bring a greenish menu once ingame&lt;br /&gt;
*** For multiplayer or advanced options, run SpringLobby&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Experienced Users:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you have already the Spring engine (or prefer to install it yourself): Here you can get a zip with the mod file, the maps, and a tiny executable for single player frontend. Unzip into your Spring root folder: http://zwzsg.ddns.net/kp/zips/Kernel_Panic_4.9.zip&lt;br /&gt;
** If you are certain you have all the maps and just need a quick link to the mod file itself: http://zwzsg.ddns.net/kp/mods/Kernel_Panic_4.9.sd7&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Media:==&lt;br /&gt;
&lt;br /&gt;
===Youtube Videos:===&lt;br /&gt;
&lt;br /&gt;
[http://youtube.com/watch?v=doF7owZ0blk&amp;amp;fmt=18 http://i.ytimg.com/vi/doF7owZ0blk/default.jpg] &lt;br /&gt;
[http://youtube.com/watch?v=Ug1c19yaZac http://i.ytimg.com/vi/Ug1c19yaZac/default.jpg] [http://youtube.com/watch?v=GAZQhRlt5bU http://i.ytimg.com/vi/GAZQhRlt5bU/default.jpg]&lt;br /&gt;
[http://www.youtube.com/watch?v=3q48ys5hFtI&amp;amp;fmt=18 http://i.ytimg.com/vi/3q48ys5hFtI/default.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Still shots:===&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg http://tof.canardpc.com/preview/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg] [http://tof.canardpc.com/view/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg http://tof.canardpc.com/preview/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg] [http://tof.canardpc.com/view/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg http://tof.canardpc.com/preview/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg]&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg http://tof.canardpc.com/preview/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg] [http://tof.canardpc.com/view/e5184baf-6c95-4c90-8469-b00a4f092054.jpg http://tof.canardpc.com/preview/e5184baf-6c95-4c90-8469-b00a4f092054.jpg] [http://tof.canardpc.com/view/cbe6dae0-a696-450a-bf22-236043d76511.jpg http://tof.canardpc.com/preview/cbe6dae0-a696-450a-bf22-236043d76511.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==License:==&lt;br /&gt;
Extracted from the &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt; file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
========--------------------------------------------&lt;br /&gt;
License:&lt;br /&gt;
--------&lt;br /&gt;
- The content of the /mods/Kernel*.sd7 is Public Domain, save:&lt;br /&gt;
  /LuaUI/Widgets/kp_buildbar.lua&lt;br /&gt;
  /LuaRules/Gadgets/autohold.lua&lt;br /&gt;
  /LuaRules/Gadgets/Burrow.lua&lt;br /&gt;
  /LuaRules/Gadgets/game_spawn.lua&lt;br /&gt;
  which are GPL, taken from http://www.caspring.org or http://springrts.com&lt;br /&gt;
- The maps Marble Madness and Direct Memory Access are Public Domain&lt;br /&gt;
- The maps Major Madness and Speed Balls 16 Way status are unknown&lt;br /&gt;
- The maps Central Hub, Corrupted Core, Dual Core, Quad Core were CC BY-NC-SA and are now CC-BY-SA&lt;br /&gt;
   https://springrts.com/phpbb/viewtopic.php?f=43&amp;amp;t=21331&amp;amp;p=401680#p397471&lt;br /&gt;
   https://springrts.com/phpbb/viewtopic.php?f=43&amp;amp;t=27499&amp;amp;start=6&lt;br /&gt;
- The Spring engine is GPL, available from http://spring.clan-sy.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Game Modes:==&lt;br /&gt;
By default the aim is to destroy the homebase and all the minifacs of all opposing teams.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Other &amp;quot;mod options&amp;quot; available are:&lt;br /&gt;
* &#039;&#039;&#039;King Of The Hill :&#039;&#039;&#039; Keeps control of the map center for a given time to win.&lt;br /&gt;
* &#039;&#039;&#039;O.N.S. :&#039;&#039;&#039; Adds shields to buildings, preventing homebase rush.&lt;br /&gt;
* &#039;&#039;&#039;Save Our Mem :&#039;&#039;&#039; Unit leave &amp;quot;leaks&amp;quot; that must be reclaimed.&lt;br /&gt;
* &#039;&#039;&#039;Color Wars :&#039;&#039;&#039; Whoever controls the most territory when timer elapse wins.&lt;br /&gt;
* &#039;&#039;&#039;Heroes of Mainframe :&#039;&#039;&#039; You only control a very buffed up but single unit. Best used with &amp;quot;Pre-placed Minifacs&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;Rebalancing formula :&#039;&#039;&#039; Let you change the stat of any units of weapons without the hassle of making a mutator. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For details, read [http://zwzsg.ddns.net/kp/Kernel_Panic_readme.txt &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] or click [?] next to each mod option in your lobby.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Units and Buildings:==&lt;br /&gt;
&lt;br /&gt;
===System units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/5/54/96x96Kernel.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Kernel:&#039;&#039;&#039; You start with one of these. It can build all mobile units in the game. Has rapid auto-heal and lots of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/b/b2/96x96Socket.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Socket:&#039;&#039;&#039; The socket is a factory which can only be built on a geothermal vent. It can solely build bits, and slower than the kernel can. It autoheals, and has a decent amount of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/8c/96x96Terminal.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Terminal:&#039;&#039;&#039; This is a new structure that gets placed on geovents. It can dispatch a nuclear bomber once every 90 seconds that will deal about 16000 damage to a large target area, i.e. it destroys everything except factories. It does much less damage to the kernel and hole. The bomber can strike any position on the map, there is no defense.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/1/1e/96x96Assembler.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Assembler:&#039;&#039;&#039; The assembler is a construction unit. It can build sockets, but it cannot assist-build. Slow, little health. Equipped with a radar to detect mines and other cloacked units.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/0/0a/96x96Bit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bit:&#039;&#039;&#039; Your basic attacking unit. Cheap, fast, small, not very much health. Is armed with a SPARCling laser. Can be built by a kernel or a socket.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/e/e3/96x96Byte.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Byte:&#039;&#039;&#039; A large, strong, and slow attacking unit. Can holds it&#039;s own against many bits, as it has lots of health and a powerful gun. More armored when closed. Can plow through bad blocks. The byte has an alternate firing mode, the mine launcher, which throws 5 mines at the cost of much health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/5/51/96x96Pointer.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Pointer:&#039;&#039;&#039; An artillery unit. Its normal shot is not so useful against moving units, but can kill kernels and sockets pretty quickly. Is slow and has little health, so it needs protection. The pointer has an alternate firing mode, the NX Flag, which set a wide area ablaze for a minute, causing constant damage to all units, or buildings within it&#039;s range.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Hacker units:===&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/7f/96x96NewHoleLow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Security Hole:&#039;&#039;&#039; The Hacker kernel equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/70/96x96Window.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Window:&#039;&#039;&#039; The Hacker socket equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/fb/96x96Obelisk.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Obelisk:&#039;&#039;&#039; This building is a stationary artillery weapon, it can fire an infection shot every 40 seconds (the obelisk has a pink fire on top when it&#039;s ready to shoot) that will cover a large area in poison. The poison does a bit of damage (about 1000) and turns any enemy that dies inside the cloud into a Virus. The weapon&#039;s range is fairly limited. Best used against stationnary herds of Bits/Bugs.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/c/c5/96x96NewTrojan.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Trojan:&#039;&#039;&#039; This unit is your constructor as well as radar platform (needed for detecting mines and cloaked units), just like the assembler. It builds all the same stuff as the assembler, except it has the window instead of the socket and the obelisk instead of the terminal.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/9/94/96x96Virus.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Virus:&#039;&#039;&#039; A crappy little swarm unit. It cannot be built but is produced when killing enemy units with certain weapons. Namely, the Virus, the Worm, and the Obelisk.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/ff/96x96NewBug.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Bug:&#039;&#039;&#039; The Hacker spam unit. The Bug is weaker than the Bit but can sense movement outside of its LOS. It has a stronger weapon and more range but cannot shoot at things behind it or through friendly units and won&#039;t take much damage before dying. The mine ability of the old bug has been removed. Instead it can now morph into the Exploit with the deploy button, or the bombard button.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/c/c4/96x96Exploit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Exploit:&#039;&#039;&#039; This is the new name for the bug cannon. It&#039;s a building the Bug morphs into with the deploy or bombard command. The Exploit is a stationary artillery emplacement that does more damage the further the target is away. Even more frail than the Bug, so don&#039;t let any foe come near.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/4/40/96x96NewWorm.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Worm:&#039;&#039;&#039; The worm is a sneaky assassin, travelling cloacked, then surfacing only to kill many bits at once with its large area of effect weapon, which turn any slain units into virus. The worm large splash damage will damage your own units. However, it does practicaly no damage against other worms or virus. When cloacked, the worm does not automatically attack, you have to give attack orders manually. If you&#039;d rather have your worms auto-attack even when cloacked, set autohold to off. The autohold setting of new worms is inherited from the Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/f4/96x96DoS.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Denial of Service:&#039;&#039;&#039; Not an artillery, but close: fire a beam that stun units. For bigger targets it&#039;ll take longer to stun them so perform a DDoS (use multiple) to stun them fast. Once the DoS stops firing the target will quickly unfreeze. It moves faster than the pointer but causes a particle trail that can be seen from far away.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Network units:===&lt;br /&gt;
The network faction is built around mobility, its small factories (Ports) don&#039;t produce units openly but instead increment a virtual counter (the Buffer). Packets in the Buffer can be materialized at any teleporter unit (currently that means the Port and the Connection), it&#039;s also possible to dematerialize the Packets back into the Buffer by making them enter a teleport.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/76/96x96Carrier.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Carrier:&#039;&#039;&#039; The base building, like a Kernel or Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/4/46/96x96Port.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Port:&#039;&#039;&#039; The production building. It puts Packets into the Buffer, to materialize them select the Dispatch command. Dispatch will send 12 Packets if available, you can hold ALT when giving the order to make the Port dispatch until the Buffer is empty.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/83/96x96Firewall.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Firewall:&#039;&#039;&#039; This building can cover units (affects friendly units in a certain radius around the target location) in a protective shield for 20 seconds. The shield halves all damage the unit receives and throws the other half back at the attacker.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/6/6c/96x96Gateway.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Gateway:&#039;&#039;&#039; The constructor. It is lightly armed to help against enemy raids.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/8b/96x96Packet.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Packet:&#039;&#039;&#039; The basic light spam unit, it&#039;s weaker in combat than both competitors but much faster.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/2/26/96x96Connection.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Connection:&#039;&#039;&#039; Mostly a mobile teleporter (i.e. can dispatch Packets and let them enter like a Port). The Connection has decent armor and an arc beam that can do a lot of damage to single targets and has good range. It can defeat most large units one on one but engaging Bytes will probably result in pointer fire which the Connection cannot withstand and the arc beam is not optimal for engaging swarms.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/0/01/96x96Flow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Flow:&#039;&#039;&#039; An air unit. The Flow moves fairly slowly but can of course cross any terrain. It&#039;s equipped to attack light targets (spam units and fire support) but it&#039;s highly vulnerable to return fire. If you want to use them in open combat give them a meatshield and hope the enemy doesn&#039;t field long range units, Pointers, DoSes and Connections make short work of Flows if they hit.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===All side Units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/9/98/96x96BadBlock.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bad Block:&#039;&#039;&#039; A tiny wall, built by Assembler/Trojan/Gateway. Blocks small units movement. Do not block shots however. Easily removed by the Debug or simply crushing them with a Byte or Connection.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/a/a4/96x96Mine.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Logic Bomb:&#039;&#039;&#039; A mine that can be built by the Assembler/Trojan/Gateway. And also launched by Bytes. It takes out Bits &amp;amp; Bugs in a single blow, has a decent damage radius, and doesn&#039;t chain explode. Use with care, as the blast hurts your own units too. Limited to 32.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/3/35/96x96MineBlaster.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Debug:&#039;&#039;&#039; An easy way to clear an area of all mines and walls, this is a one shot weapon built by the Assembler/Trojan/Gateway.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Playing Guide for System:==&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
&lt;br /&gt;
Attention all editors: Try and improve this playing guide to make less assumptions about the setup, and allow for team maps, larger maps, and generally teach more general strategy &lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Playing Kernel Panic is fairly simple and quickly learned, but can be hard to master and can be very complex. It is recommended that beginners start with play the System faction, as they can be considered the least &amp;quot;gimmicky&amp;quot; of the factions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Maybe it might be a good idea to move this to after the next two paragraphs.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
One rather effective general strategy for a duel on small maps is to send three to five bits to destroy your enemy&#039;s early game units, and, to a lesser degree, for scouting purposes. This is most effective if they started with construction units, as this will likely cripple their plans for an early expansion, and gives you a slight head start. After the initial attack, if your scouting shows that your enemy started with offensive units, build a byte for defense, and place it between your Kernel and the hill. After that, build an assembler and use it to build a socket on one the three closest building locations, which should automatically start producing bits. After this, you should order your assembler to build more sockets on free spots close to it. It is crucial that all sockets&#039; rally points are below them, as bits turning inside a socket will stall production until it is able to exit the factory. It is sometimes wise to repeat the prior process with one or two other assemblers. After this is done, construct about ten bits from your factor, and set your kernel to alternate between building bytes and pointers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
 A section on the uses of the faction&#039;s special units, and buildings (sigterm, pointer&#039;s fire, and byte&#039;s mine layer) could be useful, and these paragraphs might need modification.&lt;br /&gt;
&lt;br /&gt;
Making them flow better, and more coherent will help.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
What units you build at your kernel, and what you use them for, is an important factor in winning. As buildings can&#039;t be resumed, sending in groups of bits to kill construction units creating buildings can be very effective at stopping expansion attempts. Building too many pointers, will result in them being destroyed by connections, bits and especially worms, due to their stealth. Also, bytes are easily destroyer by and pointers, and exploits. A good general purpose ratio seems to be to queue one byte and one pointer, but this will need adapting as the game develops, and depending on the enemy&#039;s play style. &lt;br /&gt;
&lt;br /&gt;
Scouting is important too, as many enemies will leave their factories undefended, and knowing their build, and general unit use can help you in adapting the units you use to better fight them. Note that the Network can instantly spawn packets at any of their ports, or connections with their buffer system, meaning that all their factories should be considered defended. Single bits can be used to scout to find the enemy&#039;s current expansion attempts. &lt;br /&gt;
&lt;br /&gt;
When attacking a Byte or Connection with bits, it is important to overwhelm it with large numbers of bits. For bytes, try to exploit a byte&#039;s blind spot directly under it, by moving bits into that area. If your byte is under attack, moving it backwards to keep the attacking units in it&#039;s shooting arc can help repel the attack. It is not recommended to engage a worm with bits, as it&#039;s attack will convert your bits to viruses on the worm&#039;s owner&#039;s side.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Might reposition this section. Feel free to add map specific paragraphs for other maps as well. In fact, this will be very helpful to newcomers, I bet.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
On Marble Madness, there are two main ways paths to victory. The simplest one is to control the hill and use pointers stationed on the hill to destroy the enemy&#039;s factories, and kernel. Gaining control of the hilltop will likely not be without resistance, because it requires a decent amount of time for units to reach the top of the hill, meaning most units involved will be spam units from your factories on it, and the fact that it will likely be highly contended. However, if you control it, you have a large advantage over the enemy as you can shell your opponents home base with ease. The other way is around the hill, which can be very effective if you control terrain you can use pointers to great effect. In both strategies, using pointers is the crucial factor. While they are hard to use correctly, they are game-winners as they destroy home bases and enemy units with ease.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Credits:==&lt;br /&gt;
- Original concept by Boirunner&amp;lt;br&amp;gt;&lt;br /&gt;
- About all the work done by KDR_11k&amp;lt;br&amp;gt;&lt;br /&gt;
- Sounds by Noruas&amp;lt;br&amp;gt;&lt;br /&gt;
- Maintenance by zwzsg&amp;lt;br&amp;gt;&lt;br /&gt;
- Maps by Boirunner, Runecrafter, zwzsg, and TradeMark&amp;lt;br&amp;gt;&lt;br /&gt;
- Some Lua interface upgrade based of jK and trepan code&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Back to [[Games]]&lt;br /&gt;
[[Category:Games]]&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.9_poster.png&amp;diff=21848</id>
		<title>File:Kernel Panic 4.9 poster.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.9_poster.png&amp;diff=21848"/>
		<updated>2021-06-25T00:03:32Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Promotional Picture for Kernel Panic 4.9&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
Promotional Picture for Kernel Panic 4.9&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10063</id>
		<title>Kernel Panic</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10063"/>
		<updated>2019-04-28T03:18:41Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: 4.7 -&amp;gt; 4.8&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;[http://timblokdijk.nl/spring/Kernel%20Panic/logo/kernel0_hd.png https://springrts.com/mediawiki/images/f/fc/Kernel_Panic_Alpha_Title_Half.png]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Overview:==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;For the latest news and/or assistance, try the [http://springrts.com/phpbb/viewforum.php?f=43&#039;&#039;&#039;KP forum&#039;&#039;&#039;] or go to #kp when you log onto the lobby.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kernel Panic&#039;&#039;&#039; is a game about computers. Systems, Hackers and Networks wage war in a matrix of DOOM! The only constraints are time and space; unlike other real time strategy games, no resource economy exists in KP. &lt;br /&gt;
&lt;br /&gt;
All units are free in this game, every factory built will be spamming units at all times. You can build more factories, but only on pre-defined areas (geothermal vents). All that remains is pure strategy and tactics. &lt;br /&gt;
&lt;br /&gt;
KP makes for a frantically fast-paced, action-oriented game, with a very unique graphical style.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Download links:==&lt;br /&gt;
&lt;br /&gt;
Current Version of Kernel Panic is 4.8&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Newcomers:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you run &#039;&#039;&#039;Windows&#039;&#039;&#039; (2000,XP,Vista,7,8,10):&lt;br /&gt;
*** Here you can get a complete installer:&lt;br /&gt;
*** http://springfiles.com/spring/game-installers/kernel-panic-installer&lt;br /&gt;
*** Use it to install both Spring and Kernel Panic in one go.&lt;br /&gt;
*** Then use the shortcuts created in your Start Menu or Desktop.&lt;br /&gt;
** If you run &#039;&#039;&#039;Linux&#039;&#039;&#039;:&lt;br /&gt;
*** Get a Linux static build of the Spring engine from https://springrts.com/wiki/Download&lt;br /&gt;
*** Get and unzip that file: http://springfiles.com/spring/game-installers/kernel-panic-zip&lt;br /&gt;
*** Unzip both in the same folder, so that Kernel_Panic_4.8_Launcher_Linux is next to spring executable&lt;br /&gt;
*** Run Kernel_Panic_4.8_Launcher_Linux&lt;br /&gt;
*** Alternatively, running spring directly would bring a greenish menu once ingame&lt;br /&gt;
*** For multiplayer or advanced options, run SpringLobby&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Experienced Users:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you have already the Spring engine (or prefer to install it yourself): Here you can get a zip with the mod file, the maps, and a tiny executable for single player frontend. Unzip into your Spring root folder: http://springfiles.com/spring/game-installers/kernel-panic-zip&lt;br /&gt;
** If you are certain you have all the maps and just need a quick link to the mod file itself: http://springfiles.com/spring/games/kernel-panic-mod&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Media:==&lt;br /&gt;
&lt;br /&gt;
===Youtube Videos:===&lt;br /&gt;
&lt;br /&gt;
[http://youtube.com/watch?v=doF7owZ0blk&amp;amp;fmt=18 http://i.ytimg.com/vi/doF7owZ0blk/default.jpg] &lt;br /&gt;
[http://youtube.com/watch?v=Ug1c19yaZac http://i.ytimg.com/vi/Ug1c19yaZac/default.jpg] [http://youtube.com/watch?v=GAZQhRlt5bU http://i.ytimg.com/vi/GAZQhRlt5bU/default.jpg]&lt;br /&gt;
[http://www.youtube.com/watch?v=3q48ys5hFtI&amp;amp;fmt=18 http://i.ytimg.com/vi/3q48ys5hFtI/default.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Still shots:===&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg http://tof.canardpc.com/preview/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg] [http://tof.canardpc.com/view/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg http://tof.canardpc.com/preview/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg] [http://tof.canardpc.com/view/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg http://tof.canardpc.com/preview/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg]&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg http://tof.canardpc.com/preview/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg] [http://tof.canardpc.com/view/e5184baf-6c95-4c90-8469-b00a4f092054.jpg http://tof.canardpc.com/preview/e5184baf-6c95-4c90-8469-b00a4f092054.jpg] [http://tof.canardpc.com/view/cbe6dae0-a696-450a-bf22-236043d76511.jpg http://tof.canardpc.com/preview/cbe6dae0-a696-450a-bf22-236043d76511.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==License:==&lt;br /&gt;
Extracted from the [http://pastebin.ca/2834721 &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
========--------------------------------------------&lt;br /&gt;
License:&lt;br /&gt;
--------&lt;br /&gt;
- The content of the /games/Kernel*.sd7 is Public Domain, save:&lt;br /&gt;
  /LuaUI/Widgets/kp_buildbar.lua&lt;br /&gt;
  /LuaRules/Gadgets/autohold.lua&lt;br /&gt;
  /LuaRules/Gadgets/Burrow.lua&lt;br /&gt;
  /LuaRules/Gadgets/game_spawn.lua&lt;br /&gt;
  which are GPL, taken from http://www.caspring.org or http://springrts.com&lt;br /&gt;
- The maps Marble Madness and Direct Memory Access are Public Domain&lt;br /&gt;
- The maps Major Madness and Speed Balls 16 Way are status unknown&lt;br /&gt;
- The maps Central Hub, Corrupted Core, Dual Core, Quad Core are CC BY-SA&lt;br /&gt;
- The Spring engine is GPL, available from https://springrts.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Removal of the NC clause for FireStorm maps: is archived under https://springrts.com/phpbb/viewtopic.php?f=43&amp;amp;t=27499&amp;amp;start=6 preserved below.&lt;br /&gt;
&lt;br /&gt;
Re: Kernel Panic 4.4&lt;br /&gt;
Post  by FireStorm_ » 02 Feb 2012, 11:29&lt;br /&gt;
&lt;br /&gt;
Don&#039;t know if it&#039;s an issue, but I changed the licence of my maps, just to be sure. I don&#039;t remember why I made them NonCommercial before, and I don&#039;t really know how to argue for it now. &lt;br /&gt;
(I guess the KP comes with a licence.txt saying my maps are NonCommercial. If so, I&#039;m saying its ok to disregard that.)&lt;br /&gt;
I hope that helped...&lt;br /&gt;
--!&amp;gt;&amp;lt;!--&lt;br /&gt;
They are licensed under CC BY-SA now as per https://springrts.com/phpbb/viewtopic.php?f=43&amp;amp;t=21331&amp;amp;p=401680#p397471 preserved below.&lt;br /&gt;
&lt;br /&gt;
New Kernel Panic Maps&lt;br /&gt;
Post  by FireStorm_ » 13 Dec 2009, 10:59&lt;br /&gt;
&lt;br /&gt;
I made some maps for Kernel Panic.&lt;br /&gt;
I&#039;ve uploaded them to Spring Files:&lt;br /&gt;
&lt;br /&gt;
Central Hub&lt;br /&gt;
http://www.springfiles.com/show_file.php?id=2451&lt;br /&gt;
Corrupted Core&lt;br /&gt;
http://www.springfiles.com/show_file.php?id=2455&lt;br /&gt;
Dual Core&lt;br /&gt;
http://www.springfiles.com/show_file.php?id=2454&lt;br /&gt;
Quad Core&lt;br /&gt;
http://www.springfiles.com/show_file.php?id=2456&lt;br /&gt;
&lt;br /&gt;
They are also documented and linked here, on my clans blog:&lt;br /&gt;
http://sbspringrts.blogspot.com/2009/12 ... -pack.html&lt;br /&gt;
&lt;br /&gt;
If someone has time to check them out, please tell me what you think.&lt;br /&gt;
&lt;br /&gt;
Edit:&lt;br /&gt;
License	&lt;br /&gt;
This work is licensed under the Creative Commons BY-SA License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/&lt;br /&gt;
Last edited by FireStorm_ on 02 Feb 2012, 11:16, edited 4 times in total.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Game Modes:==&lt;br /&gt;
By default the aim is to destroy the homebase and all the minifacs of all opposing teams.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Other &amp;quot;mod options&amp;quot; available are:&lt;br /&gt;
* &#039;&#039;&#039;King Of The Hill :&#039;&#039;&#039; Keeps control of the map center for a given time to win.&lt;br /&gt;
* &#039;&#039;&#039;O.N.S. :&#039;&#039;&#039; Adds shields to buildings, preventing homebase rush.&lt;br /&gt;
* &#039;&#039;&#039;Save Our Mem :&#039;&#039;&#039; Unit leave &amp;quot;leaks&amp;quot; that must be reclaimed.&lt;br /&gt;
* &#039;&#039;&#039;Color Wars :&#039;&#039;&#039; Whoever controls the most territory when timer elapse wins.&lt;br /&gt;
* &#039;&#039;&#039;Heroes of Mainframe :&#039;&#039;&#039; You only control a very buffed up but single unit. Best used with &amp;quot;Pre-placed Minifacs&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;Rebalancing formula :&#039;&#039;&#039; Let you change the stat of any units of weapons without the hassle of making a mutator. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For details, read [http://pastebin.ca/2834721 &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] or click [?] next to each mod option in your lobby.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Units and Buildings:==&lt;br /&gt;
&lt;br /&gt;
===System units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/5/54/96x96Kernel.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Kernel:&#039;&#039;&#039; You start with one of these. It can build all mobile units in the game. Has rapid auto-heal and lots of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/b/b2/96x96Socket.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Socket:&#039;&#039;&#039; The socket is a factory which can only be built on a geothermal vent. It can solely build bits, and slower than the kernel can. It autoheals, and has a decent amount of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/8c/96x96Terminal.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Terminal:&#039;&#039;&#039; This is a new structure that gets placed on geovents. It can dispatch a nuclear bomber once every 90 seconds that will deal about 16000 damage to a large target area, i.e. it destroys everything except factories. It does much less damage to the kernel and hole. The bomber can strike any position on the map, there is no defense.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/1/1e/96x96Assembler.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Assembler:&#039;&#039;&#039; The assembler is a construction unit. It can build sockets, but it cannot assist-build. Slow, little health. Equipped with a radar to detect mines and other cloacked units.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/0/0a/96x96Bit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bit:&#039;&#039;&#039; Your basic attacking unit. Cheap, fast, small, not very much health. Is armed with a SPARCling laser. Can be built by a kernel or a socket.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/e/e3/96x96Byte.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Byte:&#039;&#039;&#039; A large, strong, and slow attacking unit. Can holds it&#039;s own against many bits, as it has lots of health and a powerful gun. More armored when closed. Can plow through bad blocks. The byte has an alternate firing mode, the mine launcher, which throws 5 mines at the cost of much health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/5/51/96x96Pointer.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Pointer:&#039;&#039;&#039; An artillery unit. Its normal shot is not so useful against moving units, but can kill kernels and sockets pretty quickly. Is slow and has little health, so it needs protection. The pointer has an alternate firing mode, the NX Flag, which set a wide area ablaze for a minute, causing constant damage to all units, or buildings within it&#039;s range.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Hacker units:===&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/7f/96x96NewHoleLow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Security Hole:&#039;&#039;&#039; The Hacker kernel equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/70/96x96Window.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Window:&#039;&#039;&#039; The Hacker socket equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/fb/96x96Obelisk.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Obelisk:&#039;&#039;&#039; This building is a stationary artillery weapon, it can fire an infection shot every 40 seconds (the obelisk has a pink fire on top when it&#039;s ready to shoot) that will cover a large area in poison. The poison does a bit of damage (about 1000) and turns any enemy that dies inside the cloud into a Virus. The weapon&#039;s range is fairly limited. Best used against stationnary herds of Bits/Bugs.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/c/c5/96x96NewTrojan.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Trojan:&#039;&#039;&#039; This unit is your constructor as well as radar platform (needed for detecting mines and cloaked units), just like the assembler. It builds all the same stuff as the assembler, except it has the window instead of the socket and the obelisk instead of the terminal.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/9/94/96x96Virus.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Virus:&#039;&#039;&#039; A crappy little swarm unit. It cannot be built but is produced when killing enemy units with certain weapons. Namely, the Virus, the Worm, and the Obelisk.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/ff/96x96NewBug.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Bug:&#039;&#039;&#039; The Hacker spam unit. The Bug is weaker than the Bit but can sense movement outside of its LOS. It has a stronger weapon and more range but cannot shoot at things behind it or through friendly units and won&#039;t take much damage before dying. The mine ability of the old bug has been removed. Instead it can now morph into the Exploit with the deploy button, or the bombard button.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/c/c4/96x96Exploit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Exploit:&#039;&#039;&#039; This is the new name for the bug cannon. It&#039;s a building the Bug morphs into with the deploy or bombard command. The Exploit is a stationary artillery emplacement that does more damage the further the target is away. Even more frail than the Bug, so don&#039;t let any foe come near.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/4/40/96x96NewWorm.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Worm:&#039;&#039;&#039; The worm is a sneaky assassin, travelling cloacked, then surfacing only to kill many bits at once with its large area of effect weapon, which turn any slain units into virus. The worm large splash damage will damage your own units. However, it does practicaly no damage against other worms or virus. When cloacked, the worm does not automatically attack, you have to give attack orders manually. If you&#039;d rather have your worms auto-attack even when cloacked, set autohold to off. The autohold setting of new worms is inherited from the Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/f4/96x96DoS.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Denial of Service:&#039;&#039;&#039; Not an artillery, but close: fire a beam that stun units. For bigger targets it&#039;ll take longer to stun them so perform a DDoS (use multiple) to stun them fast. Once the DoS stops firing the target will quickly unfreeze. It moves faster than the pointer but causes a particle trail that can be seen from far away.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Network units:===&lt;br /&gt;
The network faction is built around mobility, its small factories (Ports) don&#039;t produce units openly but instead increment a virtual counter (the Buffer). Packets in the Buffer can be materialized at any teleporter unit (currently that means the Port and the Connection), it&#039;s also possible to dematerialize the Packets back into the Buffer by making them enter a teleport.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/76/96x96Carrier.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Carrier:&#039;&#039;&#039; The base building, like a Kernel or Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/4/46/96x96Port.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Port:&#039;&#039;&#039; The production building. It puts Packets into the Buffer, to materialize them select the Dispatch command. Dispatch will send 12 Packets if available, you can hold ALT when giving the order to make the Port dispatch until the Buffer is empty.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/83/96x96Firewall.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Firewall:&#039;&#039;&#039; This building can cover units (affects friendly units in a certain radius around the target location) in a protective shield for 20 seconds. The shield halves all damage the unit receives and throws the other half back at the attacker.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/6/6c/96x96Gateway.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Gateway:&#039;&#039;&#039; The constructor. It is lightly armed to help against enemy raids.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/8b/96x96Packet.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Packet:&#039;&#039;&#039; The basic light spam unit, it&#039;s weaker in combat than both competitors but much faster.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/2/26/96x96Connection.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Connection:&#039;&#039;&#039; Mostly a mobile teleporter (i.e. can dispatch Packets and let them enter like a Port). The Connection has decent armor and an arc beam that can do a lot of damage to single targets and has good range. It can defeat most large units one on one but engaging Bytes will probably result in pointer fire which the Connection cannot withstand and the arc beam is not optimal for engaging swarms.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/0/01/96x96Flow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Flow:&#039;&#039;&#039; An air unit. The Flow moves fairly slowly but can of course cross any terrain. It&#039;s equipped to attack light targets (spam units and fire support) but it&#039;s highly vulnerable to return fire. If you want to use them in open combat give them a meatshield and hope the enemy doesn&#039;t field long range units, Pointers, DoSes and Connections make short work of Flows if they hit.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===All side Units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/9/98/96x96BadBlock.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bad Block:&#039;&#039;&#039; A tiny wall, built by Assembler/Trojan/Gateway. Blocks small units movement. Do not block shots however. Easily removed by the Debug or simply crushing them with a Byte or Connection.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/a/a4/96x96Mine.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Logic Bomb:&#039;&#039;&#039; A mine that can be built by the Assembler/Trojan/Gateway. And also launched by Bytes. It takes out Bits &amp;amp; Bugs in a single blow, has a decent damage radius, and doesn&#039;t chain explode. Use with care, as the blast hurts your own units too. Limited to 32.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/3/35/96x96MineBlaster.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Debug:&#039;&#039;&#039; An easy way to clear an area of all mines and walls, this is a one shot weapon built by the Assembler/Trojan/Gateway.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Playing Guide for System:==&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
&lt;br /&gt;
Attention all editors: Try and improve this playing guide to make less assumptions about the setup, and allow for team maps, larger maps, and generally teach more general strategy &lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Playing Kernel Panic is fairly simple and quickly learned, but can be hard to master and can be very complex. It is recommended that beginners start with play the System faction, as they can be considered the least &amp;quot;gimmicky&amp;quot; of the factions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Maybe it might be a good idea to move this to after the next two paragraphs.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
One rather effective general strategy for a duel on small maps is to send three to five bits to destroy your enemy&#039;s early game units, and, to a lesser degree, for scouting purposes. This is most effective if they started with construction units, as this will likely cripple their plans for an early expansion, and gives you a slight head start. After the initial attack, if your scouting shows that your enemy started with offensive units, build a byte for defense, and place it between your Kernel and the hill. After that, build an assembler and use it to build a socket on one the three closest building locations, which should automatically start producing bits. After this, you should order your assembler to build more sockets on free spots close to it. It is crucial that all sockets&#039; rally points are below them, as bits turning inside a socket will stall production until it is able to exit the factory. It is sometimes wise to repeat the prior process with one or two other assemblers. After this is done, construct about ten bits from your factor, and set your kernel to alternate between building bytes and pointers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
 A section on the uses of the faction&#039;s special units, and buildings (sigterm, pointer&#039;s fire, and byte&#039;s mine layer) could be useful, and these paragraphs might need modification.&lt;br /&gt;
&lt;br /&gt;
Making them flow better, and more coherent will help.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
What units you build at your kernel, and what you use them for, is an important factor in winning. As buildings can&#039;t be resumed, sending in groups of bits to kill construction units creating buildings can be very effective at stopping expansion attempts. Building too many pointers, will result in them being destroyed by connections, bits and especially worms, due to their stealth. Also, bytes are easily destroyer by and pointers, and exploits. A good general purpose ratio seems to be to queue one byte and one pointer, but this will need adapting as the game develops, and depending on the enemy&#039;s play style. &lt;br /&gt;
&lt;br /&gt;
Scouting is important too, as many enemies will leave their factories undefended, and knowing their build, and general unit use can help you in adapting the units you use to better fight them. Note that the Network can instantly spawn packets at any of their ports, or connections with their buffer system, meaning that all their factories should be considered defended. Single bits can be used to scout to find the enemy&#039;s current expansion attempts. &lt;br /&gt;
&lt;br /&gt;
When attacking a Byte or Connection with bits, it is important to overwhelm it with large numbers of bits. For bytes, try to exploit a byte&#039;s blind spot directly under it, by moving bits into that area. If your byte is under attack, moving it backwards to keep the attacking units in it&#039;s shooting arc can help repel the attack. It is not recommended to engage a worm with bits, as it&#039;s attack will convert your bits to viruses on the worm&#039;s owner&#039;s side.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Might reposition this section. Feel free to add map specific paragraphs for other maps as well. In fact, this will be very helpful to newcomers, I bet.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
On Marble Madness, there are two main ways paths to victory. The simplest one is to control the hill and use pointers stationed on the hill to destroy the enemy&#039;s factories, and kernel. Gaining control of the hilltop will likely not be without resistance, because it requires a decent amount of time for units to reach the top of the hill, meaning most units involved will be spam units from your factories on it, and the fact that it will likely be highly contended. However, if you control it, you have a large advantage over the enemy as you can shell your opponents home base with ease. The other way is around the hill, which can be very effective if you control terrain you can use pointers to great effect. In both strategies, using pointers is the crucial factor. While they are hard to use correctly, they are game-winners as they destroy home bases and enemy units with ease.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Credits:==&lt;br /&gt;
- Original concept by Boirunner&amp;lt;br&amp;gt;&lt;br /&gt;
- About all the work done by KDR_11k&amp;lt;br&amp;gt;&lt;br /&gt;
- Sounds by Noruas&amp;lt;br&amp;gt;&lt;br /&gt;
- Maintenance by zwzsg&amp;lt;br&amp;gt;&lt;br /&gt;
- Maps by Boirunner, Runecrafter, zwzsg, and TradeMark&amp;lt;br&amp;gt;&lt;br /&gt;
- Some Lua interface upgrade based of jK and trepan code&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Back to [[Games]]&lt;br /&gt;
[[Category:Games]]&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10062</id>
		<title>Kernel Panic</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10062"/>
		<updated>2019-04-28T02:57:22Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Game Mode &amp;amp; Unit guide section visible again&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;[http://timblokdijk.nl/spring/Kernel%20Panic/logo/kernel0_hd.png https://springrts.com/mediawiki/images/f/fc/Kernel_Panic_Alpha_Title_Half.png]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Overview:==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;For the latest news and/or assistance, try the [http://springrts.com/phpbb/viewforum.php?f=43&#039;&#039;&#039;KP forum&#039;&#039;&#039;] or go to #kp when you log onto the lobby.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kernel Panic&#039;&#039;&#039; is a game about computers. Systems, Hackers and Networks wage war in a matrix of DOOM! The only constraints are time and space; unlike other real time strategy games, no resource economy exists in KP. &lt;br /&gt;
&lt;br /&gt;
All units are free in this game, every factory built will be spamming units at all times. You can build more factories, but only on pre-defined areas (geothermal vents). All that remains is pure strategy and tactics. &lt;br /&gt;
&lt;br /&gt;
KP makes for a frantically fast-paced, action-oriented game, with a very unique graphical style.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Download links:==&lt;br /&gt;
&lt;br /&gt;
Current Version of Kernel Panic is 4.7&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Newcomers:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you run &#039;&#039;&#039;Windows&#039;&#039;&#039; (2000,XP,Vista,7,8,10):&lt;br /&gt;
*** Here you can get a complete installer:&lt;br /&gt;
*** http://springfiles.com/spring/game-installers/kernel-panic-installer&lt;br /&gt;
*** Use it to install both Spring and Kernel Panic in one go.&lt;br /&gt;
*** Then use the shortcuts created in your Start Menu or Desktop.&lt;br /&gt;
** If you run &#039;&#039;&#039;Linux&#039;&#039;&#039;:&lt;br /&gt;
*** Get a Linux static build of the Spring engine from https://springrts.com/wiki/Download&lt;br /&gt;
*** Get and unzip that file: http://springfiles.com/spring/game-installers/kernel-panic-zip&lt;br /&gt;
*** Unzip both in the same folder, so that Kernel_Panic_4.7_Launcher_Linux is next to spring executable&lt;br /&gt;
*** Run Kernel_Panic_4.7_Launcher_Linux&lt;br /&gt;
*** Alternatively, running spring directly would bring a greenish menu once ingame&lt;br /&gt;
*** For multiplayer or advanced options, run SpringLobby&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Experienced Users:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you have already the Spring engine (or prefer to install it yourself): Here you can get a zip with the mod file, the maps, and a tiny executable for single player frontend. Unzip into your Spring root folder: http://springfiles.com/spring/game-installers/kernel-panic-zip&lt;br /&gt;
** If you are certain you have all the maps and just need a quick link to the mod file itself: http://springfiles.com/spring/games/kernel-panic-mod&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Media:==&lt;br /&gt;
&lt;br /&gt;
===Youtube Videos:===&lt;br /&gt;
&lt;br /&gt;
[http://youtube.com/watch?v=doF7owZ0blk&amp;amp;fmt=18 http://i.ytimg.com/vi/doF7owZ0blk/default.jpg] &lt;br /&gt;
[http://youtube.com/watch?v=Ug1c19yaZac http://i.ytimg.com/vi/Ug1c19yaZac/default.jpg] [http://youtube.com/watch?v=GAZQhRlt5bU http://i.ytimg.com/vi/GAZQhRlt5bU/default.jpg]&lt;br /&gt;
[http://www.youtube.com/watch?v=3q48ys5hFtI&amp;amp;fmt=18 http://i.ytimg.com/vi/3q48ys5hFtI/default.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Still shots:===&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg http://tof.canardpc.com/preview/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg] [http://tof.canardpc.com/view/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg http://tof.canardpc.com/preview/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg] [http://tof.canardpc.com/view/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg http://tof.canardpc.com/preview/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg]&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg http://tof.canardpc.com/preview/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg] [http://tof.canardpc.com/view/e5184baf-6c95-4c90-8469-b00a4f092054.jpg http://tof.canardpc.com/preview/e5184baf-6c95-4c90-8469-b00a4f092054.jpg] [http://tof.canardpc.com/view/cbe6dae0-a696-450a-bf22-236043d76511.jpg http://tof.canardpc.com/preview/cbe6dae0-a696-450a-bf22-236043d76511.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==License:==&lt;br /&gt;
Extracted from the [http://pastebin.ca/2834721 &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
========--------------------------------------------&lt;br /&gt;
License:&lt;br /&gt;
--------&lt;br /&gt;
- The content of the /games/Kernel*.sd7 is Public Domain, save:&lt;br /&gt;
  /LuaUI/Widgets/kp_buildbar.lua&lt;br /&gt;
  /LuaRules/Gadgets/autohold.lua&lt;br /&gt;
  /LuaRules/Gadgets/Burrow.lua&lt;br /&gt;
  /LuaRules/Gadgets/game_spawn.lua&lt;br /&gt;
  which are GPL, taken from http://www.caspring.org or http://springrts.com&lt;br /&gt;
- The maps Marble Madness and Direct Memory Access are Public Domain&lt;br /&gt;
- The maps Major Madness and Speed Balls 16 Way are status unknown&lt;br /&gt;
- The maps Central Hub, Corrupted Core, Dual Core, Quad Core are CC BY-SA&lt;br /&gt;
- The Spring engine is GPL, available from https://springrts.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Removal of the NC clause for FireStorm maps: is archived under https://springrts.com/phpbb/viewtopic.php?f=43&amp;amp;t=27499&amp;amp;start=6 preserved below.&lt;br /&gt;
&lt;br /&gt;
Re: Kernel Panic 4.4&lt;br /&gt;
Post  by FireStorm_ » 02 Feb 2012, 11:29&lt;br /&gt;
&lt;br /&gt;
Don&#039;t know if it&#039;s an issue, but I changed the licence of my maps, just to be sure. I don&#039;t remember why I made them NonCommercial before, and I don&#039;t really know how to argue for it now. &lt;br /&gt;
(I guess the KP comes with a licence.txt saying my maps are NonCommercial. If so, I&#039;m saying its ok to disregard that.)&lt;br /&gt;
I hope that helped...&lt;br /&gt;
--!&amp;gt;&amp;lt;!--&lt;br /&gt;
They are licensed under CC BY-SA now as per https://springrts.com/phpbb/viewtopic.php?f=43&amp;amp;t=21331&amp;amp;p=401680#p397471 preserved below.&lt;br /&gt;
&lt;br /&gt;
New Kernel Panic Maps&lt;br /&gt;
Post  by FireStorm_ » 13 Dec 2009, 10:59&lt;br /&gt;
&lt;br /&gt;
I made some maps for Kernel Panic.&lt;br /&gt;
I&#039;ve uploaded them to Spring Files:&lt;br /&gt;
&lt;br /&gt;
Central Hub&lt;br /&gt;
http://www.springfiles.com/show_file.php?id=2451&lt;br /&gt;
Corrupted Core&lt;br /&gt;
http://www.springfiles.com/show_file.php?id=2455&lt;br /&gt;
Dual Core&lt;br /&gt;
http://www.springfiles.com/show_file.php?id=2454&lt;br /&gt;
Quad Core&lt;br /&gt;
http://www.springfiles.com/show_file.php?id=2456&lt;br /&gt;
&lt;br /&gt;
They are also documented and linked here, on my clans blog:&lt;br /&gt;
http://sbspringrts.blogspot.com/2009/12 ... -pack.html&lt;br /&gt;
&lt;br /&gt;
If someone has time to check them out, please tell me what you think.&lt;br /&gt;
&lt;br /&gt;
Edit:&lt;br /&gt;
License	&lt;br /&gt;
This work is licensed under the Creative Commons BY-SA License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/&lt;br /&gt;
Last edited by FireStorm_ on 02 Feb 2012, 11:16, edited 4 times in total.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Game Modes:==&lt;br /&gt;
By default the aim is to destroy the homebase and all the minifacs of all opposing teams.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Other &amp;quot;mod options&amp;quot; available are:&lt;br /&gt;
* &#039;&#039;&#039;King Of The Hill :&#039;&#039;&#039; Keeps control of the map center for a given time to win.&lt;br /&gt;
* &#039;&#039;&#039;O.N.S. :&#039;&#039;&#039; Adds shields to buildings, preventing homebase rush.&lt;br /&gt;
* &#039;&#039;&#039;Save Our Mem :&#039;&#039;&#039; Unit leave &amp;quot;leaks&amp;quot; that must be reclaimed.&lt;br /&gt;
* &#039;&#039;&#039;Color Wars :&#039;&#039;&#039; Whoever controls the most territory when timer elapse wins.&lt;br /&gt;
* &#039;&#039;&#039;Heroes of Mainframe :&#039;&#039;&#039; You only control a very buffed up but single unit. Best used with &amp;quot;Pre-placed Minifacs&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;Rebalancing formula :&#039;&#039;&#039; Let you change the stat of any units of weapons without the hassle of making a mutator. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For details, read [http://pastebin.ca/2834721 &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] or click [?] next to each mod option in your lobby.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Units and Buildings:==&lt;br /&gt;
&lt;br /&gt;
===System units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/5/54/96x96Kernel.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Kernel:&#039;&#039;&#039; You start with one of these. It can build all mobile units in the game. Has rapid auto-heal and lots of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/b/b2/96x96Socket.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Socket:&#039;&#039;&#039; The socket is a factory which can only be built on a geothermal vent. It can solely build bits, and slower than the kernel can. It autoheals, and has a decent amount of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/8c/96x96Terminal.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Terminal:&#039;&#039;&#039; This is a new structure that gets placed on geovents. It can dispatch a nuclear bomber once every 90 seconds that will deal about 16000 damage to a large target area, i.e. it destroys everything except factories. It does much less damage to the kernel and hole. The bomber can strike any position on the map, there is no defense.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/1/1e/96x96Assembler.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Assembler:&#039;&#039;&#039; The assembler is a construction unit. It can build sockets, but it cannot assist-build. Slow, little health. Equipped with a radar to detect mines and other cloacked units.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/0/0a/96x96Bit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bit:&#039;&#039;&#039; Your basic attacking unit. Cheap, fast, small, not very much health. Is armed with a SPARCling laser. Can be built by a kernel or a socket.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/e/e3/96x96Byte.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Byte:&#039;&#039;&#039; A large, strong, and slow attacking unit. Can holds it&#039;s own against many bits, as it has lots of health and a powerful gun. More armored when closed. Can plow through bad blocks. The byte has an alternate firing mode, the mine launcher, which throws 5 mines at the cost of much health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/5/51/96x96Pointer.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Pointer:&#039;&#039;&#039; An artillery unit. Its normal shot is not so useful against moving units, but can kill kernels and sockets pretty quickly. Is slow and has little health, so it needs protection. The pointer has an alternate firing mode, the NX Flag, which set a wide area ablaze for a minute, causing constant damage to all units, or buildings within it&#039;s range.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Hacker units:===&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/7f/96x96NewHoleLow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Security Hole:&#039;&#039;&#039; The Hacker kernel equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/70/96x96Window.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Window:&#039;&#039;&#039; The Hacker socket equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/fb/96x96Obelisk.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Obelisk:&#039;&#039;&#039; This building is a stationary artillery weapon, it can fire an infection shot every 40 seconds (the obelisk has a pink fire on top when it&#039;s ready to shoot) that will cover a large area in poison. The poison does a bit of damage (about 1000) and turns any enemy that dies inside the cloud into a Virus. The weapon&#039;s range is fairly limited. Best used against stationnary herds of Bits/Bugs.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/c/c5/96x96NewTrojan.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Trojan:&#039;&#039;&#039; This unit is your constructor as well as radar platform (needed for detecting mines and cloaked units), just like the assembler. It builds all the same stuff as the assembler, except it has the window instead of the socket and the obelisk instead of the terminal.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/9/94/96x96Virus.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Virus:&#039;&#039;&#039; A crappy little swarm unit. It cannot be built but is produced when killing enemy units with certain weapons. Namely, the Virus, the Worm, and the Obelisk.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/ff/96x96NewBug.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Bug:&#039;&#039;&#039; The Hacker spam unit. The Bug is weaker than the Bit but can sense movement outside of its LOS. It has a stronger weapon and more range but cannot shoot at things behind it or through friendly units and won&#039;t take much damage before dying. The mine ability of the old bug has been removed. Instead it can now morph into the Exploit with the deploy button, or the bombard button.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/c/c4/96x96Exploit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Exploit:&#039;&#039;&#039; This is the new name for the bug cannon. It&#039;s a building the Bug morphs into with the deploy or bombard command. The Exploit is a stationary artillery emplacement that does more damage the further the target is away. Even more frail than the Bug, so don&#039;t let any foe come near.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/4/40/96x96NewWorm.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Worm:&#039;&#039;&#039; The worm is a sneaky assassin, travelling cloacked, then surfacing only to kill many bits at once with its large area of effect weapon, which turn any slain units into virus. The worm large splash damage will damage your own units. However, it does practicaly no damage against other worms or virus. When cloacked, the worm does not automatically attack, you have to give attack orders manually. If you&#039;d rather have your worms auto-attack even when cloacked, set autohold to off. The autohold setting of new worms is inherited from the Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/f4/96x96DoS.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Denial of Service:&#039;&#039;&#039; Not an artillery, but close: fire a beam that stun units. For bigger targets it&#039;ll take longer to stun them so perform a DDoS (use multiple) to stun them fast. Once the DoS stops firing the target will quickly unfreeze. It moves faster than the pointer but causes a particle trail that can be seen from far away.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Network units:===&lt;br /&gt;
The network faction is built around mobility, its small factories (Ports) don&#039;t produce units openly but instead increment a virtual counter (the Buffer). Packets in the Buffer can be materialized at any teleporter unit (currently that means the Port and the Connection), it&#039;s also possible to dematerialize the Packets back into the Buffer by making them enter a teleport.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/76/96x96Carrier.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Carrier:&#039;&#039;&#039; The base building, like a Kernel or Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/4/46/96x96Port.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Port:&#039;&#039;&#039; The production building. It puts Packets into the Buffer, to materialize them select the Dispatch command. Dispatch will send 12 Packets if available, you can hold ALT when giving the order to make the Port dispatch until the Buffer is empty.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/83/96x96Firewall.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Firewall:&#039;&#039;&#039; This building can cover units (affects friendly units in a certain radius around the target location) in a protective shield for 20 seconds. The shield halves all damage the unit receives and throws the other half back at the attacker.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/6/6c/96x96Gateway.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Gateway:&#039;&#039;&#039; The constructor. It is lightly armed to help against enemy raids.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/8b/96x96Packet.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Packet:&#039;&#039;&#039; The basic light spam unit, it&#039;s weaker in combat than both competitors but much faster.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/2/26/96x96Connection.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Connection:&#039;&#039;&#039; Mostly a mobile teleporter (i.e. can dispatch Packets and let them enter like a Port). The Connection has decent armor and an arc beam that can do a lot of damage to single targets and has good range. It can defeat most large units one on one but engaging Bytes will probably result in pointer fire which the Connection cannot withstand and the arc beam is not optimal for engaging swarms.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/0/01/96x96Flow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Flow:&#039;&#039;&#039; An air unit. The Flow moves fairly slowly but can of course cross any terrain. It&#039;s equipped to attack light targets (spam units and fire support) but it&#039;s highly vulnerable to return fire. If you want to use them in open combat give them a meatshield and hope the enemy doesn&#039;t field long range units, Pointers, DoSes and Connections make short work of Flows if they hit.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===All side Units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/9/98/96x96BadBlock.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bad Block:&#039;&#039;&#039; A tiny wall, built by Assembler/Trojan/Gateway. Blocks small units movement. Do not block shots however. Easily removed by the Debug or simply crushing them with a Byte or Connection.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/a/a4/96x96Mine.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Logic Bomb:&#039;&#039;&#039; A mine that can be built by the Assembler/Trojan/Gateway. And also launched by Bytes. It takes out Bits &amp;amp; Bugs in a single blow, has a decent damage radius, and doesn&#039;t chain explode. Use with care, as the blast hurts your own units too. Limited to 32.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/3/35/96x96MineBlaster.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Debug:&#039;&#039;&#039; An easy way to clear an area of all mines and walls, this is a one shot weapon built by the Assembler/Trojan/Gateway.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Playing Guide for System:==&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
&lt;br /&gt;
Attention all editors: Try and improve this playing guide to make less assumptions about the setup, and allow for team maps, larger maps, and generally teach more general strategy &lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Playing Kernel Panic is fairly simple and quickly learned, but can be hard to master and can be very complex. It is recommended that beginners start with play the System faction, as they can be considered the least &amp;quot;gimmicky&amp;quot; of the factions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Maybe it might be a good idea to move this to after the next two paragraphs.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
One rather effective general strategy for a duel on small maps is to send three to five bits to destroy your enemy&#039;s early game units, and, to a lesser degree, for scouting purposes. This is most effective if they started with construction units, as this will likely cripple their plans for an early expansion, and gives you a slight head start. After the initial attack, if your scouting shows that your enemy started with offensive units, build a byte for defense, and place it between your Kernel and the hill. After that, build an assembler and use it to build a socket on one the three closest building locations, which should automatically start producing bits. After this, you should order your assembler to build more sockets on free spots close to it. It is crucial that all sockets&#039; rally points are below them, as bits turning inside a socket will stall production until it is able to exit the factory. It is sometimes wise to repeat the prior process with one or two other assemblers. After this is done, construct about ten bits from your factor, and set your kernel to alternate between building bytes and pointers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
 A section on the uses of the faction&#039;s special units, and buildings (sigterm, pointer&#039;s fire, and byte&#039;s mine layer) could be useful, and these paragraphs might need modification.&lt;br /&gt;
&lt;br /&gt;
Making them flow better, and more coherent will help.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
What units you build at your kernel, and what you use them for, is an important factor in winning. As buildings can&#039;t be resumed, sending in groups of bits to kill construction units creating buildings can be very effective at stopping expansion attempts. Building too many pointers, will result in them being destroyed by connections, bits and especially worms, due to their stealth. Also, bytes are easily destroyer by and pointers, and exploits. A good general purpose ratio seems to be to queue one byte and one pointer, but this will need adapting as the game develops, and depending on the enemy&#039;s play style. &lt;br /&gt;
&lt;br /&gt;
Scouting is important too, as many enemies will leave their factories undefended, and knowing their build, and general unit use can help you in adapting the units you use to better fight them. Note that the Network can instantly spawn packets at any of their ports, or connections with their buffer system, meaning that all their factories should be considered defended. Single bits can be used to scout to find the enemy&#039;s current expansion attempts. &lt;br /&gt;
&lt;br /&gt;
When attacking a Byte or Connection with bits, it is important to overwhelm it with large numbers of bits. For bytes, try to exploit a byte&#039;s blind spot directly under it, by moving bits into that area. If your byte is under attack, moving it backwards to keep the attacking units in it&#039;s shooting arc can help repel the attack. It is not recommended to engage a worm with bits, as it&#039;s attack will convert your bits to viruses on the worm&#039;s owner&#039;s side.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Might reposition this section. Feel free to add map specific paragraphs for other maps as well. In fact, this will be very helpful to newcomers, I bet.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
On Marble Madness, there are two main ways paths to victory. The simplest one is to control the hill and use pointers stationed on the hill to destroy the enemy&#039;s factories, and kernel. Gaining control of the hilltop will likely not be without resistance, because it requires a decent amount of time for units to reach the top of the hill, meaning most units involved will be spam units from your factories on it, and the fact that it will likely be highly contended. However, if you control it, you have a large advantage over the enemy as you can shell your opponents home base with ease. The other way is around the hill, which can be very effective if you control terrain you can use pointers to great effect. In both strategies, using pointers is the crucial factor. While they are hard to use correctly, they are game-winners as they destroy home bases and enemy units with ease.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Credits:==&lt;br /&gt;
- Original concept by Boirunner&amp;lt;br&amp;gt;&lt;br /&gt;
- About all the work done by KDR_11k&amp;lt;br&amp;gt;&lt;br /&gt;
- Sounds by Noruas&amp;lt;br&amp;gt;&lt;br /&gt;
- Maintenance by zwzsg&amp;lt;br&amp;gt;&lt;br /&gt;
- Maps by Boirunner, Runecrafter, zwzsg, and TradeMark&amp;lt;br&amp;gt;&lt;br /&gt;
- Some Lua interface upgrade based of jK and trepan code&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Back to [[Games]]&lt;br /&gt;
[[Category:Games]]&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.8_poster.png&amp;diff=21847</id>
		<title>File:Kernel Panic 4.8 poster.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.8_poster.png&amp;diff=21847"/>
		<updated>2019-04-27T19:19:34Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Promotional Picture for Kernel Panic 4.8&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Promotional Picture for Kernel Panic 4.8&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.7_poster.png&amp;diff=21846</id>
		<title>File:Kernel Panic 4.7 poster.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.7_poster.png&amp;diff=21846"/>
		<updated>2019-04-27T19:19:25Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Promotional Picture for Kernel Panic 4.7&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Promotional Picture for Kernel Panic 4.7&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.6_poster.png&amp;diff=21845</id>
		<title>File:Kernel Panic 4.6 poster.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.6_poster.png&amp;diff=21845"/>
		<updated>2019-04-27T19:19:09Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Promotional Picture for Kernel Panic 4.6&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Promotional Picture for Kernel Panic 4.6&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.5_poster.png&amp;diff=21844</id>
		<title>File:Kernel Panic 4.5 poster.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.5_poster.png&amp;diff=21844"/>
		<updated>2019-04-27T19:18:32Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Promotional Picture for Kernel Panic 4.5&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Promotional Picture for Kernel Panic 4.5&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.4_poster.png&amp;diff=21843</id>
		<title>File:Kernel Panic 4.4 poster.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.4_poster.png&amp;diff=21843"/>
		<updated>2019-04-27T19:18:10Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Promotional Picture for Kernel Panic 4.4&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Promotional Picture for Kernel Panic 4.4&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.3_poster.png&amp;diff=21842</id>
		<title>File:Kernel Panic 4.3 poster.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.3_poster.png&amp;diff=21842"/>
		<updated>2019-04-27T19:17:39Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Promotional Picture for Kernel Panic 4.3&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Promotional Picture for Kernel Panic 4.3&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.2_poster.png&amp;diff=21841</id>
		<title>File:Kernel Panic 4.2 poster.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.2_poster.png&amp;diff=21841"/>
		<updated>2019-04-27T19:16:59Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Promotional Picture for Kernel Panic 4.2&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Promotional Picture for Kernel Panic 4.2&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.1_poster.png&amp;diff=21840</id>
		<title>File:Kernel Panic 4.1 poster.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_4.1_poster.png&amp;diff=21840"/>
		<updated>2019-04-27T19:15:57Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Promotional Picture for Kernel Panic 4.1&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Promotional Picture for Kernel Panic 4.1&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10052</id>
		<title>Kernel Panic</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10052"/>
		<updated>2017-06-22T22:20:38Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Tell to use static build for linux + Lua is not an acronym&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;[http://timblokdijk.nl/spring/Kernel%20Panic/logo/kernel0_hd.png https://springrts.com/mediawiki/images/f/fc/Kernel_Panic_Alpha_Title_Half.png]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Overview:==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;For the latest news and/or assistance, try the [http://springrts.com/phpbb/viewforum.php?f=43&#039;&#039;&#039;KP forum&#039;&#039;&#039;] or go to #kp when you log onto the lobby.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kernel Panic&#039;&#039;&#039; is a game about computers. Systems, Hackers and Networks wage war in a matrix of DOOM! The only constraints are time and space; unlike other real time strategy games, no resource economy exists in KP. &lt;br /&gt;
&lt;br /&gt;
All units are free in this game, every factory built will be spamming units at all times. You can build more factories, but only on pre-defined areas (geothermal vents). All that remains is pure strategy and tactics. &lt;br /&gt;
&lt;br /&gt;
KP makes for a frantically fast-paced, action-oriented game, with a very unique graphical style.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Download links:==&lt;br /&gt;
&lt;br /&gt;
Current Version of Kernel Panic is 4.7&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Newcomers:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you run &#039;&#039;&#039;Windows&#039;&#039;&#039; (2000,XP,Vista,7,8,10):&lt;br /&gt;
*** Here you can get a complete installer:&lt;br /&gt;
*** http://springfiles.com/spring/game-installers/kernel-panic-installer&lt;br /&gt;
*** Use it to install both Spring and Kernel Panic in one go.&lt;br /&gt;
*** Then use the shortcuts created in your Start Menu or Desktop.&lt;br /&gt;
** If you run &#039;&#039;&#039;Linux&#039;&#039;&#039;:&lt;br /&gt;
*** Get a Linux static build of the Spring engine from https://springrts.com/wiki/Download&lt;br /&gt;
*** Get and unzip that file: http://springfiles.com/spring/game-installers/kernel-panic-zip&lt;br /&gt;
*** Unzip both in the same folder, so that Kernel_Panic_4.7_Launcher_Linux is next to spring executable&lt;br /&gt;
*** Run Kernel_Panic_4.7_Launcher_Linux&lt;br /&gt;
*** Alternatively, running spring directly would bring a greenish menu once ingame&lt;br /&gt;
*** For multiplayer or advanced options, run SpringLobby&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Experienced Users:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you have already the Spring engine (or prefer to install it yourself): Here you can get a zip with the mod file, the maps, and a tiny executable for single player frontend. Unzip into your Spring root folder: http://springfiles.com/spring/game-installers/kernel-panic-zip&lt;br /&gt;
** If you are certain you have all the maps and just need a quick link to the mod file itself: http://springfiles.com/spring/games/kernel-panic-mod&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Media:==&lt;br /&gt;
&lt;br /&gt;
===Youtube Videos:===&lt;br /&gt;
&lt;br /&gt;
[http://youtube.com/watch?v=doF7owZ0blk&amp;amp;fmt=18 http://i.ytimg.com/vi/doF7owZ0blk/default.jpg] &lt;br /&gt;
[http://youtube.com/watch?v=Ug1c19yaZac http://i.ytimg.com/vi/Ug1c19yaZac/default.jpg] [http://youtube.com/watch?v=GAZQhRlt5bU http://i.ytimg.com/vi/GAZQhRlt5bU/default.jpg]&lt;br /&gt;
[http://www.youtube.com/watch?v=3q48ys5hFtI&amp;amp;fmt=18 http://i.ytimg.com/vi/3q48ys5hFtI/default.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Still shots:===&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg http://tof.canardpc.com/preview/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg] [http://tof.canardpc.com/view/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg http://tof.canardpc.com/preview/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg] [http://tof.canardpc.com/view/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg http://tof.canardpc.com/preview/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg]&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg http://tof.canardpc.com/preview/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg] [http://tof.canardpc.com/view/e5184baf-6c95-4c90-8469-b00a4f092054.jpg http://tof.canardpc.com/preview/e5184baf-6c95-4c90-8469-b00a4f092054.jpg] [http://tof.canardpc.com/view/cbe6dae0-a696-450a-bf22-236043d76511.jpg http://tof.canardpc.com/preview/cbe6dae0-a696-450a-bf22-236043d76511.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==License:==&lt;br /&gt;
Extracted from the [http://pastebin.ca/2834721 &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
========--------------------------------------------&lt;br /&gt;
License:&lt;br /&gt;
--------&lt;br /&gt;
- The content of the /games/Kernel*.sd7 is Public Domain, save:&lt;br /&gt;
  /LuaUI/Widgets/kp_buildbar.lua&lt;br /&gt;
  /LuaRules/Gadgets/autohold.lua&lt;br /&gt;
  /LuaRules/Gadgets/Burrow.lua&lt;br /&gt;
  /LuaRules/Gadgets/game_spawn.lua&lt;br /&gt;
  which are GPL, taken from http://www.caspring.org or http://springrts.com&lt;br /&gt;
- The maps Marble Madness and Direct Memory Access are Public Domain&lt;br /&gt;
- The maps Major Madness and Speed Balls 16 Way status are unknown&lt;br /&gt;
- The maps Central Hub, Corrupted Core, Dual Core, Quad Core were initially CC BY-NC-SA.&lt;br /&gt;
  Then the author removed the CC cause ( http://cpc.cx/4u3 )&lt;br /&gt;
- The Spring engine is GPL, available from http://spring.clan-sy.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Game Modes:==&lt;br /&gt;
By default the aim is to destroy the homebase and all the minifacs of all opposing teams.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Other &amp;quot;mod options&amp;quot; available are:&lt;br /&gt;
* &#039;&#039;&#039;King Of The Hill :&#039;&#039;&#039; Keeps control of the map center for a given time to win.&lt;br /&gt;
* &#039;&#039;&#039;O.N.S. :&#039;&#039;&#039; Adds shields to buildings, preventing homebase rush.&lt;br /&gt;
* &#039;&#039;&#039;Save Our Mem :&#039;&#039;&#039; Unit leave &amp;quot;leaks&amp;quot; that must be reclaimed.&lt;br /&gt;
* &#039;&#039;&#039;Color Wars :&#039;&#039;&#039; Whoever controls the most territory when timer elapse wins.&lt;br /&gt;
* &#039;&#039;&#039;Heroes of Mainframe :&#039;&#039;&#039; You only control a very buffed up but single unit. Best used with &amp;quot;Pre-placed Minifacs&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;Rebalancing formula :&#039;&#039;&#039; Let you change the stat of any units of weapons without the hassle of making a mutator. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For details, read [http://pastebin.ca/2834721 &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] or click [?] next to each mod option in your lobby.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Units and Buildings:==&lt;br /&gt;
&lt;br /&gt;
===System units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/5/54/96x96Kernel.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Kernel:&#039;&#039;&#039; You start with one of these. It can build all mobile units in the game. Has rapid auto-heal and lots of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/b/b2/96x96Socket.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Socket:&#039;&#039;&#039; The socket is a factory which can only be built on a geothermal vent. It can solely build bits, and slower than the kernel can. It autoheals, and has a decent amount of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/8c/96x96Terminal.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Terminal:&#039;&#039;&#039;(only available in Division Zero) This is a new structure that gets placed on geovents. It can dispatch a nuclear bomber once every 90 seconds that will deal about 16000 damage to a large target area, i.e. it destroys everything except factories. It does much less damage to the kernel and hole. The bomber can strike any position on the map, there is no defense.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/1/1e/96x96Assembler.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Assembler:&#039;&#039;&#039; The assembler is a construction unit. It can build sockets, but it cannot assist-build. Slow, little health. Equipped with a radar to detect mines and other cloacked units.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/0/0a/96x96Bit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bit:&#039;&#039;&#039; Your basic attacking unit. Cheap, fast, small, not very much health. Is armed with a SPARCling laser. Can be built by a kernel or a socket.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/e/e3/96x96Byte.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Byte:&#039;&#039;&#039; A large, strong, and slow attacking unit. Can holds it&#039;s own against many bits, as it has lots of health and a powerful gun. More armored when closed. Can plow through bad blocks. The byte has an alternate firing mode, the mine launcher, which throws 5 mines at the cost of much health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/5/51/96x96Pointer.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Pointer:&#039;&#039;&#039; An artillery unit. Its normal shot is not so useful against moving units, but can kill kernels and sockets pretty quickly. Is slow and has little health, so it needs protection. The pointer has an alternate firing mode, the NX Flag, which set a wide area ablaze for a minute, causing constant damage to all units, or buildings within it&#039;s range.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Hacker units:===&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/7f/96x96NewHoleLow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Security Hole:&#039;&#039;&#039; The Hacker kernel equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/70/96x96Window.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Window:&#039;&#039;&#039; The Hacker socket equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/fb/96x96Obelisk.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Obelisk:&#039;&#039;&#039; This building is a stationary artillery weapon, it can fire an infection shot every 40 seconds (the obelisk has a pink fire on top when it&#039;s ready to shoot) that will cover a large area in poison. The poison does a bit of damage (about 1000) and turns any enemy that dies inside the cloud into a Virus. The weapon&#039;s range is fairly limited. Best used against stationnary herds of Bits/Bugs.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/c/c5/96x96NewTrojan.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Trojan:&#039;&#039;&#039; This unit is your constructor as well as radar platform (needed for detecting mines and cloaked units), just like the assembler. It builds all the same stuff as the assembler, except it has the window instead of the socket and the obelisk instead of the terminal.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/9/94/96x96Virus.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Virus:&#039;&#039;&#039; A crappy little swarm unit. It cannot be built but is produced when killing enemy units with certain weapons. Namely, the Virus, the Worm, and the Obelisk.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/ff/96x96NewBug.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Bug:&#039;&#039;&#039; The Hacker spam unit. The Bug is weaker than the Bit but can sense movement outside of its LOS. It has a stronger weapon and more range but cannot shoot at things behind it or through friendly units and won&#039;t take much damage before dying. The mine ability of the old bug has been removed. Instead it can now morph into the Exploit with the deploy button, or the bombard button.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/c/c4/96x96Exploit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Exploit:&#039;&#039;&#039; This is the new name for the bug cannon. It&#039;s a building the Bug morphs into with the deploy or bombard command. The Exploit is a stationary artillery emplacement that does more damage the further the target is away. Even more frail than the Bug, so don&#039;t let any foe come near.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/4/40/96x96NewWorm.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Worm:&#039;&#039;&#039; The worm is a sneaky assassin, travelling cloacked, then surfacing only to kill many bits at once with its large area of effect weapon, which turn any slain units into virus. The worm large splash damage will damage your own units. However, it does practicaly no damage against other worms or virus. When cloacked, the worm does not automatically attack, you have to give attack orders manually. If you&#039;d rather have your worms auto-attack even when cloacked, set autohold to off. The autohold setting of new worms is inherited from the Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/f4/96x96DoS.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Denial of Service:&#039;&#039;&#039; Not an artillery, but close: fire a beam that stun units. For bigger targets it&#039;ll take longer to stun them so perform a DDoS (use multiple) to stun them fast. Once the DoS stops firing the target will quickly unfreeze. It moves faster than the pointer but causes a particle trail that can be seen from far away.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Network units:===&lt;br /&gt;
The network faction is built around mobility, its small factories (Ports) don&#039;t produce units openly but instead increment a virtual counter (the Buffer). Packets in the Buffer can be materialized at any teleporter unit (currently that means the Port and the Connection), it&#039;s also possible to dematerialize the Packets back into the Buffer by making them enter a teleport.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/76/96x96Carrier.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Carrier:&#039;&#039;&#039; The base building, like a Kernel or Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/4/46/96x96Port.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Port:&#039;&#039;&#039; The production building. It puts Packets into the Buffer, to materialize them select the Dispatch command. Dispatch will send 12 Packets if available, you can hold ALT when giving the order to make the Port dispatch until the Buffer is empty.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/83/96x96Firewall.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Firewall:&#039;&#039;&#039; This building can cover units (affects friendly units in a certain radius around the target location) in a protective shield for 20 seconds. The shield halves all damage the unit receives and throws the other half back at the attacker.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/6/6c/96x96Gateway.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Gateway:&#039;&#039;&#039; The constructor. It is lightly armed to help against enemy raids.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/8b/96x96Packet.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Packet:&#039;&#039;&#039; The basic light spam unit, it&#039;s weaker in combat than both competitors but much faster.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/2/26/96x96Connection.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Connection:&#039;&#039;&#039; Mostly a mobile teleporter (i.e. can dispatch Packets and let them enter like a Port). The Connection has decent armor and an arc beam that can do a lot of damage to single targets and has good range. It can defeat most large units one on one but engaging Bytes will probably result in pointer fire which the Connection cannot withstand and the arc beam is not optimal for engaging swarms.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/0/01/96x96Flow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Flow:&#039;&#039;&#039; An air unit. The Flow moves fairly slowly but can of course cross any terrain. It&#039;s equipped to attack light targets (spam units and fire support) but it&#039;s highly vulnerable to return fire. If you want to use them in open combat give them a meatshield and hope the enemy doesn&#039;t field long range units, Pointers, DoSes and Connections make short work of Flows if they hit.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===All side Units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/9/98/96x96BadBlock.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bad Block:&#039;&#039;&#039; A tiny wall, built by Assembler/Trojan/Gateway. Blocks small units movement. Do not block shots however. Easily removed by the Debug or simply crushing them with a Byte or Connection.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/a/a4/96x96Mine.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Logic Bomb:&#039;&#039;&#039; A mine that can be built by the Assembler/Trojan/Gateway. And also launched by Bytes since Div0 2.2. It takes out Bits &amp;amp; Bugs in a single blow, has a decent damage radius, and doesn&#039;t chain explode. Use with care, as the blast hurts your own units too. Limited to 32.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/3/35/96x96MineBlaster.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Debug:&#039;&#039;&#039; An easy way to clear an area of all mines and walls, this is a one shot weapon built by the Assembler/Trojan/Gateway.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Playing Guide for System:==&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
&lt;br /&gt;
Attention all editors: Try and improve this playing guide to make less assumptions about the setup, and allow for team maps, larger maps, and generally teach more general strategy &lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Playing Kernel Panic is fairly simple and quickly learned, but can be hard to master and can be very complex. It is recommended that beginners start with play the System faction, as they can be considered the least &amp;quot;gimmicky&amp;quot; of the factions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Maybe it might be a good idea to move this to after the next two paragraphs.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
One rather effective general strategy for a duel on small maps is to send three to five bits to destroy your enemy&#039;s early game units, and, to a lesser degree, for scouting purposes. This is most effective if they started with construction units, as this will likely cripple their plans for an early expansion, and gives you a slight head start. After the initial attack, if your scouting shows that your enemy started with offensive units, build a byte for defense, and place it between your Kernel and the hill. After that, build an assembler and use it to build a socket on one the three closest building locations, which should automatically start producing bits. After this, you should order your assembler to build more sockets on free spots close to it. It is crucial that all sockets&#039; rally points are below them, as bits turning inside a socket will stall production until it is able to exit the factory. It is sometimes wise to repeat the prior process with one or two other assemblers. After this is done, construct about ten bits from your factor, and set your kernel to alternate between building bytes and pointers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
 A section on the uses of the faction&#039;s special units, and buildings (sigterm, pointer&#039;s fire, and byte&#039;s mine layer) could be useful, and these paragraphs might need modification.&lt;br /&gt;
&lt;br /&gt;
Making them flow better, and more coherent will help.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
What units you build at your kernel, and what you use them for, is an important factor in winning. As buildings can&#039;t be resumed, sending in groups of bits to kill construction units creating buildings can be very effective at stopping expansion attempts. Building too many pointers, will result in them being destroyed by connections, bits and especially worms, due to their stealth. Also, bytes are easily destroyer by and pointers, and exploits. A good general purpose ratio seems to be to queue one byte and one pointer, but this will need adapting as the game develops, and depending on the enemy&#039;s play style. &lt;br /&gt;
&lt;br /&gt;
Scouting is important too, as many enemies will leave their factories undefended, and knowing their build, and general unit use can help you in adapting the units you use to better fight them. Note that the Network can instantly spawn packets at any of their ports, or connections with their buffer system, meaning that all their factories should be considered defended. Single bits can be used to scout to find the enemy&#039;s current expansion attempts. &lt;br /&gt;
&lt;br /&gt;
When attacking a Byte or Connection with bits, it is important to overwhelm it with large numbers of bits. For bytes, try to exploit a byte&#039;s blind spot directly under it, by moving bits into that area. If your byte is under attack, moving it backwards to keep the attacking units in it&#039;s shooting arc can help repel the attack. It is not recommended to engage a worm with bits, as it&#039;s attack will convert your bits to viruses on the worm&#039;s owner&#039;s side.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Might reposition this section. Feel free to add map specific paragraphs for other maps as well. In fact, this will be very helpful to newcomers, I bet.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
On Marble Madness, there are two main ways paths to victory. The simplest one is to control the hill and use pointers stationed on the hill to destroy the enemy&#039;s factories, and kernel. Gaining control of the hilltop will likely not be without resistance, because it requires a decent amount of time for units to reach the top of the hill, meaning most units involved will be spam units from your factories on it, and the fact that it will likely be highly contended. However, if you control it, you have a large advantage over the enemy as you can shell your opponents home base with ease. The other way is around the hill, which can be very effective if you control terrain you can use pointers to great effect. In both strategies, using pointers is the crucial factor. While they are hard to use correctly, they are game-winners as they destroy home bases and enemy units with ease.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Credits:==&lt;br /&gt;
- Original concept by Boirunner&amp;lt;br&amp;gt;&lt;br /&gt;
- About all the work done by KDR_11k&amp;lt;br&amp;gt;&lt;br /&gt;
- Sounds by Noruas&amp;lt;br&amp;gt;&lt;br /&gt;
- Maintenance by zwzsg&amp;lt;br&amp;gt;&lt;br /&gt;
- Maps by Boirunner, Runecrafter, zwzsg, and TradeMark&amp;lt;br&amp;gt;&lt;br /&gt;
- Some Lua interface upgrade based of jK and trepan code&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Back to [[Games]]&lt;br /&gt;
[[Category:Games]]&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10051</id>
		<title>Kernel Panic</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10051"/>
		<updated>2017-06-21T01:16:52Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: 4.6 -&amp;gt; 4.7&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;[http://timblokdijk.nl/spring/Kernel%20Panic/logo/kernel0_hd.png https://springrts.com/mediawiki/images/f/fc/Kernel_Panic_Alpha_Title_Half.png]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Overview:==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;For the latest news and/or assistance, try the [http://springrts.com/phpbb/viewforum.php?f=43&#039;&#039;&#039;KP forum&#039;&#039;&#039;] or go to #kp when you log onto the lobby.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kernel Panic&#039;&#039;&#039; is a game about computers. Systems, Hackers and Networks wage war in a matrix of DOOM! The only constraints are time and space; unlike other real time strategy games, no resource economy exists in KP. &lt;br /&gt;
&lt;br /&gt;
All units are free in this game, every factory built will be spamming units at all times. You can build more factories, but only on pre-defined areas (geothermal vents). All that remains is pure strategy and tactics. &lt;br /&gt;
&lt;br /&gt;
KP makes for a frantically fast-paced, action-oriented game, with a very unique graphical style.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Download links:==&lt;br /&gt;
&lt;br /&gt;
Current Version of Kernel Panic is 4.7&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Newcomers:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you run &#039;&#039;&#039;Windows&#039;&#039;&#039; (2000,XP,Vista,7,8,10):&lt;br /&gt;
*** Here you can get a complete installer:&lt;br /&gt;
*** http://springfiles.com/spring/game-installers/kernel-panic-installer&lt;br /&gt;
*** Use it to install both Spring and Kernel Panic in one go.&lt;br /&gt;
*** Then use the shortcuts created in your Start Menu or Desktop.&lt;br /&gt;
** If you run &#039;&#039;&#039;Linux&#039;&#039;&#039;:&lt;br /&gt;
*** Read the [[SetupGuide]] how to install the Spring engine on Linux systems&lt;br /&gt;
*** Get and unzip that file: http://springfiles.com/spring/game-installers/kernel-panic-zip&lt;br /&gt;
*** Put the content of /games/ into ~/.spring/games&lt;br /&gt;
*** Put the content of /maps/ into ~/.spring/maps &lt;br /&gt;
*** Put Kernel_Panic_4.7_Launcher_Linux next to spring executable&lt;br /&gt;
*** Run it.&lt;br /&gt;
*** Alternatively, running spring directly would bring a greenish menu once ingame&lt;br /&gt;
*** For multiplayer or advanced options, run SpringLobby&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Experienced Users:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you have already the Spring engine (or prefer to install it yourself): Here you can get a zip with the mod file, the maps, and a tiny executable for single player frontend. Unzip into your Spring root folder: http://springfiles.com/spring/game-installers/kernel-panic-zip&lt;br /&gt;
** If you are certain you have all the maps and just need a quick link to the mod file itself: http://springfiles.com/spring/games/kernel-panic-mod&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Media:==&lt;br /&gt;
&lt;br /&gt;
===Youtube Videos:===&lt;br /&gt;
&lt;br /&gt;
[http://youtube.com/watch?v=doF7owZ0blk&amp;amp;fmt=18 http://i.ytimg.com/vi/doF7owZ0blk/default.jpg] &lt;br /&gt;
[http://youtube.com/watch?v=Ug1c19yaZac http://i.ytimg.com/vi/Ug1c19yaZac/default.jpg] [http://youtube.com/watch?v=GAZQhRlt5bU http://i.ytimg.com/vi/GAZQhRlt5bU/default.jpg]&lt;br /&gt;
[http://www.youtube.com/watch?v=3q48ys5hFtI&amp;amp;fmt=18 http://i.ytimg.com/vi/3q48ys5hFtI/default.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Still shots:===&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg http://tof.canardpc.com/preview/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg] [http://tof.canardpc.com/view/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg http://tof.canardpc.com/preview/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg] [http://tof.canardpc.com/view/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg http://tof.canardpc.com/preview/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg]&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg http://tof.canardpc.com/preview/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg] [http://tof.canardpc.com/view/e5184baf-6c95-4c90-8469-b00a4f092054.jpg http://tof.canardpc.com/preview/e5184baf-6c95-4c90-8469-b00a4f092054.jpg] [http://tof.canardpc.com/view/cbe6dae0-a696-450a-bf22-236043d76511.jpg http://tof.canardpc.com/preview/cbe6dae0-a696-450a-bf22-236043d76511.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==License:==&lt;br /&gt;
Extracted from the [http://pastebin.ca/2834721 &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
========--------------------------------------------&lt;br /&gt;
License:&lt;br /&gt;
--------&lt;br /&gt;
- The content of the /games/Kernel*.sd7 is Public Domain, save:&lt;br /&gt;
  /LuaUI/Widgets/kp_buildbar.lua&lt;br /&gt;
  /LuaRules/Gadgets/autohold.lua&lt;br /&gt;
  /LuaRules/Gadgets/Burrow.lua&lt;br /&gt;
  /LuaRules/Gadgets/game_spawn.lua&lt;br /&gt;
  which are GPL, taken from http://www.caspring.org or http://springrts.com&lt;br /&gt;
- The maps Marble Madness and Direct Memory Access are Public Domain&lt;br /&gt;
- The maps Major Madness and Speed Balls 16 Way status are unknown&lt;br /&gt;
- The maps Central Hub, Corrupted Core, Dual Core, Quad Core were initially CC BY-NC-SA.&lt;br /&gt;
  Then the author removed the CC cause ( http://cpc.cx/4u3 )&lt;br /&gt;
- The Spring engine is GPL, available from http://spring.clan-sy.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Game Modes:==&lt;br /&gt;
By default the aim is to destroy the homebase and all the minifacs of all opposing teams.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Other &amp;quot;mod options&amp;quot; available are:&lt;br /&gt;
* &#039;&#039;&#039;King Of The Hill :&#039;&#039;&#039; Keeps control of the map center for a given time to win.&lt;br /&gt;
* &#039;&#039;&#039;O.N.S. :&#039;&#039;&#039; Adds shields to buildings, preventing homebase rush.&lt;br /&gt;
* &#039;&#039;&#039;Save Our Mem :&#039;&#039;&#039; Unit leave &amp;quot;leaks&amp;quot; that must be reclaimed.&lt;br /&gt;
* &#039;&#039;&#039;Color Wars :&#039;&#039;&#039; Whoever controls the most territory when timer elapse wins.&lt;br /&gt;
* &#039;&#039;&#039;Heroes of Mainframe :&#039;&#039;&#039; You only control a very buffed up but single unit. Best used with &amp;quot;Pre-placed Minifacs&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;Rebalancing formula :&#039;&#039;&#039; Let you change the stat of any units of weapons without the hassle of making a mutator. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For details, read [http://pastebin.ca/2834721 &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] or click [?] next to each mod option in your lobby.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Units and Buildings:==&lt;br /&gt;
&lt;br /&gt;
===System units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/5/54/96x96Kernel.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Kernel:&#039;&#039;&#039; You start with one of these. It can build all mobile units in the game. Has rapid auto-heal and lots of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/b/b2/96x96Socket.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Socket:&#039;&#039;&#039; The socket is a factory which can only be built on a geothermal vent. It can solely build bits, and slower than the kernel can. It autoheals, and has a decent amount of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/8c/96x96Terminal.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Terminal:&#039;&#039;&#039;(only available in Division Zero) This is a new structure that gets placed on geovents. It can dispatch a nuclear bomber once every 90 seconds that will deal about 16000 damage to a large target area, i.e. it destroys everything except factories. It does much less damage to the kernel and hole. The bomber can strike any position on the map, there is no defense.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/1/1e/96x96Assembler.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Assembler:&#039;&#039;&#039; The assembler is a construction unit. It can build sockets, but it cannot assist-build. Slow, little health. Equipped with a radar to detect mines and other cloacked units.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/0/0a/96x96Bit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bit:&#039;&#039;&#039; Your basic attacking unit. Cheap, fast, small, not very much health. Is armed with a SPARCling laser. Can be built by a kernel or a socket.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/e/e3/96x96Byte.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Byte:&#039;&#039;&#039; A large, strong, and slow attacking unit. Can holds it&#039;s own against many bits, as it has lots of health and a powerful gun. More armored when closed. Can plow through bad blocks. The byte has an alternate firing mode, the mine launcher, which throws 5 mines at the cost of much health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/5/51/96x96Pointer.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Pointer:&#039;&#039;&#039; An artillery unit. Its normal shot is not so useful against moving units, but can kill kernels and sockets pretty quickly. Is slow and has little health, so it needs protection. The pointer has an alternate firing mode, the NX Flag, which set a wide area ablaze for a minute, causing constant damage to all units, or buildings within it&#039;s range.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Hacker units:===&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/7f/96x96NewHoleLow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Security Hole:&#039;&#039;&#039; The Hacker kernel equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/70/96x96Window.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Window:&#039;&#039;&#039; The Hacker socket equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/fb/96x96Obelisk.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Obelisk:&#039;&#039;&#039; This building is a stationary artillery weapon, it can fire an infection shot every 40 seconds (the obelisk has a pink fire on top when it&#039;s ready to shoot) that will cover a large area in poison. The poison does a bit of damage (about 1000) and turns any enemy that dies inside the cloud into a Virus. The weapon&#039;s range is fairly limited. Best used against stationnary herds of Bits/Bugs.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/c/c5/96x96NewTrojan.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Trojan:&#039;&#039;&#039; This unit is your constructor as well as radar platform (needed for detecting mines and cloaked units), just like the assembler. It builds all the same stuff as the assembler, except it has the window instead of the socket and the obelisk instead of the terminal.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/9/94/96x96Virus.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Virus:&#039;&#039;&#039; A crappy little swarm unit. It cannot be built but is produced when killing enemy units with certain weapons. Namely, the Virus, the Worm, and the Obelisk.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/ff/96x96NewBug.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Bug:&#039;&#039;&#039; The Hacker spam unit. The Bug is weaker than the Bit but can sense movement outside of its LOS. It has a stronger weapon and more range but cannot shoot at things behind it or through friendly units and won&#039;t take much damage before dying. The mine ability of the old bug has been removed. Instead it can now morph into the Exploit with the deploy button, or the bombard button.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/c/c4/96x96Exploit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Exploit:&#039;&#039;&#039; This is the new name for the bug cannon. It&#039;s a building the Bug morphs into with the deploy or bombard command. The Exploit is a stationary artillery emplacement that does more damage the further the target is away. Even more frail than the Bug, so don&#039;t let any foe come near.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/4/40/96x96NewWorm.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Worm:&#039;&#039;&#039; The worm is a sneaky assassin, travelling cloacked, then surfacing only to kill many bits at once with its large area of effect weapon, which turn any slain units into virus. The worm large splash damage will damage your own units. However, it does practicaly no damage against other worms or virus. When cloacked, the worm does not automatically attack, you have to give attack orders manually. If you&#039;d rather have your worms auto-attack even when cloacked, set autohold to off. The autohold setting of new worms is inherited from the Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/f4/96x96DoS.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Denial of Service:&#039;&#039;&#039; Not an artillery, but close: fire a beam that stun units. For bigger targets it&#039;ll take longer to stun them so perform a DDoS (use multiple) to stun them fast. Once the DoS stops firing the target will quickly unfreeze. It moves faster than the pointer but causes a particle trail that can be seen from far away.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Network units:===&lt;br /&gt;
The network faction is built around mobility, its small factories (Ports) don&#039;t produce units openly but instead increment a virtual counter (the Buffer). Packets in the Buffer can be materialized at any teleporter unit (currently that means the Port and the Connection), it&#039;s also possible to dematerialize the Packets back into the Buffer by making them enter a teleport.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/76/96x96Carrier.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Carrier:&#039;&#039;&#039; The base building, like a Kernel or Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/4/46/96x96Port.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Port:&#039;&#039;&#039; The production building. It puts Packets into the Buffer, to materialize them select the Dispatch command. Dispatch will send 12 Packets if available, you can hold ALT when giving the order to make the Port dispatch until the Buffer is empty.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/83/96x96Firewall.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Firewall:&#039;&#039;&#039; This building can cover units (affects friendly units in a certain radius around the target location) in a protective shield for 20 seconds. The shield halves all damage the unit receives and throws the other half back at the attacker.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/6/6c/96x96Gateway.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Gateway:&#039;&#039;&#039; The constructor. It is lightly armed to help against enemy raids.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/8b/96x96Packet.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Packet:&#039;&#039;&#039; The basic light spam unit, it&#039;s weaker in combat than both competitors but much faster.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/2/26/96x96Connection.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Connection:&#039;&#039;&#039; Mostly a mobile teleporter (i.e. can dispatch Packets and let them enter like a Port). The Connection has decent armor and an arc beam that can do a lot of damage to single targets and has good range. It can defeat most large units one on one but engaging Bytes will probably result in pointer fire which the Connection cannot withstand and the arc beam is not optimal for engaging swarms.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/0/01/96x96Flow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Flow:&#039;&#039;&#039; An air unit. The Flow moves fairly slowly but can of course cross any terrain. It&#039;s equipped to attack light targets (spam units and fire support) but it&#039;s highly vulnerable to return fire. If you want to use them in open combat give them a meatshield and hope the enemy doesn&#039;t field long range units, Pointers, DoSes and Connections make short work of Flows if they hit.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===All side Units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/9/98/96x96BadBlock.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bad Block:&#039;&#039;&#039; A tiny wall, built by Assembler/Trojan/Gateway. Blocks small units movement. Do not block shots however. Easily removed by the Debug or simply crushing them with a Byte or Connection.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/a/a4/96x96Mine.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Logic Bomb:&#039;&#039;&#039; A mine that can be built by the Assembler/Trojan/Gateway. And also launched by Bytes since Div0 2.2. It takes out Bits &amp;amp; Bugs in a single blow, has a decent damage radius, and doesn&#039;t chain explode. Use with care, as the blast hurts your own units too. Limited to 32.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/3/35/96x96MineBlaster.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Debug:&#039;&#039;&#039; An easy way to clear an area of all mines and walls, this is a one shot weapon built by the Assembler/Trojan/Gateway.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Playing Guide for System:==&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
&lt;br /&gt;
Attention all editors: Try and improve this playing guide to make less assumptions about the setup, and allow for team maps, larger maps, and generally teach more general strategy &lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Playing Kernel Panic is fairly simple and quickly learned, but can be hard to master and can be very complex. It is recommended that beginners start with play the System faction, as they can be considered the least &amp;quot;gimmicky&amp;quot; of the factions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Maybe it might be a good idea to move this to after the next two paragraphs.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
One rather effective general strategy for a duel on small maps is to send three to five bits to destroy your enemy&#039;s early game units, and, to a lesser degree, for scouting purposes. This is most effective if they started with construction units, as this will likely cripple their plans for an early expansion, and gives you a slight head start. After the initial attack, if your scouting shows that your enemy started with offensive units, build a byte for defense, and place it between your Kernel and the hill. After that, build an assembler and use it to build a socket on one the three closest building locations, which should automatically start producing bits. After this, you should order your assembler to build more sockets on free spots close to it. It is crucial that all sockets&#039; rally points are below them, as bits turning inside a socket will stall production until it is able to exit the factory. It is sometimes wise to repeat the prior process with one or two other assemblers. After this is done, construct about ten bits from your factor, and set your kernel to alternate between building bytes and pointers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
 A section on the uses of the faction&#039;s special units, and buildings (sigterm, pointer&#039;s fire, and byte&#039;s mine layer) could be useful, and these paragraphs might need modification.&lt;br /&gt;
&lt;br /&gt;
Making them flow better, and more coherent will help.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
What units you build at your kernel, and what you use them for, is an important factor in winning. As buildings can&#039;t be resumed, sending in groups of bits to kill construction units creating buildings can be very effective at stopping expansion attempts. Building too many pointers, will result in them being destroyed by connections, bits and especially worms, due to their stealth. Also, bytes are easily destroyer by and pointers, and exploits. A good general purpose ratio seems to be to queue one byte and one pointer, but this will need adapting as the game develops, and depending on the enemy&#039;s play style. &lt;br /&gt;
&lt;br /&gt;
Scouting is important too, as many enemies will leave their factories undefended, and knowing their build, and general unit use can help you in adapting the units you use to better fight them. Note that the Network can instantly spawn packets at any of their ports, or connections with their buffer system, meaning that all their factories should be considered defended. Single bits can be used to scout to find the enemy&#039;s current expansion attempts. &lt;br /&gt;
&lt;br /&gt;
When attacking a Byte or Connection with bits, it is important to overwhelm it with large numbers of bits. For bytes, try to exploit a byte&#039;s blind spot directly under it, by moving bits into that area. If your byte is under attack, moving it backwards to keep the attacking units in it&#039;s shooting arc can help repel the attack. It is not recommended to engage a worm with bits, as it&#039;s attack will convert your bits to viruses on the worm&#039;s owner&#039;s side.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Might reposition this section. Feel free to add map specific paragraphs for other maps as well. In fact, this will be very helpful to newcomers, I bet.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
On Marble Madness, there are two main ways paths to victory. The simplest one is to control the hill and use pointers stationed on the hill to destroy the enemy&#039;s factories, and kernel. Gaining control of the hilltop will likely not be without resistance, because it requires a decent amount of time for units to reach the top of the hill, meaning most units involved will be spam units from your factories on it, and the fact that it will likely be highly contended. However, if you control it, you have a large advantage over the enemy as you can shell your opponents home base with ease. The other way is around the hill, which can be very effective if you control terrain you can use pointers to great effect. In both strategies, using pointers is the crucial factor. While they are hard to use correctly, they are game-winners as they destroy home bases and enemy units with ease.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Credits:==&lt;br /&gt;
- Original concept by Boirunner&amp;lt;br&amp;gt;&lt;br /&gt;
- About all the work done by KDR_11k&amp;lt;br&amp;gt;&lt;br /&gt;
- Sounds by Noruas&amp;lt;br&amp;gt;&lt;br /&gt;
- Maintenance by zwzsg&amp;lt;br&amp;gt;&lt;br /&gt;
- Maps by Boirunner, Runecrafter, zwzsg, and TradeMark&amp;lt;br&amp;gt;&lt;br /&gt;
- Some LUA interface upgrade based of jK and trepan code&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Back to [[Games]]&lt;br /&gt;
[[Category:Games]]&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10050</id>
		<title>Kernel Panic</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10050"/>
		<updated>2017-06-20T18:50:36Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Restored images&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;[http://timblokdijk.nl/spring/Kernel%20Panic/logo/kernel0_hd.png https://springrts.com/mediawiki/images/f/fc/Kernel_Panic_Alpha_Title_Half.png]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Overview:==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;For the latest news and/or assistance, try the [http://springrts.com/phpbb/viewforum.php?f=43&#039;&#039;&#039;KP forum&#039;&#039;&#039;] or go to #kp when you log onto the lobby.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kernel Panic&#039;&#039;&#039; is a game about computers. Systems, Hackers and Networks wage war in a matrix of DOOM! The only constraints are time and space; unlike other real time strategy games, no resource economy exists in KP. &lt;br /&gt;
&lt;br /&gt;
All units are free in this game, every factory built will be spamming units at all times. You can build more factories, but only on pre-defined areas (geothermal vents). All that remains is pure strategy and tactics. &lt;br /&gt;
&lt;br /&gt;
KP makes for a frantically fast-paced, action-oriented game, with a very unique graphical style.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Download links:==&lt;br /&gt;
&lt;br /&gt;
Current Version of Kernel Panic is 4.6&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Newcomers:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you run &#039;&#039;&#039;Windows&#039;&#039;&#039; (2000,XP,Vista,7):&lt;br /&gt;
*** Here you can get a complete installer:&lt;br /&gt;
*** http://springfiles.com/spring/game-installers/kernel-panic-installer&lt;br /&gt;
*** Use it to install both Spring and Kernel Panic in one go.&lt;br /&gt;
*** Then use the shortcuts created in your Start Menu or Desktop.&lt;br /&gt;
** If you run &#039;&#039;&#039;Linux&#039;&#039;&#039;:&lt;br /&gt;
*** Read the [[SetupGuide]] how to install the Spring engine on Linux systems&lt;br /&gt;
*** Get and unzip that file: http://springfiles.com/spring/game-installers/kernel-panic-zip&lt;br /&gt;
*** Put the content of /games/ into ~/.spring/games&lt;br /&gt;
*** Put the content of /maps/ into ~/.spring/maps &lt;br /&gt;
*** Discard the rest.&lt;br /&gt;
*** Run Spring directly, a greenish menu should pop up.&lt;br /&gt;
*** Click skirmish, duel, easy, run.&lt;br /&gt;
*** For multiplayer or advanced options, run SpringLobby&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Experienced Users:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you have already the Spring engine (or prefer to install it yourself): Here you can get a zip with the mod file, the maps, and a tiny exe for single player frontend. Unzip into your Spring root folder: http://springfiles.com/spring/game-installers/kernel-panic-zip&lt;br /&gt;
** If you are certain you have all the maps and just need a quick link to the mod file itself: http://springfiles.com/spring/games/kernel-panic-mod&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Media:==&lt;br /&gt;
&lt;br /&gt;
===Youtube Videos:===&lt;br /&gt;
&lt;br /&gt;
[http://youtube.com/watch?v=doF7owZ0blk&amp;amp;fmt=18 http://i.ytimg.com/vi/doF7owZ0blk/default.jpg] &lt;br /&gt;
[http://youtube.com/watch?v=Ug1c19yaZac http://i.ytimg.com/vi/Ug1c19yaZac/default.jpg] [http://youtube.com/watch?v=GAZQhRlt5bU http://i.ytimg.com/vi/GAZQhRlt5bU/default.jpg]&lt;br /&gt;
[http://www.youtube.com/watch?v=3q48ys5hFtI&amp;amp;fmt=18 http://i.ytimg.com/vi/3q48ys5hFtI/default.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Still shots:===&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg http://tof.canardpc.com/preview/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg] [http://tof.canardpc.com/view/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg http://tof.canardpc.com/preview/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg] [http://tof.canardpc.com/view/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg http://tof.canardpc.com/preview/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg]&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg http://tof.canardpc.com/preview/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg] [http://tof.canardpc.com/view/e5184baf-6c95-4c90-8469-b00a4f092054.jpg http://tof.canardpc.com/preview/e5184baf-6c95-4c90-8469-b00a4f092054.jpg] [http://tof.canardpc.com/view/cbe6dae0-a696-450a-bf22-236043d76511.jpg http://tof.canardpc.com/preview/cbe6dae0-a696-450a-bf22-236043d76511.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==License:==&lt;br /&gt;
Extracted from the [http://pastebin.ca/2834721 &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
========--------------------------------------------&lt;br /&gt;
License:&lt;br /&gt;
--------&lt;br /&gt;
- The content of the /games/Kernel*.sd7 is Public Domain, save:&lt;br /&gt;
  /LuaUI/Widgets/kp_buildbar.lua&lt;br /&gt;
  /LuaRules/Gadgets/autohold.lua&lt;br /&gt;
  /LuaRules/Gadgets/Burrow.lua&lt;br /&gt;
  /LuaRules/Gadgets/game_spawn.lua&lt;br /&gt;
  which are GPL, taken from http://www.caspring.org or http://springrts.com&lt;br /&gt;
- The maps Marble Madness and Direct Memory Access are Public Domain&lt;br /&gt;
- The maps Major Madness and Speed Balls 16 Way status are unknown&lt;br /&gt;
- The maps Central Hub, Corrupted Core, Dual Core, Quad Core were initially CC BY-NC-SA.&lt;br /&gt;
  Then the author removed the CC cause ( http://cpc.cx/4u3 )&lt;br /&gt;
- The Spring engine is GPL, available from http://spring.clan-sy.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Game Modes:==&lt;br /&gt;
By default the aim is to destroy the homebase and all the minifacs of all opposing teams.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Other &amp;quot;mod options&amp;quot; available are:&lt;br /&gt;
* &#039;&#039;&#039;King Of The Hill :&#039;&#039;&#039; Keeps control of the map center for a given time to win.&lt;br /&gt;
* &#039;&#039;&#039;O.N.S. :&#039;&#039;&#039; Adds shields to buildings, preventing homebase rush.&lt;br /&gt;
* &#039;&#039;&#039;Save Our Mem :&#039;&#039;&#039; Unit leave &amp;quot;leaks&amp;quot; that must be reclaimed.&lt;br /&gt;
* &#039;&#039;&#039;Color Wars :&#039;&#039;&#039; Whoever controls the most territory when timer elapse wins.&lt;br /&gt;
* &#039;&#039;&#039;Heroes of Mainframe :&#039;&#039;&#039; You only control a very buffed up but single unit. Best used with &amp;quot;Pre-placed Minifacs&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;Rebalancing formula :&#039;&#039;&#039; Let you change the stat of any units of weapons without the hassle of making a mutator. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For details, read [http://pastebin.ca/2834721 &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] or click [?] next to each mod option in your lobby.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Units and Buildings:==&lt;br /&gt;
&lt;br /&gt;
===System units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/5/54/96x96Kernel.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Kernel:&#039;&#039;&#039; You start with one of these. It can build all mobile units in the game. Has rapid auto-heal and lots of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/b/b2/96x96Socket.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Socket:&#039;&#039;&#039; The socket is a factory which can only be built on a geothermal vent. It can solely build bits, and slower than the kernel can. It autoheals, and has a decent amount of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/8c/96x96Terminal.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Terminal:&#039;&#039;&#039;(only available in Division Zero) This is a new structure that gets placed on geovents. It can dispatch a nuclear bomber once every 90 seconds that will deal about 16000 damage to a large target area, i.e. it destroys everything except factories. It does much less damage to the kernel and hole. The bomber can strike any position on the map, there is no defense.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/1/1e/96x96Assembler.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Assembler:&#039;&#039;&#039; The assembler is a construction unit. It can build sockets, but it cannot assist-build. Slow, little health. Equipped with a radar to detect mines and other cloacked units.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/0/0a/96x96Bit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bit:&#039;&#039;&#039; Your basic attacking unit. Cheap, fast, small, not very much health. Is armed with a SPARCling laser. Can be built by a kernel or a socket.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/e/e3/96x96Byte.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Byte:&#039;&#039;&#039; A large, strong, and slow attacking unit. Can holds it&#039;s own against many bits, as it has lots of health and a powerful gun. More armored when closed. Can plow through bad blocks. The byte has an alternate firing mode, the mine launcher, which throws 5 mines at the cost of much health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/5/51/96x96Pointer.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Pointer:&#039;&#039;&#039; An artillery unit. Its normal shot is not so useful against moving units, but can kill kernels and sockets pretty quickly. Is slow and has little health, so it needs protection. The pointer has an alternate firing mode, the NX Flag, which set a wide area ablaze for a minute, causing constant damage to all units, or buildings within it&#039;s range.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Hacker units:===&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/7f/96x96NewHoleLow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Security Hole:&#039;&#039;&#039; The Hacker kernel equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/70/96x96Window.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Window:&#039;&#039;&#039; The Hacker socket equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/fb/96x96Obelisk.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Obelisk:&#039;&#039;&#039; This building is a stationary artillery weapon, it can fire an infection shot every 40 seconds (the obelisk has a pink fire on top when it&#039;s ready to shoot) that will cover a large area in poison. The poison does a bit of damage (about 1000) and turns any enemy that dies inside the cloud into a Virus. The weapon&#039;s range is fairly limited. Best used against stationnary herds of Bits/Bugs.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/c/c5/96x96NewTrojan.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Trojan:&#039;&#039;&#039; This unit is your constructor as well as radar platform (needed for detecting mines and cloaked units), just like the assembler. It builds all the same stuff as the assembler, except it has the window instead of the socket and the obelisk instead of the terminal.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/9/94/96x96Virus.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Virus:&#039;&#039;&#039; A crappy little swarm unit. It cannot be built but is produced when killing enemy units with certain weapons. Namely, the Virus, the Worm, and the Obelisk.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/ff/96x96NewBug.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Bug:&#039;&#039;&#039; The Hacker spam unit. The Bug is weaker than the Bit but can sense movement outside of its LOS. It has a stronger weapon and more range but cannot shoot at things behind it or through friendly units and won&#039;t take much damage before dying. The mine ability of the old bug has been removed. Instead it can now morph into the Exploit with the deploy button, or the bombard button.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/c/c4/96x96Exploit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Exploit:&#039;&#039;&#039; This is the new name for the bug cannon. It&#039;s a building the Bug morphs into with the deploy or bombard command. The Exploit is a stationary artillery emplacement that does more damage the further the target is away. Even more frail than the Bug, so don&#039;t let any foe come near.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/4/40/96x96NewWorm.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Worm:&#039;&#039;&#039; The worm is a sneaky assassin, travelling cloacked, then surfacing only to kill many bits at once with its large area of effect weapon, which turn any slain units into virus. The worm large splash damage will damage your own units. However, it does practicaly no damage against other worms or virus. When cloacked, the worm does not automatically attack, you have to give attack orders manually. If you&#039;d rather have your worms auto-attack even when cloacked, set autohold to off. The autohold setting of new worms is inherited from the Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/f/f4/96x96DoS.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Denial of Service:&#039;&#039;&#039; Not an artillery, but close: fire a beam that stun units. For bigger targets it&#039;ll take longer to stun them so perform a DDoS (use multiple) to stun them fast. Once the DoS stops firing the target will quickly unfreeze. It moves faster than the pointer but causes a particle trail that can be seen from far away.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Network units:===&lt;br /&gt;
The network faction is built around mobility, its small factories (Ports) don&#039;t produce units openly but instead increment a virtual counter (the Buffer). Packets in the Buffer can be materialized at any teleporter unit (currently that means the Port and the Connection), it&#039;s also possible to dematerialize the Packets back into the Buffer by making them enter a teleport.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/7/76/96x96Carrier.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Carrier:&#039;&#039;&#039; The base building, like a Kernel or Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/4/46/96x96Port.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Port:&#039;&#039;&#039; The production building. It puts Packets into the Buffer, to materialize them select the Dispatch command. Dispatch will send 12 Packets if available, you can hold ALT when giving the order to make the Port dispatch until the Buffer is empty.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/83/96x96Firewall.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Firewall:&#039;&#039;&#039; This building can cover units (affects friendly units in a certain radius around the target location) in a protective shield for 20 seconds. The shield halves all damage the unit receives and throws the other half back at the attacker.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/6/6c/96x96Gateway.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Gateway:&#039;&#039;&#039; The constructor. It is lightly armed to help against enemy raids.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/8/8b/96x96Packet.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Packet:&#039;&#039;&#039; The basic light spam unit, it&#039;s weaker in combat than both competitors but much faster.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/2/26/96x96Connection.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Connection:&#039;&#039;&#039; Mostly a mobile teleporter (i.e. can dispatch Packets and let them enter like a Port). The Connection has decent armor and an arc beam that can do a lot of damage to single targets and has good range. It can defeat most large units one on one but engaging Bytes will probably result in pointer fire which the Connection cannot withstand and the arc beam is not optimal for engaging swarms.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/0/01/96x96Flow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Flow:&#039;&#039;&#039; An air unit. The Flow moves fairly slowly but can of course cross any terrain. It&#039;s equipped to attack light targets (spam units and fire support) but it&#039;s highly vulnerable to return fire. If you want to use them in open combat give them a meatshield and hope the enemy doesn&#039;t field long range units, Pointers, DoSes and Connections make short work of Flows if they hit.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===All side Units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/9/98/96x96BadBlock.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bad Block:&#039;&#039;&#039; A tiny wall, built by Assembler/Trojan/Gateway. Blocks small units movement. Do not block shots however. Easily removed by the Debug or simply crushing them with a Byte or Connection.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/a/a4/96x96Mine.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Logic Bomb:&#039;&#039;&#039; A mine that can be built by the Assembler/Trojan/Gateway. And also launched by Bytes since Div0 2.2. It takes out Bits &amp;amp; Bugs in a single blow, has a decent damage radius, and doesn&#039;t chain explode. Use with care, as the blast hurts your own units too. Limited to 32.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;https://springrts.com/mediawiki/images/3/35/96x96MineBlaster.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Debug:&#039;&#039;&#039; An easy way to clear an area of all mines and walls, this is a one shot weapon built by the Assembler/Trojan/Gateway.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Playing Guide for System:==&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
&lt;br /&gt;
Attention all editors: Try and improve this playing guide to make less assumptions about the setup, and allow for team maps, larger maps, and generally teach more general strategy &lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Playing Kernel Panic is fairly simple and quickly learned, but can be hard to master and can be very complex. It is recommended that beginners start with play the System faction, as they can be considered the least &amp;quot;gimmicky&amp;quot; of the factions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Maybe it might be a good idea to move this to after the next two paragraphs.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
One rather effective general strategy for a duel on small maps is to send three to five bits to destroy your enemy&#039;s early game units, and, to a lesser degree, for scouting purposes. This is most effective if they started with construction units, as this will likely cripple their plans for an early expansion, and gives you a slight head start. After the initial attack, if your scouting shows that your enemy started with offensive units, build a byte for defense, and place it between your Kernel and the hill. After that, build an assembler and use it to build a socket on one the three closest building locations, which should automatically start producing bits. After this, you should order your assembler to build more sockets on free spots close to it. It is crucial that all sockets&#039; rally points are below them, as bits turning inside a socket will stall production until it is able to exit the factory. It is sometimes wise to repeat the prior process with one or two other assemblers. After this is done, construct about ten bits from your factor, and set your kernel to alternate between building bytes and pointers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
 A section on the uses of the faction&#039;s special units, and buildings (sigterm, pointer&#039;s fire, and byte&#039;s mine layer) could be useful, and these paragraphs might need modification.&lt;br /&gt;
&lt;br /&gt;
Making them flow better, and more coherent will help.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
What units you build at your kernel, and what you use them for, is an important factor in winning. As buildings can&#039;t be resumed, sending in groups of bits to kill construction units creating buildings can be very effective at stopping expansion attempts. Building too many pointers, will result in them being destroyed by connections, bits and especially worms, due to their stealth. Also, bytes are easily destroyer by and pointers, and exploits. A good general purpose ratio seems to be to queue one byte and one pointer, but this will need adapting as the game develops, and depending on the enemy&#039;s play style. &lt;br /&gt;
&lt;br /&gt;
Scouting is important too, as many enemies will leave their factories undefended, and knowing their build, and general unit use can help you in adapting the units you use to better fight them. Note that the Network can instantly spawn packets at any of their ports, or connections with their buffer system, meaning that all their factories should be considered defended. Single bits can be used to scout to find the enemy&#039;s current expansion attempts. &lt;br /&gt;
&lt;br /&gt;
When attacking a Byte or Connection with bits, it is important to overwhelm it with large numbers of bits. For bytes, try to exploit a byte&#039;s blind spot directly under it, by moving bits into that area. If your byte is under attack, moving it backwards to keep the attacking units in it&#039;s shooting arc can help repel the attack. It is not recommended to engage a worm with bits, as it&#039;s attack will convert your bits to viruses on the worm&#039;s owner&#039;s side.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Might reposition this section. Feel free to add map specific paragraphs for other maps as well. In fact, this will be very helpful to newcomers, I bet.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
On Marble Madness, there are two main ways paths to victory. The simplest one is to control the hill and use pointers stationed on the hill to destroy the enemy&#039;s factories, and kernel. Gaining control of the hilltop will likely not be without resistance, because it requires a decent amount of time for units to reach the top of the hill, meaning most units involved will be spam units from your factories on it, and the fact that it will likely be highly contended. However, if you control it, you have a large advantage over the enemy as you can shell your opponents home base with ease. The other way is around the hill, which can be very effective if you control terrain you can use pointers to great effect. In both strategies, using pointers is the crucial factor. While they are hard to use correctly, they are game-winners as they destroy home bases and enemy units with ease.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Credits:==&lt;br /&gt;
- Original concept by Boirunner&amp;lt;br&amp;gt;&lt;br /&gt;
- About all the work done by KDR_11k&amp;lt;br&amp;gt;&lt;br /&gt;
- Sounds by Noruas&amp;lt;br&amp;gt;&lt;br /&gt;
- Minor edits by zwzsg&amp;lt;br&amp;gt;&lt;br /&gt;
- Maps by Boirunner, Runecrafter, zwzsg, and TradeMark&amp;lt;br&amp;gt;&lt;br /&gt;
- Some LUA interface upgrade based of jK and trepan code&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Back to [[Games]]&lt;br /&gt;
[[Category:Games]]&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Window.png&amp;diff=21468</id>
		<title>File:96x96Window.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Window.png&amp;diff=21468"/>
		<updated>2017-06-20T18:36:02Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Hacker Windows&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Hacker Windows&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Virus.png&amp;diff=21467</id>
		<title>File:96x96Virus.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Virus.png&amp;diff=21467"/>
		<updated>2017-06-20T18:35:42Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Hacker Virus&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Hacker Virus&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Terminal.png&amp;diff=21466</id>
		<title>File:96x96Terminal.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Terminal.png&amp;diff=21466"/>
		<updated>2017-06-20T18:35:25Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - System Terminal&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - System Terminal&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Socket.png&amp;diff=21465</id>
		<title>File:96x96Socket.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Socket.png&amp;diff=21465"/>
		<updated>2017-06-20T18:35:11Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - System Socket&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - System Socket&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Port.png&amp;diff=21464</id>
		<title>File:96x96Port.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Port.png&amp;diff=21464"/>
		<updated>2017-06-20T18:34:56Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Network Port&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Network Port&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Pointer.png&amp;diff=21463</id>
		<title>File:96x96Pointer.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Pointer.png&amp;diff=21463"/>
		<updated>2017-06-20T18:34:29Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - System Pointer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - System Pointer&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Packet.png&amp;diff=21462</id>
		<title>File:96x96Packet.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Packet.png&amp;diff=21462"/>
		<updated>2017-06-20T18:34:13Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Network Packet&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Network Packet&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Obelisk.png&amp;diff=21461</id>
		<title>File:96x96Obelisk.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Obelisk.png&amp;diff=21461"/>
		<updated>2017-06-20T18:34:00Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Hacker Obelisk&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Hacker Obelisk&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96NewWorm.png&amp;diff=21460</id>
		<title>File:96x96NewWorm.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96NewWorm.png&amp;diff=21460"/>
		<updated>2017-06-20T18:33:46Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Hacker Worm&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Hacker Worm&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96NewTrojan.png&amp;diff=21459</id>
		<title>File:96x96NewTrojan.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96NewTrojan.png&amp;diff=21459"/>
		<updated>2017-06-20T18:33:33Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Hacker Trojan&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Hacker Trojan&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96NewHoleLow.png&amp;diff=21458</id>
		<title>File:96x96NewHoleLow.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96NewHoleLow.png&amp;diff=21458"/>
		<updated>2017-06-20T18:33:18Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Hacker Hole&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Hacker Hole&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96NewHoleHigh.png&amp;diff=21457</id>
		<title>File:96x96NewHoleHigh.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96NewHoleHigh.png&amp;diff=21457"/>
		<updated>2017-06-20T18:32:47Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Hacker Hole&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Hacker Hole&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96NewBug.png&amp;diff=21456</id>
		<title>File:96x96NewBug.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96NewBug.png&amp;diff=21456"/>
		<updated>2017-06-20T18:32:29Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Hacker Bug&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Hacker Bug&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96MineBlaster.png&amp;diff=21455</id>
		<title>File:96x96MineBlaster.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96MineBlaster.png&amp;diff=21455"/>
		<updated>2017-06-20T18:32:16Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - MineBlaster&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - MineBlaster&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Mine.png&amp;diff=21454</id>
		<title>File:96x96Mine.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Mine.png&amp;diff=21454"/>
		<updated>2017-06-20T18:32:01Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Mine&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Mine&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Kernel.png&amp;diff=21453</id>
		<title>File:96x96Kernel.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Kernel.png&amp;diff=21453"/>
		<updated>2017-06-20T18:31:42Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - System Kernel&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - System Kernel&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Gateway.png&amp;diff=21452</id>
		<title>File:96x96Gateway.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Gateway.png&amp;diff=21452"/>
		<updated>2017-06-20T18:31:27Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Network Gateway&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Network Gateway&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Flow.png&amp;diff=21451</id>
		<title>File:96x96Flow.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Flow.png&amp;diff=21451"/>
		<updated>2017-06-20T18:31:12Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Network Flow&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Network Flow&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Firewall.png&amp;diff=21450</id>
		<title>File:96x96Firewall.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Firewall.png&amp;diff=21450"/>
		<updated>2017-06-20T18:30:49Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Network Firewall&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Network Firewall&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Exploit.png&amp;diff=21449</id>
		<title>File:96x96Exploit.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Exploit.png&amp;diff=21449"/>
		<updated>2017-06-20T18:30:20Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Hacker Exploit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Hacker Exploit&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96DoS.png&amp;diff=21448</id>
		<title>File:96x96DoS.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96DoS.png&amp;diff=21448"/>
		<updated>2017-06-20T18:30:02Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Hacker DoS&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Hacker DoS&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Connection.png&amp;diff=21447</id>
		<title>File:96x96Connection.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Connection.png&amp;diff=21447"/>
		<updated>2017-06-20T18:29:32Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Network Connection&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Network Connection&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Carrier.png&amp;diff=21446</id>
		<title>File:96x96Carrier.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Carrier.png&amp;diff=21446"/>
		<updated>2017-06-20T18:29:08Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Network Carrier&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Network Carrier&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Byte.png&amp;diff=21445</id>
		<title>File:96x96Byte.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Byte.png&amp;diff=21445"/>
		<updated>2017-06-20T18:28:46Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - System Byte&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - System Byte&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Bit.png&amp;diff=21444</id>
		<title>File:96x96Bit.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Bit.png&amp;diff=21444"/>
		<updated>2017-06-20T18:28:30Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - System Bit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - System Bit&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96BadBlock.png&amp;diff=21443</id>
		<title>File:96x96BadBlock.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96BadBlock.png&amp;diff=21443"/>
		<updated>2017-06-20T18:28:07Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - Bad Block&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - Bad Block&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Assembler.png&amp;diff=21442</id>
		<title>File:96x96Assembler.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:96x96Assembler.png&amp;diff=21442"/>
		<updated>2017-06-20T18:27:16Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic - System Assembler&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic - System Assembler&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_Alpha_Title_Half.png&amp;diff=21849</id>
		<title>File:Kernel Panic Alpha Title Half.png</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=File:Kernel_Panic_Alpha_Title_Half.png&amp;diff=21849"/>
		<updated>2017-06-20T18:13:01Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Kernel Panic logo, by Tim Blokdijk, from https://springrts.com/phpbb/viewtopic.php?t=23663 edited to change huge, add alpha transparency, resize.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kernel Panic logo, by Tim Blokdijk, from https://springrts.com/phpbb/viewtopic.php?t=23663 edited to change huge, add alpha transparency, resize.&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Lua:Callins&amp;diff=10764</id>
		<title>Lua:Callins</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Lua:Callins&amp;diff=10764"/>
		<updated>2015-11-03T23:48:04Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Lua Callins =&lt;br /&gt;
This page is future looking to unified widget/gadget (aka &amp;quot;addon&amp;quot;) handler, which may yet be some way off, c.f. the [https://github.com/spring/spring/blob/ebb704e008f6ea645947d07be1cfcc272af0428f/doc/changelog.txt#L71 changelog].&lt;br /&gt;
&lt;br /&gt;
For now, to use these addons in a widget, replace addon with widget and, for a gadget, replace addon with gadget. For example,&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
    function widget:UnitCreated(unitID, unitDefID, unitTeam, builderID)&lt;br /&gt;
        ...  &lt;br /&gt;
    end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some functions may differ between (synced) gadget and widgets; those are in the [[#Synced_-_Unsynced_Shared]] section. Essentially the reason is that all information should be available to synced (game logic controlling) gadgets, but restricted to unsynced gadget/widget (e.g. information about an enemy unit only detected via radar and not yet in LOS). In such cases the full (synced) param list is documented.&lt;br /&gt;
&lt;br /&gt;
== Common ==&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = Initialize&lt;br /&gt;
|params = &lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the addon is (re)loaded.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = Shutdown&lt;br /&gt;
|params = &lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the addon or the game is shutdown.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Unsynced Only ==&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DefaultCommand&lt;br /&gt;
|params = type, id&lt;br /&gt;
|return = number cmdID&lt;br /&gt;
|description = Used to set the default command when a unit is selected. First parameter is the type of the object pointed at (either &amp;quot;unit or &amp;quot;feature&amp;quot;) and the second is its unitID or featureID respectively. &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = CommandNotify&lt;br /&gt;
|params = cmdID, cmdParams, cmdOptions&lt;br /&gt;
|return = bool removeCmd&lt;br /&gt;
|description = Called when a command is issued. Returning &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; deletes the command and does not send it through the network.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = WorldTooltip&lt;br /&gt;
|params = ttType, data1, data2, data3&lt;br /&gt;
|return = string newTooltip&lt;br /&gt;
|description = The parameters can be &amp;lt;code&amp;gt;&amp;quot;unit&amp;quot;&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;unitID&amp;lt;/code&amp;gt;; &amp;lt;code&amp;gt;&amp;quot;feature&amp;quot;&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;featureID&amp;lt;/code&amp;gt;; &amp;lt;code&amp;gt;&amp;quot;ground&amp;quot;&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;posX&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;posY&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;posZ&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;&amp;quot;selection&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnsyncedHeightMapUpdate&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the unsynced copy of the height-map is altered.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GameProgress&lt;br /&gt;
|params = serverFrameNum&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called every 60 frames, calculating delta between GameFrame and GameProgress. Can give an ETA about catching up with simulation for mid-game join players.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GameSetup&lt;br /&gt;
|params =  state, ready, playerStates&lt;br /&gt;
|return = bool success, bool newReady&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = SunChanged&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AddConsoleLine&lt;br /&gt;
|params = msg, priority&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when text is entered into the console (e.g. Spring.Echo).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = RecvSkirmishAIMessage&lt;br /&gt;
|params = aiTeam, dataStr&lt;br /&gt;
|return = ???&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = RecvFromSynced&lt;br /&gt;
|params = ...&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Receives data sent via [[Lua_System#Synced|SendToUnsynced]] callout.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = Save&lt;br /&gt;
|params = zip&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a chat command &#039;/save&#039; or &#039;/savegame&#039; is received. The single argument is a userdatum representing the savegame zip file. See [[Lua_SaveLoad#Save_.28_zip_.29_-.3E_nil|Lua_SaveLoad]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = LoadProgress&lt;br /&gt;
|params = message, replaceLastLine&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Only available to LuaIntro.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GroupChanged&lt;br /&gt;
|params = groupID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is added to or removed from a control group. Currently implemented for widgets only.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = ConfigureLayout&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = ???&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Input ===&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = IsAbove&lt;br /&gt;
|params = x, y&lt;br /&gt;
|return = bool isAbove&lt;br /&gt;
|description = Called every Update. Must return &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; for &amp;lt;code&amp;gt;Mouse*&amp;lt;/code&amp;gt; events and &amp;lt;code&amp;gt;GetToolTip&amp;lt;/code&amp;gt; to be called.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GetTooltip&lt;br /&gt;
|params = x, y&lt;br /&gt;
|return = string tooltip&lt;br /&gt;
|description = Called when &amp;lt;code&amp;gt;IsAbove&amp;lt;/code&amp;gt; returns true.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = KeyPress&lt;br /&gt;
|params = key, mods, isRepeat&lt;br /&gt;
|return = bool becomeOwner&lt;br /&gt;
|description = Called repeatedly when a key is pressed down. If you want an action to occur only once check for &amp;lt;code&amp;gt;isRepeat == false&amp;lt;/code&amp;gt;. The &amp;lt;code&amp;gt;mods&amp;lt;/code&amp;gt; parameter is a table, with keys &amp;lt;code&amp;gt;alt&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;ctrl&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;meta&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;shift&amp;lt;/code&amp;gt; each having a boolean value. Return &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; if you don&#039;t want other callins or the engine to also receive this keypress.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = KeyRelease&lt;br /&gt;
|params = key&lt;br /&gt;
|return = bool&lt;br /&gt;
|description = Called when the key is released.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = TextInput&lt;br /&gt;
|params = utf8char&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called whenever a key press results in text input. Introduced in 97.0.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = JoystickEvent&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = MousePress&lt;br /&gt;
|params = x, y, button&lt;br /&gt;
|return = bool becomeMouseOwner&lt;br /&gt;
|description = Called when a mouse button is pressed. The &amp;lt;code&amp;gt;button&amp;lt;/code&amp;gt; parameter supports up to 7 buttons. Must return &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; for &amp;lt;code&amp;gt;MouseRelease&amp;lt;/code&amp;gt; and other functions to be called.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = MouseRelease&lt;br /&gt;
|params = x, y, button&lt;br /&gt;
|return = bool becomeMouseOwner&lt;br /&gt;
|description = Called when a mouse button is released. Please note that in order to have Spring call &amp;lt;code&amp;gt;MouseRelease&amp;lt;/code&amp;gt;, you need to have a &amp;lt;code&amp;gt;MousePress&amp;lt;/code&amp;gt; call-in in the same addon that returns &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt;.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = MouseWheel&lt;br /&gt;
|params = up, value&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the mouse wheel is moved. The parameters indicate the direction and amount of travel.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = MouseMove&lt;br /&gt;
|params = x, y, dx, dy, button&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the mouse is moved. The &amp;lt;code&amp;gt;dx&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;dy&amp;lt;/code&amp;gt; parameters indicate the distance travelled, whereas the first two indicate the final position.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Players ===&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = PlayerChanged&lt;br /&gt;
|params = playerID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called whenever a player&#039;s status changes e.g. becoming a spectator.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = PlayerAdded&lt;br /&gt;
|params = playerID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called whenever a new player joins the game.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = PlayerRemoved&lt;br /&gt;
|params = playerID, reason&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called whenever a player is removed from the game.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Drawing ===&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = ViewResize&lt;br /&gt;
|params = viewSizeX, viewSizeY&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called whenever the window is resized.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = Update&lt;br /&gt;
|params = dt&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called for every draw frame. The parameter is the time since the last update. Perform calculations in here and only drawing in Draw* callins.}}&lt;br /&gt;
&lt;br /&gt;
Inside the Draw* functions, you can use the [[Lua_OpenGL_Api | Lua OpenGL Api]] to draw graphics.&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawGenesis&lt;br /&gt;
|params =&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Doesn&#039;t render to screen! Use this callin to update textures, shaders, etc.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawWorldPreUnit&lt;br /&gt;
|params = &lt;br /&gt;
|return = none&lt;br /&gt;
|description = Spring draws units, features, some water types, cloaked units, and the sun.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawWorld&lt;br /&gt;
|params =&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Spring draws command queues, &#039;map stuff&#039;, and map marks.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawWorldShadow&lt;br /&gt;
|params =&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawWorldReflection&lt;br /&gt;
|params =&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawWorldRefraction&lt;br /&gt;
|params =&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawScreen&lt;br /&gt;
|params = &lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawScreenEffects&lt;br /&gt;
|params = vsx, vsy&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Where &amp;lt;code&amp;gt;vsx&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;vsy&amp;lt;/code&amp;gt; are screen coordinates.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawLoadScreen&lt;br /&gt;
|params =&lt;br /&gt;
|return = none&lt;br /&gt;
|description = {{new|95.0}} Only available to LuaIntro, draws custom load screens.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawInMinimap&lt;br /&gt;
|params = sx, sy&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Where &amp;lt;code&amp;gt;sx&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sy&amp;lt;/code&amp;gt; are values relative to the minimap&#039;s position and scale.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawInMinimapBackground&lt;br /&gt;
|params = sx, sy&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Where &amp;lt;code&amp;gt;sx&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sy&amp;lt;/code&amp;gt; are values relative to the minimap&#039;s position and scale.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Custom Object Rendering ===&lt;br /&gt;
For the following calls &amp;lt;code&amp;gt;drawMode&amp;lt;/code&amp;gt; can be one of the following, &amp;lt;code&amp;gt;notDrawing = 0&amp;lt;/code&amp;gt;,	&amp;lt;code&amp;gt;normalDraw = 1&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;shadowDraw = 2&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;reflectionDraw = 3&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;refractionDraw = 4&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawUnit&lt;br /&gt;
|params = unitID, drawMode&lt;br /&gt;
|return = bool suppressEngineDraw&lt;br /&gt;
|description = For custom rendering of units, [[Lua_UnitRendering#Lua.27s_DrawXYZ-Callin|enabled here]].	&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawFeature&lt;br /&gt;
|params = unitID, drawMode&lt;br /&gt;
|return = bool suppressEngineDraw&lt;br /&gt;
|description = For custom rendering of features, [[Lua_UnitRendering#Lua.27s_DrawXYZ-Callin|enabled here]].	&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawShield&lt;br /&gt;
|params = unitID, weaponID, drawMode&lt;br /&gt;
|return = bool suppressEngineDraw&lt;br /&gt;
|description = For custom rendering of [[Gamedev:WeaponDefs#Shield_(WeaponType)|shields]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawProjectile&lt;br /&gt;
|params = projectileID, drawMode&lt;br /&gt;
|return = bool suppressEngineDraw&lt;br /&gt;
|description = For custom rendering of weapon (&amp;amp; other) projectiles.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Synced - Unsynced Shared ==&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GotChatMsg&lt;br /&gt;
|params = msg, player&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a player issues a UI command e.g. types &amp;lt;code&amp;gt;/foo&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;/luarules foo&amp;lt;/code&amp;gt;.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Game ===&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GameID&lt;br /&gt;
|params = gameID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called once to deliver the gameID.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GamePaused&lt;br /&gt;
|params = &lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the game is paused.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GameOver&lt;br /&gt;
|params = winningAllyTeams&lt;br /&gt;
|return = none&lt;br /&gt;
|description = The parameter is a list of winning allyTeams, if empty the game result was undecided (like when dropping from an host).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GameFrame&lt;br /&gt;
|params = frame&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called for every game simulation frame (30 per second).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GamePreload&lt;br /&gt;
|params = &lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called before the 0 gameframe.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GameStart&lt;br /&gt;
|params =&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called upon the start of the game.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = TeamChanged&lt;br /&gt;
|params = teamID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = TeamDied&lt;br /&gt;
|params = teamID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a team dies (see [[Lua_SyncedCtrl#Game_End|Spring.KillTeam]]).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Units ===&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitCreated&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, builderID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called at the moment the unit is created.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitFinished&lt;br /&gt;
|params = unitID, unitDefID, unitTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called at the moment the unit is completed.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitFromFactory&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, factID, factDefID, userOrders&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a factory finishes construction of a unit.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitGiven&lt;br /&gt;
|params = unitID, unitDefID, newTeam, oldTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is transferred between teams.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitTaken&lt;br /&gt;
|params = unitID, unitDefID, oldTeam, newTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is transferred between teams.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitDamaged&lt;br /&gt;
|params =  unitID, unitDefID, unitTeam, damage, paralyzer, weaponDefID, projectileID, attackerID, attackerDefID, attackerTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is damaged (after &amp;lt;code&amp;gt;UnitPreDamaged&amp;lt;/code&amp;gt;).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitDestroyed&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, attackerID, attackerDefID, attackerTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is destroyed.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitStunned&lt;br /&gt;
|params =  unitID, unitDefID, unitTeam, stunned&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit changes its stun status. {{new|99.0}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitUnitCollision&lt;br /&gt;
|params = colliderID, collideeID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when two units collide. Both units must be registered with [[Lua_System#Synced|Script.SetWatchUnit]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitFeatureCollision&lt;br /&gt;
|params = colliderID, collideeID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit collides with a feature. The unit must be registered with [[Lua_System#Synced|Script.SetWatchUnit]] and the feature registered with [[Lua_System#Synced|Script.SetWatchFeature]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitCommand&lt;br /&gt;
|params = unitID, unitDefID, teamID, cmdID, cmdParams, cmdOptions&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called after when a unit accepts a command, after &amp;lt;code&amp;gt;AllowCommand&amp;lt;/code&amp;gt; returns &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt;.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitCmdDone&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, cmdID, cmdTag, cmdParams, cmdOpts&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit completes a command.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitLoaded&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, transportID, transportTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is loaded by a transport.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitUnloaded&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, transportID, transportTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is unloaded by a transport.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitExperience&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, experience, oldExperience&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit gains experience greater or equal to the minimum limit set by calling [[Lua_SyncedCtrl#Other|Spring.SetExperienceGrade]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitIdle&lt;br /&gt;
|params = unitID, unitDefID, unitTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is idle (empty command queue).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitCloaked&lt;br /&gt;
|params = unitID, unitDefID, unitTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit cloaks.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitDecloaked&lt;br /&gt;
|params = unitID, unitDefID, unitTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit decloaks.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitMoved&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ??? Not implemented in base handler&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitMoveFailed&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ??? Not implemented in base handler&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = StockpileChanged&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, weaponNum, oldCount, newCount&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a units stockpile of weapons increases or decreases. See {{xtaglink|Gamedev:WeaponDefs|stockpile}}.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitEnteredLos&lt;br /&gt;
|params = unitID, unitTeam, allyTeam, unitDefID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit enters LOS of an allyteam.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitLeftLos&lt;br /&gt;
|params = unitID, unitTeam, allyTeam, unitDefID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit leaves LOS of an allyteam.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitEnteredRadar&lt;br /&gt;
|params = unitID, unitTeam, allyTeam, unitDefID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit enters radar of an allyteam.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitLeftRadar&lt;br /&gt;
|params = unitID, unitTeam, allyTeam, unitDefID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit leaves radar of an allyteam.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitEnteredAir&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ??? Not implemented by base handler&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitLeftAir&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ??? Not implemented by base handler&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitEnteredWater&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ??? Not implemented by base handler&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitLeftWater&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ??? Not implemented by base handler&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitSeismicPing&lt;br /&gt;
|params = x, y, z, strength, allyTeam, unitID, unitDefID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit emits a seismic ping. See {{xtaglink|Gamedev:UnitDefs|seismicSignature}}.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = FeatureCreated&lt;br /&gt;
|params = featureID, allyTeamID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a feature is created.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = FeatureDamaged&lt;br /&gt;
|params =  featureID, featureDefID, featureTeam, damage, weaponDefID, projectileID, attackerID, attackerDefID, attackerTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a feature is damaged.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = FeatureDestroyed&lt;br /&gt;
|params = featureID, allyTeamID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a feature is destroyed.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = FeatureMoved&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Projectiles ===&lt;br /&gt;
The following Callins are only called for weaponDefIDs registered via [[Lua_System#Synced|Script.SetWatchWeapon]].&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = ProjectileCreated&lt;br /&gt;
|params = proID, proOwnerID, weaponDefID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the projectile is created.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = ProjectileDestroyed&lt;br /&gt;
|params = proID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the projectile is destroyed.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Synced Only ==&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = CommandFallback&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, cmdID, cmdParams, cmdOptions, cmdTag&lt;br /&gt;
|return = bool used, bool finished&lt;br /&gt;
|description = Called when the unit reaches an unknown command in its queue (i.e. one not handled by the engine). If no addon returns &amp;lt;code&amp;gt;used&amp;lt;/code&amp;gt; as &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; the command is dropped, if an addon returns &amp;lt;code&amp;gt;true, true&amp;lt;/code&amp;gt; the command is removed because it&#039;s done, with &amp;lt;code&amp;gt;true, false&amp;lt;/code&amp;gt; it&#039;s kept in the queue and &amp;lt;code&amp;gt;CommandFallback&amp;lt;/code&amp;gt; gets called again on the next slowupdate.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowCommand&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, cmdID, cmdParams, cmdOptions, cmdTag, synced&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called when the command is given, before the unit&#039;s queue is altered. The return value is whether it should be let into the queue. The queue remains untouched when a command is blocked, whether it would be queued or replace the queue.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowUnitCreation&lt;br /&gt;
|params = unitDefID, builderID, builderTeam, x, y, z, facing&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called just before unit is created, the boolean return value determines whether or not the creation is permitted.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowUnitTransfer&lt;br /&gt;
|params = unitID, unitDefID, oldTeam, newTeam, capture&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called just before a unit is transferred to a different team, the boolean return value determines whether or not the transfer is permitted.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowUnitBuildStep&lt;br /&gt;
|params = builderID, builderTeam, unitID, unitDefID, part&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called just before a unit progresses its build percentage, the boolean return value determines whether or not the build makes progress.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowFeatureCreation&lt;br /&gt;
|params = featureDefID, teamID, x, y, z&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called just before feature is created, the boolean return value determines whether or not the creation is permitted.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowFeatureBuildStep&lt;br /&gt;
|params = builderID, builderTeam, featureID, featureDefID, part&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called just before a feature progresses its build percentage, the boolean return value determines whether or not the progress change is permitted.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowResourceLevel&lt;br /&gt;
|params = teamID, res, level&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called when a team sets the sharing level of a resource, the boolean return value determines whether or not the sharing level is permitted.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowResourceTransfer&lt;br /&gt;
|params = oldTeamID, newTeamID, res, amount&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called just before resources are transferred between players, the boolean return value determines whether or not the transfer is permitted.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowStartPosition&lt;br /&gt;
|params =  clampedX, clampedY, clampedZ, playerID, readyState, rawX, rawY, rawZ&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = &amp;lt;code&amp;gt;clamped&amp;lt;/code&amp;gt; are the coordinates clamped into start-boxes, &amp;lt;code&amp;gt;raw&amp;lt;/code&amp;gt; is where player tried to place their marker. The &amp;lt;code&amp;gt;readyState&amp;lt;/code&amp;gt; can be any one of &lt;br /&gt;
* &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; - player picked a position, &lt;br /&gt;
* &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; - player clicked ready, &lt;br /&gt;
* &amp;lt;code&amp;gt;2&amp;lt;/code&amp;gt; - player pressed ready OR  the game was force-started (player did not click ready, but is now forcibly readied) or &lt;br /&gt;
* &amp;lt;code&amp;gt;3&amp;lt;/code&amp;gt; - the player failed to load. &lt;br /&gt;
* {{new|95.0}} the default &#039;failed to choose&#039; start-position is the north-west point of their startbox, or &amp;lt;code&amp;gt;(0,0,0)&amp;lt;/code&amp;gt; if they do not have a startbox. &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowDirectUnitControl&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, playerID&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Determines if this unit can be controlled directly in FPS view.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowWeaponTargetCheck&lt;br /&gt;
|params = attackerID, attackerWeaponNum, attackerWeaponDefID&lt;br /&gt;
|return = bool allowCheck, bool ignoreCheck&lt;br /&gt;
|description = Determines if this weapon can automatically generate targets itself. See also {{xtaglink|Gamedev:WeaponDefs|commandFire}} weaponDef tag. The &amp;lt;code&amp;gt;ignoreCheck&amp;lt;/code&amp;gt; return value was added in 99.0 to allow ignoring the callin i.e. running normal engine check for this weapon.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowWeaponTarget&lt;br /&gt;
|params = attackerID, targetID, attackerWeaponNum, attackerWeaponDefID, defPriority&lt;br /&gt;
|return = bool allowed, number newPriority&lt;br /&gt;
|description = Controls blocking of a specific target from being considered during a weapon&#039;s periodic auto-targeting sweep. The second return value is the new priority for this target (if you don&#039;t want to change it, return defPriority). Lower priority targets are targeted first.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowWeaponInterceptTarget&lt;br /&gt;
|params = interceptorUnitID, interceptorWeaponID, targetProjectileID&lt;br /&gt;
|return = bool allowed&lt;br /&gt;
|description = Controls blocking of a specific intercept target from being considered during an {{xtaglink|Gamedev:WeaponDefs|interceptor}} weapon&#039;s periodic auto-targeting sweep. Only called for weaponDefIDs registered via [[Lua_System#Synced|Script.SetWatchWeapon]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowBuilderHoldFire&lt;br /&gt;
|params = unitID, unitDefID, action&lt;br /&gt;
|return = bool actionAllowed&lt;br /&gt;
|description = {{new|98.0}} {{Sourcelinkhash|5a82d750b89e72024bb0bb62cf05ea257737e0ac}}   Called when a construction unit wants to &amp;quot;use his nano beams&amp;quot;.&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;action&amp;lt;/code&amp;gt; is one of following:&lt;br /&gt;
* &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; Build&lt;br /&gt;
* &amp;lt;code&amp;gt;CMD.REPAIR&amp;lt;/code&amp;gt; Repair&lt;br /&gt;
* &amp;lt;code&amp;gt;CMD.RECLAIM&amp;lt;/code&amp;gt; Reclaim&lt;br /&gt;
* &amp;lt;code&amp;gt;CMD.RESTORE&amp;lt;/code&amp;gt; Restore&lt;br /&gt;
* &amp;lt;code&amp;gt;CMD.RESURRECT&amp;lt;/code&amp;gt; Resurrect&lt;br /&gt;
* &amp;lt;code&amp;gt;CMD.CAPTURE&amp;lt;/code&amp;gt; Capture&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = Explosion&lt;br /&gt;
|params = weaponDefID, px, py, pz, AttackerID&lt;br /&gt;
|return = bool noGfx&lt;br /&gt;
|description = Called when an explosion occurs. If it returns &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; then no graphical effects are drawn by the engine for this explosion.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = TerraformComplete&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, buildUnitID, buildUnitDefID, buildUnitTeam&lt;br /&gt;
|return = bool stop&lt;br /&gt;
|description = Called when pre-building terrain levelling terraforms are completed (c.f. {{xtaglink|Gamedev:UnitDefs|levelGround}}). If the return value is &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; the current build order is terminated.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = MoveCtrlNotify&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, data&lt;br /&gt;
|return = bool moveCtrlComplete&lt;br /&gt;
|description = Enable both [[Lua_MoveCtrl#Options|Spring.MoveCtrl.SetCollideStop]] and [[Lua_MoveCtrl#Options|Spring.MoveCtrl.SetTrackGround]] to enable this call-in, data was supposed to indicate the type of notification but currently never has a value other than &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; (&amp;quot;unit hit the ground&amp;quot;). The return value determines whether or not the unit should remain script-controlled (&amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt;) or return to engine controlled movement (&amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt;).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = RecvLuaMsg&lt;br /&gt;
|params = msg, playerID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Receives messages from unsynced sent via [[Lua_UnsyncedCtrl#SendLuaMessage|Spring.SendLuaRulesMsg]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = Load&lt;br /&gt;
|params = zip&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called after &amp;lt;code&amp;gt;GamePreload&amp;lt;/code&amp;gt; and before &amp;lt;code&amp;gt;GameStart&amp;lt;/code&amp;gt;. See [[Lua_SaveLoad#Load_.28_zip_.29_-.3E_nil|Lua_SaveLoad]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Damage Controllers ===&lt;br /&gt;
For the following callins, in addition to being a regular weapon, &amp;lt;code&amp;gt;weaponDefID&amp;lt;/code&amp;gt; may be one of the following:&lt;br /&gt;
* &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; - debris collision, also default of [[Lua_SyncedCtrl#Unit_Control|Spring.AddUnitDamage]]&lt;br /&gt;
* &amp;lt;code&amp;gt;-2&amp;lt;/code&amp;gt; - ground collision&lt;br /&gt;
* &amp;lt;code&amp;gt;-3&amp;lt;/code&amp;gt; - object collision&lt;br /&gt;
* &amp;lt;code&amp;gt;-4&amp;lt;/code&amp;gt; - fire damage&lt;br /&gt;
* &amp;lt;code&amp;gt;-5&amp;lt;/code&amp;gt; - water damage&lt;br /&gt;
* &amp;lt;code&amp;gt;-6&amp;lt;/code&amp;gt; - kill damage&lt;br /&gt;
* &amp;lt;code&amp;gt;-7&amp;lt;/code&amp;gt; - crush damage&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitPreDamaged&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, damage, paralyzer, weaponDefID, projectileID, attackerID, attackerDefID, attackerTeam&lt;br /&gt;
|return = number newDamage, number impulseMult&lt;br /&gt;
|description = Called before damage is applied to the unit, allows fine control over how much damage and [http://en.wikipedia.org/wiki/Impulse_(physics) impulse] is applied.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = ShieldPreDamaged&lt;br /&gt;
|params = proID, proOwnerID, shieldEmitterWeaponNum, shieldCarrierUnitID, bounceProjectile&lt;br /&gt;
|return = bool handleCollision&lt;br /&gt;
|description = Called before any engine shield-vs-projectile logic executes. If the return value is &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; the gadget handles the collision event and the engine does not remove the projectile.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = FeaturePreDamaged&lt;br /&gt;
|params = featureID, featureDefID, featureTeam, damage, weaponDefID, projectileID, attackerID, attackerDefID, attackerTeam&lt;br /&gt;
|return = number newDamage, number impulseMult&lt;br /&gt;
|description = Called before damage is applied to the feature, allows fine control over how much damage and [http://en.wikipedia.org/wiki/Impulse_(physics) impulse] is applied.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Category: Lua]]&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Lua:Callins&amp;diff=10763</id>
		<title>Lua:Callins</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Lua:Callins&amp;diff=10763"/>
		<updated>2015-11-03T22:03:07Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: I wonder how to get the full list of callin return values....&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Lua Callins =&lt;br /&gt;
This page is future looking to unified widget/gadget (aka &amp;quot;addon&amp;quot;) handler, which may yet be some way off, c.f. the [https://github.com/spring/spring/blob/ebb704e008f6ea645947d07be1cfcc272af0428f/doc/changelog.txt#L71 changelog].&lt;br /&gt;
&lt;br /&gt;
For now, to use these addons in a widget, replace addon with widget and, for a gadget, replace addon with gadget. For example,&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
    function widget:UnitCreated(unitID, unitDefID, unitTeam, builderID)&lt;br /&gt;
        ...  &lt;br /&gt;
    end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some functions may differ between (synced) gadget and widgets; those are in the [[#Synced_-_Unsynced_Shared]] section. Essentially the reason is that all information should be available to synced (game logic controlling) gadgets, but restricted to unsynced gadget/widget (e.g. information about an enemy unit only detected via radar and not yet in LOS). In such cases the full (synced) param list is documented.&lt;br /&gt;
&lt;br /&gt;
Warning: Some callins, such as KeyPress, may return a bool, to indicate that they grabbed the event and that it should not be available for others, despite being marked with none return on this list.&lt;br /&gt;
&lt;br /&gt;
== Common ==&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = Initialize&lt;br /&gt;
|params = &lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the addon is (re)loaded.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = Shutdown&lt;br /&gt;
|params = &lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the addon or the game is shutdown.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Unsynced Only ==&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DefaultCommand&lt;br /&gt;
|params = type, id&lt;br /&gt;
|return = number cmdID&lt;br /&gt;
|description = Used to set the default command when a unit is selected. First parameter is the type of the object pointed at (either &amp;quot;unit or &amp;quot;feature&amp;quot;) and the second is its unitID or featureID respectively. &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = CommandNotify&lt;br /&gt;
|params = cmdID, cmdParams, cmdOptions&lt;br /&gt;
|return = bool removeCmd&lt;br /&gt;
|description = Called when a command is issued. Returning &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; deletes the command and does not send it through the network.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = WorldTooltip&lt;br /&gt;
|params = ttType, data1, data2, data3&lt;br /&gt;
|return = string newTooltip&lt;br /&gt;
|description = The parameters can be &amp;lt;code&amp;gt;&amp;quot;unit&amp;quot;&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;unitID&amp;lt;/code&amp;gt;; &amp;lt;code&amp;gt;&amp;quot;feature&amp;quot;&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;featureID&amp;lt;/code&amp;gt;; &amp;lt;code&amp;gt;&amp;quot;ground&amp;quot;&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;posX&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;posY&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;posZ&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;&amp;quot;selection&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnsyncedHeightMapUpdate&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the unsynced copy of the height-map is altered.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GameProgress&lt;br /&gt;
|params = serverFrameNum&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called every 60 frames, calculating delta between GameFrame and GameProgress. Can give an ETA about catching up with simulation for mid-game join players.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GameSetup&lt;br /&gt;
|params =  state, ready, playerStates&lt;br /&gt;
|return = bool success, bool newReady&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = SunChanged&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AddConsoleLine&lt;br /&gt;
|params = msg, priority&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when text is entered into the console (e.g. Spring.Echo).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = RecvSkirmishAIMessage&lt;br /&gt;
|params = aiTeam, dataStr&lt;br /&gt;
|return = ???&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = RecvFromSynced&lt;br /&gt;
|params = ...&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Receives data sent via [[Lua_System#Synced|SendToUnsynced]] callout.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = Save&lt;br /&gt;
|params = zip&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a chat command &#039;/save&#039; or &#039;/savegame&#039; is received. The single argument is a userdatum representing the savegame zip file. See [[Lua_SaveLoad#Save_.28_zip_.29_-.3E_nil|Lua_SaveLoad]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = LoadProgress&lt;br /&gt;
|params = message, replaceLastLine&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Only available to LuaIntro.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GroupChanged&lt;br /&gt;
|params = groupID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is added to or removed from a control group. Currently implemented for widgets only.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = ConfigureLayout&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = ???&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Input ===&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = IsAbove&lt;br /&gt;
|params = x, y&lt;br /&gt;
|return = bool isAbove&lt;br /&gt;
|description = Called every Update. Must return &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; for &amp;lt;code&amp;gt;Mouse*&amp;lt;/code&amp;gt; events and &amp;lt;code&amp;gt;GetToolTip&amp;lt;/code&amp;gt; to be called.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GetTooltip&lt;br /&gt;
|params = x, y&lt;br /&gt;
|return = string tooltip&lt;br /&gt;
|description = Called when &amp;lt;code&amp;gt;IsAbove&amp;lt;/code&amp;gt; returns true.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = KeyPress&lt;br /&gt;
|params = key, mods, isRepeat&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called repeatedly when a key is pressed down. If you want an action to occur only once check for &amp;lt;code&amp;gt;isRepeat == false&amp;lt;/code&amp;gt;. The &amp;lt;code&amp;gt;mods&amp;lt;/code&amp;gt; parameter is a table, with keys &amp;lt;code&amp;gt;alt&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;ctrl&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;meta&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;shift&amp;lt;/code&amp;gt; each having a boolean value. &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = KeyRelease&lt;br /&gt;
|params = key&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the key is released.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = TextInput&lt;br /&gt;
|params = utf8char&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called whenever a key press results in text input. Introduced in 97.0.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = JoystickEvent&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = MousePress&lt;br /&gt;
|params = x, y, button&lt;br /&gt;
|return = bool becomeMouseOwner&lt;br /&gt;
|description = Called when a mouse button is pressed. The &amp;lt;code&amp;gt;button&amp;lt;/code&amp;gt; parameter supports up to 7 buttons. Must return &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; for &amp;lt;code&amp;gt;MouseRelease&amp;lt;/code&amp;gt; and other functions to be called.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = MouseRelease&lt;br /&gt;
|params = x, y, button&lt;br /&gt;
|return = bool becomeMouseOwner&lt;br /&gt;
|description = Called when a mouse button is released. Please note that in order to have Spring call &amp;lt;code&amp;gt;MouseRelease&amp;lt;/code&amp;gt;, you need to have a &amp;lt;code&amp;gt;MousePress&amp;lt;/code&amp;gt; call-in in the same addon that returns &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt;.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = MouseWheel&lt;br /&gt;
|params = up, value&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the mouse wheel is moved. The parameters indicate the direction and amount of travel.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = MouseMove&lt;br /&gt;
|params = x, y, dx, dy, button&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the mouse is moved. The &amp;lt;code&amp;gt;dx&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;dy&amp;lt;/code&amp;gt; parameters indicate the distance travelled, whereas the first two indicate the final position.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Players ===&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = PlayerChanged&lt;br /&gt;
|params = playerID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called whenever a player&#039;s status changes e.g. becoming a spectator.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = PlayerAdded&lt;br /&gt;
|params = playerID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called whenever a new player joins the game.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = PlayerRemoved&lt;br /&gt;
|params = playerID, reason&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called whenever a player is removed from the game.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Drawing ===&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = ViewResize&lt;br /&gt;
|params = viewSizeX, viewSizeY&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called whenever the window is resized.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = Update&lt;br /&gt;
|params = dt&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called for every draw frame. The parameter is the time since the last update. Perform calculations in here and only drawing in Draw* callins.}}&lt;br /&gt;
&lt;br /&gt;
Inside the Draw* functions, you can use the [[Lua_OpenGL_Api | Lua OpenGL Api]] to draw graphics.&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawGenesis&lt;br /&gt;
|params =&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Doesn&#039;t render to screen! Use this callin to update textures, shaders, etc.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawWorldPreUnit&lt;br /&gt;
|params = &lt;br /&gt;
|return = none&lt;br /&gt;
|description = Spring draws units, features, some water types, cloaked units, and the sun.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawWorld&lt;br /&gt;
|params =&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Spring draws command queues, &#039;map stuff&#039;, and map marks.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawWorldShadow&lt;br /&gt;
|params =&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawWorldReflection&lt;br /&gt;
|params =&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawWorldRefraction&lt;br /&gt;
|params =&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawScreen&lt;br /&gt;
|params = &lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawScreenEffects&lt;br /&gt;
|params = vsx, vsy&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Where &amp;lt;code&amp;gt;vsx&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;vsy&amp;lt;/code&amp;gt; are screen coordinates.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawLoadScreen&lt;br /&gt;
|params =&lt;br /&gt;
|return = none&lt;br /&gt;
|description = {{new|95.0}} Only available to LuaIntro, draws custom load screens.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawInMinimap&lt;br /&gt;
|params = sx, sy&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Where &amp;lt;code&amp;gt;sx&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sy&amp;lt;/code&amp;gt; are values relative to the minimap&#039;s position and scale.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawInMinimapBackground&lt;br /&gt;
|params = sx, sy&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Where &amp;lt;code&amp;gt;sx&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sy&amp;lt;/code&amp;gt; are values relative to the minimap&#039;s position and scale.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Custom Object Rendering ===&lt;br /&gt;
For the following calls &amp;lt;code&amp;gt;drawMode&amp;lt;/code&amp;gt; can be one of the following, &amp;lt;code&amp;gt;notDrawing = 0&amp;lt;/code&amp;gt;,	&amp;lt;code&amp;gt;normalDraw = 1&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;shadowDraw = 2&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;reflectionDraw = 3&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;refractionDraw = 4&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawUnit&lt;br /&gt;
|params = unitID, drawMode&lt;br /&gt;
|return = bool suppressEngineDraw&lt;br /&gt;
|description = For custom rendering of units, [[Lua_UnitRendering#Lua.27s_DrawXYZ-Callin|enabled here]].	&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawFeature&lt;br /&gt;
|params = unitID, drawMode&lt;br /&gt;
|return = bool suppressEngineDraw&lt;br /&gt;
|description = For custom rendering of features, [[Lua_UnitRendering#Lua.27s_DrawXYZ-Callin|enabled here]].	&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawShield&lt;br /&gt;
|params = unitID, weaponID, drawMode&lt;br /&gt;
|return = bool suppressEngineDraw&lt;br /&gt;
|description = For custom rendering of [[Gamedev:WeaponDefs#Shield_(WeaponType)|shields]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = DrawProjectile&lt;br /&gt;
|params = projectileID, drawMode&lt;br /&gt;
|return = bool suppressEngineDraw&lt;br /&gt;
|description = For custom rendering of weapon (&amp;amp; other) projectiles.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Synced - Unsynced Shared ==&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GotChatMsg&lt;br /&gt;
|params = msg, player&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a player issues a UI command e.g. types &amp;lt;code&amp;gt;/foo&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;/luarules foo&amp;lt;/code&amp;gt;.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Game ===&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GameID&lt;br /&gt;
|params = gameID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called once to deliver the gameID.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GamePaused&lt;br /&gt;
|params = &lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the game is paused.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GameOver&lt;br /&gt;
|params = winningAllyTeams&lt;br /&gt;
|return = none&lt;br /&gt;
|description = The parameter is a list of winning allyTeams, if empty the game result was undecided (like when dropping from an host).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GameFrame&lt;br /&gt;
|params = frame&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called for every game simulation frame (30 per second).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GamePreload&lt;br /&gt;
|params = &lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called before the 0 gameframe.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = GameStart&lt;br /&gt;
|params =&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called upon the start of the game.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = TeamChanged&lt;br /&gt;
|params = teamID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = TeamDied&lt;br /&gt;
|params = teamID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a team dies (see [[Lua_SyncedCtrl#Game_End|Spring.KillTeam]]).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Units ===&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitCreated&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, builderID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called at the moment the unit is created.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitFinished&lt;br /&gt;
|params = unitID, unitDefID, unitTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called at the moment the unit is completed.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitFromFactory&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, factID, factDefID, userOrders&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a factory finishes construction of a unit.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitGiven&lt;br /&gt;
|params = unitID, unitDefID, newTeam, oldTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is transferred between teams.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitTaken&lt;br /&gt;
|params = unitID, unitDefID, oldTeam, newTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is transferred between teams.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitDamaged&lt;br /&gt;
|params =  unitID, unitDefID, unitTeam, damage, paralyzer, weaponDefID, projectileID, attackerID, attackerDefID, attackerTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is damaged (after &amp;lt;code&amp;gt;UnitPreDamaged&amp;lt;/code&amp;gt;).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitDestroyed&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, attackerID, attackerDefID, attackerTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is destroyed.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitStunned&lt;br /&gt;
|params =  unitID, unitDefID, unitTeam, stunned&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit changes its stun status. {{new|99.0}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitUnitCollision&lt;br /&gt;
|params = colliderID, collideeID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when two units collide. Both units must be registered with [[Lua_System#Synced|Script.SetWatchUnit]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitFeatureCollision&lt;br /&gt;
|params = colliderID, collideeID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit collides with a feature. The unit must be registered with [[Lua_System#Synced|Script.SetWatchUnit]] and the feature registered with [[Lua_System#Synced|Script.SetWatchFeature]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitCommand&lt;br /&gt;
|params = unitID, unitDefID, teamID, cmdID, cmdParams, cmdOptions&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called after when a unit accepts a command, after &amp;lt;code&amp;gt;AllowCommand&amp;lt;/code&amp;gt; returns &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt;.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitCmdDone&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, cmdID, cmdTag, cmdParams, cmdOpts&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit completes a command.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitLoaded&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, transportID, transportTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is loaded by a transport.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitUnloaded&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, transportID, transportTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is unloaded by a transport.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitExperience&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, experience, oldExperience&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit gains experience greater or equal to the minimum limit set by calling [[Lua_SyncedCtrl#Other|Spring.SetExperienceGrade]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitIdle&lt;br /&gt;
|params = unitID, unitDefID, unitTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit is idle (empty command queue).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitCloaked&lt;br /&gt;
|params = unitID, unitDefID, unitTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit cloaks.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitDecloaked&lt;br /&gt;
|params = unitID, unitDefID, unitTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit decloaks.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitMoved&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ??? Not implemented in base handler&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitMoveFailed&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ??? Not implemented in base handler&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = StockpileChanged&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, weaponNum, oldCount, newCount&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a units stockpile of weapons increases or decreases. See {{xtaglink|Gamedev:WeaponDefs|stockpile}}.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitEnteredLos&lt;br /&gt;
|params = unitID, unitTeam, allyTeam, unitDefID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit enters LOS of an allyteam.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitLeftLos&lt;br /&gt;
|params = unitID, unitTeam, allyTeam, unitDefID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit leaves LOS of an allyteam.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitEnteredRadar&lt;br /&gt;
|params = unitID, unitTeam, allyTeam, unitDefID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit enters radar of an allyteam.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitLeftRadar&lt;br /&gt;
|params = unitID, unitTeam, allyTeam, unitDefID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit leaves radar of an allyteam.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitEnteredAir&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ??? Not implemented by base handler&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitLeftAir&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ??? Not implemented by base handler&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitEnteredWater&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ??? Not implemented by base handler&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitLeftWater&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ??? Not implemented by base handler&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitSeismicPing&lt;br /&gt;
|params = x, y, z, strength, allyTeam, unitID, unitDefID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a unit emits a seismic ping. See {{xtaglink|Gamedev:UnitDefs|seismicSignature}}.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = FeatureCreated&lt;br /&gt;
|params = featureID, allyTeamID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a feature is created.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = FeatureDamaged&lt;br /&gt;
|params =  featureID, featureDefID, featureTeam, damage, weaponDefID, projectileID, attackerID, attackerDefID, attackerTeam&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a feature is damaged.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = FeatureDestroyed&lt;br /&gt;
|params = featureID, allyTeamID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when a feature is destroyed.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = FeatureMoved&lt;br /&gt;
|params = ???&lt;br /&gt;
|return = none&lt;br /&gt;
|description = ???&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Projectiles ===&lt;br /&gt;
The following Callins are only called for weaponDefIDs registered via [[Lua_System#Synced|Script.SetWatchWeapon]].&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = ProjectileCreated&lt;br /&gt;
|params = proID, proOwnerID, weaponDefID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the projectile is created.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = ProjectileDestroyed&lt;br /&gt;
|params = proID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called when the projectile is destroyed.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Synced Only ==&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = CommandFallback&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, cmdID, cmdParams, cmdOptions, cmdTag&lt;br /&gt;
|return = bool used, bool finished&lt;br /&gt;
|description = Called when the unit reaches an unknown command in its queue (i.e. one not handled by the engine). If no addon returns &amp;lt;code&amp;gt;used&amp;lt;/code&amp;gt; as &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; the command is dropped, if an addon returns &amp;lt;code&amp;gt;true, true&amp;lt;/code&amp;gt; the command is removed because it&#039;s done, with &amp;lt;code&amp;gt;true, false&amp;lt;/code&amp;gt; it&#039;s kept in the queue and &amp;lt;code&amp;gt;CommandFallback&amp;lt;/code&amp;gt; gets called again on the next slowupdate.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowCommand&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, cmdID, cmdParams, cmdOptions, cmdTag, synced&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called when the command is given, before the unit&#039;s queue is altered. The return value is whether it should be let into the queue. The queue remains untouched when a command is blocked, whether it would be queued or replace the queue.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowUnitCreation&lt;br /&gt;
|params = unitDefID, builderID, builderTeam, x, y, z, facing&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called just before unit is created, the boolean return value determines whether or not the creation is permitted.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowUnitTransfer&lt;br /&gt;
|params = unitID, unitDefID, oldTeam, newTeam, capture&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called just before a unit is transferred to a different team, the boolean return value determines whether or not the transfer is permitted.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowUnitBuildStep&lt;br /&gt;
|params = builderID, builderTeam, unitID, unitDefID, part&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called just before a unit progresses its build percentage, the boolean return value determines whether or not the build makes progress.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowFeatureCreation&lt;br /&gt;
|params = featureDefID, teamID, x, y, z&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called just before feature is created, the boolean return value determines whether or not the creation is permitted.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowFeatureBuildStep&lt;br /&gt;
|params = builderID, builderTeam, featureID, featureDefID, part&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called just before a feature progresses its build percentage, the boolean return value determines whether or not the progress change is permitted.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowResourceLevel&lt;br /&gt;
|params = teamID, res, level&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called when a team sets the sharing level of a resource, the boolean return value determines whether or not the sharing level is permitted.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowResourceTransfer&lt;br /&gt;
|params = oldTeamID, newTeamID, res, amount&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Called just before resources are transferred between players, the boolean return value determines whether or not the transfer is permitted.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowStartPosition&lt;br /&gt;
|params =  clampedX, clampedY, clampedZ, playerID, readyState, rawX, rawY, rawZ&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = &amp;lt;code&amp;gt;clamped&amp;lt;/code&amp;gt; are the coordinates clamped into start-boxes, &amp;lt;code&amp;gt;raw&amp;lt;/code&amp;gt; is where player tried to place their marker. The &amp;lt;code&amp;gt;readyState&amp;lt;/code&amp;gt; can be any one of &lt;br /&gt;
* &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; - player picked a position, &lt;br /&gt;
* &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; - player clicked ready, &lt;br /&gt;
* &amp;lt;code&amp;gt;2&amp;lt;/code&amp;gt; - player pressed ready OR  the game was force-started (player did not click ready, but is now forcibly readied) or &lt;br /&gt;
* &amp;lt;code&amp;gt;3&amp;lt;/code&amp;gt; - the player failed to load. &lt;br /&gt;
* {{new|95.0}} the default &#039;failed to choose&#039; start-position is the north-west point of their startbox, or &amp;lt;code&amp;gt;(0,0,0)&amp;lt;/code&amp;gt; if they do not have a startbox. &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowDirectUnitControl&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, playerID&lt;br /&gt;
|return = bool allow&lt;br /&gt;
|description = Determines if this unit can be controlled directly in FPS view.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowWeaponTargetCheck&lt;br /&gt;
|params = attackerID, attackerWeaponNum, attackerWeaponDefID&lt;br /&gt;
|return = bool allowCheck, bool ignoreCheck&lt;br /&gt;
|description = Determines if this weapon can automatically generate targets itself. See also {{xtaglink|Gamedev:WeaponDefs|commandFire}} weaponDef tag. The &amp;lt;code&amp;gt;ignoreCheck&amp;lt;/code&amp;gt; return value was added in 99.0 to allow ignoring the callin i.e. running normal engine check for this weapon.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowWeaponTarget&lt;br /&gt;
|params = attackerID, targetID, attackerWeaponNum, attackerWeaponDefID, defPriority&lt;br /&gt;
|return = bool allowed, number newPriority&lt;br /&gt;
|description = Controls blocking of a specific target from being considered during a weapon&#039;s periodic auto-targeting sweep. The second return value is the new priority for this target (if you don&#039;t want to change it, return defPriority). Lower priority targets are targeted first.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowWeaponInterceptTarget&lt;br /&gt;
|params = interceptorUnitID, interceptorWeaponID, targetProjectileID&lt;br /&gt;
|return = bool allowed&lt;br /&gt;
|description = Controls blocking of a specific intercept target from being considered during an {{xtaglink|Gamedev:WeaponDefs|interceptor}} weapon&#039;s periodic auto-targeting sweep. Only called for weaponDefIDs registered via [[Lua_System#Synced|Script.SetWatchWeapon]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = AllowBuilderHoldFire&lt;br /&gt;
|params = unitID, unitDefID, action&lt;br /&gt;
|return = bool actionAllowed&lt;br /&gt;
|description = {{new|98.0}} {{Sourcelinkhash|5a82d750b89e72024bb0bb62cf05ea257737e0ac}}   Called when a construction unit wants to &amp;quot;use his nano beams&amp;quot;.&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;action&amp;lt;/code&amp;gt; is one of following:&lt;br /&gt;
* &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; Build&lt;br /&gt;
* &amp;lt;code&amp;gt;CMD.REPAIR&amp;lt;/code&amp;gt; Repair&lt;br /&gt;
* &amp;lt;code&amp;gt;CMD.RECLAIM&amp;lt;/code&amp;gt; Reclaim&lt;br /&gt;
* &amp;lt;code&amp;gt;CMD.RESTORE&amp;lt;/code&amp;gt; Restore&lt;br /&gt;
* &amp;lt;code&amp;gt;CMD.RESURRECT&amp;lt;/code&amp;gt; Resurrect&lt;br /&gt;
* &amp;lt;code&amp;gt;CMD.CAPTURE&amp;lt;/code&amp;gt; Capture&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = Explosion&lt;br /&gt;
|params = weaponDefID, px, py, pz, AttackerID&lt;br /&gt;
|return = bool noGfx&lt;br /&gt;
|description = Called when an explosion occurs. If it returns &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; then no graphical effects are drawn by the engine for this explosion.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = TerraformComplete&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, buildUnitID, buildUnitDefID, buildUnitTeam&lt;br /&gt;
|return = bool stop&lt;br /&gt;
|description = Called when pre-building terrain levelling terraforms are completed (c.f. {{xtaglink|Gamedev:UnitDefs|levelGround}}). If the return value is &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; the current build order is terminated.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = MoveCtrlNotify&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, data&lt;br /&gt;
|return = bool moveCtrlComplete&lt;br /&gt;
|description = Enable both [[Lua_MoveCtrl#Options|Spring.MoveCtrl.SetCollideStop]] and [[Lua_MoveCtrl#Options|Spring.MoveCtrl.SetTrackGround]] to enable this call-in, data was supposed to indicate the type of notification but currently never has a value other than &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; (&amp;quot;unit hit the ground&amp;quot;). The return value determines whether or not the unit should remain script-controlled (&amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt;) or return to engine controlled movement (&amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt;).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = RecvLuaMsg&lt;br /&gt;
|params = msg, playerID&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Receives messages from unsynced sent via [[Lua_UnsyncedCtrl#SendLuaMessage|Spring.SendLuaRulesMsg]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = Load&lt;br /&gt;
|params = zip&lt;br /&gt;
|return = none&lt;br /&gt;
|description = Called after &amp;lt;code&amp;gt;GamePreload&amp;lt;/code&amp;gt; and before &amp;lt;code&amp;gt;GameStart&amp;lt;/code&amp;gt;. See [[Lua_SaveLoad#Load_.28_zip_.29_-.3E_nil|Lua_SaveLoad]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Damage Controllers ===&lt;br /&gt;
For the following callins, in addition to being a regular weapon, &amp;lt;code&amp;gt;weaponDefID&amp;lt;/code&amp;gt; may be one of the following:&lt;br /&gt;
* &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; - debris collision, also default of [[Lua_SyncedCtrl#Unit_Control|Spring.AddUnitDamage]]&lt;br /&gt;
* &amp;lt;code&amp;gt;-2&amp;lt;/code&amp;gt; - ground collision&lt;br /&gt;
* &amp;lt;code&amp;gt;-3&amp;lt;/code&amp;gt; - object collision&lt;br /&gt;
* &amp;lt;code&amp;gt;-4&amp;lt;/code&amp;gt; - fire damage&lt;br /&gt;
* &amp;lt;code&amp;gt;-5&amp;lt;/code&amp;gt; - water damage&lt;br /&gt;
* &amp;lt;code&amp;gt;-6&amp;lt;/code&amp;gt; - kill damage&lt;br /&gt;
* &amp;lt;code&amp;gt;-7&amp;lt;/code&amp;gt; - crush damage&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = UnitPreDamaged&lt;br /&gt;
|params = unitID, unitDefID, unitTeam, damage, paralyzer, weaponDefID, projectileID, attackerID, attackerDefID, attackerTeam&lt;br /&gt;
|return = number newDamage, number impulseMult&lt;br /&gt;
|description = Called before damage is applied to the unit, allows fine control over how much damage and [http://en.wikipedia.org/wiki/Impulse_(physics) impulse] is applied.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = ShieldPreDamaged&lt;br /&gt;
|params = proID, proOwnerID, shieldEmitterWeaponNum, shieldCarrierUnitID, bounceProjectile&lt;br /&gt;
|return = bool handleCollision&lt;br /&gt;
|description = Called before any engine shield-vs-projectile logic executes. If the return value is &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; the gadget handles the collision event and the engine does not remove the projectile.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{LuaCallin&lt;br /&gt;
|name = FeaturePreDamaged&lt;br /&gt;
|params = featureID, featureDefID, featureTeam, damage, weaponDefID, projectileID, attackerID, attackerDefID, attackerTeam&lt;br /&gt;
|return = number newDamage, number impulseMult&lt;br /&gt;
|description = Called before damage is applied to the feature, allows fine control over how much damage and [http://en.wikipedia.org/wiki/Impulse_(physics) impulse] is applied.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Category: Lua]]&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=AI:Development:Lang:Lua&amp;diff=677</id>
		<title>AI:Development:Lang:Lua</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=AI:Development:Lang:Lua&amp;diff=677"/>
		<updated>2014-08-25T01:54:07Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: /* References */ adding Spring Tank AI&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[AI:Development|AI Development]] &amp;lt; Lua AI Development&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h1&amp;gt;Writing a Lua AI&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
=== Lua AIs are different ===&lt;br /&gt;
Lua for AIs is quite different from all the other AI languages supported by spring. Lua AIs use a completely different interface, and they can not be shipped separately, but only bundled with a mod.&lt;br /&gt;
&lt;br /&gt;
=== Things to know ===&lt;br /&gt;
* They have to be bundled with a mod. Therefore, you should consider contacting the mod developer(s) in question early, to see if they are at all interested in an AI.&lt;br /&gt;
* A Lua AI is actually a regular gadget. The difference is just that it is listed in the mods LuaAI.lua file. See [[Lua_Scripting|Lua Scripting]] for details.&lt;br /&gt;
* This brings up the problem that AIs can &amp;quot;accidentally&amp;quot; cheat or even move units of the enemy! It is up to the AI writer to avoid that. All AI players of the same type also share the same variables and tables. One way to avoid that is to put everything into a teamdata[teamID] table. Or the use of classes.&lt;br /&gt;
&lt;br /&gt;
== How to start ==&lt;br /&gt;
For a start, choose a single mod you want your AI to work with.&lt;br /&gt;
You will also want to contact the mods developer(s) before you start to code,&lt;br /&gt;
or soon thereafter.&lt;br /&gt;
&lt;br /&gt;
Things you need to get comfortable with:&lt;br /&gt;
* the Lua scripting language&lt;br /&gt;
* Lua scripting for spring (gadgets)&lt;br /&gt;
&lt;br /&gt;
You may combine learning Lua for spring with writing simplistic gadgets or widgets for spring, and publishing them [http://springrts.com/phpbb/viewforum.php?f=23 in the forum],&lt;br /&gt;
as this way you get practical training and feedback about your code from the pros, plus the community eventually gets a usefull addon.&lt;br /&gt;
When you start feeling comfortable, you should inspect the code of Lua AIs that are already available.&lt;br /&gt;
Source code of these AIs can be found in the mod archives, which you may open with 7zip, or it may be available separately (see [[#References|References]]).&lt;br /&gt;
&lt;br /&gt;
=== Integrating the AI Gadget ===&lt;br /&gt;
This section explains everything you have to do to integrate your Lua AI into a mod. Which at the same time is everything that separates a Lua AI form a gadget.&lt;br /&gt;
&lt;br /&gt;
In the root of the mods archive, you need the file &#039;&#039;LuaAI.lua&#039;&#039;,&lt;br /&gt;
which should look about like this:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 -- file: LuaAI.lua&lt;br /&gt;
 local listOfLuaAIs = {&lt;br /&gt;
     {&lt;br /&gt;
         name = &amp;quot;MyFirstAI&amp;quot;,&lt;br /&gt;
         desc = &amp;quot;Beats even the best players with Core, most others with Arm too&amp;quot;,&lt;br /&gt;
     },&lt;br /&gt;
 }&lt;br /&gt;
 return listOfLuaAIs&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Besides all the other stuff you need for a gadget (you should know this by now),&lt;br /&gt;
you will need something like this in your code (eg under &#039;&#039;{mod_root}/LuaRules/Gadgets/MyFirstAI_v01.lua&#039;&#039;):&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 function gadget:GetInfo()&lt;br /&gt;
     return {&lt;br /&gt;
         name    = &amp;quot;MyFirstAI&amp;quot;,&lt;br /&gt;
         desc    = &amp;quot;An AI that knows how to play Mod X&amp;quot;,&lt;br /&gt;
         author  = &amp;quot;John Doe&amp;quot;,&lt;br /&gt;
         date    = &amp;quot;2020-12-31&amp;quot;,&lt;br /&gt;
         license = &amp;quot;Public Domain&amp;quot;,&lt;br /&gt;
         layer   = 82,&lt;br /&gt;
         enabled = true&lt;br /&gt;
     }&lt;br /&gt;
 end&lt;br /&gt;
 &lt;br /&gt;
 function gadget:GameStart() &lt;br /&gt;
     -- Initialise AI for all teams that are set to use it&lt;br /&gt;
     for _,t in ipairs(Spring.GetTeamList()) do&lt;br /&gt;
         local _,_,_,isAI,side = Spring.GetTeamInfo(t)&lt;br /&gt;
         if Spring.GetTeamLuaAI(t) == gadget:GetInfo().name then&lt;br /&gt;
             Spring.Echo(&amp;quot;Team &amp;quot;..t..&amp;quot; assigned to &amp;quot;..gadget:GetInfo().name)&lt;br /&gt;
             local pos = {}&lt;br /&gt;
             local home_x,home_y,home_z = Spring.GetTeamStartPosition(t)&lt;br /&gt;
         end&lt;br /&gt;
     end&lt;br /&gt;
 end&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039;&lt;br /&gt;
The above example will not work if your AI controls multiple teams because &#039;&#039;home_x,home_y,home_z&#039;&#039; are not stored &#039;&#039;per team.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
That&#039;s it, the rest of the game is using regular gadget functions, and in particular [http://springrts.com/wiki/Lua_SyncedCtrl#Give_Order Spring.GiveOrderToUnit()]. Now you should be able to use this AI when starting the modified mod in the lobby, when you click on the &#039;&#039;Add Bot&#039;&#039; button. From Spring 95.0 onwards, lua AIs can be selected from the Spring.exe menu.&lt;br /&gt;
&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
* NOE AI: http://springrts.com/phpbb/viewtopic.php?f=55&amp;amp;t=28259&lt;br /&gt;
* ST AI source: http://pastebin.com/v1kNRBDj&lt;br /&gt;
* KP AI source: http://pastebin.com/f771164a0&lt;br /&gt;
* CRAIG source:&lt;br /&gt;
** to browse: http://github.com/tvo/craig/tree/master&lt;br /&gt;
** for git: git://github.com/tvo/craig.git&lt;br /&gt;
* C.R.A.I.G. is inside S44 and SWIW&lt;br /&gt;
* forum thread: [http://springrts.com/phpbb/viewtopic.php?f=15&amp;amp;t=25639 LuaAI information] &lt;br /&gt;
* forum threads about an AI for the game Conflict Terra: [http://springrts.com/phpbb/viewtopic.php?f=63&amp;amp;t=26148] [http://springrts.com/phpbb/viewtopic.php?f=63&amp;amp;t=26214] [http://springrts.com/phpbb/viewtopic.php?f=15&amp;amp;t=26207] (among the OT, some more or less common LuaAI problems are discussed)&lt;br /&gt;
&lt;br /&gt;
[[Category: AI Dev]]&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10049</id>
		<title>Kernel Panic</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10049"/>
		<updated>2014-08-22T17:50:36Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: added a ----&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;http://img390.imageshack.us/img390/6289/kernelhd0.png&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Overview:==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;For the latest news and/or assistance, try the [http://springrts.com/phpbb/viewforum.php?f=43&#039;&#039;&#039;KP forum&#039;&#039;&#039;] or go to #kp when you log onto the lobby.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kernel Panic&#039;&#039;&#039; is a game about computers. Systems, Hackers and Networks wage war in a matrix of DOOM! The only constraints are time and space; unlike other real time strategy games, no resource economy exists in KP. &lt;br /&gt;
&lt;br /&gt;
All units are free in this game, every factory built will be spamming units at all times. You can build more factories, but only on pre-defined areas (geothermal vents). All that remains is pure strategy and tactics. &lt;br /&gt;
&lt;br /&gt;
KP makes for a frantically fast-paced, action-oriented game, with a very unique graphical style.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Download links:==&lt;br /&gt;
&lt;br /&gt;
Current Version of Kernel Panic is 4.6&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Newcomers:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you run &#039;&#039;&#039;Windows&#039;&#039;&#039; (2000,XP,Vista,7):&lt;br /&gt;
*** Here you can get a complete installer:&lt;br /&gt;
*** http://springfiles.com/spring/game-installers/kernel-panic-installer&lt;br /&gt;
*** Use it to install both Spring and Kernel Panic in one go.&lt;br /&gt;
*** Then use the shortcuts created in your Start Menu or Desktop.&lt;br /&gt;
** If you run &#039;&#039;&#039;Linux&#039;&#039;&#039;:&lt;br /&gt;
*** Read the [[SetupGuide]] how to install the Spring engine on Linux systems&lt;br /&gt;
*** Get and unzip that file: http://springfiles.com/spring/game-installers/kernel-panic-zip&lt;br /&gt;
*** Put the content of /games/ into ~/.spring/games&lt;br /&gt;
*** Put the content of /maps/ into ~/.spring/maps &lt;br /&gt;
*** Discard the rest.&lt;br /&gt;
*** Run Spring directly, a greenish menu should pop up.&lt;br /&gt;
*** Click skirmish, duel, easy, run.&lt;br /&gt;
*** For multiplayer or advanced options, run SpringLobby&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Experienced Users:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you have already the Spring engine (or prefer to install it yourself): Here you can get a zip with the mod file, the maps, and a tiny exe for single player frontend. Unzip into your Spring root folder: http://springfiles.com/spring/game-installers/kernel-panic-zip&lt;br /&gt;
** If you are certain you have all the maps and just need a quick link to the mod file itself: http://springfiles.com/spring/games/kernel-panic-mod&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Media:==&lt;br /&gt;
&lt;br /&gt;
===Youtube Videos:===&lt;br /&gt;
&lt;br /&gt;
[http://youtube.com/watch?v=doF7owZ0blk&amp;amp;fmt=18 http://i.ytimg.com/vi/doF7owZ0blk/default.jpg] &lt;br /&gt;
[http://youtube.com/watch?v=Ug1c19yaZac http://i.ytimg.com/vi/Ug1c19yaZac/default.jpg] [http://youtube.com/watch?v=GAZQhRlt5bU http://i.ytimg.com/vi/GAZQhRlt5bU/default.jpg]&lt;br /&gt;
[http://www.youtube.com/watch?v=3q48ys5hFtI&amp;amp;fmt=18 http://i.ytimg.com/vi/3q48ys5hFtI/default.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Still shots:===&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg http://tof.canardpc.com/preview/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg] [http://tof.canardpc.com/view/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg http://tof.canardpc.com/preview/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg] [http://tof.canardpc.com/view/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg http://tof.canardpc.com/preview/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg]&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg http://tof.canardpc.com/preview/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg] [http://tof.canardpc.com/view/e5184baf-6c95-4c90-8469-b00a4f092054.jpg http://tof.canardpc.com/preview/e5184baf-6c95-4c90-8469-b00a4f092054.jpg] [http://tof.canardpc.com/view/cbe6dae0-a696-450a-bf22-236043d76511.jpg http://tof.canardpc.com/preview/cbe6dae0-a696-450a-bf22-236043d76511.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==License:==&lt;br /&gt;
Extracted from the [http://pastebin.ca/2834721 &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
========--------------------------------------------&lt;br /&gt;
License:&lt;br /&gt;
--------&lt;br /&gt;
- The content of the /games/Kernel*.sd7 is Public Domain, save:&lt;br /&gt;
  /LuaUI/Widgets/kp_buildbar.lua&lt;br /&gt;
  /LuaRules/Gadgets/autohold.lua&lt;br /&gt;
  /LuaRules/Gadgets/Burrow.lua&lt;br /&gt;
  /LuaRules/Gadgets/game_spawn.lua&lt;br /&gt;
  which are GPL, taken from http://www.caspring.org or http://springrts.com&lt;br /&gt;
- The maps Marble Madness and Direct Memory Access are Public Domain&lt;br /&gt;
- The maps Major Madness and Speed Balls 16 Way status are unknown&lt;br /&gt;
- The maps Central Hub, Corrupted Core, Dual Core, Quad Core were initially CC BY-NC-SA.&lt;br /&gt;
  Then the author removed the CC cause ( http://cpc.cx/4u3 )&lt;br /&gt;
- The Spring engine is GPL, available from http://spring.clan-sy.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Game Modes:==&lt;br /&gt;
By default the aim is to destroy the homebase and all the minifacs of all opposing teams.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Other &amp;quot;mod options&amp;quot; available are:&lt;br /&gt;
* &#039;&#039;&#039;King Of The Hill :&#039;&#039;&#039; Keeps control of the map center for a given time to win.&lt;br /&gt;
* &#039;&#039;&#039;O.N.S. :&#039;&#039;&#039; Adds shields to buildings, preventing homebase rush.&lt;br /&gt;
* &#039;&#039;&#039;Save Our Mem :&#039;&#039;&#039; Unit leave &amp;quot;leaks&amp;quot; that must be reclaimed.&lt;br /&gt;
* &#039;&#039;&#039;Color Wars :&#039;&#039;&#039; Whoever controls the most territory when timer elapse wins.&lt;br /&gt;
* &#039;&#039;&#039;Heroes of Mainframe :&#039;&#039;&#039; You only control a very buffed up but single unit. Best used with &amp;quot;Pre-placed Minifacs&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;Rebalancing formula :&#039;&#039;&#039; Let you change the stat of any units of weapons without the hassle of making a mutator. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For details, read [http://pastebin.ca/2834721 &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] or click [?] next to each mod option in your lobby.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Units and Buildings:==&lt;br /&gt;
&lt;br /&gt;
===System units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Kernel.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Kernel:&#039;&#039;&#039; You start with one of these. It can build all mobile units in the game. Has rapid auto-heal and lots of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Socket.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Socket:&#039;&#039;&#039; The socket is a factory which can only be built on a geothermal vent. It can solely build bits, and slower than the kernel can. It autoheals, and has a decent amount of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Terminal.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Terminal:&#039;&#039;&#039;(only available in Division Zero) This is a new structure that gets placed on geovents. It can dispatch a nuclear bomber once every 90 seconds that will deal about 16000 damage to a large target area, i.e. it destroys everything except factories. It does much less damage to the kernel and hole. The bomber can strike any position on the map, there is no defense.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Assembler.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Assembler:&#039;&#039;&#039; The assembler is a construction unit. It can build sockets, but it cannot assist-build. Slow, little health. Equipped with a radar to detect mines and other cloacked units.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Bit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bit:&#039;&#039;&#039; Your basic attacking unit. Cheap, fast, small, not very much health. Is armed with a SPARCling laser. Can be built by a kernel or a socket.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Byte.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Byte:&#039;&#039;&#039; A large, strong, and slow attacking unit. Can holds it&#039;s own against many bits, as it has lots of health and a powerful gun. More armored when closed. Can plow through bad blocks. The byte has an alternate firing mode, the mine launcher, which throws 5 mines at the cost of much health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Pointer.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Pointer:&#039;&#039;&#039; An artillery unit. Its normal shot is not so useful against moving units, but can kill kernels and sockets pretty quickly. Is slow and has little health, so it needs protection. The pointer has an alternate firing mode, the NX Flag, which set a wide area ablaze for a minute, causing constant damage to all units, or buildings within it&#039;s range.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Hacker units:===&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96NewHoleLow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Security Hole:&#039;&#039;&#039; The Hacker kernel equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Window.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Window:&#039;&#039;&#039; The Hacker socket equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Obelisk.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Obelisk:&#039;&#039;&#039; This building is a stationary artillery weapon, it can fire an infection shot every 40 seconds (the obelisk has a pink fire on top when it&#039;s ready to shoot) that will cover a large area in poison. The poison does a bit of damage (about 1000) and turns any enemy that dies inside the cloud into a Virus. The weapon&#039;s range is fairly limited. Best used against stationnary herds of Bits/Bugs.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96NewTrojan.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Trojan:&#039;&#039;&#039; This unit is your constructor as well as radar platform (needed for detecting mines and cloaked units), just like the assembler. It builds all the same stuff as the assembler, except it has the window instead of the socket and the obelisk instead of the terminal.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Virus.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Virus:&#039;&#039;&#039; A crappy little swarm unit. It cannot be built but is produced when killing enemy units with certain weapons. Namely, the Virus, the Worm, and the Obelisk.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96NewBug.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Bug:&#039;&#039;&#039; The Hacker spam unit. The Bug is weaker than the Bit but can sense movement outside of its LOS. It has a stronger weapon and more range but cannot shoot at things behind it or through friendly units and won&#039;t take much damage before dying. The mine ability of the old bug has been removed. Instead it can now morph into the Exploit with the deploy button, or the bombard button.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Exploit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Exploit:&#039;&#039;&#039; This is the new name for the bug cannon. It&#039;s a building the Bug morphs into with the deploy or bombard command. The Exploit is a stationary artillery emplacement that does more damage the further the target is away. Even more frail than the Bug, so don&#039;t let any foe come near.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96NewWorm.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Worm:&#039;&#039;&#039; The worm is a sneaky assassin, travelling cloacked, then surfacing only to kill many bits at once with its large area of effect weapon, which turn any slain units into virus. The worm large splash damage will damage your own units. However, it does practicaly no damage against other worms or virus. When cloacked, the worm does not automatically attack, you have to give attack orders manually. If you&#039;d rather have your worms auto-attack even when cloacked, set autohold to off. The autohold setting of new worms is inherited from the Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96DoS.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Denial of Service:&#039;&#039;&#039; Not an artillery, but close: fire a beam that stun units. For bigger targets it&#039;ll take longer to stun them so perform a DDoS (use multiple) to stun them fast. Once the DoS stops firing the target will quickly unfreeze. It moves faster than the pointer but causes a particle trail that can be seen from far away.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Network units:===&lt;br /&gt;
The network faction is built around mobility, its small factories (Ports) don&#039;t produce units openly but instead increment a virtual counter (the Buffer). Packets in the Buffer can be materialized at any teleporter unit (currently that means the Port and the Connection), it&#039;s also possible to dematerialize the Packets back into the Buffer by making them enter a teleport.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Carrier.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Carrier:&#039;&#039;&#039; The base building, like a Kernel or Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Port.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Port:&#039;&#039;&#039; The production building. It puts Packets into the Buffer, to materialize them select the Dispatch command. Dispatch will send 12 Packets if available, you can hold ALT when giving the order to make the Port dispatch until the Buffer is empty.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Firewall.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Firewall:&#039;&#039;&#039; This building can cover units (affects friendly units in a certain radius around the target location) in a protective shield for 20 seconds. The shield halves all damage the unit receives and throws the other half back at the attacker.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Gateway.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Gateway:&#039;&#039;&#039; The constructor. It is lightly armed to help against enemy raids.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Packet.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Packet:&#039;&#039;&#039; The basic light spam unit, it&#039;s weaker in combat than both competitors but much faster.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Connection.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Connection:&#039;&#039;&#039; Mostly a mobile teleporter (i.e. can dispatch Packets and let them enter like a Port). The Connection has decent armor and an arc beam that can do a lot of damage to single targets and has good range. It can defeat most large units one on one but engaging Bytes will probably result in pointer fire which the Connection cannot withstand and the arc beam is not optimal for engaging swarms.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Flow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Flow:&#039;&#039;&#039; An air unit. The Flow moves fairly slowly but can of course cross any terrain. It&#039;s equipped to attack light targets (spam units and fire support) but it&#039;s highly vulnerable to return fire. If you want to use them in open combat give them a meatshield and hope the enemy doesn&#039;t field long range units, Pointers, DoSes and Connections make short work of Flows if they hit.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===All side Units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96BadBlock.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bad Block:&#039;&#039;&#039; A tiny wall, built by Assembler/Trojan/Gateway. Blocks small units movement. Do not block shots however. Easily removed by the Debug or simply crushing them with a Byte or Connection.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Mine.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Logic Bomb:&#039;&#039;&#039; A mine that can be built by the Assembler/Trojan/Gateway. And also launched by Bytes since Div0 2.2. It takes out Bits &amp;amp; Bugs in a single blow, has a decent damage radius, and doesn&#039;t chain explode. Use with care, as the blast hurts your own units too. Limited to 32.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96MineBlaster.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Debug:&#039;&#039;&#039; An easy way to clear an area of all mines and walls, this is a one shot weapon built by the Assembler/Trojan/Gateway.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Playing Guide for System:==&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
&lt;br /&gt;
Attention all editors: Try and improve this playing guide to make less assumptions about the setup, and allow for team maps, larger maps, and generally teach more general strategy &lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Playing Kernel Panic is fairly simple and quickly learned, but can be hard to master and can be very complex. It is recommended that beginners start with play the System faction, as they can be considered the least &amp;quot;gimmicky&amp;quot; of the factions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Maybe it might be a good idea to move this to after the next two paragraphs.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
One rather effective general strategy for a duel on small maps is to send three to five bits to destroy your enemy&#039;s early game units, and, to a lesser degree, for scouting purposes. This is most effective if they started with construction units, as this will likely cripple their plans for an early expansion, and gives you a slight head start. After the initial attack, if your scouting shows that your enemy started with offensive units, build a byte for defense, and place it between your Kernel and the hill. After that, build an assembler and use it to build a socket on one the three closest building locations, which should automatically start producing bits. After this, you should order your assembler to build more sockets on free spots close to it. It is crucial that all sockets&#039; rally points are below them, as bits turning inside a socket will stall production until it is able to exit the factory. It is sometimes wise to repeat the prior process with one or two other assemblers. After this is done, construct about ten bits from your factor, and set your kernel to alternate between building bytes and pointers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
 A section on the uses of the faction&#039;s special units, and buildings (sigterm, pointer&#039;s fire, and byte&#039;s mine layer) could be useful, and these paragraphs might need modification.&lt;br /&gt;
&lt;br /&gt;
Making them flow better, and more coherent will help.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
What units you build at your kernel, and what you use them for, is an important factor in winning. As buildings can&#039;t be resumed, sending in groups of bits to kill construction units creating buildings can be very effective at stopping expansion attempts. Building too many pointers, will result in them being destroyed by connections, bits and especially worms, due to their stealth. Also, bytes are easily destroyer by and pointers, and exploits. A good general purpose ratio seems to be to queue one byte and one pointer, but this will need adapting as the game develops, and depending on the enemy&#039;s play style. &lt;br /&gt;
&lt;br /&gt;
Scouting is important too, as many enemies will leave their factories undefended, and knowing their build, and general unit use can help you in adapting the units you use to better fight them. Note that the Network can instantly spawn packets at any of their ports, or connections with their buffer system, meaning that all their factories should be considered defended. Single bits can be used to scout to find the enemy&#039;s current expansion attempts. &lt;br /&gt;
&lt;br /&gt;
When attacking a Byte or Connection with bits, it is important to overwhelm it with large numbers of bits. For bytes, try to exploit a byte&#039;s blind spot directly under it, by moving bits into that area. If your byte is under attack, moving it backwards to keep the attacking units in it&#039;s shooting arc can help repel the attack. It is not recommended to engage a worm with bits, as it&#039;s attack will convert your bits to viruses on the worm&#039;s owner&#039;s side.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Might reposition this section. Feel free to add map specific paragraphs for other maps as well. In fact, this will be very helpful to newcomers, I bet.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
On Marble Madness, there are two main ways paths to victory. The simplest one is to control the hill and use pointers stationed on the hill to destroy the enemy&#039;s factories, and kernel. Gaining control of the hilltop will likely not be without resistance, because it requires a decent amount of time for units to reach the top of the hill, meaning most units involved will be spam units from your factories on it, and the fact that it will likely be highly contended. However, if you control it, you have a large advantage over the enemy as you can shell your opponents home base with ease. The other way is around the hill, which can be very effective if you control terrain you can use pointers to great effect. In both strategies, using pointers is the crucial factor. While they are hard to use correctly, they are game-winners as they destroy home bases and enemy units with ease.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Credits:==&lt;br /&gt;
- Original concept by Boirunner&amp;lt;br&amp;gt;&lt;br /&gt;
- About all the work done by KDR_11k&amp;lt;br&amp;gt;&lt;br /&gt;
- Sounds by Noruas&amp;lt;br&amp;gt;&lt;br /&gt;
- Minor edits by zwzsg&amp;lt;br&amp;gt;&lt;br /&gt;
- Maps by Boirunner, Runecrafter, zwzsg, and TradeMark&amp;lt;br&amp;gt;&lt;br /&gt;
- Some LUA interface upgrade based of jK and trepan code&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Back to [[Games]]&lt;br /&gt;
[[Category:Games]]&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10048</id>
		<title>Kernel Panic</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Kernel_Panic&amp;diff=10048"/>
		<updated>2014-08-22T17:46:24Z</updated>

		<summary type="html">&lt;p&gt;Zwzsg: Made Kernel_Panic_readme.txt link clickable&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;http://img390.imageshack.us/img390/6289/kernelhd0.png&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Overview:==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;For the latest news and/or assistance, try the [http://springrts.com/phpbb/viewforum.php?f=43&#039;&#039;&#039;KP forum&#039;&#039;&#039;] or go to #kp when you log onto the lobby.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kernel Panic&#039;&#039;&#039; is a game about computers. Systems, Hackers and Networks wage war in a matrix of DOOM! The only constraints are time and space; unlike other real time strategy games, no resource economy exists in KP. &lt;br /&gt;
&lt;br /&gt;
All units are free in this game, every factory built will be spamming units at all times. You can build more factories, but only on pre-defined areas (geothermal vents). All that remains is pure strategy and tactics. &lt;br /&gt;
&lt;br /&gt;
KP makes for a frantically fast-paced, action-oriented game, with a very unique graphical style.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Download links:==&lt;br /&gt;
&lt;br /&gt;
Current Version of Kernel Panic is 4.6&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Newcomers:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you run &#039;&#039;&#039;Windows&#039;&#039;&#039; (2000,XP,Vista,7):&lt;br /&gt;
*** Here you can get a complete installer:&lt;br /&gt;
*** http://springfiles.com/spring/game-installers/kernel-panic-installer&lt;br /&gt;
*** Use it to install both Spring and Kernel Panic in one go.&lt;br /&gt;
*** Then use the shortcuts created in your Start Menu or Desktop.&lt;br /&gt;
** If you run &#039;&#039;&#039;Linux&#039;&#039;&#039;:&lt;br /&gt;
*** Read the [[SetupGuide]] how to install the Spring engine on Linux systems&lt;br /&gt;
*** Get and unzip that file: http://springfiles.com/spring/game-installers/kernel-panic-zip&lt;br /&gt;
*** Put the content of /games/ into ~/.spring/games&lt;br /&gt;
*** Put the content of /maps/ into ~/.spring/maps &lt;br /&gt;
*** Discard the rest.&lt;br /&gt;
*** Run Spring directly, a greenish menu should pop up.&lt;br /&gt;
*** Click skirmish, duel, easy, run.&lt;br /&gt;
*** For multiplayer or advanced options, run SpringLobby&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;Experienced Users:&amp;lt;/u&amp;gt;&lt;br /&gt;
** If you have already the Spring engine (or prefer to install it yourself): Here you can get a zip with the mod file, the maps, and a tiny exe for single player frontend. Unzip into your Spring root folder: http://springfiles.com/spring/game-installers/kernel-panic-zip&lt;br /&gt;
** If you are certain you have all the maps and just need a quick link to the mod file itself: http://springfiles.com/spring/games/kernel-panic-mod&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Media:==&lt;br /&gt;
&lt;br /&gt;
===Youtube Videos:===&lt;br /&gt;
&lt;br /&gt;
[http://youtube.com/watch?v=doF7owZ0blk&amp;amp;fmt=18 http://i.ytimg.com/vi/doF7owZ0blk/default.jpg] &lt;br /&gt;
[http://youtube.com/watch?v=Ug1c19yaZac http://i.ytimg.com/vi/Ug1c19yaZac/default.jpg] [http://youtube.com/watch?v=GAZQhRlt5bU http://i.ytimg.com/vi/GAZQhRlt5bU/default.jpg]&lt;br /&gt;
[http://www.youtube.com/watch?v=3q48ys5hFtI&amp;amp;fmt=18 http://i.ytimg.com/vi/3q48ys5hFtI/default.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Still shots:===&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg http://tof.canardpc.com/preview/076c8061-5505-44a1-96f4-1bb68e6b7ae5.jpg] [http://tof.canardpc.com/view/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg http://tof.canardpc.com/preview/4e607ea7-c428-4ca3-8b70-b12cbf44c18c.jpg] [http://tof.canardpc.com/view/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg http://tof.canardpc.com/preview/23b958ce-d5c9-4b66-b3f9-684db81f9683.jpg]&lt;br /&gt;
&lt;br /&gt;
[http://tof.canardpc.com/view/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg http://tof.canardpc.com/preview/44f4804f-ec99-40f9-a2e2-c3dc0b7617b8.jpg] [http://tof.canardpc.com/view/e5184baf-6c95-4c90-8469-b00a4f092054.jpg http://tof.canardpc.com/preview/e5184baf-6c95-4c90-8469-b00a4f092054.jpg] [http://tof.canardpc.com/view/cbe6dae0-a696-450a-bf22-236043d76511.jpg http://tof.canardpc.com/preview/cbe6dae0-a696-450a-bf22-236043d76511.jpg]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==License:==&lt;br /&gt;
Extracted from the [http://pastebin.ca/2834721 &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
========--------------------------------------------&lt;br /&gt;
License:&lt;br /&gt;
--------&lt;br /&gt;
- The content of the /games/Kernel*.sd7 is Public Domain, save:&lt;br /&gt;
  /LuaUI/Widgets/kp_buildbar.lua&lt;br /&gt;
  /LuaRules/Gadgets/autohold.lua&lt;br /&gt;
  /LuaRules/Gadgets/Burrow.lua&lt;br /&gt;
  /LuaRules/Gadgets/game_spawn.lua&lt;br /&gt;
  which are GPL, taken from http://www.caspring.org or http://springrts.com&lt;br /&gt;
- The maps Marble Madness and Direct Memory Access are Public Domain&lt;br /&gt;
- The maps Major Madness and Speed Balls 16 Way status are unknown&lt;br /&gt;
- The maps Central Hub, Corrupted Core, Dual Core, Quad Core were initially CC BY-NC-SA.&lt;br /&gt;
  Then the author removed the CC cause ( http://cpc.cx/4u3 )&lt;br /&gt;
- The Spring engine is GPL, available from http://spring.clan-sy.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Game Modes:==&lt;br /&gt;
By default the aim is to destroy the homebase and all the minifacs of all opposing teams.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Other &amp;quot;mod options&amp;quot; available are:&lt;br /&gt;
* &#039;&#039;&#039;King Of The Hill :&#039;&#039;&#039; Keeps control of the map center for a given time to win.&lt;br /&gt;
* &#039;&#039;&#039;O.N.S. :&#039;&#039;&#039; Adds shields to buildings, preventing homebase rush.&lt;br /&gt;
* &#039;&#039;&#039;Save Our Mem :&#039;&#039;&#039; Unit leave &amp;quot;leaks&amp;quot; that must be reclaimed.&lt;br /&gt;
* &#039;&#039;&#039;Color Wars :&#039;&#039;&#039; Whoever controls the most territory when timer elapse wins.&lt;br /&gt;
* &#039;&#039;&#039;Heroes of Mainframe :&#039;&#039;&#039; You only control a very buffed up but single unit. Best used with &amp;quot;Pre-placed Minifacs&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;Rebalancing formula :&#039;&#039;&#039; Let you change the stat of any units of weapons without the hassle of making a mutator. &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For details, read [http://pastebin.ca/2834721 &amp;lt;code&amp;gt;Kernel_Panic_readme.txt&amp;lt;/code&amp;gt;] or click [?] next to each mod option in your lobby.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Units and Buildings:==&lt;br /&gt;
&lt;br /&gt;
===System units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Kernel.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Kernel:&#039;&#039;&#039; You start with one of these. It can build all mobile units in the game. Has rapid auto-heal and lots of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Socket.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Socket:&#039;&#039;&#039; The socket is a factory which can only be built on a geothermal vent. It can solely build bits, and slower than the kernel can. It autoheals, and has a decent amount of health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Terminal.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Terminal:&#039;&#039;&#039;(only available in Division Zero) This is a new structure that gets placed on geovents. It can dispatch a nuclear bomber once every 90 seconds that will deal about 16000 damage to a large target area, i.e. it destroys everything except factories. It does much less damage to the kernel and hole. The bomber can strike any position on the map, there is no defense.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Assembler.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Assembler:&#039;&#039;&#039; The assembler is a construction unit. It can build sockets, but it cannot assist-build. Slow, little health. Equipped with a radar to detect mines and other cloacked units.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Bit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bit:&#039;&#039;&#039; Your basic attacking unit. Cheap, fast, small, not very much health. Is armed with a SPARCling laser. Can be built by a kernel or a socket.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Byte.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Byte:&#039;&#039;&#039; A large, strong, and slow attacking unit. Can holds it&#039;s own against many bits, as it has lots of health and a powerful gun. More armored when closed. Can plow through bad blocks. The byte has an alternate firing mode, the mine launcher, which throws 5 mines at the cost of much health.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Pointer.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Pointer:&#039;&#039;&#039; An artillery unit. Its normal shot is not so useful against moving units, but can kill kernels and sockets pretty quickly. Is slow and has little health, so it needs protection. The pointer has an alternate firing mode, the NX Flag, which set a wide area ablaze for a minute, causing constant damage to all units, or buildings within it&#039;s range.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Hacker units:===&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96NewHoleLow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Security Hole:&#039;&#039;&#039; The Hacker kernel equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Window.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Window:&#039;&#039;&#039; The Hacker socket equivalent.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Obelisk.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Obelisk:&#039;&#039;&#039; This building is a stationary artillery weapon, it can fire an infection shot every 40 seconds (the obelisk has a pink fire on top when it&#039;s ready to shoot) that will cover a large area in poison. The poison does a bit of damage (about 1000) and turns any enemy that dies inside the cloud into a Virus. The weapon&#039;s range is fairly limited. Best used against stationnary herds of Bits/Bugs.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96NewTrojan.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Trojan:&#039;&#039;&#039; This unit is your constructor as well as radar platform (needed for detecting mines and cloaked units), just like the assembler. It builds all the same stuff as the assembler, except it has the window instead of the socket and the obelisk instead of the terminal.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Virus.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Virus:&#039;&#039;&#039; A crappy little swarm unit. It cannot be built but is produced when killing enemy units with certain weapons. Namely, the Virus, the Worm, and the Obelisk.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96NewBug.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Bug:&#039;&#039;&#039; The Hacker spam unit. The Bug is weaker than the Bit but can sense movement outside of its LOS. It has a stronger weapon and more range but cannot shoot at things behind it or through friendly units and won&#039;t take much damage before dying. The mine ability of the old bug has been removed. Instead it can now morph into the Exploit with the deploy button, or the bombard button.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Exploit.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Exploit:&#039;&#039;&#039; This is the new name for the bug cannon. It&#039;s a building the Bug morphs into with the deploy or bombard command. The Exploit is a stationary artillery emplacement that does more damage the further the target is away. Even more frail than the Bug, so don&#039;t let any foe come near.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96NewWorm.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Worm:&#039;&#039;&#039; The worm is a sneaky assassin, travelling cloacked, then surfacing only to kill many bits at once with its large area of effect weapon, which turn any slain units into virus. The worm large splash damage will damage your own units. However, it does practicaly no damage against other worms or virus. When cloacked, the worm does not automatically attack, you have to give attack orders manually. If you&#039;d rather have your worms auto-attack even when cloacked, set autohold to off. The autohold setting of new worms is inherited from the Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96DoS.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Denial of Service:&#039;&#039;&#039; Not an artillery, but close: fire a beam that stun units. For bigger targets it&#039;ll take longer to stun them so perform a DDoS (use multiple) to stun them fast. Once the DoS stops firing the target will quickly unfreeze. It moves faster than the pointer but causes a particle trail that can be seen from far away.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===Network units:===&lt;br /&gt;
The network faction is built around mobility, its small factories (Ports) don&#039;t produce units openly but instead increment a virtual counter (the Buffer). Packets in the Buffer can be materialized at any teleporter unit (currently that means the Port and the Connection), it&#039;s also possible to dematerialize the Packets back into the Buffer by making them enter a teleport.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Carrier.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Carrier:&#039;&#039;&#039; The base building, like a Kernel or Security Hole.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Port.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Port:&#039;&#039;&#039; The production building. It puts Packets into the Buffer, to materialize them select the Dispatch command. Dispatch will send 12 Packets if available, you can hold ALT when giving the order to make the Port dispatch until the Buffer is empty.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Firewall.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Firewall:&#039;&#039;&#039; This building can cover units (affects friendly units in a certain radius around the target location) in a protective shield for 20 seconds. The shield halves all damage the unit receives and throws the other half back at the attacker.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Gateway.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Gateway:&#039;&#039;&#039; The constructor. It is lightly armed to help against enemy raids.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Packet.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Packet:&#039;&#039;&#039; The basic light spam unit, it&#039;s weaker in combat than both competitors but much faster.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Connection.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Connection:&#039;&#039;&#039; Mostly a mobile teleporter (i.e. can dispatch Packets and let them enter like a Port). The Connection has decent armor and an arc beam that can do a lot of damage to single targets and has good range. It can defeat most large units one on one but engaging Bytes will probably result in pointer fire which the Connection cannot withstand and the arc beam is not optimal for engaging swarms.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Flow.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;Flow:&#039;&#039;&#039; An air unit. The Flow moves fairly slowly but can of course cross any terrain. It&#039;s equipped to attack light targets (spam units and fire support) but it&#039;s highly vulnerable to return fire. If you want to use them in open combat give them a meatshield and hope the enemy doesn&#039;t field long range units, Pointers, DoSes and Connections make short work of Flows if they hit.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===All side Units:===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96BadBlock.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Bad Block:&#039;&#039;&#039; A tiny wall, built by Assembler/Trojan/Gateway. Blocks small units movement. Do not block shots however. Easily removed by the Debug or simply crushing them with a Byte or Connection.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96Mine.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Logic Bomb:&#039;&#039;&#039; A mine that can be built by the Assembler/Trojan/Gateway. And also launched by Bytes since Div0 2.2. It takes out Bits &amp;amp; Bugs in a single blow, has a decent damage radius, and doesn&#039;t chain explode. Use with care, as the blast hurts your own units too. Limited to 32.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&amp;lt;td&amp;gt;http://zwzsg.luckz.de/pics/spring/icons/96x96MineBlaster.png&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&#039;&#039;&#039;The Debug:&#039;&#039;&#039; An easy way to clear an area of all mines and walls, this is a one shot weapon built by the Assembler/Trojan/Gateway.&amp;lt;/td&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Playing Guide for System:==&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
&lt;br /&gt;
Attention all editors: Try and improve this playing guide to make less assumptions about the setup, and allow for team maps, larger maps, and generally teach more general strategy &lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Playing Kernel Panic is fairly simple and quickly learned, but can be hard to master and can be very complex. It is recommended that beginners start with play the System faction, as they can be considered the least &amp;quot;gimmicky&amp;quot; of the factions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Maybe it might be a good idea to move this to after the next two paragraphs.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
One rather effective general strategy for a duel on small maps is to send three to five bits to destroy your enemy&#039;s early game units, and, to a lesser degree, for scouting purposes. This is most effective if they started with construction units, as this will likely cripple their plans for an early expansion, and gives you a slight head start. After the initial attack, if your scouting shows that your enemy started with offensive units, build a byte for defense, and place it between your Kernel and the hill. After that, build an assembler and use it to build a socket on one the three closest building locations, which should automatically start producing bits. After this, you should order your assembler to build more sockets on free spots close to it. It is crucial that all sockets&#039; rally points are below them, as bits turning inside a socket will stall production until it is able to exit the factory. It is sometimes wise to repeat the prior process with one or two other assemblers. After this is done, construct about ten bits from your factor, and set your kernel to alternate between building bytes and pointers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
 A section on the uses of the faction&#039;s special units, and buildings (sigterm, pointer&#039;s fire, and byte&#039;s mine layer) could be useful, and these paragraphs might need modification.&lt;br /&gt;
&lt;br /&gt;
Making them flow better, and more coherent will help.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
What units you build at your kernel, and what you use them for, is an important factor in winning. As buildings can&#039;t be resumed, sending in groups of bits to kill construction units creating buildings can be very effective at stopping expansion attempts. Building too many pointers, will result in them being destroyed by connections, bits and especially worms, due to their stealth. Also, bytes are easily destroyer by and pointers, and exploits. A good general purpose ratio seems to be to queue one byte and one pointer, but this will need adapting as the game develops, and depending on the enemy&#039;s play style. &lt;br /&gt;
&lt;br /&gt;
Scouting is important too, as many enemies will leave their factories undefended, and knowing their build, and general unit use can help you in adapting the units you use to better fight them. Note that the Network can instantly spawn packets at any of their ports, or connections with their buffer system, meaning that all their factories should be considered defended. Single bits can be used to scout to find the enemy&#039;s current expansion attempts. &lt;br /&gt;
&lt;br /&gt;
When attacking a Byte or Connection with bits, it is important to overwhelm it with large numbers of bits. For bytes, try to exploit a byte&#039;s blind spot directly under it, by moving bits into that area. If your byte is under attack, moving it backwards to keep the attacking units in it&#039;s shooting arc can help repel the attack. It is not recommended to engage a worm with bits, as it&#039;s attack will convert your bits to viruses on the worm&#039;s owner&#039;s side.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Might reposition this section. Feel free to add map specific paragraphs for other maps as well. In fact, this will be very helpful to newcomers, I bet.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
On Marble Madness, there are two main ways paths to victory. The simplest one is to control the hill and use pointers stationed on the hill to destroy the enemy&#039;s factories, and kernel. Gaining control of the hilltop will likely not be without resistance, because it requires a decent amount of time for units to reach the top of the hill, meaning most units involved will be spam units from your factories on it, and the fact that it will likely be highly contended. However, if you control it, you have a large advantage over the enemy as you can shell your opponents home base with ease. The other way is around the hill, which can be very effective if you control terrain you can use pointers to great effect. In both strategies, using pointers is the crucial factor. While they are hard to use correctly, they are game-winners as they destroy home bases and enemy units with ease.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Credits:==&lt;br /&gt;
- Original concept by Boirunner&amp;lt;br&amp;gt;&lt;br /&gt;
- About all the work done by KDR_11k&amp;lt;br&amp;gt;&lt;br /&gt;
- Sounds by Noruas&amp;lt;br&amp;gt;&lt;br /&gt;
- Minor edits by zwzsg&amp;lt;br&amp;gt;&lt;br /&gt;
- Maps by Boirunner, Runecrafter, zwzsg, and TradeMark&amp;lt;br&amp;gt;&lt;br /&gt;
- Some LUA interface upgrade based of jK and trepan code&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Back to [[Games]]&lt;br /&gt;
[[Category:Games]]&lt;/div&gt;</summary>
		<author><name>Zwzsg</name></author>
	</entry>
</feed>