The Killing Floor

Author: Dale Pope

Copyright 1996-2010 Dale Pope
All Rights Reserved

“VGA Planets” is a registered trademark of Tim Wisseman.

DISCLAIMER

The software and any documentation are provided “as is” without express or implied warranty including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. In no event will the author of this software be liable for direct, incidental or consequential damages of any kind, even if the author has been advised of the possibility of such damages.

Contents:
1.0 Introduction
2.0 Requirements and Installation
2.1 Requirements
2.2 Installation
3.0 Configuration
3.1 Configuration for use with Host
3.2 Configuration for use with PHOST 3
4.0 THost and TKF Differences
5.0 License
6.0 Credits
7.0 Contacting the Author

1.0 Introduction
================

The Killing Floor is a combat replacement for VGA Planets that supports multiple ships fighting together, rather than facing off two at a time. It consists of two programs: the viewer (KFVIEW.EXE, used by the players) and the host add-on (KFHOST.EXE, used by the host). This is the host add-on.

2.0 Requirements and Installation
=================================

2.1 Requirements
—————-

You must have at least a 386 processor, and 4 megabytes of RAM.

Host version 3.22.016 (or better), or PHOST 3.

2.2 Installation
—————-

To install The Killing Floor Host add-on, just unzip it into your Planets directory.

Included in the distribution is CWSDPMI.EXE (a DPMI server) by Charles W. Sandmann. He can be contacted via e-mail at [email protected], or by snail-mail at 1206 Braelinn, Sugar Land, TX 77479.

The latest version of CWSDPMI.EXE as well as its source code can be found at ftp.simtel.net. At the time this document was written, the precise location was ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2misc/ .

To setup The Killing Floor for a game, just run KFCONFIG.EXE.

3.0 Configuration
=================

3.1 Configuration for use with Host
———————————–

To configure The Killing Floor Host add-on for a game, run KFCONFIG.EXE. Much like HCONFIG, KFCONFIG requires the game directory so if you ran HCONFIG like this: “hconfig game1”, run KFCONFIG the same way “kfconfig game1”.

KFONCIFG consists of a mind-boggling number of configuration options: actually, I lost count. You can configure specific race attributes, change weapon charge rates and ranges, adjust the amount that the engines boost shield power, alter the minimum amount of damage done by a weapon, fiddle with the odds a torpedo has to hit its target, decide if you want planets to fire torpedoes, make conclusions about how you feel towards allowing torpedoes to be fired at fighters, turn alternate cloak intercept on and off, and completely screw up the limitations of fighters.

The Fed crew bonus, and engine shield boost, you should be familiar with from HCONFIG, but the others may require explanation. In TKF damage is stored to the 100th decimal (i.e. 25.63% damage) so having each weapon doing a minimum of 1% damage is not required (like it is in Host and VCR). The minimum amount of damage can be anywhere between 0.00% and 0.99% inclusive. If you wish to mimic Host, setting the minimum amount of damage to 0.75% should be adequate.

Race attributes are configurable in a number of ways. Each race can have its own number of bonus fighter bays, bonus hull mass, maximum damage before the ship explodes, and damage scale factor (which determines how fast weapons are lost due to damage). Each race can also be set to have weapons that are immune to damage, have a 3x kill factor on their beam weapons, or be able to beam up debris after a battle. By default, the Feds have the Fed bonus, which entitles them to 3 bonus fighter bays, 50 kt of bonus hull mass, and weapons that are immune to damage. The Lizards ships can take 150% damage before exploding, and their weapons are damaged on a 150% scale (i.e., if a Lizard ship has 10 weapons, it loses one every 150/10 % of damage). The Privs have a 3x beam kill factor, and the Cyborg can up battle debris.

The alternate cloak intercept puts all ships that are on the same point into combat. Those ships that are cloak intercepting or being cloak intercepted are placed on the combat wheel in the normal fashion with all non-allied ships separated by 60000 meters. Ships that are not intercepting or being intercepted are placed farther away. By default, that distance is 80000 m behind the other ships. For instance, in a two enemy battle the ships are placed 60000 m apart, or 30000 m from the center. Non-intercept(ed/ing) ships would be placed 80000+30000 m from the center. If alternate cloak intercept is turned off, those ships that are being cloak intercepted or doing the cloak intercepting are put into combat in a separate stage, before normal combat.

Preventing Host’s combat routine (VCR) from kicking in will mean that ships that have been involved in combat will have their mission set from KILL!! to Explore, and primary enemies will be cleared. Planets that were involved in combat will have ATT and NUK friendly codes changed to a random friendly code. This may be a bit annoying for players but is required if you want to absolutely ensure that Host combat does not get involved (unless you’re using PHOST).

The odds of a torpedo hit are just that: the percentage chance that a torpedo has to hit its target. In Host/VCR a torpedo has a 65% chance of hitting its target. You can set it anywhere between 0% and 100%, however, I wouldn’t recommend going below 65%.

If you choose to do so, you can change the number of combat rounds required to charge the various weapon types. By default, the length of time required to charge any ship or planetary beam weapon is 90 rounds. This is the amount of time required for a 50% charge (the minimum a beam weapon has to be charged before it can fire). A 100% charge, of course, takes twice as many rounds. For torpedo tubes and fighter bays, the default number of rounds between firing is 37 and 23, respectively.

You can change several settings used by fighters:

Speed – The number of meters the fighter can move per round of combat. The default is 440 meters per round.

Beam range – The minimum distance the fighter can be from its target before firing. Default is 5000 meters.

Number of rounds for the beam to become charged – The number of rounds a fighter has to wait between firing. Default is 3 rounds.

Explosive factor of the beam – This is the ability of the fighters beam weapon to damage a ships shield and hull. The default is 4. By comparison, a Laser does 3, and a Heavy Phaser does 45.

Crew kill factor of the beam – Very similar to explosive factor but this one only kills the crew of the targeted ship. Default is 4. By comparison, a Laser does 10, and a Heavy Disruptor does 50.

Energy – The total amount of energy given to a fighter at launch time. The default is 1840.

Energy used to charge the beam one level – The amount of energy used to charge the beam during one round of combat. The total amount of energy used to charge the beam fully is equal to this value times the number of rounds for the beam to become charged. The default is 61. So, if the default number of rounds for the beam to become charged is 3 then the total amount of energy used to the charge the beam is 61 * 3 = 183. The default amount of total energy given to a fighter is 1840. That means that the default fighter can fire 1840 / 183 = 10 shots (with a remainder of 10 units of energy).

Energy used by one round of movement – The amount of energy used during one round of movement (to move the distance given in “Speed”). The default is 8 units of energy. The default fighter can move a maximum of (1840 / 8) * 440 = 101200 meters (assuming it never charges its beam weapon). However, let’s say it has to move 29920 meters to its target. To move that far, the default fighter consumes (29920 / 440) * 8 = 544 units of energy leaving it with 1840 – 544 = 1296 units of energy. That is enough energy to fire 1296 / (61 * 3) = 7 shots. After a fighter has used up all of its energy it returns to the nearest allied carrier (no energy is required to make this return trip home).

KFCONFIG will automatically setup AUXBC.INI for you, however, if you’re interested, the command for KFHOST is the same as KFCONFIG: kfhost <GameDir> (i.e. kfhost c:\planets\game1). It should be the last line of AUXBC.INI after any other add-ons.

3.2 Configuartion for use with PHOST 3
————————————–

If you’re configuring TKF for the DOS version of PHOST 3, you can just set it up the same you would for Host (but you should probably read through this section anyway). However, if you’re using the Linux versions of PHOST 3 and KFHOST, you’ll have to configure it the PCONFIG.SRC way.

You can either cut and paste KFCONFIG.SRC on to the end of your PCONFIG.SRC with your favorite text editor, or, if you’re using Linux you should be able to just append it to the end of your PCONFIG.SRC like this:

cat kfconfig.src >>pconfig.src

Change the configuration settings for KFHOST the same way you would for PHOST. All of the settings for KFHOST have to be under the “% KFHOST” heading. See the section 3.1 for descriptions of the various configuration variables.

Instead of using an AUXBC.INI you can create a TKF.INI file containing the same command line:

kfhost <game_directory> [root_directory]

i.e.,

kfhost c:\planets\game1 c:\planets

Then you have to add a line to your PCONFIG.SRC under the “% PCONTROL” heading. If you don’t have a “% PCONTROL” heading, add one. You can either have TKF completely take over combat, so that PHOST’s combat algorithm is never even called, like this:

% PCONTROL

Combat = Replace tkf.ini

Or, TKF can be executed first, and then PHOST’s combat algorithm will be run right after, like this:

% PCONTROL

Combat = Execute tkf.ini

One note about using TKF with PHOST: TKF (like Host) doesn’t allow ships that have just hyperjumped to be attacked but PHOST does. If you want to allow hyperjumped ships to be attacked you will have to allow PHOST combat to be run right after KFHOST. This is hopefully only a temporary situation.

4.0 THost and TKF Differences
=============================

This section currently contains very limited information. If you have any questions concerning The Killing Floor, e-mail me at [email protected] .

The Killing Floor supports a maximum of 2500 objects (i.e. 500 ships, one planet, and 1999 fighter groups) on the battle floor at any particular time. Also, all 11 races can participate in the battle together. Allied races fight like allies, and enemy races, of course, kill each other.

*It should be noted that the fighter limit is 1999 launched fighter groups, there is no limit as to how many fighters can be sitting in the cargo hold of carriers. In my own testing, this limit has proved more than adequate. The highest number of fighter groups I have seen on the screen at once was 1400 (and that was in a 500 ship battle). One other note, a fighter group can consist of 3 fighters, so 1999 fighter groups could be 5997 fighters.

TKF puts no real limits on the number of weapons that a ship can carry (the limit is over 2 million). However, Host’s data files are limited to either 32767 or 65535, I’m not sure which. I would never recommend designing a ship list that would allow that many weapons to be placed on a single ship but maybe that’s just me. TKF leaves you free to do so, if you wish.

Battle selection (deciding which ships should fight and which ships shouldn’t) should basically mimic that of Host, however I will discuss a few things.

There are three stages of combat that occur in this order: cloak intercept, cloaked attack, and normal ships vs. ships vs. planet/starbase combat. Cloak intercept is described below. Cloaked attack allows cloaked ships that have a primary enemy set, to de-cloak, attack their enemy, and re-cloak if they haven’t taken enough damage to prevent cloaking (this is also a stage in Host combat). Normal combat just includes all combat that wasn’t covered in the previous two stages.

Cloak intercept can be done in two different ways: the original TKF cloak intercept method, or the alternate cloak intercept method. They are both described below.

The original TKF cloak intercept occurs before any other forms of combat. A cloaker intercepting an enemy ship will fight with that ship only, even if that ship is part of a fleet. If multiple cloakers are intercepting the same enemy ship, all those cloakers will fight that poor enemy ship simultaneously. If multiple cloakers are intercepting multiple enemy ships, all those cloakers will fight all their intercept targets simultaneously.

The alternate cloak intercept puts all ships that are on the same point into combat. Those ships that are cloak intercepting or being cloak intercepted are placed on the combat wheel in the normal fashion with all non-allied ships separated by 60000 meters. Ships that are not intercepting or being intercepted are placed farther away. By default, that distance is 80000 m behind the other ships. For instance, in a two enemy battle the ships are placed 60000 m apart, or 30000 m from the center. Non-intercept(ed/ing) ships would be placed 80000+30000 m from the center. If alternate cloak intercept is turned off, those ships that are being cloak intercepted or doing the cloak intercepting are put into combat in a separate stage, before normal combat.

Multiple enemies: one race with two ships (on the same point) can define two enemies. One ship might have their primary enemy set to Birds, and the other one might have it set to Robots. If either a Bird ship or a Robot ship is on the same point, both ships will attack it.

Friendly code commands that are used by Host for combat are also used by TKF (i.e. ATT, NUK, NTP). Friendly codes 000 to 999 adjust the aggression factor of ships (000 is most aggressive, 999 is least aggressive). The more aggressive ships are placed at the front of the fleet, and the less aggressive at the back. A ship with a friendly code from 000 to 499 gets closer to its enemies; from 501 to 999, the ship keeps farther away and travels slower; at 500 the ship attacks normally. A ship with a friendly code that contains letters is placed behind any numbered ship (as though its aggression factor was 1000) but attacks normally (as though its aggression factor was 500).

That’s all that is listed here, e-mail me ([email protected]) any questions you have.

5.0 License
===========

The Killing Floor Host add-on is a freeware program and is provided to the user for free use. You are free (and encouraged) to distribute this program to anyone you wish, provided that it is in its original form and has not been altered in any way.

6.0 Credits
===========

CWSDPMI.EXE by Charles W. Sandmann (see section “2.2 Installation” for more information).

The Killing Floor by Dale Pope.

All DOS programs compiled with DJGPP C/C++. All other executables compiled with the GNU C/C++ compiler.

My thanks to Tim Wisseman (for VGA Planets), Charles Bloom (for the shield bitmaps), Michael Arrowood (for creating an awesome RESOURCE.PLN, and being extremely helpful with his comments and suggestions), Trent Hoeppner (for being very helpful with his comments and suggestions), to all those wonderful people who gave me bug reports, suggestions, comments, and support during beta testing, and to all VGA Planets players (for creating a wonderful community where the only goal is to destroy your friends).

7.0 Contacting the Author
=========================

You can contact me via e-mail me at [email protected], or just hold a Simpsons convention (I’ll be the one dressed as Millhouse).

The TKF homepage is located at http://members.shaw.ca/d4pope/tkf.

0 0 votes
Article Rating
Subscribe
Notify of
0 Comments
Inline Feedbacks
View all comments