====================================================
	Kernel Panic .net WIP3
====================================================

Kernel Panic is a mod about computers. Bits and bytes wage war in a matrix of DOOM! The only resources are time and space, there is no metal or energy economy in KP. Since all units are free, every factory you have will be spamming units at all times. You can build more factories, but only on geothermal vents. KP makes for a very fast-paced, action-oriented game, and has a very unique graphical style.

===================---------------------------------
Installation Notes:
-------------------
- Kernel Panic requires the Spring engine, from http://spring.clan-sy.com

- Unzip into your Spring folder, so that /mods/ go into /mods/, /maps/ into /maps/, etc...

- In Spring's settings exe, make sure LuaUI is ticked to enable KP interface upgrade, such as mini-factories building automatically.
- In Spring's settings exe, make sure ground decal are ticked: without it building placement on the ground is a little dry.
- In Spring's settings exe, make sure unit's reflectivity is ticked: it also enable texture transparency, which is used extensively for hacker's build animation effects.
Those three settings are not compulsory, but will enhance your Kernel Panic playing experience.

- Kernel Panic is meant to be played on maps specially made for it, not only for the graphics, but because of the geo placement.
- Kernel Panic is meant to be played with random or fixed start pos. Choose-in-box start pos is highly inadvisable.

- Currently, to my great regrets, there is no AI bot able to play Kernel Panic. If you're going to play single player only, search for the old "Kernel Panic 1.5 with installer", it came with a nicely effective NTai. However, this was based on now outdated Spring version, so keep it well separate from your up-to-date Spring folder.


===========-----------------------------------------
Game modes:
-----------
Installing Kernel Panic will add two entries to the list of available mods:

- Kernel Panic Division Zero, which is the complete version, with all the units and all the special abilities.

- Kernel Panic Evilless, in which the whole Hacker side, the Terminal unit and the NX ability are removed, so as to remain true to the inital essence of Kernel Panic: ease of learning, ease of playing, removal of micro and needless complexity.

-----------
There is currently one "mod option":

- ONS: Make it friendly to newbies, especially in wide level gap differences teams, by surrounding the kernel/hole by a shield, making it invincible as long as the player or his team have at least one socket/window. FFA or team games with ONS ticked typically last much longer. Don't use if you want short or skillfull games though. Selectable from inside the battle room, after it as been opened, under the mod options tab.

==========------------------------------------------
CPU units:
----------
Kernel: You start with one of these. It can build all mobile units in the game. Has rapid auto-heal and lots of health.

Socket: 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.

Terminal (only available in Division Zero): This is a new structure that gets placed on geovents. It can dispatch a nuclear bomber once every 120 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.

Assembler: 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.

Bit: 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.

Byte: A large, strong, and slow attacking unit. Can holds it's own against many bits, as it has lots of health and a powerful gun. More armored when closed. Can plow through bad blocks. In division zero, the byte has an alternate firing mode, the mine launcher, that throw 5 mines at the cost of 6000hp.

Pointer: 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. In division zero, the pointer has an alternate firing mode, the NX Flag, which set a wide area ablaze for a minute.

================
Both side units:
----------------
Bad Block: A tiny wall that block small units movement. Do not block any shot however. Easily removed by the Debug or simply crushing them with a Byte.

Logic Bomb: A mine that can be built by the Assembler/Trojan. It takes out Bits in a single blow, has a decent damage radius, and doesn't chain explode. Use with care, as the blast hurts your own units too. Limited to 32.

Debug: An easy way to clear an area of all mines and walls, this is a one shot weapon built by the Assembler/Trojan.

=============---------------------------------------
Hacker units (only available in Division Zero) :
-------------
Security Hole: The Hacker kernel equivalent.

Window: The Hacker socket equivalent.

Obelisk: 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'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's range is fairly limited. Best used against stationnary herds of Bits/Bugs.

Virus: 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.

Bug: 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'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.

Exploit: This is the new name for the bug cannon. It'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't let any foe come near.

Denial of Service: Not an artillery, but close: fire a beam that stun units. For bigger targets it'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.

Worm: 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.

Trojan: 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.

========------------------
Network:
--------

The network faction is built around mobility, its small factories (Ports) don't produce units openly but instead move them into a cache (the Buffer). Packets in the Buffer can be materialized at any teleporter unit (currently that means the Port and the Connection), it's also possible to move the Packets back into the Buffer by making them enter a teleport.

Carrier: The base building, like a Kernel or Security Hole.

Port: 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.

Packet: The basic light spam unit, it's weaker in combat than both competitors but much faster.

Connection: 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.

Flow: An air unit. The Flow moves fairly slowly but can of course cross any terrain. It's equipped to attack light targets (spam units and fire support) but it's highly vulnerable to return fire. If you want to use them in open combat give them a meatshield and hope the enemy doesn't field long range units, Pointers, DoSes and Connections make short work of Flows if they hit.

Gateway: The constructor. It is lightly armed to help against enemy raids.

Firewall: 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.


----------------------------------------------------

NOTE FOR DEVELOPERS: Masses have been changed for .net because of the stupid behaviour of melee in 76b1, once 76b2 is released please change that back (remove the tags).
==========------------------------------------------
Changelog:
----------

KP.net RC2
- Fixed a bug with the firewall being used on dying units
- Gave Pointer a damage reduction vs Flow to make the latter more useful vs System, the Pointer is still useful vs Flows though, just needs to use more shots

KP.net RC1
- Changed DoS to fit with Division Zero hacker style
- Made pointer shot homing to hit Connections better
- More changes I don't remember

KP.net WIP8
- Fixed firewall not recharging

KP.net WIP6/7
- Made Firewall effect only show up when the affected unit is in LOS
- Reduced Packet rate of fire (1/.5 -> 1/.75) and range (280->250, was outranging the bit)
- Increased sigterm AOE (700->900, note that this is diameter)
- Increased Obelisk gas cloud damage per second (80->120) and radius (350->400)
- Made pointer shot homing to make hitting Connections easier

KP.net WIP5
- Fixed Flow not being invulnerable during construction
- Made dispatched Packets start rotated away from the dispatching teleporter
- Added epsilon to Dispatch spawn positions hoping to reduce the likelyhood of a crash

KP.net WIP4
- Added Network superweapon, the Firewall
- Added Pendrokar's sounds
- Network Carrier now turns like the other bases and is just as resistant to SIGTERMs
- Reduced Bug buildtime (448->240) but reduced Window workertime as well (128->64) so bugs build at roughly the same speed at Windows but faster at the Security Hole

KP.net WIP3
- Increased packet size (1x1->2x2), should reduce vulnerability towards AOE attacks
- Made Packet able to shoot through friendlies again, reduced damage (100->90) in turn (was disabled because 1x1 packets can fit a crapload of firepower in range)
- Reduced Connection rate of fire (1/2->1/3), increased damage (5x400->5x600) to maintain DPS while reducing the ability to kill spam units
- Prevented spawning of Packets on occupied spaces during dispatch order
- Disabled ONS for now since the Network faction does not support that yet

KP.net WIP2
- Decreased Packet Buffer fill rate (1/128->1/164)
- Decreased Gateway range (400->350), increased buildtime (1400->2000)
- Decreased Flow range (500->350), increased buildtime(1200->1400)
- Increased Packet rate of fire (1/.75->1/.5), made it unable to shoot through friendlies
- Increased Connection buildtime (3000->3300), decreased range (600->450)
- Restored old Worm splash damage (300->800), reduced AOE (210->180), reduced rate of fire (1/3->1/6)
- Fixed Worm retraction bug
- Reduced Virus health (400->300) and damage(120->100)
- Added Network sideicon
- Updated keybindings for Network (numpad will now select Port for building, Dispatch is D and Enter is E)
- Made Autospam widget deal with the Carrier, too
- Updated license information on defaultCommands and noRes to be Public Domain

KP.net PB1
- Added Network faction.

KP 2.2
- Gave the byte a "Mine Launcher", that eats 6000 hp to fire 5 mines
- Gave the bug a "Bombard" button, that make it move in range, morph into exploit, and fire
- About halved the worm damage, plus gave the worm back its small delay before firing.
- Merged pointernx pointer (but still only get nx flag in /0)
- Changed some building MaxSlope
- Replaced the on/off buttons for worm, old worm, and old bug
- Gave the new hacker the mine (since they don't have bugbomb anymore)

KP 2.1
- Now resiliant again to archive filename change. (Don't forget to delete the ArchiveCacheV6.txt though.)
- Made the new worm always able to fire, however, it set itself on hold fire when cloacking, and to fire at will when uncloacking.
- Changed "set CLOAKED" to "set WANT_CLOAK" in the new worm
- Added back the old hackers. Set the new hole to "hold pos" before building anything to get them.
- Seperated the hotkeys to deploy new bug, and undeploy the exploit. However, neither can be enqueued yet.
- Fixed the problem the old bug had when turning into mine when firing.
- Added "mine" and "bug" buttons to old bug. So you can enqueue its turning into a mine by shift clicking the button.
- Added widget to bind some KP hotkeys
- Added widget to remove ressources bars
- Added jK "buildbar" widget, edited to fit KP.
- Made decay much faster
- Changed Div0 trojan build effect
- Removed flanking bonus
- Made visible the area of effect of the attack of the Div0 worm

KP 2.0
- Made compliant with the new installer download scheme
- Hole & Kernel modified to allow ONS
- ONS made a "mod option"
- /0 pointer renamed to pointerNX
- Eviless based on /0, with the removal of terminal, hacker, and NX
- Terminal reload decreased to 90s
- NX reload increased to 30s
- Removed gadget handler which is now included in Spring

KP/0 Pre-Balancing v6
- Bugfixes (don't remember the details)
- Byte damage reduction when closed now only applies when the Byte is not stunned so a stunned Byte doesn't take forever to kill.
- Added a prototype faction.

KP/0 Pre-Balancing v5
- Bugfixes

KP/0 Pre-Balancing v4
- fixed Bug getting invulnerability period after morphing back from Exploit

KP/0 Pre-Balancing v3
- Byte now takes less damage when closed
- Bug cannon turned from COB mode into full-fledged building called Exploit, this allows ground attack orders
- Added particle trail to Exploit shot
- Added preference for distant targets to Exploit since the patch for that was added to SVN
- Obelisk and Terminal now use different icon for minimap and strategic view
- Hole remodeled (DZ is meant to be more serious so no more goatse!) and now allows exiting in all four directions, the building turns appropriately

KP/0 Pre-Balancing v2
- Removed debug message that might relay information to the enemy.
- Made Obelisk weapon smoke always visible, like the blast of the Sigterm.

KP/0 Pre-Balancing v1
- Initial release of Kernel Panic: Division Zero
- New unit: Virus, cannot be built, but is spawn by killing units with certain weapons.
- New unit: Obelisk and Terminal, static attack units placed on geovent.
- The Bug can morph into the Exploit, a stationnary artillery platform.
- Byte HP increased to 15000 (from 9000), but all special damage removed, so it evens out.
- Byte damage taken reduced to 30% while closed (unless paralyzed).
- Pointer has now an area of effect alternate mode of fire.
- Pointer limited firearc replaced with a set HEADING script, should reduce the situations in which the pointer will not fire.
- Bug mine functionality replaced with the ability to turn into an Exploit.
- Worm HP decreased to 12000
- Worm attack changed, now more AOE, and infectious, i.e. spawns viruses if enemies are killed.
- Worm moves at full speed when cloaked (toggle on/off) but takes time to uncloak.
- Worm cloaks after production is finished.
- Worm ability to crush bad blocks removed (to maintain stealth), use its main attack for that.
- Worm can now attack other worms, won't do area damage against them, but a direct hit is still fairly damaging.
- Worm seismic signature removed.
- Worm should therefore be back into the ambusher role it lost in the balancing process of KPC.
- Worm, Trojan, Bug, and Hole appearance changed.
- Hole now turns into four direction, and has four exit.
- Dos stuntime increased a bit, as it seemed the DOS couldn't maintain a stun in newer Spring versions.
- Introducing a new function, the experiment, to test the idea of a faction that has no direct firepower.


KP 1.5 (C&E&ONS)
- Less transparent alpha for the byte shot
- Saved the TGA without RLE
- Fixed a tiny bug in the autospam script

KP 1.4 (C&E&ONS)
- Better installer, than now include Spring as well.
- Changed method used to draw the link beam, so that ONS mode doesn't lag anymore.
- Factory now turns their heading and not just their model, fixing bug with autoexitwaypoint wrongly placed.
- Autospam widget made compatible with 75b2.
- sfx bitmaps sizes now power of 2, to fix issues with some graphical cards.
- trojan now correctly emits love beam when building badblocks and mineblasters.

KP 1.3 (C&E&ONS)
- Fixed bug with missing watertexture
- Misc installer fixes
- Hole and Kernel now invunerable even to mine and worm when shielded in ONS mutator

KP 1.2 (C&E&ONS)
- No longer considered alpha
- Split into:
  * Kernel Panic 1.2 Corruption (main data)
  * Kernel Panic 1.2 Evilless (only CPU race mutator)
  * Kernel Panic 1.2 ONS (shielded home mutator)
- Graphism of bit shot & byte shot changed
- Graphism of seismisc sensor changed
- Worm health changed again
- Bug weapon more powerful
- Gave firearc to byte
- Trojan now has LoveBeam!
- Some new buildpics
- Circuitry is no more default detailtex
- Made installer

KP:C alpha 7
- No longer destroy ability to play KP 1.0
- Hole now only autoturn 180,
  because anyway yardmap doesn't turn
- Fixed socket and window yardmap
- Worms buildtime slightly lower
- Worm maxdamage between A6 and A5
- Fixed missing semicolon TradeMark's tool found
- CPU's mines trigger radius doubled
  and red circle when you place them fixed
- Changed default maps detailtex

KP:C alpha 6
- Kernel and Security hole now self orient to center
- Worm nerfed
- Water no longer prevent worm from firing
- Mines now cheap
- Mineblaster area of effect doubled, but now very little damage to units
- Misc file cleaning
- Remade some buildpics
- Icons for the evil

KP:C alpha 5
- Added effect to worm while uncloaked to increase visibility while attacking.
- Lowered Security Hole center to make shots less likely to pass through.
- Made worm model segmented and made script to hide the segments if they shouldn't be needed. Should reduce worm ends poking out of the ground.

KP:C alpha 4
- Worm speed, damage (only affects byte) and health reduced. Autoheal removed. Worms still kill bytes pretty well, though.
- Bug special damage against worms reintroduced to compensate for lower HP (bugs kill worms well enough)
- DoS special damage vs. worm removed, normal damage increased. Should be able to stun most targets if used in groups still, when they get too close use the DoS's superior mobility.
- Byte istargetingupgrade=1, means more bytes = better radar accuracy. If I could just set a fixed accuracy I'd do so but this is the only way to do it right now.

KP:C alpha 3
- Bug script fixed, previously took too long for its build animation.
- Assembler no longer crushes walls.
- Fixed logic_bomb.bmp file extension.
- Logic bomb capped at 32. Zwzsg wanted it.
- Socket and Window no longer count as commanders, Com Ends games end when the Kernel or Security Hole is destroyed.
- Worm texture made less reflective.
- Bug does normal damage against Worm now (100 instead of 40).
- DoS stuns Worm somewhat faster.
- DoS turn rate increased.
- Worm made 30% slower to build.
- Worm damage vs. buildings reduced, can now attack buildings normally.

KP:C alpha 2
- Factions renamed to User and Hacker, sidepics for lobby added.
- Bug damage vs. byte and worm reduced.
- Bug seismic signature fixed.
- Bug invulnerability after build shortened to 3 seconds (down from 5).
- Bug buildtime increased to 3.5 seconds. Now bugs are made about as fast as bits are made by sockets, giving the hacker no spam advantage when many geovents are in play. Use your wits to win, not your spam!
- Worm damage increased, HP increased, added sight. It's now a real beast but it's still slower than most of its adversaries.
- Worm script Activate now obeys burrow semaphore, might fix Boirunner's inability to make his worms work.
- Gave Byte a small radar to spot mines, bugbombs and worms.
- Denial of Service range halved, damage cut (takes longer to stun things now), special case damage against bits and bugs introduced to stun them slower.


KP:C alpha 1
- Initial release of the Corruption branch, adding the second side.

KP 1.0
- New smoke!
- New water texture!
- New pointer shot trail!
- New icons for all!
- All units amphibious.
- Halved arty pointer shell speed.
- Reduced its reload time by 33%.
- +28% hp for bytes.
- Second side identical to first so scripts hard coded into Spring.exe work.

KP KDR edit 8:
- ....

KP 0.7
- ....

========--------------------------------------------
License:
--------
- The content of the /mods/Kernel*.sd7 is Public Domain, save:
  /LuaUI/Widgets/kp_buildbar.lua
  /LuaRules/Gadgets/autohold.lua
  /LuaRules/Gadgets/Burrow.lua
  which are GPL, taken from http://www.caspring.org
- The maps Marble Madness and Direct Memory Access are Public Domain
- The maps Major Madness and Speed Balls 16 Way status are unknown
- The Spring engine is GPL, available from http://spring.clan-sy.com

========--------------------------------------------
Credits:
--------
- Original concept by Boirunner
- About all the work done by KDR_11k
- Sounds by Noruas and Pendrokar
- Minor edits by zwzsg
- Maps by Boirunner, Runecrafter, zwzsg, and TradeMark
- Some LUA interface upgrade based of jK and trepan code

======----------------------------------------------
Notes:

For an enhanced Kernel Panic experience,
we recommend you to listen to:
Nectarine demoscene Radio
http://www.scenemusic.net

All Hacker scripts are meant for a linear constant of 65536, not the default.
Yet the System/CPU/User scripts are meant for the usual linear constant of 163840.
Save the pointer and maybe a few others.

===-------------------------------------------------
EOF
