Wednesday, March 9, 2011

DirectQ Update - 9th March 2011

This one didn't make it into the RC2 release, but I now have FOV correction for modes that are taller than they are wide.



I'm not sure how this is going to react with values of the "fov" cvar other than 90, so remember that crazy combinations of settings are entirely at your own risk.

There's a bug in RC2 that only affects multiplayer games which happens if DirectQ needs to download a map and you have r_waterwarp set to 1. The new code for this attempts to get the player's position in the map before the map has fully downloaded, and so will cause an error, which in turn causes the connection to fail.

The temporary fix for now is to set r_waterwarp to 0 or 2 before connecting, then set it back to 1 after you connect. I've updated the CodePlex download page with a note to this effect. It will be fixed for real in the next one, of course.

18 comments:

=peg= said...

A couple of minor things I noticed before, but failed to mention:

- CTRL+V pasting does not seem to work anymore in any of the 1.8.7 releases so far..

- NUMLOCK [on] makes for weird stuff going on when pressing any keypad/arrow/HOME/END/INS/PGUP/PGDN keys.. (NUMLOCK [off] appears to work fine)

- The arbitrary size scaling does not work when r_waterwarp 2 is set? (or while connected to a server?)

- I'm guessing the r_waterwarpscale/factor/etc etc cvars only take effect after restarting the renderer (map)?

- Is there any way to dither or otherwise smooth out the banding seen when fog is used against a plain (black) background? (I've manually bumped up the gamma on that screenshot to make the effect easier to see)

Great job btw, I'm sure the final release will be pure gold! :)

Oh and, no more mouse acceleration in rc2! \o/

mhquake said...

"- CTRL+V pasting does not seem to work anymore in any of the 1.8.7 releases so far.."

Will check it out.

"- NUMLOCK [on] makes for weird stuff going on when pressing any keypad/arrow/HOME/END/INS/PGUP/PGDN keys.. (NUMLOCK [off] appears to work fine)"

What the doctor said when I told him "it hurts whenever I do this..."

Otherwise, will check it out.

"- The arbitrary size scaling does not work when r_waterwarp 2 is set? (or while connected to a server?)"

It should work; there's no interaction between the two sets of code. I'll have a look anyway.

"- I'm guessing the r_waterwarpscale/factor/etc etc cvars only take effect after restarting the renderer (map)?"

Nope, you can change them whenever you want. You might need fairly big changes to notice anything though.

"- Is there any way to dither or otherwise smooth out the banding seen when fog is used against a plain (black) background? (I've manually bumped up the gamma on that screenshot to make the effect easier to see)"

Nope; fog is already per-pixel and this is just something that happens when fogging a large flat dark surface. You can see it in other games too.

=peg= said...

"The new code for this attempts to get the player's position in the map before the map has fully downloaded, and so will cause an error, which in turn causes the connection to fail."
--MH

This actually also happens when you already have the map..

=peg= said...

Just a heads up:

Pressing the show-desktop-button (in Windows 7) while playing in windowed mode (any size it seems) makes DQ crash..

(D3DVid _Restart_f: Unable to Reset Device)

mhquake said...

"This actually also happens when you already have the map.."

That's OK, the fix will catch that too.

"Pressing the show-desktop-button (in Windows 7) while playing in windowed mode (any size it seems) makes DQ crash.."

Interesting; that button sends a WM_SIZE and sets the client rect to [0,0,0,0]. OK, I can add a workaround for that. Nice find.

Baker said...

I love how MH thinks. ;)

=peg= said...

One more little thingy I noticed:

The status command appears to be broken.. (does nothing at all)

Not a big deal for me, as I can do a status command on the server side, but not everyone has the rcon-password ;)

Nyarlathotep said...

Well done, sir. Maybe I can force DirectQ to run at 360x480 for nostalgia's sake. :)

Incidentally, your work is magnificent. I never, ever thought the i915 in this 3 GHz Pentium 4 box could muster over 120 fps playing Quake at 1280x1024. Some day soon I'll test it out on my wife's old Atom netbook; going on what I've seen so far, my guess is that it will be entirely adequate.

mhquake said...

"The status command appears to be broken.. (does nothing at all)"

ProQuake message and string parsing is what fucked this up. Did I ever mention how much I despise this code?

Temp fix is in; may print unwanted garbage onscreen from time to time.

=peg= said...

"ProQuake message and string parsing is what fucked this up. Did I ever mention how much I despise this code?"

Maybe your next project should be inventing the next-gen server standard ;)

The only reason for using proquake as server is the lack of an alternative..

Sure there is Darkplaces and FTEQW, but non of those can run the runequake mod :(
(qccx is evil I know)

I guess it would be better to rewrite the qccx'd mods instead and use a proper protocol etc etc.. But that's just out of my league (still).

Nyarlathotep said...

"Maybe your next project should be inventing the next-gen server standard ;)

God, yes, please, and do it in coalition with FitzQuake(SDL). Lead by example - I'll fall in line, no questions asked.

David A. said...

Is there anyway to control the music playback (play/stop/next/etc) when using ripped music? I tried the CD command but it just said there wasn't a CD available.

mhquake said...

"Is there anyway to control the music playback (play/stop/next/etc) when using ripped music? I tried the CD command but it just said there wasn't a CD available."

That's a bug, the intention is that the CD commands should work with ripped music as well. Thanks for the heads up.

I must also enable tab autocompletion on these.

Nick said...

are you using a relight pack there or did i miss something?

btw, vissed my alphas ;-)

rc2 running smooth here. thanks once more.

mhquake said...

?

I made THE relight pack. The one that everybody uses.

So yeah, I use it. ;)

Nick said...

got it. :-)

makes me wonder what else i might have missed :X

Ron said...

Running well here. The new input code is definitely resulting in some really gorgeous control, so kudos for that. Caught a little bug in the underwater distortion shader it looks like, but this'll require some video to effectively demonstrate.

In a nutshell, it seems I'm getting some random bright flashes when water alpha is set to less than 1, as if the gamma is ramping up for a frame then falling back down.

mhquake said...

"- CTRL+V pasting does not seem to work anymore in any of the 1.8.7 releases so far.."

Fixed.

"Caught a little bug in the underwater distortion shader"

Fixed I think. I've seen this before and I think it was due to some old fixed func code that I'd left in when I brought the shader back.