Asking for help with old Quake mods
Asking for help with old Quake mods
Hello everyone,
I hope someone here can help me with an issue I have. I like the modern graphics provided by the Darkplaces engine coupled with all of the new graphical enhancements, but I also like to play oldschool Quake once in a while. I recently upgraded to a new pc with the following specs:
AMD Athlon 7850
Nvidia gtx460 1gb with latest drivers
Windows xp sp3
2gb ram
My issue is that with the new specs some of my old Quake mods will not work now. I cannot get NPR Quake nor XWAR to even come up at all now. I click on the shortcuts and both will give a split second of black screen before dumping me back to my quake folder where the shortcuts are located. Some of my other old ones such as FQREAL still work wonderfully.
Can someone please help me troubleshoot and find a solution for this issue?
Any and all help greatly appreciated.
Regards
I hope someone here can help me with an issue I have. I like the modern graphics provided by the Darkplaces engine coupled with all of the new graphical enhancements, but I also like to play oldschool Quake once in a while. I recently upgraded to a new pc with the following specs:
AMD Athlon 7850
Nvidia gtx460 1gb with latest drivers
Windows xp sp3
2gb ram
My issue is that with the new specs some of my old Quake mods will not work now. I cannot get NPR Quake nor XWAR to even come up at all now. I click on the shortcuts and both will give a split second of black screen before dumping me back to my quake folder where the shortcuts are located. Some of my other old ones such as FQREAL still work wonderfully.
Can someone please help me troubleshoot and find a solution for this issue?
Any and all help greatly appreciated.
Regards
-
- Posts: 185
- Joined: Wed Apr 13, 2011 1:34 pm
Re: Asking for help with old Quake mods
Try emulator? If it is DOS app then DosBox, if Windows app then Wine. (it might solve problem)gdiddy62 wrote:Hello everyone,
I hope someone here can help me with an issue I have. I like the modern graphics provided by the Darkplaces engine coupled with all of the new graphical enhancements, but I also like to play oldschool Quake once in a while. I recently upgraded to a new pc with the following specs:
AMD Athlon 7850
Nvidia gtx460 1gb with latest drivers
Windows xp sp3
2gb ram
My issue is that with the new specs some of my old Quake mods will not work now. I cannot get NPR Quake nor XWAR to even come up at all now. I click on the shortcuts and both will give a split second of black screen before dumping me back to my quake folder where the shortcuts are located. Some of my other old ones such as FQREAL still work wonderfully.
Can someone please help me troubleshoot and find a solution for this issue?
Any and all help greatly appreciated.
Regards
Think, touch, movetype, solid, traceline ...
keep in mind though that nhancer does not work on Win7 probably not even Vista. Also the developer who made it has dropped it so there wont be any new versions who will support Win7.
There is another tool though that works on Win7 but the name escapes
me so ill see if i can look it up.
edit: i see he has taken up development again ok np then
http://www.nhancer.com/
There is another tool though that works on Win7 but the name escapes
me so ill see if i can look it up.
edit: i see he has taken up development again ok np then
http://www.nhancer.com/
-
- Posts: 268
- Joined: Tue Nov 24, 2009 2:20 am
- Contact:
Hey guys,
Thanks for responding. NPR has its own exe file and it must have info to use the dll's included with it as Qbism won't work. Xwar used a modified Tomaz engine and will NOT work with any other. I'll try the nHancer to see if that helps. Any other ideas welcome!! Perhaps if someone with similar specs could download nprquake and try to get it to work it could help? I tried nHancer but don't have any knowledge about how long a driver string should be so I don't know a value to place in that option. I am a complete novice with this !!
Thanks for responding. NPR has its own exe file and it must have info to use the dll's included with it as Qbism won't work. Xwar used a modified Tomaz engine and will NOT work with any other. I'll try the nHancer to see if that helps. Any other ideas welcome!! Perhaps if someone with similar specs could download nprquake and try to get it to work it could help? I tried nHancer but don't have any knowledge about how long a driver string should be so I don't know a value to place in that option. I am a complete novice with this !!
I asked about that issue in #qc recently (after John Carmack mentioned it). I didn't know it got its way into later engines, thought only old glquake versions were affected. (Apparently because I did not read too well )
So is this actually present in several custom engines? Does anyone which engines are affected?<Spirit> at ~0:30 carmack said that video drivers check for early releases of glquake(?) since he wrote it with a buffer overflow for the extension strings. anyone got insight or more info on that?
<Spirit> http://www.youtube.com/watch?v=4zgYG-_ha28
<Dick> He's talking about a Com_Printf call in glquake (and quake 2, and a lot of quake/quake2-derived games)
<Dick> Where it just tries to print the entire extension list despite Com_Printf having a fairly small stack buffer that it va's shit into
<Spirit> and that really got hacked into the drivers (as giving a shorter list)?
<Dick> Yeah, most drivers have a generic "limit extension string" option for opengl
<Rick> lol :p
<Spirit> heh
<Spirit> do you know what binaries the drivers check for? or how else they prevent this
<Dick> nvidia seems to have hardcoded exe name checks
<Dick> Which have failed me before
<Dick> It didn't pick up on heretic 2 and it kept crashing on startup
<Dick> So I tried to make a specific profile for the exe and limit extension strings, and it still wasn't limiting extension strings when I'd run the game. I don't know what the issue was there.
<Dick> So I ended up just disassembling it in IDA and patching it myself to turn the call to com_printf into nop's
<Spirit> Dick: nice. thanks
(...)
<LordHavoc> <Spirit> at ~0:30 carmack said that video drivers check for early releases of glquake(?) since he wrote it with a buffer overflow for the extension strings. anyone got insight or more info on that?
<Rick> they talked about it earlier
<LordHavoc> Spirit: real simple - Con_Printf has a 1024 char buffer in it, the GL_EXTENSIONS string is around 5000-8000 chars at present
<Rick> drivers do detection via process name I guess?
<Rick> nvidia at least?
<Rick> oh
<LordHavoc> Spirit: so when it does sprintf, it overwrites a huge amount of stack memory and crashes
<Rick> you were answering
<LordHavoc> Rich: yeah process name
<LordHavoc> Spirit: using snprintf fixes the crash, using a larger buffer fixes the truncated extensions string
<LordHavoc> Spirit: darkplaces uses [16384] for all temporary char buffers (I call this MAX_INPUTLINE), including console text entry and everything else
<Rick> LordHavoc I assume you also sanely check input strings to make sure they fit
<Rick> (or use snprintf/etc)
(...)
<LordHavoc> <Rick> LordHavoc I assume you also sanely check input strings to make sure they fit
<LordHavoc> <Rick> (or use snprintf/etc)
<LordHavoc> Rick: snprintf (with intentional nul termination - remember the MSVC one doesn't necessarily put a nul at the end), strlcpy/strlcat (from BSD source code) because strncpy is trouble (no nul termination when truncating) and strncat is evil incarnate (no nul termination when truncating, no destination buffer size - the limit you provide is how many characters to copy, not dependent on how far it had to skip to get there),
<LordHavoc> Rich: to be clear the only safe string function ever created in the C language is asprintf
<Rick> oh I meant whatever equivilent
<Rick> not snprintf itself
<Rick> msvc has variants that are less dumb
Improve Quaddicted, send me a pull request: https://github.com/SpiritQuaddicted/Quaddicted-reviews
as far as i can tell quite a few engines allready overcome this.
of my head darkplaces works so does rook's engine and fte seems to work just fine also. my own realm engine had this fixed for quite a few years and my recently updated TQX which is merely tq148 with a few things i been toying with works also. mh's directq also seems to work fine.
the one thing i found broke the older engines seems to be related to the old vsprintf (atleast on nvidia) replacing it with _vsnprintf and a fitting buffersize seems to works just fine. But then theres also a nasty bug in gl_vidnt.c in the video initialization code theres some printf functions overflowing the buffers which either needs to be made safe or removed.
removing them does not hurt anything as all they do is spam the console with info about your gfx card, but it seems to break the newer video drivers.
of my head darkplaces works so does rook's engine and fte seems to work just fine also. my own realm engine had this fixed for quite a few years and my recently updated TQX which is merely tq148 with a few things i been toying with works also. mh's directq also seems to work fine.
the one thing i found broke the older engines seems to be related to the old vsprintf (atleast on nvidia) replacing it with _vsnprintf and a fitting buffersize seems to works just fine. But then theres also a nasty bug in gl_vidnt.c in the video initialization code theres some printf functions overflowing the buffers which either needs to be made safe or removed.
removing them does not hurt anything as all they do is spam the console with info about your gfx card, but it seems to break the newer video drivers.
Re: Asking for help with old Quake mods
No one makes DOS quake source portsdaemonicky wrote:Try emulator? If it is DOS app then DosBox, if Windows app then Wine. (it might solve problem)
well, no one except maddes and I
i should not be here
This is well above me and my limited knowledge. Spirit, if I'm understanding the info you posted the exe's for the two mods I mention would have to be altered in some way in order to work with the new drivers and cards of today??
Would someone be willing to tackle these two exes and share them and the "how-to" with us??
Regards
Would someone be willing to tackle these two exes and share them and the "how-to" with us??
Regards
try this one and let me know if it works.
http://www.2shared.com/file/c9opqs-J/NPRquake.html
works here but i looked over the source and besides the dll support its plain old glquake so there might be other stuff broken with newer windows.
http://www.2shared.com/file/c9opqs-J/NPRquake.html
works here but i looked over the source and besides the dll support its plain old glquake so there might be other stuff broken with newer windows.
as for xwar i cant seem to dig up the source anywhere. I think you might need to use nhancer for that.
heres howto use nhancer
Run nHancer and open Quake profile while the game is not running. Go to Compatibility -> OpenGL, check "Conformant texture clamp" and set it to "Off", then check "Driver extesion limit" and type the value 11a8.
save and close now run your game
heres howto use nhancer
Run nHancer and open Quake profile while the game is not running. Go to Compatibility -> OpenGL, check "Conformant texture clamp" and set it to "Off", then check "Driver extesion limit" and type the value 11a8.
save and close now run your game