ServerModules

🇮🇪

ServerModules is a modification for Quake made by Johannes Plass. This modification features a lot of various modules that can be enabled or disabled at will on a server. This modification is made entirely for Deathmatch and does not support other Game Modes.

Monsters are removed from the game with this modification. This is done through a process referred to as the Omit module.

Module Observer
When the player enters a server, they start as an observer. An observer cannot interact with the environment in any way, they can just watch the combat. Other players cannot detect observers. "observer-help" provides a blurb about Observer mode. Observers can freely fly around the level, and can even noclip when "observer-noclip" is toggled on. Pressing the fire button as an observer allows the player to switch their observation points; these are determined by Deathmatch spawn locations (or if none exist, the Singleplayer spawn location). Pressing the jump button allows the player to exit observer mode and join the game. An observer appears to have 999 health, while having 1 nondescript form of Ammo. A player can become an observer upon death by clicking the fire button; they can respawn with the jump button. These settings can be swapped in the source code.

Note that there is a bug whereby an observer can get stuck in some location they cannot escape. The player is recommended to press the fire button again to swap camera positions in such a circumstance, or swap to Noclip. An observer traveling through a Teleporter will have no effects, but just jump from one spot to another, and cannot exit the level. This can result in odd movement mechanics and getting stuck more frequently. Also note that, as this modification is made for Deathmatch, there are no parameters set for notarget; Monsters will still see and pursue the observer.

Basic Server Modules
Another module is MOTD. Short for message of the day, this allows the server to display a message when the player first connects to a server. It has a limit of 255 characters and is displayed in the center of the screen. By default, this message is displayed for 5 seconds and displays a message about using jump to enter the game.

ServerConsole displays immediately after MOTD is finished, showing a brief message that is mostly deposited to the console. This specifically works to display not only all the modules and brief info on each, but various server info such as frag limits and noexit.

In the event the player misses the message, the player can call it back with the "help-server" Console Command. This is considered the ServerHelp module.

Yet another module is KickSuicider. Players that kill themselves twice within the span of two minutes are instantly kicked from the game.

Instead of designating frag and time limits, the server instead relies upon another module known as ExitRules. This defines parameters so that, even if one of the limits is reached, the game will continue until all others are reached. By default, this means a player must get 40 frags and a minute must have passed. These are disabled in Deathmatch Arena, Introduction, and Shub-Niggurath's Pit.

Module Vote can be used to vote for various factors; specifically either exiting a level immediately or disabling ExitRules for the current round. By typing "vote-exit", the player can vote to exit the level, which is tallied every few seconds until it either times out or is accepted. By using "vote-exitrules", the player can disable ExitRules. By using the command "votes", the player can see the number of votes. By using the command "help-vote", they can get a blurb about voting. Note that the majority always wins in these votes, even if it is an even number of members. Furthermore, note that this can become problematic in two-player games, since all votes can be decided by one individual.

Skin is a slightly modified version of the earlier MultiSkin modification. The player can use "skin-next" and "skin-prev" to toggle skins. The command "help-skin" can be used to provide more information. Note that no Player.MDL file is provided, so one must be made or acquired. Supported are the Top20Skins collection and the default MultiSkin collection; both are displayed on-screen with what the skin represents. BODYSKIN has been applied, plus skins are now preserved even when the level changes.

The Init module is designed to provide additional support for mechanics upon initializing the server, done by using a new command known as "init". Init cannot be run mid-game. There are two types of inits that can be ran, either "init-nextskin" or "init-nextcall". Init-nextskin tells the server to change the skin number by one, allowing players entering the server to set up autoexec.cfg and define a specific skin they wish to join with. The other command, "init-nextcall", goes to the next init in the cycle while running another command. This means, in the event the player wishes to change their skin, they can also run other commands alongside it such as color changes. An empty assignment terminates the init series. Inits must be run in order prior to termination, meaning going from "init01" to "init02" to "init03".

Gameplay Modules
One Module, LevelSelect, is used to determine the order levels on the server are played in. This allows for a cycle of levels that are different than the normal level orders. By default, this is set up to go to DM2: Claustrophobopolis instead of Shub-Niggurath's Pit when selecting the Teleporter from Introduction.

Module Messages allows the server to either show or hide pickup messages on Ammo, Weapons, and Powerups.

Protect is designed to shield players spawning into the level for five seconds. This allows the player the chance to get away instead of immediately dying upon spawning into the level. Players that are protected have a visual effect around them and are invulnerable to fire. Note that this safety net will end early if the player picks up anything or fires their Weapon.

Random will randomize the location of resources, but is controlled by only mixing up those within the same type. Weapons can swap locations with one another upon respawning, for example; it is based on what is taken and will never respawn what does not exist in the level. This means that DM1: Place of Two Deaths will not get a Rocket Launcher, since one did not exist normally. Note that while Powerups are randomized, 25 Health and 15 Health are in their own category, while the Biosuit is never affected.

Rank can be used to measure player scores in a more detailed manner than the normal frag counter. A dead player has a "D" next to their name, while an observer has an "O" next to their name. The total score is calculated by (3*Kills) - Deaths - (3*Accidents). Kills refers to frags, Deaths refers to how many times the player was killed by an opponent, and Accidents refer to times the player killed themselves. Suicides are counted as double accidents. This formula can be seen in-game by typing "help-rank".

Module Telefrag exists to try to prevent Telefragging by respawning players. The module attempts to find a location not occupied by another player, if such a location exists, and will only Telefrag another player if no available locations are found.

Weapon Modules
Lightning changes the Thunderbolt so that it now only discharges when the Weapon is under the Water. This means that when a player is floating on the surface of the Water, they can now use the Thunderbolt. The sound has also been modified, it now continues to spam the commencing sound instead of going into the normal use sound, resulting in a sound like it is constantly thundering.

The new alternate Weapon modes have the ability to set the player on fire due to a module called Burn. This causes a player to continually take damage over a period of time; they can also set other players on fire by proximity. All new alternate modes also use the Silver Key icon to distinguish that they are different from the normal Weapons. There are various intensity modes, these depend primarily upon the accuracy of the hit, and can be increased with further hits. A player on fire can douse themselves by reaching Water.

Module WeldGun replaces the Nailgun with firepower that spits burning blobs of magnesium and steel mixed together. This causes a chain reaction that causes "small explosions" wherever it hits, which means a more lethal projectile that causes 12 damage. Players can also easily be set on fire with this Weapon when using module Burn. The regular Nailgun can be swapped to by pressing the button for the Nailgun again.

By pressing the button for the Grenade Launcher while it is already held, they can switch to the Drone. The Drone is rather similar to the Vore pod. This entity lasts about five seconds before it automatically explodes; during the duration it shall actively seek out players to attack and head for the easiest to reach. While the drone starts flying straight for 1 second, it quickly can change direction to hunt behind corners, and it bounces off surfaces. Players being chased by the Drone will be warned by having their Gold Key icon lit up. It causes 36 damage if it hits its opponent. Note that, if another player is not found, the Drone will turn on its owner and chase them. Only four drones can exist at any given time, any more shall automatically explode one that was previously in the air. While having a small hitbox and therefore being hard to target, they also can be shot and exploded out of the air. While this Weapon may seem powerful, it is not made to be used all the time, but only in specialized instances where it would be otherwise impossible to reach a foe.

Module Shrapnel provides an alternate mode for the Rocket Launcher when it is hit again. This fires a burning projectile that, when colliding with a wall, breaks apart into a few burning splinters. These splinters can in turn move at an even faster speed and bounce off walls, making it all the more lethal. Note that this Weapon is not intended to be used all the time; it is mostly just intended to be used to clean up rooms from a safe distance. Note that the initial shot is about half as powerful as the normal Rocket Launcher, while the splinters can vary wildly, ranging from not lethal to extremely dangerous.

New Obituaries

 * "Player" was cremated by "Attacker" - Death by fire.
 * "Player" plays with the fire" - Suicide by fire.
 * "Player" was torched by "Attacker" - Death by WeldGun.
 * "Player" couldn't wait to pull the trigger - Suicide by WeldGun.
 * "Player" plays with "Attacker"'s balls - Death by Drone.
 * "Player" erupted while rubbing "Attacker"'s prickly toy - Gibbed by Drone.
 * "Player" gathers gooseberries - Suicide by Drone.
 * "Player" was flamed by "Attacker" - Death by Shrapnel.
 * "Player" didn't read the manual" - Suicide by Shrapnel.

2.6.1

 * Added Telefrag module.
 * Fixed a bug where the Protect module could not be properly disabled due to missing an if statement.
 * Updated Top20Skins list. Crusader was made to Stormtrooper, Han Solo was made to Cowboy.
 * The .PAT file is no longer needed for installation. Previously it contained all information for the vanilla .QC files; now it is just a legacy method.
 * Minor code cleanups.

2.5.6 - October 4, 1996

 * Support for Quake 1.06.
 * Added Burn module.
 * Added Drone module.
 * Added ExitRules module.
 * Added Lightning module.
 * Added Init module.
 * Added Omit module.
 * Added Protect module.
 * Added Random module.
 * Added ServerConsole module.
 * Added Shrapnel module.
 * Added Vote module.
 * Added Weld module.
 * MapQueue module entirely rewritten and renamed to LevelSelect. Previously the system was far more complicated, creating a cycle before using a lengthy series of if statements to find what "x" is equal to.
 * Observer controls were inverted. Previously to enable, the player had to press the fire button, and jump would place them back in the game. Switching cameras was done with the fire button, while jump would put the player back into the game.
 * Server module renamed to ServerHelp.

August 20, 1996

 * Official release. Modules included are MOTD, Observer, KickSuicider, Messages, MapQueue, Rank, Server, and Skin.