Page 1 of 4

Fake players mod detection [WIP]

Posted: Thu May 08, 2014 12:38 pm
by TheDane
Thanks to some very helpfull guys I've been provided with two different mods that both are made for the one sole purpose to fake the player count on a server. It was debated earlir but sadly the post got out of bounce and got locked after a commercial break.

Therefore I open this thread as it turns out to be a very fragily deal this mod I have made to prevent my mods from working on these fake servers as I don't want my work to be Affiliated with such servers in any way. After these helpfull guys showed me the mods I found it very easy and simple to detect both mods in the same line of code and then do one of two Things (I haven't decided yet which to choose?). 1. disbale my mod by simply calling the Destroy() function on it - that way the server won't be able to use my mod, or 2: Have my mod disable the fake players mod so the server won't report fake players to the master server?

Those are my two options right now, there are plenty more, actualy this is a window for Darkelarious custom master server to be made aware of a faking server, by simply having my mod sending a script of his choice the information about the server needed for it to be manualy removed ofcause - not automaticly - Ehm ... well, that's not my choice! But if Darkelarious and Co. decides to use such script to auto-detect faking players tht would mean +1 client (me) that uses his master server as the only Query server option. If Epic follows, it will be used too ofcause.

But I have run into trouble, I promised to make the code needed to detect these mods public so modders could do the same as me if they wanted - this is easy - I got the code written allready and functioning to my most satisfaction. My problem however is that if I do publish the code, then all can see what the name of those mods are, and since they are both hosted publicly on well known sites I find it a very bad thing to do just now? I have PM'ed the two persons in charge of the sites where I have found these mods available for public download, asking them to please remove those files for ethic reasons, I hope they agree to that!

But, if they don't remove them, what should I then do? Publish my code anyway? Make an obfuscated mutator that can be embedded? I prefer to publis the code as it then can be hidden anywhere in say a map, the server admin will have to spend quite some time in order to find out how to bypass it if it's hidden in a lighsource in a map with 1734 lightsources? Or in a pathnode? .. ha .. yeah ... all actors will work just fine for this little script to do its magic :-)

Re: Fake players mod detection [WIP]

Posted: Thu May 08, 2014 11:05 pm
by papercoffee
Hi, I make it simple for you...
TheDane wrote:1. disbale my mod by simply calling the Destroy() function on it - that way the server won't be able to use my mod,
This is your right to do with your mod, as you like
If you want to automatically disable your mod if those cheap fake-player-mod is running ...great, do it.
But be aware that people will remember that and quite often not in your favour
TheDane wrote: or 2: Have my mod disable the fake players mod so the server won't report fake players to the master server?
This is a NO GO ...you want to turn your Mod into malware? Are you nuts?!! This is something we won't support here.
Under no circumstances are you allowed to talk about and promote this kind of stuff, here on UT99.org
Meddling with someone else server setup through your mod is the same low and dirty thing as cheating or faking.

And then you have the guts to play the White Knight and demand/request the deletion of those hosted faker-mod-files?
You should maybe reconsider your double standards.

Re: Fake players mod detection [WIP]

Posted: Fri May 09, 2014 12:20 am
by Dr.Flay
Actually I think I understand. This is an anti-fake mod, that stops "bad" servers from being able to use your mods whatever they are.
In this case, "your mod" means anyone who uses this.
To be honest I the idea sounds great, but the implementation may be the problem (or understanding of what exactly the mod would do if made.)
This seems to be designed to give problems to the people that abuse the system.
It would only be an issue for server admin.

Dane. Please feel free to move this to the 333networks own forum, or your own.
As you have pointed out, a mod like this comes with a certain problem, which is similar to an integral part of some master servers that is also not discussed or shown in public for similar reasons.
That is why you make it a separate module. 333networks would not be trusted by the software companies now talking to if, it didn't take that precaution.
You need an invite only private section to work in.
We can have that here, but maybe it would be better elsewhere ?

Re: Fake players mod detection [WIP]

Posted: Fri May 09, 2014 12:30 am
by JackGriffin
Just to point something out- modifying or disabling other mods with yours is common and not automatically considered malware. You could make the same argument over my monsterhunt scoring mod as it nullifies other scoring behavior (for example). I can make an entire list of mods that do this, NaliWeapons included. It's an accepted practice to replace actors or even delete them so long as it's all clear what is being done.

Re: Fake players mod detection [WIP]

Posted: Fri May 09, 2014 12:36 am
by papercoffee
So do we talk about "to disable" a mod or "to disable" a mod ...you see the meaning is not that clear.


Are we talking about to block something or to shut it down?

Re: Fake players mod detection [WIP]

Posted: Fri May 09, 2014 12:43 am
by JackGriffin
I was simply pointing out that you can't really generalize like you did a couple of posts ago. I know what you meant by it and I agree with your position but your logic in explaining it needs to be clearer.

Let's take an example. You created a map called "DM-UberArena" with a redeemer in the middle of the map. I think "Hey, this map would be cool with the ridiculous deemer mod" and so I add it in on my server. In effect I replaced your actor with my own, changing things to what I wanted them to be. In it's essence this is UT modding.

The problems arise when this is done covertly. It's one thing to replace actors in a map, it's another to hide them like I've seen in siege maps (for instance) where hidden warp points were placed. Also I've seen maps that will cause servers to crash if certain conditions aren't met (trying to prevent map theft). Anything like that is intuitively wrong and we all know that but you have to explain the 'why' part a little in-depth. Blanket statements don't really address this facet of coding.

Re: Fake players mod detection [WIP]

Posted: Fri May 09, 2014 1:14 am
by papercoffee
To block or stifle another mod (weapon replacement for example) or automatically shut your own mod down ...is something totally different, than meddling with the server set up and shut other unpleasant mods down or flag the server without the knowing of the owner. This is malware behavior.

You won't win if you start to play dirty like them.

Kick them out of the server list with a notification of the reason... Report them to the other tracker services... What ever, but don't meddle with the server set up.

Re: Fake players mod detection [WIP]

Posted: Fri May 09, 2014 1:37 am
by Dr.Flay
If it is to disable your own mod from being used somewhere you don't want, surely a mod-maker has that right ? (like removing brushes

I do suspect there is some confusion here.
But I think this is a "self-protecting mod" that blocks the mod you add it to, from being used on a server with cheats.
If it actually disables the cheat mods they see, then it gets into sticky territory (even though I like it).

What would stop people trying to do the opposite, and make a mod to disable anti-cheat mods ?

Re: Fake players mod detection [WIP]

Posted: Fri May 09, 2014 2:21 am
by papercoffee
Dr.Flay wrote: If it actually disables the cheat mods they see, then it gets into sticky territory (even though I like it).
Who wouldn't like it?
But it's not legal to mess with another's install without his/her knowledge ...it's unimportant if it's a server or a client.

Re: Fake players mod detection [WIP]

Posted: Fri May 09, 2014 4:53 am
by TheDane
Well, I'm not pretending to be the knight in shining armor, but since it was brought up - is it ok to publicly host mods that fakes the player stats on a server?

What I am trying to do is nothing that haven't been done before as Kelly tells you, who of you guys questioned Antrax's method to install ACE on a server? The install method is totaly automated as you only install the nploader and then you get your entire server ini file rewritten and actors/packeges added. When you intall UTPure you get the Pure tag added to the servers name by default, the same with some ZP mods. The antiskin crash mod modifies the players name before kicking him etc... the list is miles long!

I am just taking a stand against fake servers by autodetecting the crap software made to do so, and then disable my mod or the fake mod. But don't judge me for what you think I will do!!!! Nowhere have I stated that I would flag the server? Nowhere have I stated that I would mess with the servers settings in any way other than to either disable my mod or the fake player mod - that was my point of making this thread - to discuss wich of the two options to choose, and then you just start shouting at me claiming that I tresspass - and haha even calls it illegal? I was looking for an adult debate - not a moderator to come by and derail the topic.

And just to be clear - this is not a knight in shining armor quest, but it starts to look like someone are defending the fake player mods against beeing nulled out?
What would stop people trying to do the opposite, and make a mod to disable anti-cheat mods ?
My mod cannot be used as base of such things. This will demand a hook from the client side, unless you again Refer to a fraud server admin installing such crap code to let his clanm8's use cheats? In that case - it happened allready a long time ago - but my script won't open any doors for an abuse of that kind. But I will stop the debate here as for the concern of cheats/anticheats as that is not what I will be doing at all.

Please keep it on-topic all - it seems that I just have to use option 1 right? And then all are happy Again :-)

Re: Fake players mod detection [WIP]

Posted: Fri May 09, 2014 5:02 am
by UT99.org
billybill wrote:and I'm sure Dane is meaning that the moment they remove his mod the server would go back to displaying the fake players. He's saying if they use his mod they can't use fake players at the same time. It's in some ways a better option than his mod shutting down. Jeez, this is not like he's putting a dll file in his mod that formats their c:

(edit: fixed typos)

Re: Fake players mod detection [WIP]

Posted: Fri May 09, 2014 11:12 am
by Dr.Flay
Cool.
So in short would it be fair to describe it as like building ACE into a map or weapon etc.?

The difference there would seem to be that obviously a server admin knows they installed ACE.
Whatever it does, a dev/user of the mod would be required to state in the documentation what they have set it to do (if changeable).
If it is only officially distributed with a warning/ToC in a full distro, then I think you are as covered as a master server using cheat protection.
eg. Only server admin and players that have read an MS ToC, will know it blocks or not before it happens. In that case Epic and GS are already blocking people without their knowledge.
However the big flaw here, is you cannot grantee everyone will include a ToC with their "product", though I think it safe to assume anyone working with the mod will have the full resources.

Hmm. If it only "self-protects" so disables itself from being used on a server, but touches nothing out-side of itself, would that be OK ?
The principal seems to be that "author X" wishes something not to be used on a cheating server, so if it sticks to that only, and does not block other functions
At worst it just means a map or mod simply fails to work.

Re: Fake players mod detection [WIP]

Posted: Fri May 09, 2014 1:14 pm
by The_Cowboy
Interesting thread!
But I doubt that it would work flawlessly. With only few hex-edits, the mod can be 'modified' in a way that would allow the the servers to run it in presence of fake players mod.

The obvious solution seems to be
a. make a script which detects all sorts of fake player mods and disables them by providing real count
b. allow the master server to communicate with the script with all sorts of hex-edit-detection algorithms (I don't know how practical this step is)
c. finally allow the master server to cater the serverlist with true players counts.

Re: Fake players mod detection [WIP]

Posted: Fri May 09, 2014 3:11 pm
by UT99.org
billybill wrote:It would be extremely hard to hex edit if he hides that piece of code. You don't see people hex editing ACE files or anything right? It's editable but the average fake bot server wouldn't have a clue what to do

I request your mod not do just one check at the start of the round and then shut down. There are other fake player mods that change the ping of the bot pawns if a bot enters, so keep continuous checks

Another idea would be, if fakeplayer ipserver (udp server query) actors exists then shut them down and replace the actor/object. Have another actor in your mod that emulates a good working udp serverquery. You could fix the server crash bug and everything all in one if you do something like this, don't use the default class anyway that would be stupid
The_Cowboy wrote:c. finally allow the master server to cater the serverlist with true players counts.
Master server can already send custom packets that detect the bots in all cases from what I have found. There is already plenty of serverpackage mods that do this by replicating the values (between server and client). I like the idea of checking file integrity remotely, but I don't see a point in having it as a query function

Re: Fake players mod detection [WIP]

Posted: Fri May 09, 2014 3:38 pm
by ASLY
Good idea, but when you connect to a fake server and nobody playing just ESC > Disconnect, that's all.
But really, would be good to detect the fake noob servers.