Quake II

Från Unix.se, den fria unixresursen.

Quake II är id Softwares uppföljare till sin klassiker Quake. Likt sin förgångare blev det så småningom ett utmärkt multiplayerspel. Källkoden släpptes fri 21 december 2001.

Innehåll

Server

Systemkrav

Minimikraven varierar beroende på antalet spelare.

  • Pentium (eller likvärdigt). Fler spelare = mer cpu.
  • Minst 16 MB RAM. 1 MB per spelare rekommenderas.
  • Kom ihåg att vissa banor kräver mer CPU/RAM än andra.
  • .pak-filerna från Quake2-CD:n. Obs! Har man inte så mycket hårddiskutrymme räcker det med pak1 (från uppgraderingen) - eller bara *.bsp-filerna - om man bara ska köra DM-banorna.
  • Tillräckligt med ledigt hårddiskutrymme, åtminstone ~500 MB.

Installation

För att starta en Q2-server behöver du pak-filerna från Q2-CD:n, id:s klientpaket och icculus.org:s vidareutveckling av koden (id:s gamla unixversioner finns tillgängliga här (ftp://ftp.sunet.se/pub/pc/games/idgames2/idstuff/quake2/unix/) om du av någon anledning behöver dem):

Skapa en quake2-katalog, packa upp, kompilera och kopiera:

$ mkdir -p ~/quake2/baseq2
$ mkdir ~/quake2/ctf
$ tar zxvf quake2-r0.15.tar.gz
$ cd quake2-r0.15
$ make
$ cp releasei386/gamei386.so ~/quake2/baseq2
$ cp releasei386/ref_*.so ~/quake2
$ cp releasei386/quake2 ~/quake2
$ cp releasei386/ctf/gamei386.so ~/quake2/ctf

Kopiera pak-filerna från Q2-CD:n:

$ cp /mnt/cdrom/baseq2/*.pak ~/quake2/baseq2

Packa upp q2-3.20-x86-full.exe till en temporär katalog, flytta några av filerna och ta sedan bort den temporära katalogen:

$ unzip q2-3.20-x86-full.exe -d tmp
$ mv tmp/baseq2/pak1.pak ~/quake2/baseq2
$ mv tmp/baseq2/pak2.pak ~/quake2/baseq2
$ mv tmp/baseq2/players ~/quake2/baseq2

Starta nu servern:

$ cd ~/quake2
$ ./quake2 +set dedicated 1 +set deathmatch 1

Nu bör det fungera och folk ska kunna ansluta till din server.

Konfiguration

Nu vill du antagligen skapa en serverkonfigurationsfil. Skapa server.cfg i baseq2-katalogen med följande innehåll:

set hostname "Q2 testserver"
set deathmatch "1"
set rcon_password "xxxx"
set timelimit "30"
set fraglimit "100"
set maxclients "16"
set allow_download "1"
set allow_download_players "0"
set allow_download_models "1"
set allow_download_sounds "1"
set allow_download_maps "1"

Några av de möjliga inställningarna:

  • dmflags - En bitflag, bestämmer gameplay-inställningarna.
  • fraglimit - Nästa bana körs när fraglimit uppnås.
  • timelimit - Nästa bana körs när timelimit uppnås.
  • map - Vilken bana som ska startas.
  • maxclients - Max antal spelare.
  • hostname - Serverns namn.
  • deathmatch - Sätt denna till 1 om du vill köra DM (DeathMatch), som är default.
  • game - Vilken modkatalog som ska användas, om du vill köra en mod.
  • port - Serverns port.

Starta nu servern med ./quake2 +set dedicated 1 +exec server.cfg. Servern läser din konfigurationsfil och använder sig utav dess variabler. Du kan ha olika konfigurationsfiler för olika speltyper, t.ex. ffa.cfg, ctf.cfg, osv. Alla ska vara i baseq2-katalogen.

För att få din server listad på master-servrarna (så att folk med GameSpy, XQF och liknande program kan se din server), skriv set public 1 i serverns konsol eller i konfigurationsfilen. Med kommandot set setmaster 'master server' kan du ange vilken master-server som ska användas (standard är id Softwares egen).

Q2CTF (Capture The Flag)

CTF följde med i icculus.org:s version av Q2 som vi installerade här ovan. Det du förmodligen vill ha är id:s paket med CTF-banor:

Packa upp filen till ctf-katalogen. För att starta en CTF-server kör du:

$ ./quake2 +set dedicated 1 +set game ctf +exec server.cfg

..där server.cfg är filen du ska skapa i ctf-katalogen som bör innehålla minst det här:

deathmatch 3
maxclients 12
rcon_password password
fraglimit 0
timelimit 30
set hostname "Q2CTF Testserver"
set admin "admin@xyz.com"
map q2ctf1

LMCTF (Loki's Minions CTF)

LMCTF, Loki's Minions CTF, är en populär CTF-variant för Q2. Du behöver följande filer:

Skapa en lmctf-katalog i din Q2-katalog och packa upp alla filerna dit. Kör följande för att starta servern:

$ ./quake2 +set dedicated 1 +set deathmatch 1 +set game lmctf +exec server.cfg

Det är några filer i lmctf-katalogen som du antagligen vill ändra lite i: server.cfg är cfg-filen som innehåller många standardinställningar. Filen maplist.txt innehåller listan med banorna som servern kör igenom. För att ändra banlistan, skapa en fil som heter maplist.txt i Q2-katalogen med namnen på banorna du vill ha med och lägg till +map <mapname> till kommandolinjen när du startar servern, där <mapname> är namnet på den första banan i maplist.txt som du skapade. Filen motd.txt innehåller meddelandet man ser när man joinar servern

För mer information om LMCTf, besök dess hemsida http://www.planetquake.com/lmctf.

Rocket Arena 2

För att köra en Rocket Arena 2-server behöver du följande filer:

Skapa en arena-katalog i din Q2-katalog och packa upp filerna:

$ cd ~/quake2
$ mkdir arena
$ unzip ~/ra2250sv.zip -d arena
$ unzip ~/ra2250cl.exe -d arena

Ändra i server.cfg som du vill. En annan fil du kanske vill ändra i är arena.cfg som används för arena-specifika inställningar såväl som ban-rotation. Starta servern:

$ ./quake2 +set dedicated 1 +set game arena +exec server.cfg

Lithium II

Lithium II är en väldigt populär, konfigurerbar deathmatch-mod för servrar som lägger till saker som grappling hook och låter dig konfigurera i princip allt; se dess readme.txt för mer information. Ladda ner följande fil:

Packa upp filen i din Q2-katalog. Alla filer lägger sig i en lithium-katalog.

$ cd ~/quake2
$ tar zxvf ~/lithium2_1.24-i386-unknown-linux2.0.tar.gz

Lithium II kommer med fyra olika config-filer. Kopiera en av dem till server.cfg och modifiera:

lithium.cfg - default Lithium II server.
stock.cfg - stock Quake2 server.
lithctf.cfg - default Lithium II CTF server.
stockctf.cfg - stock CTF server.

Starta deathmatch-servern:

$ ./quake2 +set dedicated 1 +set game lithium +exec server.cfg

För att starta CTF-servern måste du ha Q2CTF installerat. Packa upp lithium-arkivet till din ctf-katalog och starta med följande kommando:

$ ./quake2 +set dedicated 1 +set game ctf +set ctf 1 +exec server.cfg

L-Fire DM

L-Fire DM är en modifikation för servrar som lägger till många funktioner till som t ex organiserat matchstöd, anti-spam funktioner, highscore-listor för varje bana, osv. Vad du behöver:

Du kan köra L-Fire DM från antingen baseq2-katalogen, isåfall syns den som en standard DM mod i GameSpy och liknande, eller så kan du ge det en egen katalog (lfiredm eller vad du vill). Packa upp arkivet (det innehåller faktiskt bara två filer, gamei386.so och readme.txt). Med andra ord så ska du lägga gamei386.so i den katalog du vill ha det i.

$ cd ~/quake2
$ mkdir lfiredm
$ tar zxvf ~/LFireDM_v1_11_Linux.tar.gz -C lfiredm

LFireDM_v1_11_Config.tar.gz innehåller många konfigurationsfiler som du kan använda och antagligen vill ändra i. Packa upp det till katalogen där du la gamei386.so:

$ tar zxvf ~/LFireDM_v1_11_Config.tar.gz -C lfiredm

Starta servern:

$ ./quake2 +set dedicated 1 +game lfiredm

L-Fire CTF

L-Fire CTF är också, likt L-Fire DM, en server-side mod som lägger till diverse funktioner till Q2CTF såsom matchstöd, anti-spam funktioner, highscore-listor osv. Vad du behöver:

Packa upp arkivet till Q2CTF-katalogen:

$ cd ~/quake2
$ tar zxvf ~/LFireCTF_v1_20_Linux.tar.gz -C ctf

LFireCTF_v1_20_Config.tar.gz innehåller ett gäng konfigurationsfiler som du kan använda och ändra i. Packa upp till Q2CTF-katalogen:

$ tar zxvf ~/LFireCTF_v1_20_Config.tar.gz -C ctf

Starta servern som vanligt:

$ ./quake2 +set dedicated 1 +game ctf

Q2Admin

Q2Admin är en väldigt bra transparent proxymodifikation som lägger till många admin-funktioner, och den viktigare, ZBot/Ratbot-detection för att förhindra fuskare med aimbots och dylikt. Q2Admin fungerar transparent med alla Q2-modifikationer genom att filtrera kommunikationen mellan servern och modden.

Ladda ner följande fil:

Packa upp arkivet någonstans och kompilera:

$ cd ~/quake2
$ mkdir q2admin
$ tar zxvf q2admin18src.tar.gz -C q2admin
$ cd q2admin; make
$ tar zxvf q2admin18src.tar.gz -C ~/quake2

Nu bör du ha en fil kallad q2admin.so i q2admin-katalogen. För varje mod du vill skydda med Q2Admin ska du kopiera filerna install och q2admin.so till varje mod-katalog och, om du vill, *.txt-filerna för att ha olika Q2Admin-inställningare för olika mods. Kör install, ./install (chmod +x install om den inte är körbar) och starta servern som vanligt. Installscriptet flyttar helt enkelt gamei386.so till gamei386.real.so och q2admin.so till gamei386.so. Kör install igen för att flytta tillbaka filerna. Det finns mängder av olika kommandon; se readme.txt-filen inkluderad i q2admin-paktet för allt du behöver veta.

Personliga verktyg