Tuesday, November 10, 2009

W_LoadWadFile: couldn't load gfx.wad - the final word

This one sucked a lot. Anyway, on release here's the way it will work:

  • It will check the directory that DirectQ.exe is in for the presence of certain files needed to run Quake (pak0.pak, etc).
  • If it finds Quake there, job done; ignore the rest of the list. Goto 200, run DirectQ.
  • If it doesn't find it, it checks in certain "well known" folders such as C:\Quake, etc.
  • If it finds Quake in one of these, job done; ignore the rest of the list. Goto 200, run DirectQ.
  • If it doesn't find it, a meaningful error message is popped up.
  • There is no HD scan or anything like that, the error message is terminal.
This seems a reasonable enough middle-ground; at least it makes something of an attempt to locate the game files if the user runs the engine from the wrong place. Also it's just looking in the filesystem tables rather than attempting to actually open files, so it should cause no more alarm than any built-in system processes that do the same.

I'd like to encourage any nay-sayers to at least download and run the engine before succumbing to fits of paranoia, the proof will be in the exe (and the source code).

5 comments:

=peg= said...

Sounds like a perfectly reasonable solution to me ;)

Andy said...

I agree; perfectly reasonable.

gnounc said...

I think you're final compromise is
the best answer : )

Chip said...

Couldn't you remove the pak0.pak requirement? I'm building new content for a Quake mod, and I've replaced everything inside.

I don't want to redistribute it using DirectQ, just for in-house testing purposes.

mhquake said...

Pak0.pak isn't an absolute requirement, it's just one of the files it checks for the existence of. Others include progs.dat, gfx.wad, default.cfg, and so on. If any of these are found it assumes we're OK.