FAQ

From Q4MAX

Contents


Setup Problems

I seem to have installed q4max wrong? What should be where?

A working install should match the following :

Files you should not have, and should delete if present:

...\quake4\gamex86.dll
...\quake4\q4base\zz-q4max-game-081.pk4
...\quake4\q4base\zz-q4max-media-081.pk4

(in other words, anything "q4max" should only be in the q4max folder)

Having sorted that out, you should have a working install of Q4Max.

For a server, you should also ensure that there are no older versions of q4max files in the q4max directory (see also the Server setup page).

Please note the current version of Q4Max requires Quake 4 version 1.4.2.

I cannot connect to a server, it keeps telling me I have missing files - what should I do?

First of all, check you've installed Q4Max correctly, and are using the same version as the server. You can download the latest version of Q4Max Here and for installation advice, see here. Once you've done that, make sure you have all the maps that are on the server. Many servers are running with some or all of these:

Also check in your server browser whether the server has a homepage - if so, they may list there any files you require.

Note that if it is saying you have missing files, you really DO have missing files, no matter how much you say you've downloaded and installed everything that you need. This message means Q4 says that the server has different files than you do.

If you post a specific server IP, and the condump of your console when you attempt to connect to it, someone else who has the correct files to connect can tell you whats missing.

can't start Q4Max : Error during initialization wrong game DLL API version

Game code is not compatible across different versions of Quake 4, so you need to get a version of Q4Max that works with the Q4 point release you're running. Currently, Q4Max 0.78d requires Quake 4 1.4.2. These requirements are in the Changelog.

can't start Q4Max : could not create destination file

If you're using Windows Vista, you will probably have an issue such as

could not create destination file C:/Program Files/id Software/Quake 4/q4max/gamex86.dll

when trying to run Q4/Q4Max. This essentially means you need to run Quake 4 as an administrator.

You can right click Q4 and select "run as adminstrator", but doing this every time you want to play gets old fast. So, to make this permanent, right click your Q4 shortcut, then click the Advanced button on the shortcut page for an Advanced Properties dialog. Tick the "Run as administrator" checkbox. There is also a "run as adminstrator" checkbox on the compatibility tab. Its unknown whether theres any difference between them - probably not, so take your pick.

If you're using an external server browser such as MAXBrowse to join games, run it as admin as explained : Q4 will inherit the user rights from the server browser.

Manually viewing an XML stats file gives an XSL related error

You may sometimes get XSL errors (which vary with web browsers) when trying to view stats. This often means the XML file is referencing a stylesheet you may not have (for example styl.xsl in clean installs from the 0.78c and d packages), or that happens to be in the wrong place.

You can fix these XML files by changing the href property of the <?xml-stylesheet?> tag to a valid path.

To prevent this issue in your stat files yet to be generated, you must remove any fs_xslTemplate lines from your q4max/quake4config.cfg.

I'm getting "client unknown to auth" when connecting to servers

This means for some reason, authenticating your client to the master server is failing.

  • Your machine can't resolve q4master.idsoftware.com.
Make an autoexec.cfg with the following contents :
seta net_master0 192.246.40.28:27650

or

Add the following line to your hosts file :
192.246.40.28 q4master.idsoftware.com

(in both cases, make sure you haven't assigned this name to 127.0.0.1 in the hosts file, if you have used a not very legal copy of Q4 in the past).

  • Using somebody's config ? Go to Quake4config.cfg and delete any lines referencing the cvar com_guid, then restart Q4.

Demo problems

When I play a demo, I get an error message - how do I fix it?

Demos in Q4 are currently a bit picky about how they are played. You pretty much ALWAYS must run with demo_enforcefs 1 or 2.

If you don't have this option set and you report an issue, you'll be told to turn it on. If you still get an error with demo_enforcefs 1 or 2 then you need to pay attention to that error message, not to anything you get with demo_enforcefs 0, as these are the result of you ignoring the error reported by demo_enforcefs 1/2.

Generally, you will get "missing files" type errors, which means you need to ensure that you have all the pk4's that were used when the demo was recorded.

You may also get a message telling you that the protocol is not supported. This means you need to be using a different point release of Q4 to play the demo, and also need a different version of Q4Max to go with that point release.

FWIW, effects of running a demo without demo_enforcefs 1 or 2 can be:

  • graphical errors, such as explosions replaced with little 3d-axis models / green dots
  • errors similar to "Failed to spawn entity with classname 'YYY' of type 'ZZZ'"
  • ACCESS_VIOLATION errors, especially when playing demos recorded in different versions of Q4
  • "couldn't find map" error mentioning the map the demo takes place on, if the map is an .addon that has not been loaded yet

There are potentially other issues than this. Basically, always play demos using demo_enforcefs 1 or 2.

When playing a demo, I get green dots instead of explosions, how do I fix it?

Try demo_enforcefs 1 or 2(recommended)

This should stick to the paks the demo was recorded with. Make sure you have all the required pk4 files before using this command.

I get ERROR: Failed to spawn entity with classname 'XXX' of type 'idPlayer' when playing a demo

This means either:

  • You have a read-only gamex86.dll in your q4max directory, so un-writeprotect it or
  • You do not have the correct pk4s to view the demo. Download the appropriate version of Q4Max, and other pk4 files required by this demo
  • You have a stray gamex86.dll in your quake4 directory, there shouldn't be one here!

My demos seem really lagged, how can I fix it?

If the demo has been recorded by a spectator, the demo will look jittery no matter what. You can usually tell by the spectator-only message on the hud and the blatant jitter.

My demo plays back with no light - wtf?

There are a number of settings which cause this effect, some of which you may have tweaked to try to boost performance. Many of them are locked in MP mode so you dont notice that you've changed them until you play a demo. Because of this, you may find that the demo plays back fine if you start a server on the same map as the demo is recorded in, and then play the demo.

The likely candidate cvars are:

seta r_skipUpdates 0
seta r_skipAmbient 0
seta r_skipInteractions 0
seta r_skipPostProcess 0
seta r_skipDiffuse 0
seta r_singlelight -1

Check out a list of locked variables for more details.

These are the default values which should be left as is. If you have these cvars in your personal config(s), we recommend you just remove references to them from the file(s).

Known Issues

In team games, the team scores go missing sometimes

Occasionally, at the start of the game you may find that the team scores are missing. This can be cured by changing team, or going to spectator and then rejoining the team.

The admin and vote menus dont show custom modes

At the moment we have not updated these guis to be able to support custom modes as defined by the server operator. If you wish to vote for these, use the "callvote" command, as this will support them. If you're an administrator, make yourself a referee and callvote it.

Also note that in the case of the admin gui, it cannot override settings such as timelimit and fraglimit - these will be taken from selected mode - again, use callvote.

We will be updating these guis in a future release to resolve these problems.

0.71-white background in the menus

This can be worked around by disabling the use of compressed textures as such:

  • image_usePrecompressedTextures 0
  • vid_restart

Be forewarned that this might increase hiccups in game (texture thrashing).

Further versions are not affected.

performance issues with hud_showinput 1 and ATI cards

Using hud_showinput 1 can cause noticeable slowdowns on ATI hardware. You may work around this by disabling the use of compressed textures, although overall you might as well just turn hud_showinput off.

The issue has been identified (ATI does not seem to like non power of two sized graphics + special dds compression formats) and resolved in Q4Max versions above 0.78d.

Crashes shooting napalm with cg_projectilelights 1

Shooting the napalm gun while the projectile lights are enabled can cause Access Violation errors straight in Quake 4. These lights can be turned on by using the "eye candy" profile in Q4Max.

The workaround is to set cg_projectilelights 0.

The issue may have been identified and resolved in Q4Max versions above 0.78d.

Misc Questions

I think I've found a bug - how do I report it?

The first thing to do is to check the bugs forum, since its possible someone else has already reported it. If so, we may have a work around - and if so, the solution will have been posted there.

Next thing to do is to create a thread in the bugs forum. Please describe in as much detail as you can what is wrong, and what was happening when you saw it. Check your console for an error message - often there will be one there. If you have one, please try to post it accurately - it may mean something to us even if it means nothing to you.

Use the command "condump filename.txt" to get a log of everything printed on the console.

When will the next release be?

When it's done.

A general rule of software development is that 80% of the time is spent doing the last 20% of the work. This 20% often is largely composed of testing and bugfixing. Until you've finished testing, you dont know whether bugs are gone or not. Equally, when you fix a bug, you dont know whether that will allow you to find further bugs when you test it further.

Therefore, until its done we will not commit to a date.

This issue is compounded by the fact that we all have other commitments, and so cannot accuately estimate how much time we can spend working on Q4Max.

We however will not delay release of a build until a specific date or time, nor release it at a specific date and time just because we intended to release it by that date. These are the only two ways that teams can give accurate release dates.

Note that repeatedly asking the developers about a release date will only delay things even further since it distracts the developers during their work which can lead to undesirable effects in the code. Especially if each one of you does it in a separate PM on IRC.

What features will be in the next release?

We'll tell you when it's done. Features may drop in or out of the release depending upon how things go, so theres no point in pre-announcing what features will be in any particular release, since it may not be accurate.

X feature in the q4 engine is broken, will you fix it?

We dont have the engine source code, so if the issue you're complaining about is in the engine rather than the mod code there is probably nothing we can do about it. In general, commonly requested areas includes the sound system, the pure / auto download sub-system, and the binding/impulse system. It also includes low level renderer issues (although a certain amount of that is changable).

If its possible to fix an issue, we'll try. If its not, then we're not the people to hassle.

I've heard you say autoexec.cfg's are pointless - why?

Quake 4 is a bit different to earlier quakes - it really isnt necessary to have external .cfg files (for mp at least). In multiplayer, you can only change cvars that are not marked as "cheat protected".

In Quake 3, that was any cvars not explicitly marked as CVAR_CHEAT, which meant that lots of cvars were available regardless of whether id expected you to want to change them or not, as long as it wasnt nominated as bad, it was OK.

In Quake 4, the cvars considered "cheat" cvars are every cvar that isnt marked with either CVAR_NOCHEAT or CVAR_ARCHIVE. Very few cvars are marked with CVAR_NOCHEAT, and generally these are ones that shouldn't be modified by config files (like ui_chat which is purely used by the game engine to show when you're chatting), so with the exception of that handful of cvars you probably shouldnt change, *every* value that you can change for multiplayer is already in quake4config.cfg.

If you change a CVAR_ARCHIVE cvar at the console or via the gui, q4 will automatically write it to quake4config.cfg. This means Quake 4 is generally a "set it up once, and thats it" game - it remembers all your settings for the next run without you doing anything, for pretty much every cvar that you're able to use in multiplayer.

We have created a full list of locked variables if you want to check your config for cvars you shouldnt be touching. Start with *skip* cvars as they're the most likely.

Ok, so autoexec.cfg's are pointless, but I still want one - why will you whine at me?

There seem to be issues with Quake 4 if userinfo cvars are being changed during the connection process, or when changing maps. We have seen cases of people seeing bugs which are resolved simply by removing the autoexec.cfg. If you dont need it (see the previous faq), why put yourself at risk of these bugs? Since we know that this can cause bugs, even if you're not seeing them at the moment it'd be wise to avoid the unnecessary risk.

In addtion to that, there is an odditity with addon.conf maps that means Q4 re-execs the autoexec.cfg on map changes too, sometimes. This can occasionally have negative effects in game for clients (eg changing team on map change), and if used on a server can cause the server to refuse to switch to addon.conf maps. This also applies to default.cfg

There are a couple of specific exceptions - mainly where autoexec.cfg can be used to workaround other bugs, but these are for exceptional cases only (eg. net_ip lost on servers with multiple IP addresses when changing to addon.conf maps, or net_master0 for players who cannot get this to stick, and suffer from DNS issues).

Basically, they're not needed, and they can cause problems - so why bother?