Stopping Picmip 45234 graphics destruction?
Moderator: InsideQC Admins
36 posts
• Page 2 of 3 • 1, 2, 3
just mod the client to return 'brown' for every single pixel. its close enough that the server can't risk false positives.
would work on 98% of quake's maps, assuming you choose the right shade of brown. you can just hard code it as a palette index.
would work on 98% of quake's maps, assuming you choose the right shade of brown. you can just hard code it as a palette index.
- Spike
- Posts: 2892
- Joined: Fri Nov 05, 2004 3:12 am
- Location: UK
Spike wrote:just mod the client to return 'brown' for every single pixel. its close enough that the server can't risk false positives.
would work on 98% of quake's maps, assuming you choose the right shade of brown. you can just hard code it as a palette index.
Yeah, but let's say it is 2 pixels requested.
The server knows pixel #2 is relatively a different shade of brown. The cheater client might know pixel #2 is darker or lighter than pixel #1 just off the lightmap data, but without the texture being rendered wouldn't know what kind of hue difference pixel#2 had in relationship to pixel #1.
Maybe pixel #2 has a greater RGB blue component. Or use HSL comparisons with a statistical margin of error.
The night is young. How else can I annoy the world before sunsrise?
Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
-

Baker - Posts: 3666
- Joined: Tue Mar 14, 2006 5:15 am
what about software rendering? where the entire screen is a single pixel anyway...
personally I'd just redraw the screen with the proper settings before taking the sample and reporting to the server.
reminds me of the time I made a wallhack for ezquake. that was fun. did it without modifying the exe, bypassing the half-arsed security module. Also made one for software. Now _that_ was fun... No exe modifications! Added new console commands and prints too. And an aimbot. Was fun. I'd dig it up, but I'm too lazy.
msvc2005 has some awkward optimisations by the way.
you can stuffcmd cvar changes to the client, and I can just hex edit the engine, change the cvar name, and laugh as your attempts never find any cvars.
personally I'd just redraw the screen with the proper settings before taking the sample and reporting to the server.
reminds me of the time I made a wallhack for ezquake. that was fun. did it without modifying the exe, bypassing the half-arsed security module. Also made one for software. Now _that_ was fun... No exe modifications! Added new console commands and prints too. And an aimbot. Was fun. I'd dig it up, but I'm too lazy.
msvc2005 has some awkward optimisations by the way.
you can stuffcmd cvar changes to the client, and I can just hex edit the engine, change the cvar name, and laugh as your attempts never find any cvars.
- Spike
- Posts: 2892
- Joined: Fri Nov 05, 2004 3:12 am
- Location: UK
"Winners" whine a lot. Ignore all whine. I learned so, from other games that died due to answering that whine. That other example is Quake4. QUAKE 4. QUAKE 4. Wasteland of elitists.
OpenArena got a lot of flak for protecting against 'vertexlight'. That's not exactly what it says on the tin, but it wasn't abused for performance - just only killing map lighting for player spotting ease. In 2010, vertexlight makes no sense. id Tech 3 games made after Q3 dropped the vertexlight option completely for a reason.
As for the brown detection, couldn't that be circumvented by bringing down the viewsize?!
OpenArena got a lot of flak for protecting against 'vertexlight'. That's not exactly what it says on the tin, but it wasn't abused for performance - just only killing map lighting for player spotting ease. In 2010, vertexlight makes no sense. id Tech 3 games made after Q3 dropped the vertexlight option completely for a reason.
As for the brown detection, couldn't that be circumvented by bringing down the viewsize?!
Last edited by leileilol on Fri Jul 30, 2010 7:46 pm, edited 1 time in total.
i should not be here
- leileilol
- Posts: 2783
- Joined: Fri Oct 15, 2004 3:23 am
Spike wrote:what about software rendering? where the entire screen is a single pixel anyway...
personally I'd just redraw the screen with the proper settings before taking the sample and reporting to the server.
The server wouldn't ask for this from the client.
It would be expected to constantly be sent from the client just like the light level in Quake 2.
The server obviously wouldn't compare notes on each pass, but maybe once every few seconds. The client wouldn't have the slightest clue as to when to fake the data, it would need to fake the data every single frame.
The night is young. How else can I annoy the world before sunsrise?
Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
-

Baker - Posts: 3666
- Joined: Tue Mar 14, 2006 5:15 am
so just a traceline that samples texture and lightmap? okay! Still, the accurate ones are the ones that you'd kick.
- Spike
- Posts: 2892
- Joined: Fri Nov 05, 2004 3:12 am
- Location: UK
And if your palette goes apeshit and sends you on the worlds greatest LSD trip, like it occasionally does in WinQuake (oh the joys of SciTech MGL!), and if that happens at just the wrong time, now you have two reasons to be pissed off.
Nah, any kind of client-side cheat protection is bogus really. You expend a lot of time and effort until somebody finds a way through. It need not be a specific cheater, it could be anyone, even someone like Spike doing it for the intellectual exercise or because it seemed like an interesting challenge or a piece of fun. Totally for innocent reasons, but the important thing is that they get through and that knowledge of the way through gets out, and then the cycle begins again.
I applaud the concept of trying to find a viable fix, but on balance strengthening the server is a better investment of time and effort. Stuff like anti-wallhack, for example. But a client is a piece of executing code that you literally do not have direct control over, so until the day comes when bandwidth and latency are improved to the extent that you can move huge chunks of client code to the server, you need to start with acceptance of the fact that your essentially helpless with regard to what it does, and work from there.
Nah, any kind of client-side cheat protection is bogus really. You expend a lot of time and effort until somebody finds a way through. It need not be a specific cheater, it could be anyone, even someone like Spike doing it for the intellectual exercise or because it seemed like an interesting challenge or a piece of fun. Totally for innocent reasons, but the important thing is that they get through and that knowledge of the way through gets out, and then the cycle begins again.
I applaud the concept of trying to find a viable fix, but on balance strengthening the server is a better investment of time and effort. Stuff like anti-wallhack, for example. But a client is a piece of executing code that you literally do not have direct control over, so until the day comes when bandwidth and latency are improved to the extent that you can move huge chunks of client code to the server, you need to start with acceptance of the fact that your essentially helpless with regard to what it does, and work from there.
We had the power, we had the space, we had a sense of time and place
We knew the words, we knew the score, we knew what we were fighting for
We knew the words, we knew the score, we knew what we were fighting for
-

mh - Posts: 2292
- Joined: Sat Jan 12, 2008 1:38 am
Spike wrote:so just a traceline that samples texture and lightmap? okay! Still, the accurate ones are the ones that you'd kick.
Store the texture and lightmap data in main memory inna WinQuake stylee, and just send that. Couple of array lookups, some trivial calculations, and the protection is circumvented.
We had the power, we had the space, we had a sense of time and place
We knew the words, we knew the score, we knew what we were fighting for
We knew the words, we knew the score, we knew what we were fighting for
-

mh - Posts: 2292
- Joined: Sat Jan 12, 2008 1:38 am
- Spike
- Posts: 2892
- Joined: Fri Nov 05, 2004 3:12 am
- Location: UK
Reminds me of a Voodoo Banshee I had years ago where the mipmapping would occasionally go berserk, turning all miplevels after the 2nd or 3rd pure white.
We had the power, we had the space, we had a sense of time and place
We knew the words, we knew the score, we knew what we were fighting for
We knew the words, we knew the score, we knew what we were fighting for
-

mh - Posts: 2292
- Joined: Sat Jan 12, 2008 1:38 am
leileilol wrote:mh wrote:Reminds me of a Voodoo Banshee I had years ago where the mipmapping would occasionally go berserk, turning all miplevels after the 2nd or 3rd pure white.
Trilinear sucks on that card.
Everything sucks on that card, my friend.
We had the power, we had the space, we had a sense of time and place
We knew the words, we knew the score, we knew what we were fighting for
We knew the words, we knew the score, we knew what we were fighting for
-

mh - Posts: 2292
- Joined: Sat Jan 12, 2008 1:38 am
Limiting the speed at which the view angles changes (let's say, setting it to a maximum of # degrees per frame) is something that could be done on the server, and would turn aimbots ineffective when the targets are too far away from the center of the view to be targeted in a single frame.
-

mankrip - Posts: 915
- Joined: Fri Jul 04, 2008 3:02 am
mh wrote:And if your palette goes apeshit and sends you on the worlds greatest LSD trip, like it occasionally does in WinQuake (oh the joys of SciTech MGL!), and if that happens at just the wrong time, now you have two reasons to be pissed off.
8 bit WinQuake shouldn't have the problem. You don't need to read from the dib, you read from the buffer which has a value from 0-255. Whether or not the palette goes apeshit doesn't change the fact the pixel in the buffer is correct.
Spike wrote:also, what happens if a particle or player or explosion sprite or something gets in the way?
The demon is in the details. What if the console is down?
Still, I think this idea is certainly on the right track.
The night is young. How else can I annoy the world before sunsrise?
Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
-

Baker - Posts: 3666
- Joined: Tue Mar 14, 2006 5:15 am
36 posts
• Page 2 of 3 • 1, 2, 3
Who is online
Users browsing this forum: No registered users and 1 guest