Title : Holy Wars Filename : holy141.zip Version : 1.41 Date : 4 of November, 1997 Author : Paolo "Nusco" Perrotta Email : pperrotta@mailbox.dsnet.it WWW page : http://quake.shiny.it/holywars/ Credits : Look near the end of this file. Build time : One hour now, another one later... Type of Mod ----------- Quake C : yes Sound : yes MDL : yes Format of QuakeC ---------------- unified diff : no context diff : no .qc files : no (write me if you want them) progs.dat : yessir, boy #0. INTRO ----- Take it easy, you don't need to read all this stuff. Give a quick glance at the #1 and #2 sections, call some friends, calmly launch a server on your local network and GET DOWN LIKE A SEX MACHINE. #1. THE GAME -------- 1.1. What is Holy Wars ----------------- Holy Wars is a deathmatch/teamplay mod for a minimum of 3 players. It's very simple to install, learn and use, although it provides a completely different kind of deathmatch. Holy Wars can be a refreshing diversion after some hours of CTF, or TF,or . This mod is strongly oriented towards mayhem and carnage, rather than subtle strategy and tactical reasoning. Who needs strategy, btw? GORE! WE WANT MORE GORE! Holy Wars includes some custom sounds'n'stuff, but these are not central to the game and can be left out if desired. That is, it can act indifferently as a server or client-side mod. Any comments will be very welcome. 1.2. The rules --------- A Holy Wars level contains a luminous, blue-sparkling entity called the Halo. If a player gets the Halo, he'll become a Saint and receive some armour and health. The Halo will follow the Saint around. The sparks of the Halo will become golden to indicate that the Halo cannot be picked up anymore, until the current owner dies. Normally, players can frag each other happily, but won't score frags for doing so. The Saint is the only player in the game who scores frags by killing other "normal" players. The players should avoid killing each other and concentrate on the Saint, their common enemy. If a player kills the Saint, the Halo will fall on the ground for everybody to take. After 30 seconds, an abandoned Halo will teleport to its starting position. The idea is that everybody must try to kill the Saint and steal the Halo. In deathmatch, the game is always a furious "The Saint vs. The Rest of the World". In teamplay games, the Saint's team is should defend him from the other team. If a fallen Halo is unreachable because it fell into lava or in some other unhealthy place, you'd better hurry to the base to be there when it reappers. That's all. The result will hopefully be total carnage. 1.3. Score system ------------ If you're a normal player: 0 points for killing another player; 3 points for killing the Saint; 2 points for getting the Halo and becoming the Saint. If you're the Saint: 1 point per frag. Watch your score grow! When a player is sanctified, he/she will receive an amount of armour and health proportional to the number of enemies into the game (minus the number of friends if teamplay is on). At the end of a game, statistics for every player will be printed on the console. You can scroll the text using the PageUp and PageDown keys. These statistics have proven able to break long-lasting friendships. #2. INSTALLATION AND BASIC USE -------------------------- 2.1. Installation ------------ You must have the registered version of Quake to install Holy Wars. To install the patch, just make a HOLYWARS directory under your QUAKE directory and unzip the holywars.zip file in it. Start Quake by typing: "quake -game holywars" and any other useful parameters. 2.2. Maps ---- All of id's original Quake maps are directly supported by the Holy Wars code - this means that you can play these maps in Holy Wars simply by launching them. See sections #3.5 and #3.6 for information on using other maps in HW. I urge you to download the Lorenzini Series for maximum deathmatch carnage (again, see section #3.5). #3. ADVANCED USE ------------ 3.1. Holy Wars environment settings ------------------------------ The settings of Holy Wars are stored into the TEMP1 console variable. The TEMP1 variable has been transformed into a set of flags. To activate the desired options, take note of each option number, add all the numbers together and assign the resulting value to TEMP1 (an example follows the list of options). This must be done *before* launching a map, or it might not work as expected. Here are the possible options: Option | Option number | Use --------------------------------------------------------------------------------- LAG | 1 | When this option is on, the Halo moves smoothly, | | with a nice "inertia" effect, following its | | owner around and emitting colourful particles. | | This nice animation comes at the | | price of a noticeable net lag. If you're | | playing on the Internet, you'd better keep this | | option off and be happy with worst but faster | | animation. | | The default is ON. | | --------------------------------------------------------------------------------- CLIENT-SIDE | 2 | When this option is on, the client-side files (the | | new sounds and models) are used. This is nice, | | but it also prevents a player from entering a | | game if he doesn't have Holy Wars installed on | | his system. Turn this option OFF if you're setting | | up an Internet server, or if you couldn't install | | HW on each machine on a LAN for some reason. This | | way, everyone can play HW without installing any | | file on his own computer. | | This option is ON by default. | | --------------------------------------------------------------------------------- SKINS | 4 | This option uses the new skins in HW (if you | | added a new player.mdl with skins - see section | | #3.2). When this option is not enabled, | | the players will see the standard Quake skins. | | BTW, if a player connects to a HW server without | | having the client-side files on his own system, | | the game won't crash because of the loss of skins: | | the player will just see the standard Quake | | skins instead. This means that there is no reason | | to uncheck this option. | | The default for this option is ON. | | --------------------------------------------------------------------------------- An example: let's say we want to enable "SKINS" and "LAG", but not "CLIENT-SIDE" (this is the typical Internet server setting). By adding together 1 (for LAG) and 4 (for SKINS) we have 5, which is the new value for TEMP1. Just type: TEMP1 5 on the console, *before* launching a map. The default value for TEMP1 (set into the HOLYWARS.CFG file) is 7, meaning that all the options are on. 3.2. Adding skins ------------ Holy Wars doesn't supply new skins for the players in this version. If you turn skin support ON, the players will look like normal Quake marines. Only the player's gibbed head model will show a new skin (an excellent "universal head giblet" skin). To have new skins, you've got to put an alternative player.mdl into the \HOLYWARS\PROGS directory. This player.mdl should contain three skins, in this order: 1. The standard Quake skin to use when skin support is turned off. 2. An alternative player skin to when skin support is on. 3. A skin for the Saint to use when skin support is on. To produce a modified player.mdl you should extract a copy of the original player.mdl from Quake's pak0.pak. Use an extractor like Xpak (ftp://ftp.cdrom.com/pub/quake/utils/bsp_pak_tools/xpak041.zip). Then, you can add new skins with a MDL editor like qME (http://www.xs4all.nl/~renep/quakeme/). The best skins on the Net can be found at the SkinForge (http://www.brutality.com/skinforge/). 3.3. Holy Wars impulses ------------------ Here is the list of new impulses (none of which is needed for playing - this means that you can safely ignore these if you're not curious), and the aliases to which the new impulses are bound. You can use these easy mnemonic aliases on the console instead of the impulses. To change the aliases, edit the HOLYWARS.CFG file. IMPULSE 42 Gives the position of the player on the console. Only works in DEATHMATCH 0, used for map-modifying purposes. See the "Adapting existing maps" section. Aliased to POS. IMPULSE 60 Gives the statistics during the game (the "Halo possession" statistic is only updated when a Saint dies). Aliased to STATS. IMPULSE 250 Gives basic instructions for Holy Wars on the console. Aliased to INSTRUCTIONS. IMPULSE 251 Gives the environment settings for Holy Wars on the console. Aliased to SERVERSETTINGS. 3.4. Enhanced Teamplay ----------------- This patch includes version 0.92 of The Complete Enhanced Teamplay by John Spickes. This excellent patch allows you to customize your team games in novel and interesting ways. Read the file TEAM.TXT for info. 3.5. Using other maps ---------------- You can also use add-on maps with HW. This means that Holy Wars won't work as a server-side patch anymore - the maps will have to be copied on the clients as well as the server. If a client doesn't find the map, it will refuse to connect. Some non-id maps are directly supported: you'll have to create a new MAPS dir under your HOLYWARS directory and copy the *.bsp files into it. The directly supported maps are: *) HIPDM1, the Hipnotic deathmatch map from Mission Pack #1. Holy Wars will automatically take away all the new Hipnotic weapons and powerups from the map and substitute them with mundane Quake stuff (I'm sorry about this, but keeping the new stuff in would require a completely different version of the progs.dat just on purpose). To use this map, you'll need a pack processor (like Xpak, which you can find at ftp://ftp.cdrom.com/pub/quake/utils/bsp_pak_tools/xpak041.zip) to extract a copy of it from Hipnotic's *.pak file. *) All the maps from a great author, Adriano Lorenzini. These maps deserve to be played whether you use them with Holy Wars or in mormal deathmatch, so do yourself a favour and dowload them ASAP. "The Messy Base" (you'll find this one on ftp.cdrom.com soon) Not messy at all. My favourite DM map ever. "De Bello Quakero" (ftp.cdrom.com/pub/idgames2/levels/deathmatch/d-f/debello.zip) The most strikingly beautiful DM map around. Period. "UltraViolence" (ftp.cdrom.com/pub/idgames2/levels/deathmatch/s-u/ultrav.zip) Incredibly fast and funny, higher-than-professional-quality map. "Razzi Amari" (ftp.cdrom.com/pub/idgames2/levels/deathmatch/p-r/razzi.zip) Bigger than the other ones, another good blast. "The Blue Death" (ftp.cdrom.com/pub/idgames2/levels/deathmatch/a-c/bdeath.zip) The first map from the author, looks decent and plays great. 3.6. Adapting existing maps ---------------------- It's fairly easy to adapt existing maps for use with Holy Wars. To do this you must be able to use a map entity extractor (like Mapent), and QBSP (with the "-onlyents" switch) to put the entities back in. Here are the addresses where you can find the files: ftp://ftp.cdrom.com/pub/quake/utils/level_edit/bsp_builders/mapent.zip ftp://ftp.cdrom.com/pub/quake/utils/level_edit/bsp_builders/qbsp_dos.zip To adapt a map, you must add a new entity to it: { "classname" "item_holywars_halo" "origin" "x y z" } Where x, y and z are the three coordinates of the Halo's base. To find a good position for the Halo, you can launch the map in single player ("DEATHMATCH 0"), and use "IMPULSE 42" - this will print the current position of the player on the console. Use "FLY" or "NOCLIP" to move around freely and find a good spot. When you've patched the map, put it under QUAKE/HOLYWARS/MAPS. Each client should have a copy of the map, but the copies on the clients don't need to be patched. IMPULSE 42 won't work in deathmatch. This little feature can be used for whatever it's worth - I once used it to find good spots for deathmatch cameras in a level. #4. DISTRIBUTION NOTES ------------------ 4.1. Client-side stuff ----------------- I added the client-side files in a hurry. I know that the sound of the Saint shooting is bad - it's just a modification of one of Quake's existing sounds. Besides, I didn't find any player skins that were freely usable, good, and on topic, so I didn't include player skins at all. And the halo MDL is just something that I threw together in 3 minutes. This means that the client files are not "professional" at all, apart from a couple of sounds and the head gib skin. This will change with the next release (probably Holy Wars 2.0 for Quake 2). 4.1. Source availability and technical notes ---------------------------------------- I didn't include the source code, as it's embarrassingly messy. If you really want it, just mail me - it's nobody's industrial secret. You can easily modify the teamplay and deathmatch default values by editing the holywars.cfg file. This configuration file is auto-started when you launch Quake + Holy Wars. 4.2. Copyright and Distribution Permissions -------------------------------------- Quake is copyright by id Software. The Enhanced Teamplay Patch is copyrighted by John Spickes aka Guru (jspickes@eng.umd.edu). The "universal head giblet" is copyrighted by Kenneth Scott (mfarr@ccinet.ab.ca). Adriano Lorenzini and Walter Sammarchi are copyrighted by themselves. The rest of this patch is copyrighted by Paolo "Nusco" Perrotta (pperrotta@mailbox.dsnet.it). You can do what you want with this patch, excluded: 1) strip out this copyright notice from it; 2) make money from it in any form without asking for the author's permission first. "In any form" means: "No, you cannot pick up this stuff and put it on a commercial CD. If you ask me, I could give you the permission to do so - if you don't have the permission, you can't". Any non-commercial use is allowed and welcome. You can redistribute this patch at your own leisure. Letting me know of any use of this patch (appearances on web pages or in compilations, modifications, etc.) would be polite, but is not required. The strange language that I used to write this document is my own version of English, and it's copyright of myself. I don't make any implicit or explicit guarantees about this patch: you're using it at your own risk. I bet it won't explode, BTW. 4.3. Availability ------------ The official Holy Wars web page (including news and updated versions) is at: http://www.quake.shiny.it/holywars/ New versions will also be made available on the main Quake FTP archive: ftp://ftp.cdrom.com/pub/quake/quakec/deathmatch/holywars.zip 4.4. Known bugs: ----------- They're not bugs: they're miracles. The only miracle that I know of is that the Halo can fly out of the level after the Saint dies. This happens rarely, and doesn't ruin the game at all - and BTW, it looks like it's a limit of the game engine, not my mod. The Halo will reappear at the base after the usual 30 seconds. 4.5. Credits: -------- John Spickes (jspickes@eng.umd.edu). He did The Complete Enhanced Teamplay patch, which included in HW. I never played HW in teams, BTW... Who knows? It might actually work. Kenneth Scott (mfarr@ccinet.ab.ca) made the universal head giblet skin. You're leet, man. I mean it. Those skins of yours are the very best around. Paolo "Earthbreaker" Petrini supported this mod on Quake Italia (http://quake.shiny.it/). Walter Sammarchi (pec1063@iperbole.bologna.it) did the sounds. Adriano Lorenzini (a.lorenzini@iol.it) makes maps that kick ass. id and Hipnotic did you-know-what. And to all the friends, betatesters and people helping, commenting and giving suggestions: Thanks, guys. 4.6. Version History: ---------------- * 1.41 (11/04/97) -> Aww... I credited the head skin to the wrong artist. The only changes from 1.4 are in this TXT file. * 1.4 (11/03/97) -> All the stuff from 1.3internal that the world didn't have a chance to see before. -> Built-in support for some new maps. * 1.3internal (07/18/97 - never distributed) -> Client-side support: new sounds and models. -> Support for skins. -> No-lag option for Internet servers. -> Minor stuff. * 1.2 (06/04/1997) -> Statistics at the end of the game and with IMPULSE 60. -> Support for all of id's maps. -> The Halo is now teleported with the owner, to avoid the previous impossibility to recognize the Saint soon after a teleportation. -> The Halo shines blue particles when it's free, to improve visibility (exp. on GLQuake). -> Deleted unnecessary messages ("You have taken some ammo" and other such useless stuff). -> "What to do" message at respawning. -> Random respawn spots. -> Optimized Halo movement function (now almost twice as fast, useful on slow systems). -> Other very minor things and bug fixes. * 1.01 (05/19/1997) -> Corrected a bug that generated "Unknown entities" when starting certain maps. * 1.0 (05/15/1997) -> First publicly distributed version with a lot of changes. * 1.0b (02/22/1997, unreleased) -> First semi-working version for betatesters.