Well
Doom III has
hit the shelves and some of you are even lucky enough to have
already started playing it. As with any new game their will be
a lot of questions and not many answers. I have my own questions,
and have found a few answers to them which I'm sharing here. Please
note I've had the game for less than a day, so it's possible their
will be errors which will be fixed as more information becomes
available. Thanks to Scott for his huge help in pouring over the
cvars and configs.
WORD
OF CAUTION
If
you don't know what you are doing, you can screw things up pretty
badly, for which Viperlair won't be held responsible. You follow
the info in this article at your own risk. That
said, make a back up of your current DoomConfig.cfg and you should
be safe (it's in the doom3/base folder). If anything goes wrong,
you can either revert to that or delete it entirely, forcing Doom
III to create a new DoomConfig.cfg from scratch.
The
guide will be broken down as follows:
Autoexec
and the Console - Basic Introduction
Performance
Tweaking - Image and other performance tweaks
Game
Tweaking - other tweaking area such as mouse control,
coloured names
Editor
- getting it running to design your own maps
Scripting
- just a few scripts you can use in your autoexec
Server
- so you want to run a MP server?
An
autoexec.cfg file is a configuration list of cvars that is run
when the game is loaded. It can contain your settings for the
game, your bindings for chat messages and controls, and anything
else you might need. The beauty of using an autoexec file is that
you can layout it out in a manner that is easy for you. Basically
its nothing more than a text file. You can take a look at an
example autoexec here. It's currently rather big and very
much a work in progress, however we have started to mark out a
few items of interest for tweaking.
To
create your own, make a new text file and save it as 'autoexec.cfg'
making sure you save it as all files and not as a txt file. If
you don't, you'll end up with an 'autoexec.cfg.txt' file. Save
this in the Doom3/base folder (the same folder as the DoomConfig.cfg).
You can then edit it with a text editor such as wordpad. Should
you want to make your own notes, placing // before a line will
tell Doom III to ignore it.
Where
is the console?
The
console can be accessed by pressing CTRL-ALT-x where 'x' is the
key under ESC, tilde for many, ` hyphen for others, it all depends
on your region. You can however set this to the key under ESC
only by adding the line -
set
com_allowConsole "1"
to
your autoexec.cfg.
What
was that command again .... ?
You
get a list of commands or have your commands completed in the
console by using the tab key. For example -
c
+ tab key in the console will give you a list of all commands
beginning with c.
Speaking
of commands beginning with c, you can dump the current console
to a text file if you wish with the 'condump
blah.txt' command.
Before
you get to tweaking, you will want to know how to benchmark the
game to get before and after results of your handiwork. So start
Doom III and bring down the console. Then type -
timedemo
demo1
Wait
for the demo to run and you will be presented with a screen at
the end with your frame rates. Since you will be stopping and
starting Doom III a lot, you can also bypass the beating heart
machine intro by adding -
+disconnect
to
the target command line of your Doom III shortcut. To do this,
right click the shorcut and go to properties. Find the Target
line and change it accordingly. Mine reads -
"D:\Doom
3\Doom3.exe" +disconnect
If
you want to see your frame rates in game, simply use -
set
com_showFPS "1"
which
will display your current FPS in corner of screen.
set
com_videoRam "64"
Doom III has detected I have 64mb of ram on my video card. Well
I actually have 256mb, which is probably why a few other settings
seem out, hence I set it manually.
set
image_downSizeBumpLimit "512"
//1024 for 256mb gfx. 512 for 128mb gfx. 256 for 64mb gfx
set image_downSizeBump "1"
//enables above
Originally
the above was set to 256, as if I had a 64mb card. What I believe
it does is decide how large in pixels the bump map textures should
be on screen. Without a performance hit I was able to use 1024
with a 256mb card.
You can also try -
set
image_downSizeLimit "512" //1024 for
256 cards. 512 for 128mb gfx. 256 for 64mb gfx
set image_downSize "1"
//use to enable above
I've
had friends say that below does work and others say it doesn't.
Give it a try but make a note of your current settings before
you change it. You can do that either by reading your DoomConfig.cfg
or by typing the command without a variable in the console.
set
image_useCache "1"
set image_cacheMegs "128"
set image_cacheMinK "10240"
20
was the default Cache for me and I've had a small FPS boost by
setting it higher, although this is bound to be linked directly
with available memory so don't go too high. I'd set it between
96 and 128 depending on your system specs. Note you will need
to raise the cacheMinK as well or the game will crash before you've
finished loading. Still playing around with above but even if
it doesn't raise the FPS, it does seem to smooth out the transitions
and pauses you can experience in single player. Note that these
settings are for PreCompressed textures only, so should you be
lucky enough to run in ultra mode without texture compression,
they shouldn't effect you.
How
make name in pretty colors?
From
the very limited time I've had playing around in Multiplayer,
it seems that chat messages don't support colour codes. However
you can change the colours in your name. The colour codes I've
found so far are -
^1
Red
^2 Green
^3 Yellow
^4 Blue
^5 Aqua
^6 Purple (might be pink?)
^7 White
^8 Grey
^9 Black
To
use them simply put the codes in your name before the letters
you want in that colour. For example -
set
ui_name "^4D^8oo^1M"
would
give you the name DooM
We've
barely scratched the surface here but some stuff to get you started
-
set
pm_runbob "0" //default
is 0.4
set pm_runpitch "0" //default
is 0.002
set pm_runroll "0" //default
is 0.005
set pm_walkbob "0" //default
is 0.3
set pm_bobpitch "0" //default
is 0.002
set pm_bobroll "0" //default
is 0.002
set pm_bobup "0" //default
is 0.005
set pm_crouchbob "0" //default
is 0.5
The
above will stop your view from bobbing up and down as you walk
when set to 0. This is applicable to both the singleplayer and
multiplayer. So should you feel a little sick while playing Doom
III, perhaps it's not just the scenery ...
You
may also want to set a monitor refresh rate (especially with all
the dark corners) using -
set
r_displayRefresh "75"
Speaking
of your view, wouldn't it be nice if you could see a bit more
on screen?
set
g_fov "90"
FOV
is the 'Field of View'. I personally use 105 but the choice is
yours. Note it will decrease your framerates the higher you set
it, and it will also compress the image on screen to fit. Go too
far and you'll get a fishbowl appearance.
Afraid
of the dark? You could lighten things up a notch or two with -
set
r_brightness 1
set r_gamma 1.3
Bear
in mind it is supposed to be dark, go too far and you'll ruin
the atmosphere.
A
few others that will likely be of interest -
set
com_showFPS "1"
//display current FPS in corner of screen
set com_allowConsole "1"
//tilde key only for console *
set g_nightmare "1"
//enables highest skill level for the real hardcore
*
this will change depending on region, but it is always the key
found below the ESC key
How
about a few fun ones.
set
com_showMemoryUsage "1" //displays current
memory usage, interesting during section transitions
set s_showLevelMeter "1"
//display sound level meter
for each speaker
So
you want to make your own maps for Doom III? Well id
Software saw fit to provide the tools with the game. To access
the Editor you simply type
editor
in
the console. This will start DOOMEdit, which for those familiar
with the Q3 engine will recognize the majority of what there (its
very radiant alike). I did however have a few problems running
this at first, no mouse pointer for starters. I'd also changed
the gamma and brightness levels from the default and these had
to be reset beforehand. The way I've done it is to create a shortcut
to Doom3.exe and then edit the target line. Mine reads as -
"D:\Doom
3\Doom3.exe" +disconnect +set r_gamma 1 +set r_brightness
1 +set r_mode 8+set r_fullscreen 0 +editor
Basically
my mouse pointer will not show unless I run it r_fullscreen 0.
The command r_mode 8 gives me a 1600x1200 screen, you'll want
to set yours to the size of your desktop accordingly.
set
r_mode 3 = 640x480
set r_mode 4 = 800x600
set r_mode 5 = 1024x768
set r_mode 6 = 1200x1024
set r_mode 8 = 1600x1200
Couple
of basic scripts to get you going, one is for recording demos,
the other is for a 'clean' screenshot. Speaking of which, you
can get screenshots with the F12 key by default.
//
Record Demo - start & stop with F10 //
set startrec "recordDemo; set demorec vstr stoprec"
set stoprec "stopRecording; set demorec vstr startrec"
set demorec "vstr startrec"
bind F10 vstr demorec
F10
once will start you recording. Note that you won't get a message
on screen stating that recording has started (if you want one,
set con_noPrint "0", although this will display a lot
of other stuff too). You can check it in the console although
this will obviously be in your demo. To stop recording simply
press F10 once again. Demos can be found in the Doom3/base/demos
folder and can be run from the console with the 'demo
demoname' command.
//
Clean Screenshot - no Gun or HUD in picture //
bind F11 "set ui_showGun 0;
set g_showHud 0; screenshot; set g_showHud 1; set ui_showGun 1"
F11
in game will create a 'clean' screenshot (no gun, no HUD) in the
doom3/base/screenshots folder with the below. Change the key in
red to one of your choosing if you so wish.
Running
a server from the GUI is simple enough but should want to run
a dedicated server (i.e. text console only, you don't play the
game) then you will want to do it something like this.
Create
a new text file called doomserver.bat and save it as all files
in the doom3 folder. The idea is that you get a doomserver.bat
and not a doomserver.bat.txt file. Once thats done, right click
the newly created batch file and choose edit. Now we need to add
some commands.
start
Doom3.exe +set net_serverdedicated 1 +exec doomserv.cfg +servermaprestart
goto start
Note
that is 3 lines of text. The commands used here are +set net_serverDedicated
which tells doom what kind of server you want (1 for a text only
console, 2 for a graphical in game listen server). The next part,
+exec doomserv.cfg runs our server configuration file we shall
create in a moment. The last restarts the server map which seems
to be needed for some servers (another thing to add to the research
list).
Now
we need an actual server config for that batch file to run. So
create a doomserv.cfg file in the same manner as an autoexec.cfg
and put your server options in it. Here's a few to get you going.
set
si_spectators "1" //on-off Allow people to spectate
games or force them to play
set si_usePass "1" //enable password for server play
set si_warmup "1" // on-off
set si_teamDamage "1" //Available for Team Deathmatch
only
set si_timeLimit "10"
set si_fragLimit "10"
set si_map "game/mp/d3dm5" // d3dm1-5
set si_gameType "Deathmatch" // Deathmatch - Team DM
- Last Man - Tourney
set si_name "D^7oo^1M ^7]|[ Server^7" //name of server,
note use of colours
set si_pure "1" //force client files to match server
files
set si_maxPlayers "4"
set logFile "1" //logfile on-off
set logFileName "doomserverlog.log"
set
net_serverRemoteConsolePassword "password here" //rcon
pass
set net_serverClientTimeout "40"
set net_serverZombieTimeout "5"
set net_serverMaxClientRate "16000" //max client rate
set net_serverSnapshotDelay "50"
set net_serverAllowServerMod "1" // allow non-pure mod
paks with pure game paks
set
g_countDown "10" //warmup time ? UNTESTED
set g_balanceTDM "1"
set g_spectatorChat "1" //on-off spectator chat
set g_password "password" //server password
set g_mapCycle "mapcycle" //mapcycle configscript to
use, default mapcycle.scriptcfg in pak0
That's it for now, we'll hopefully be able to add more info as
time goes on. Any questions or comments can be directed to us
in the
forums.
HOME