( search forums )
c++ server application
Soldat Forums - Soldat Talk - Developers Corner
i am ahab
October 29, 2005, 12:21 am
*** edits and updates at the end of the post, please skip to...
Hello everyone,

First up, apologies. I've had a job interviews/been away/life. At the same time while talking with people in the know, or those with more creative ideas than sense, I have been drawn in many directions and pursued most. And ultimately come back to where I started.

Thats all very nice nick. what do I care?
Well I've made an app, initially for windows, but very easily tweakable for linux (and for all you *nix fans the posix app will inherintly have a useful feature that windows just cannot do without threading).

So whats it do?
This first apps funtion is to connect to a server and kick players, and then ban them. Based on a number of strings that the user can designate in an ini file.

Why?
Well the primary motivation was that *** Soldat.... (you know the rest I hope). To stop people using it in any server. Granted michael will hopefully iron that feister out come next version. But this infant application begins to offer some control to admins everywhere. For instance should you dislike a player you can pervent him from playing, or using his name at least.
Come some useful release stage, this app can offer the sort of feature like admin name protection based on ip or minplayers (adding bots if less than a user designated amount in a server).

Please by all means post suggestions for such a 'listening' application in this thread.

The final code shall be reviewed and verified by clanplanet (hopefully), so as to install an element of trust. It shall not be out there to get you, or to gather information that can harm you. It is being made with good intentions. But it is up to you to test it and use it.

But my clan ran server already has a stats gatherer....
This app does not gather stats. Plus either they are not made in c++, more likely php i guess, or are not public domain. I don't charge anything for what I know ( unless like mikey i've made a game ;p ), and i do not wish to talk down to people because i know something they do not regardless of age. As such, i shall release the souce code when finished, michal willing. Maybe you can modify it or make some use of it, or just learn from what it does. I'm not gonna say its perfect, as it sure aint.

Development Stage
The code currently logs in to a server based on information given by either command line arguments (primary), or from an ini file if no arguments are given.
It can then parse packets, currently:
logs information on players in the server - but lacks a solid player indexing method currently, but can be made to work for a first version. which i hope to have done in a few days.
But, primarily, it is stable for an indefinate amount of time across all windows platforms.

EDIT
i have a design decision, should the listener check if a piece of speech contains an illegal phrase, or if the speech in its entirity IS the phrase?
eg
'potatoes' is a banned phrase
[Major] potatoes are floppy
he gets banned, if i ban on his speech containing the phrases criteria, but as it doesnt match exactly, he wouldnt be banned if i did it by exact matching. duh me.

mar77a
October 29, 2005, 9:54 pm
Why not make it an option? If not i vote, if the word just appears.

Deleted User
October 29, 2005, 10:00 pm
I hope it doesn't get abused...

KeFear
October 30, 2005, 8:22 pm
Well, if i got it right, then ARSSE can do all this under windows.

Leo
October 30, 2005, 8:50 pm
What I really need, like an admin of 3 servers, is a php/mysql script, or series of scripts, that can do all these without me having to run an app from my PC. I am not online 24/7 so I need a script that can run from an external server. I do have a server but I don't have root access so I can't run a program there.

i am ahab
October 31, 2005, 12:16 pm
mar, ty for your reply i shall make it an option ;)

beaver, sadly such is life. if people want to abuse something i cannot stop them. all i can do is give them an app that has useful features...

KeFear, yes i like what you did with arsee, but from what i remember of using it, it was a remote admin tool and had no further options at the time. you may have updated it and long may you do so, but this is fundamentally different. there is no gui in my app. it is meant to be able to run in the background on windows and *nix systems. i guess a way to distinguish mine is to say its more of a bot than an application, albeit not an irc one. i am designing it so that when it starts, it never needs another piece of input unless the user wishes to change something. atm though, if the server goes down the bot goes down. this is something i want to change. maybe it could revive a server that shuts down like that script of tanks....

leo, you shall be able to run this app from your home pc to all of your servers remotely. which is what i imagine your php script would be doing. initially you will need one instance of the application per server, but come a few releases down the line i shall put something in place to allow multiple server control from one instance. would that help?

mar77a
October 31, 2005, 9:00 pm
quote:Originally posted by LeoWhat I really need, like an admin of 3 servers, is a php/mysql script, or series of scripts, that can do all these without me having to run an app from my PC. I am not online 24/7 so I need a script that can run from an external server. I do have a server but I don't have root access so I can't run a program there.


That would be very easy to do, taking n00bfaces idea. If you want me to do it, PM me please.