Home » General Discussions » General Discussion » A challenge.
Re: A challenge. [message #263769 is a reply to message #263561] |
Wed, 06 June 2007 16:16   |
 |
jnz
Messages: 3396 Registered: July 2006 Location: 30th century
Karma: 0
|
General (3 Stars) |
|
|
I need one more piece of info, does it need to detect RGH? I have already got it to search objects.ddb generate a CRC, check it. If its a cheat, it displays a message and exits renegade.
Just working on the server code (shouldn't take more than a week i guess, unless i can't find an address that i need)
[Updated on: Wed, 06 June 2007 16:16] Report message to a moderator
|
|
|
|
|
|
Re: A challenge. [message #263891 is a reply to message #263561] |
Thu, 07 June 2007 04:28   |
 |
Blazer
Messages: 3322 Registered: February 2003 Location: Phoenix, AZ
Karma: 0
|
General (3 Stars) Administrator/General |

|
|
FYI Renguard functions almost exactly the same way that PunkBuster does. PB does have the advantage of being compiled into the games it protects. RG does a great job for being an external application. Most of the problems that people have with RG have nothing to do with its anti-cheat functionality, but rather little things that bite developers on the ass later, like differences between operating system versions, random device drivers moving things around in memory, etc.
I believe that full advantage should be taken of server-side anti-cheat solutions like BIATCH. Sadly there are some things that can only be checked client-side, which is why programs like RenGuard, PunkBuster, ValveAntiCheat, etc exist.
Is there room for improvement with RG? Definitely there is, and we are working on it, not only improving the anti-cheat functionality, but working out the bugs in the UI and backend network. It's a huge task really, and we (BHS and BI) can only work on it in our free time, because as much as we all love Renegade, we still have to work real jobs to pay our bills - which include the bills that pay for the renguard network servers, and even this very server that this forum is on.
I guess in a roundabout way, I'm trying to say that I wish people would realize just how much work goes into, and has gone into RenGuard, and it stings a bit when you put your extra time into this thing, for the good of the game, and the very people you are trying to help come and bite your head off.
I don't think anyone should seriously try to build a better RG, but this challenge should at least make you think, and hopefully realize all of the problems that RG tries to address. Before you think you can do better, really think about it. Can you code in C? Do you have intimate knowledge of the Renegade game engine and functions? Can you build windows applications? Are you familiar with encryption protocols and methods? Can you build a stable application with 0 bugs? Are you sure? That works on Windows98, 2000, 2003, Vista? 64Bit? Do you have dedicated servers to run the backend network on? What backend network - where are you going to store the data for bans, data segment/file hashes, etc? Is it fault tolerant? Do you have well thought out, documented protocol specs?
The list can go on and on. Its easy to say "LOL RG sucks I could write something better in VB". But seriously try to launch a bug free windows app that has to run flawlessly on thousands of computers running a myriad of operating systems and inconceivable setups with a bulletproof backend network and database, and then see how you look at it. It is no simple task....
I hope thinking about all of this makes some people understand that A) A lot of work went into/goes into RG B) It's not a simple system that anyone could code up in a day and never have a problem. Believe me I would LOVE to see products that are coded right the first time, and then only have to work on addding new features, but it just doesn't happen in the software world. Just making a calendar application would be a pain, now imagine that it is way more complex than that, and on top of having to make it work for everyone, you have some people who are constantly trying to hack it and break it...sometimes it almost seems not worth it, but we keep at it because we love this damn game and just want everyone to have fun playing it fairly.
Ah well, nobody is going to read this fucking post anyway. "too much text"...FFS please take your A.D.D pills
[Updated on: Thu, 07 June 2007 04:35] Report message to a moderator
|
|
|
|
|
|
Re: A challenge. [message #263899 is a reply to message #263561] |
Thu, 07 June 2007 04:57   |
 |
Crimson
Messages: 7431 Registered: February 2003 Location: Phoenix, AZ
Karma: 0
|
General (5 Stars) ADMINISTRATOR |
|
|
In that case, why waste your time on this little game and instead go work for Microsoft? Apparently you can create bug-free, conflict-free, feature-full, exploit-free software perfectly the first try, so I'm sure they could use someone like you to show all the hundreds of coders how they SHOULD be doing things. After all, how hard could it be?
You sound like someone who has not yet graduated from the school of hard knocks. Your words make professional programmers laugh their butts off at your naivety. What are you, like 13? You obviously have no real-world exposure in the programming world.
I'm the bawss.
[Updated on: Thu, 07 June 2007 04:57] Report message to a moderator
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Re: A challenge. [message #272747 is a reply to message #263561] |
Thu, 12 July 2007 06:09   |
dead6re
Messages: 602 Registered: September 2003
Karma: 0
|
Colonel |
|
|
The first part of this challenge is very simple. A simple CRC32 or MD5 hash of the objects.ddb file on disk with a check in Renegade to make sure this wasn't altared.
A slightly harder part will be the communication between the server - client so that it cannot be decrypted. Cheaters are most likely to wait until you decrypt the text, therefore you want to avoid decrypting it
Now the real challenge shows when you have to make the client detect modifications to the client anti-cheat program. For this you have to take a checksum of both the file on disk, but also the file in the memory to detect changes. This part of the code then needs to be hidden and hack-proof.
Let all your wishes be granted except one, so you will still have something to strieve for.
[Updated on: Thu, 12 July 2007 06:10] Report message to a moderator
|
|
|
|
|
|
|
Goto Forum:
Current Time: Fri Feb 21 07:57:40 MST 2025
Total time taken to generate the page: 0.01940 seconds
|