Jump to content
Sign in to follow this  
Actium

Player Database Script

Recommended Posts

Maybe some of you server admins have also stumbled upon at least one of these issues (the list can probably be extended until the Last Judgement occurs) related to ensuring law and order on your server:

Some guy tells you (being serveradmin just suxx from time to time): "There's been that teamkilling retard 'i_h8_u_all' on your server. He killed 2.739*10^27 of his teammates in a row. Can u ban him?"

Problem: Finding out his id, since ordinary players just cannot do that for you.

PS: Even when you're on the server, fucktards tend to vanish as soon as the realize, that they might get banned soon.

You (the non-omnipresent admin) have some evidence that a lot of players, who causes a lot of trouble, are in fact just one and the same person, these evidence do however not suffice for banning that maybe-individual.

Problem: How do you proove, that he's infact one retard only?

Someone who was probably left behind by the evolution found out a way to alter his id in a way that arma will not recognize this key as one created by a keygen. Additionally that individual has nothing better to do than fucking up your server all day long (and since he's able to change his id, you just cannot ban effectively).

Problem: Finding out his ip-address so he can be ip-banned (with iptables or what-so-ever windows-equivalent).

Thinking about the issues properly, I figured out that the only way of circumventing that shortcoming of the armed assault server, is creating a database that correlates player ids, names and ip-addresses.

Since I'm quite skilled in coding perl* scripts I just implemented the idea of creating such a database in three perl scripts.

One for creating/updating the database: user_db_create.pl

One for dumping the database in a human-readable format: user_db_dump.pl

One for merging serveral databases (enabling exchange of the database between several admins): user_db_merge.pl

Feel free to use/modify/sell/throw away these scripts as you like. Just as my comments say it is under Public Domain and hence you can do with it whatever you want (I'd however appreciate some credits).

What I'd really like to know is how this piece of software can be improved and what your general opinion about such a database is.

Bug reports are also appreciated (FYI: I cannot guarantee that this script will not fry your computer. It's just very unlikely.).

* I'm afraid you poor windows users will not be able to use it. (No guarantee though. I just do not have any experience with active/strawberry perl).

Share this post


Link to post
Share on other sites

Now thats a Handy tool mate smile_o.gif

i will try implement this on my server asap

Share this post


Link to post
Share on other sites

We had this back in the OFP days.

Basically CR, X2 and some other big CTI servers all sent the id and ip of connection users to a central server which then dropped it all into a mysql database.

We then had a php frontend which was pretty public that let people search for id and ips.

Here's the script for parsing net.log as a fifo: http://lunar.gavert.net/~erik/netlogger.pl

The main difference with this approach is that instead of having to occasionally run the parse script on the net.log and then remove it this expects the net.log file to be created as FIFO which the script then polls. The downside is it doens't work on Windows since windows doesn't really have the FIFO concept.

net.log can grow pretty big on busy servers.

This hasn't been touched since 2005 and probably won't work without modification in ArmA so don't bother trying, it's just an example. wink_o.gif

Share this post


Link to post
Share on other sites

Hi all

2 points:

1) You can also use Kegetys SQL program to integrate the database you are creating directly with ArmA thus using it in game in real time.

2) We can create ArmA signatures and use them as user certificates.

Add this to your idea and we have cast iron IDs for riff raff blocking and for persistent IDs in games like Sahrahni life and Evo or for the Advanced Warfare Concept.

Kind Regards walker

Share this post


Link to post
Share on other sites

The drawback of keygety's approach is that the dll-file he created replaces an official dll-file and since nobody knows what that dll really does (implement backdoors, ...) some ppl might hesitate when asked to install it in order to support some player database scripts.

Additionally it does not run on linux.

Share this post


Link to post
Share on other sites
The drawback of keygety's approach is that the dll-file he created replaces an official dll-file and since nobody knows what that dll really does (implement backdoors, ...) some ppl might hesitate when asked to install it in order to support some player database scripts.

Additionally it does not run on linux.

Kegetys wouldnt make a "backdoor" or anything of the kind im sure.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×