BASE1.TXT
är samma sak som base1.txt
. Under Linux och andra
unixdialekter, ÄR det skillnad på stora och små bokstäver. MOTD.TXT
och motd.txt
är
olika filer. Detta kan orsaka problem med spelarmodeller och skin filer om de installeras
med stora bokstäver eller stora och små bokstäver blandade.
players/male/santa.PCX
behöver ändras till santa.pcx
för
fungera i Linux. fixskins.sh
skriptet som följer med
quakeworld konverterar alla filnamn i ett bibliotek till små bokstäver.
Skriptet följer nedan:
#!/bin/sh for x in *; do y=`echo $x | tr '[A-Z]' '[a-z]'` if [ $x != $y ]; then mv $x $y fi done
\
"
för att separera element i sökvägar och filer. In Unix, används backslash tecknet som ett "undantags"
tecken. Om du använder sökvägar i dina konfigurationsfiler (eller mod kod, eller någon annanstans),
se till att använda "/
" och inte "\
".
quake2.conf
fil från
Quake 3.17 fås felmeddelandet "LoadLibrary("ref_XXX.so") failed: No such file or
directory
". LMCTF-TE reports a floating point exception.
Om du har ett oförklarligt problem, försök att ta bort CR tecknen från dina textfiler:
mv file.txt file.bak; tr -d '\r' < file.bak > file.txt
Följande gäller endast Quake I binärerna (squake
,
glquake
och quake.x11
). Från och med version 2.30
respektive 3.19, finns QuakeWorld och Quake II tillgängliga i både libc5 och glibc versioner.
Quake binärerna kompilerades med libc5. Nyare Linux distributioner som RedHat 5.x och Debian 2.0 använder det inkompatibla glibc som förvalt C bibliotek. Om du kör Quake på ett glibc system är det ett par saker du måste tänka på:
/usr/i486-linux-libc5/lib
.
$LD_LIBRARY_PATH
mot dina bibliotek innan det kör igång Quake.
#!/bin/sh export LD_LIBRARY_PATH=/usr/i486-linux-libc5/lib ./quake2 +set vid_ref gl $*
ps aux | grep gpm
Om resultatet ser ut så här:
root 6115 0.0 0.4 832 316 ? S 17:54 0:00 gpm -t PS/2
Så är gpm igång och i konflikt med Quake. gpm -k
(som root)
borde stoppa gpm. Om det inte gör det (gpm -k
fungerar inte alltid på
mitt system), döda gpm med kommandot killall gpm
.
Om du aldrig använder gpm, kan du hindra det från att starta vid start av datorn.
Se dokumentationen för din distribution för information om detta.
libvga.config
? Den här filen
ligger vanligtvis i /etc
eller /etc/vga
. Öppna och leta efter
en rad som den här
mouse Microsoft
På mitt system, är detta den första optionen i filen. Se till att mustypen
stämmer med din hårdvara.
SVGAlib, som hanterar mus input för SVGA och GL Quake/QW/Q2,
hade inte stöd för Intellimouse förrän version 1.3.0.
Om du har en äldre version av SVGAlib än 1.3.0, bör du uppgradera,
använd sedan mustypen IntelliMouse
(för seriella möss) eller IMPS2
(för
PS/2 möss) i din libvga.config
fil.
sensitivity
i spel konsolen för att råda bot på problemet.
Att sätta sensitivity
för hand i konsolen eller i en
.cfg
fil låter dig öka värdena mer än du kan göra med draglisterna
under Options menyn, t.ex. för sensitivity 15
.
Om du får video 'lag' i GL renderaren (skärmuppdateringarna verkar komma långt efter musrörelserna) skriv "gl_finish 1" i konsolen. Detta tvingar fram en uppdatering av rörelserna varje skärmuppdatering.
libvga.config
som du kan använda för att skräddarsy beteendet hos din mus.
Med rätt inställningar är det möjligt att få din mus att kännas precis som du vill ha den.
På mitt system ändrade jag bara
mouse_accel_type
till normal
(förvalt värde är power
)
och det gav de resultat jag ville ha. Jag har inte experimenterat med de andra inställningarna,
och jag låtsas inte heller veta vad alla gör.
Det är olika versioner av Glide för Voodoo repektive Voodoo2 kort. Se till att du använder den korrekta för ditt system.
Jepp. Detta suger. SVGAlib fångar CTRL-C och avgör vad som ska göras istället för att låta Quake hatera det. Jag vet inte någon väg runt detta förutom att hacka SVGAlib.
Om du kör dina Quake spel från ett script som återställer ditt tangentbord och terminal, som skriptet nedan, är dock risken mindre att du får en oanvändbar terminal om Quake skulle krascha.
#!/bin/sh ./quake2 $* kbd_mode -a reset
svgalib: cannot get I/O permissions"
Quake måste köras som root, så du måste antingen starta det som root eller göra Quake binärerna setuid root. Se installations instruktionerna i detta dokument för detaljer.
Av någon anledning, stänger X11 versionerna av Quake av tangentrepetition under tiden de körs. Om programmet av någon anledning avslutas abrupt, kommer tangentrepetitionen inte sättas på igen. Ge:
xset r on
För att sätta på repetitionen.
Din ljudhårvara är inte korrekt konfigurerad. Du kanske bara behöver ge ett
insmod sound
, eller så behöver du kanske bygga om kärnan.
RedHat användare kan behöva använda sndconfig(8) verktyget.
Se dokumentationen för din Linux distribution och/eller Linux Sound HOWTO
för information om att konfigurera ditt systems ljud hårdvara.
Windows 3Dfx GL miniport är kraftigt optimerad för de saker Quake II gör. Mesa däremot, är mera generellt och mindre optimerat. Resultatet blir att Linux Quake II blir långsammare än under Windows. Detta är inte en begränsning i Linux, utan en begränsning i nuvarande drivrutiner.
Till de senaste versionerna av QuakeWorld och Quake II, finns 3Dfx miniport som nämns ovan tillgängligt för Linux. Även fast det inte lyfter upp Quake till Windowsversionernas prestanda, är det ändå ett steg i den riktningen.
Pentium Pro och Pentium II användare kan tillämpa ett par trick med
minnes buffring - den senaste
/dev/3dfx
drivrutinen har stöd för att automatiskt ställa in det här åt dig.
Att möjliggöra MTRR kan resultera i betydliga (10 fps på mitt system) GL Quake uppsnabbningar.
Se
http://glide.xxedgexx.com/MTRR.html för mera detaljerad information.
screen(1) är ett bra hjälpmedel för detta. Det låter dig skapa många virtuella skärmar på en tty och växla mellan dessa. Screen följer med många distributioner. Du kan ladda ner det från: ftp://prep.ai.mit.edu/pub/gnu eller någon GNU mirror ( ftp://ftp.sunet.se/pub/gnu).
Starta screen genom att ge kommandot screen
, skapa sedan en ny skärm
genom att trycka CTRL-A CTRL-C. Du kommer inte att märka mycket när du trycker
men, jag försäkrar, något händer.
Starta a Quakeworld server:
/usr/local/games/quake/qwsv
Öppna nu ett nytt screen fönster med CTRL-A CTRL-C och starta en Quake II server:
/usr/local/games/quake2/quake2 +set dedicated 1
Nu kan du växla fram och tillbaka mellan servrarna genom att trycka CTRL-A CTRL-N.
Tryck CTRL-A CTRL-D för att koppla loss från screen programmet. Screen och dina servrar körs fortfarande med de syns inte längre i ditt terminal fönster. Nu kan du logga av och dina processer kommer ändå att fortsätta köras normalt.
Använd screen -r
för att återkoppla till din screen process igen
och få tillgång till dina servrar.
Det var allt. Se man sidan för screen(1) för mer detaljerad information.
Det här brukar betyda att ditt nätverk inte är ordentligt konfigurerat.
Försök att starta quake med -noudp
valet och se om felet försvinner.
Om det fixar det, undersök din /etc/hosts
fil och se till att det finns en rad
för din egen maskin där. Använd 127.0.0.1 för din IP adress om du
har en uppringd förbindelse som ger dig olika adresser varje gång du ansluter.
glqwcl
, glqwcl.3dfxgl
, och glqwcl.glx
? ++
glqwcl
är standard GL Quakeworld klienten som du sett
i tidigare versioner. Den är länkad mot libMesaGL.so.2.
glqwcl.3dfxgl
är ett script som kör glqwcl
efter att ha laddat 3Dfx GL miniport biblioteket, lib3dfxgl.so
.
Att först ladda miniport bilioteket gör att dess GL funktioner används istället
för Mesas. Eftersom GL miniport är optimerat för Quake, är detta en god sak.
glqwcl.glx
är länkad mot standard OpenGL biblioteken
istället för Mesa. Detta låter glquake köras på annan 3D hårdvara som stöds
av någon annan OpenGL implementation. Detta är en X applikation och måste köras
från X.
glqwcl.glx
i fullskärm från X, kan jag inte använda musen eller tangentbordet ++
Kör glqwcl.glx
med +_windowed_mouse 1
valet. GLX Quakeworld körs i ett fönster, även om det ser ut som det tar upp hela skärmen.
Om du flyttar musen medan fönserhanteraren är i fokus-följer-musen läge, kommer du
antagligen att flytta musen utanför detta fönster, och Quake kommer att sluta svara på
mus och tangentbords indata. +_windowed_mouse 1
får Quakeworld att fånga musen.
Om du omedelbart före "Unable to resolve symbol" raden har ett meddelande i stil med
"can't resolve symbol 'fxMesaCreateContext'
", så har inte ditt
Mesa bibliotek glide support inkompilerat.
Se sektion
GL renderaren i
installationssektionen för Quake II för installations information om Mesa och glide.
LoadLibrary("ref_XXX.so") failed: No such file or directory
/etc/quake2.conf
innehåller inte korrekt sökväg till din Quake II katalog.
Den här filen ska innehålla en rad som anger Quake II katalogen.
/etc/quake2.conf
innehåller rätt sökväg,
försök att ta bort filen och återskapa den för hand. Vissa versioner av
Quake II för Linux innkluderar en felaktigt formatterad quake2.conf
fil.
/lib
,
/usr/lib
och /usr/local/lib
och leta efter filen
libvga.so.1.X.X
, där Xen är några siffror. Hittar du ingenting,
måste du ladda hem och installera SVGAlib för att köra Quake II utanför X.
ref_gl.so
, kan det hända att
Mesa inte är korrekt installerat. Har du kopierat libMesaGL.so.2.6
till en bibliotekskatalog som installationsinstruktionerna sade åt dig.
ref_gl.so
, har du installerat
glide biblioteken?
Skriv vid_restart
i konsolen för att låta ändringarna träda i kraft.
I skrivande stund, är den senaste Quake II versionen 3.19. Om du av någon anledning kör version 3.17 istället, kan följande information vara av intresse för dig.
Två text filer (quake2.conf
och fixperms.sh
) i 3.17
distributionen sparades av misstag i MS-DOS CR/LF text-fil format
istället för unix LF format. Detta innebär att det är en extra vagnretur vid slutet
av varje rad i dessa filer och de kommer inte att fungera som de ska förrän du fixar dem.
Vi kör dem genom tr(1) för att ta bort alla vagnreturer:
for i in fixperms.sh quake2.conf
do
mv $i $i.bak
tr -d '\r' < $i.bak > $i
done
+set vid_ref glx
i fullskärmsläge från X, kan jag inte använda musen eller tangentbordet. ++
Kör GLX quake2
med +set _windowed_mouse 1
valet. GLX Quake2 körs i ett fönster, även om det verkar som om det tar upp hela skärmen.
Om du rör musen medan fönsterhanteraren är i följa-musen-läge, kommer du antagligen att
flytta musen utanför fönstret, och Quake II kommer att sluta reagera på mus och tangentbords
indata. +set _windowed_mouse 1
får Quake II att exklusivt ta hand om musen.
SVGAlib vet antagligen inte hur det ska skapa dessa lägen med ditt grafikkort.
När Quake II startar med SVGA renreraren (ref_soft.so
),
skriver den ut en lista på alla lägen som SVGAlib säger finns tillgängliga:
------- Loading ref_soft.so -------
Using RIVA 128 driver, 4096KB.
mode 320: 200 1075253220
mode 320: 240 1075253220
mode 320: 400 1075253220
mode 360: 480 1075253220
mode 640: 480 1075253220
mode 800: 600 1075253220
mode 1024: 768 1075253220
Dessa är de enda lägen som du framgångsrikt kommer att kunna växla mellan
från Video menyn. Om t.ex., 512*384 inte finns i listan, kommer det inte
gå att välja det läget från Video menyn.
SVGAlib låter dig definiera nya lägen för vissa chipsets i libvga.config
,
om du har tur kan du skapa dina egna video lägen på detta sätt.
Se dokumentationen för SVGAlib för detaljer.