PDA

View Full Version : Java Rcon Client: Anyone Interested?


FearsomeFrog
03-01-2003, 12:06 AM
I've been working on writing a rcon admin tool in Java recently. This was orginally intended to just be for my personal use, but I figure that perhaps someone else can find a use for it as well. Its not nearly polished enough to be released now, but before I do more work on it, I'd like to see if people are interested.

I orginally started this project because I wanted a program that could serve the function that AutoKick does, and run 24/7. However, the only computer that I have that runs 24/7 runs Linux, not Windows, hence, Autokick and the like do not work. By writing the client in Java, it allows it to run on any platform for which a JVM exists. So, it will work on Windows, Linux, and Mac, as well as others.

I saw a post in here a little while ago asking if CI runs on Linux, which is what gave me the idea to release my program. As far as I know, there are no other rcon clients for MOHAA that will run on Linux.

A brief list of the current features, I intend to add more over time:
- Both GUI and command line interfaces. GUI allows for ease of use, but if you want to use the program on a system that does not have a GUI, the command line comes in handy. It also good for running via a cron script in Linux (for example, displaying a message on your server every 10 minutes).
- Change server settings easily. Rather than having to know all the rcon commands and variables for various settings, I've implemented a menu system that allows you to change these settings easily. I think its nice if you don't want to look up a rcon command.
- Fully functional rcon console. Any command that works in a regular in game rcon console will work with my client, in either GUI or command line mode.

I want to stress that right now, this program does not come close to Autokick, Delator, or CI. I've only been working on this for about a week now, and I'm still a novice programmer, so things go slow. I do plan to add many new features in the future. If you have any suggestions for what you would like to see, I'd be happy to hear.

Once I clean everything up and most of the major bugs are dealt with, this will be an open source program, released under the General Public Liscense. So all source code will be available for those who would like to see it. I will eventually put it up on sourceforge.net when I feel its ready.

Anyway, I would like to see how much interest there is for something like this. If you have any questions, comments, or would like to get a copy of what I have now, feel free to either drop me a PM or an email at: m311c386@optonline.net

Thanks.

FearsomeFrog
03-11-2003, 02:14 PM
My project was accepted at sourceforge, here's a link to its project page:
http://sourceforge.net/projects/rcontool/

Eventually I will have a website up for it here:
http://rcontool.sourceforge.net
(right now there's nothing there)

Version 0.1 is now available for download, I've included it in both .tar.gz (linux) and .zip (windows) formats. The source code is also there, in .tar.gz format.

This release mainly lays down the basic structure of the program, so there aren't many features noticable to the user yet. Most notably, I've included support for monitoring upto 8 servers simultaneously.

I'm interested in what sort of features people are interested in, so I can try to include them in a future release. I estimate that I'll be able to release a much more functional version late next week. I've been working on setting up all the stuff at sourceforge recently, and I've still got the website to handle, so not much programming has gotten done recently. In the next few days I'll start again; most of the changes will be viewable in CVS (there is a link at my project page).

For those that would like to try out the current version, I encourage you to do so. Please make sure you read the included documentation before attempting to use the program though.

lumkichi
03-25-2003, 02:57 PM
Actually,

This might be VERY useful in webpages running on an Application Server such as Tomcat or Websphere. In essence, a clan's webpage could link to obtain stats about their webserver.

If this program could also set itself up as a SOAP server, a SERVLET or something like that, it might be able to provide a remote webpage client with information that could be embedded in that page dynamically.

I am very interested! Please let me know if I can be of help

FearsomeFrog
03-25-2003, 09:41 PM
I'm glad to see there is some interest. Your idea is a good one, and while I'm not very familar with servlets and such, I'd be happy to help in any way possible.

Anyone interested is invited to view the source, which can be found here:
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/rcontool/RconTool-0.1/
Any constructive criticism is most welcome.

And here's a quick status update:

I'm currently working on parsing the output of the status command and then displaying that data is a visually appealing manner. As I've been very busy with other things recently, not much work has been done. Today I had a little time to work on it, and some progress was made, so I'm hopeful that a new version will be released in the coming weeks. It will (hopefully) have many more features that 0.1.

coolrider64n
04-06-2003, 12:34 AM
wow nice dude how long u been working on this? crazy (not much people here might want to post somewhere eles) it would be nice to have it :rolleyes:

FearsomeFrog
04-06-2003, 06:07 PM
I've been working on this for aproximately a month or so, but development is not done constantly. I work on this project onlywhen I don't have other work, so sometimes a week will pass with no work done :(

Version 0.1 can be found and downloaded here:
http://sourceforge.net/projects/rcontool/
(look in the files section)

For those interested in trying it, please make sure you read the readme.txt and install.txt files. Installation and running of Rcon Tool is different from most programs, because it must be interpreted by the Java Virtual Machine.

Currently, I've been able to get it to parse the data returned from the "status" command, and generate a table of players and their information. Next, I plan to rewrite a portion of the code, and add support for kicking / banning of players via the table. As soon as I complete that, version 0.2 will be released. I estimate 1 - 2 weeks til 0.2.

As always, feedback is most welcome!

FearsomeFrog
05-13-2003, 04:24 PM
Here's a quick update on my recent progress:

I've had a bunch of exams recently, so not much work has been done. I do, however, have several features that will be ready for release soon. Version .02 (next release) represents an addition of a considerable amount of new features. The program now generates a table based on player information, and will soon allow you to disallow players that match certain parameters from playing on your server.

Today I am working on the code that will allow you to boot/ban a player simply by clicking on their name on the table, and then clicking on a button. Assuming no huge bugs crop up, that should be done today, and will be in CVS.

Once I have thoses features as well as bans set up properly and working without bugs, version .02 will be released with those additions.

Looking ahead, one of the features I was thinking of implementing was a remote admin feature, by which one RconTool could allow others to access the server through it. Permissions could be set, so that only certain commands would be allowed, and the actual rcon password would not be revealved. This might be useful, for example, in clans, where only the leader should know the rcon password, but all memebers would be able to kick/ban other players. They would not, however, be able to change the rcon password or stop the server. Any interest in a feature like that?

Sadly, my clan lost our server last month. This is a problem for testing of my code, since it limits me to a one player server I run locally; clearly a poor testing environment. Therefore, if anyone using my program has spotted any bugs, please contact me, either via PM or email ( frog683@optonline.net ). If there are any server admins willing to help me test my program, please contact me. Any help is most appreciated!

I'd expect version .02 to be out within two weeks. BTW, the large delay between .01 and .02 was due to a pretty much complete code rewrite that needed to be done. I don't expect having to do this again in the future, so releases should begin to happen a bit faster.