Psyclass

Hi,  Psyclass is the next generation mod, YOU design the classes, YOU deisgn how they will act, with over 50 variables for each class, there are literally millions of different classes.  All this is specified in one file and this manual will explain how to do it.

Ok, if you installed Psyclass right in your main Quake2 folder should be a file named azrael.ini this is the go file for this game.  Upon inspection you can notice it's divided up into sections, the first is called [main] and it is very important in this section you specify how many classes you want using the <number> key at the moment it should be set to 3.  Then for each class you design its section should be under a [number] heading
so if you have two classes it would look like this

[main]
number = 2

[1]
{class 1 info goes here}

[2]
{class 2 info goes here}

Below is all the keys that can be specified for each class, and also included is the default value if you do not specify one.  To help you along we will build the classes similar to the ones that will be in Q3:Arena so under [main] we set number to 3.

[main]
number = 3

Now for the definition of our first class, this is the light class, fast, more health, less armor, does not make footsteps, able to jump high and inflicts slighly more damage with the machinegun, he also starts with the machinegun and some ammo for it, since he's a light class he can't carry the big weapons so we set them to zero.

[1]
name = Light Class
speed = 1
health = 140
armor_type = 1
start_armor = 25
max_armor = 50
sneaky = 1
gravity = 0.85
machine_damage = 12
starting_weapon = weapon_machinegun
start_bullets = 50
rocket_launcher = 0
hyperblaster = 0
railgun = 0
bfg = 0

Now for the medium class,  he will have more armor, less health and better with the chaingun, he also can't have the bfg.

[2]
name = Medium Class
speed = 0.9
health = 110
armor_type = 2
start_armor = 75
max_armor = 150
chain_damage = 10
starting_weapon = weapon_chaingun
start_bullets = 100
bfg = 0

Now for the heavy class this is the big beasty able to deal lots of damage but is slow and cumbersome

[3]
name = Heavy Class
speed = 0.7
health = 100
armor_type = 3
start_armor = 150
max_armor = 250
rocket_speed = 750
rocket_damage = 200
starting_weapon = weapon_rocketlauncher
start_rockets = 25
blaster = 0
shotgun = 0
machinegun = 0

To run a Psyclass server start the server in the normal fashion but with the
+set game psyclass  parameter
so a normal dedicated server would be
quake2 +set game psyclass +set dedicated 1 +set deathmatch 1 +map q2dm1
 
 
 

General
 
Option Explantion Range Default
name The name of the class maximum of 14 letters not defined
health Starting and maximum health 0 - 999 100
start_armor The amount of armor class spawns with 0 - 999 0
armor_type The style of armor class spawns with 1 {for Jacket}
2 {for Combat}
3 {for Body}
Combat Armor
max_armor The maximum armor allowed 0-999 200
speed A factor affecting speed, 0 does not move, 1 is 
normal speed
0 -1  1
gravity A factor affecting gravity, 0.5 halves, 2 doubles 0 - 999 1
damage_factor A factor affecting damage on class 0.5 halves, 3 triples 0 - 999 1
Ammo
 
start_bullets Amount of bullets started with 0 - 999  0
start_cells Amount of cells started with 0 - 999 0
start_shells Amount of shells started with 0 - 999 0
start_rockets Amount of rockets started with 0 - 999 0
start_slugs Amount of slugs started with 0 - 999 0
start_grenades Amount of grenades started with 0 - 999  0
max_bullets Maximum amount of bullets that can be held 0 - 999 200
max_shells Maximum amount of shells that can be held 0 - 999 100
max_cells Maximum amount of cells that can be held 0 - 999 200
max_rockets Maximum amount of rockets that can be held 0 - 999  50
max_grenades Maximum amount of grenades that can be held 0 - 999  50
max_slugs Maximum amount of slugs that can be held 0 - 999  50
Weapons
 
starting_weapon The weapon class spawns with (will also 
have Blaster unless blaster = 0)
weapon_blaster 
weapon_shotgun 
weapon_supershotgun 
weapon_machinegun 
weapon_chaingun 
weapon_grenadelauncher 
weapon_rocketlauncher 
weapon_hyperblaster 
weapon_railgun 
weapon_bfg
weapon_blaster
blaster Can have Blaster 0 or 1 1
shotgun Can have Shotgun 0 or 1 1
sshotgun Can have Super Shotgun 0 or 1 1
machinegun Can have Machinegun 0 or 1 1
chaingun Can have Chaingun 0 or 1 1
grenade_launcher Can have Grenade Launcher 0 or 1 1
rocket_launcher Can have Rocket Launcher 0 or 1 1
hyperblaster Can have HyperBlaster 0 or 1 1
railgun Can have Railgun 0 or 1 1
bfg Can have BFG10K 0 or 1 1
blaster_speed Speed of Blaster and HyperBlaster bolts 1 - 9999 1000
blaster_damage Damage of Blaster bolts 1 - 999 15
shot_damage Damage per pellet of Shotgun 1 - 999 4
sshotgun_damage Damage per pellet of Super Shotgun 1 - 999 6
machine_damage Damage per bullet of Machinegun 1 - 999 8
chain_damage Damage per bullets of Chaingun 1 - 999 6
hgren_damage Damage for Grenade Launcher grenades 1 - 999 125
rocket_speed Speed of rockets 1 - 9999 650
rocket_damage Damage for Rocket Launcher and is also 
length for radius damage
1 - 999 110
hyper_damage Damage per bolt for Hyperblaster 1 - 999 15
rail_damage Damage for Railgun 1 - 999 100
bfg_ball_speed Speed of big green ball 1 - 9999 400
bfg_ball_damage Damage inflicted by big green ball 1 - 999 200
bfg_las_damage Damage doene by bfg lasers/second 1 - 999 5
Items
 
quad Can pickup Quad Damage 0 or 1 1
protect Can pickup Invulnerability 0 or 1 1
Abilities
 
breath_water Limitless air supply 0 or 1 0
transparent Class is transparent 0 or 1 0
silenced All shots are silenced 0 or 1 0
sneaky No foot steps 0 or 1 0
regen Can regenerate 0 or 1 0
Important
Though Psyclass has been tested with a number of value, extreme values and value that are common sence (negatives) may crash the server and all sorts of weird things.  Stick to decent values so a fun server can be made.
Thanks

About the Author
Nigel "Azrael " Sampson
azrael@captured.com
http://www.captured.com/faith
Thanks to Offspring, their Americana album kept me going.
Thanks to Ivarch for the ini reading code,
and the other who I can't remember right now.