Game Development Community

I got a master/authentication/manager server - any interest?

by Thomas \"Man of Ice\" Lund · in General Discussion · 09/26/2003 (1:57 am) · 70 replies

Executive summary:
I got the code for a master server that also includes authtication, registration of users as well as management of avatar/buddylists - and could easily be expanded to include clan management, persistence of inventory etc.etc. centralized.

The code is 100% free of Torque code, but uses the Torque master server protocol + my own additions for the stuff not in Torque. Runs on Linux + Windows from the same code base (C++).

I just dont know what to do with it. Thats what I'm asking you now.


Little background info:
A year ago I started coding this server for a game called c3command with 10-15 other ppl. Unfortunally our team leader has totally disappeared without a trace (yes we tried to track him down, but no luck. We fear the worst). He had the intellectual rights to the game, so we didnt want to continue down that track with possible legal problems looming. Most of the team continues on a new Torque game.

When the c3command project halted early this year I mothballed the code and worked on different projects. Around summer Fredrik Svensson (a Torque owner) contacted me and made me pull it out of cvs and look at it again. He contributed some encryption code, and we started cleaning the code.


Current status and what to do now:
We started talking about contributing the code to GG (the company), but they dont want this inhouse, but rather as a resource.

We are now in the state of either releasing this as a free/general resource as is - or to work some more on this and create some commercial thing around this. We got lots of ideas to great additions, but without some commercial support surround it, we cant work on this the way we would like too.

Add to the mix, that there is already a GPL'ed master server out there for Torque. I've tried contacting Ben to see if he is interested in joining forces on this. It seems all development on that GPL'ed version has halted, so I dont know if he has moved on to other stuff.


So the big question is what you guys see viable.

Would you e.g. be willing to pay maybe $50-$100 (whatever the right price for this is) for a working server that can handle browse lists, authentication etc.etc.etc. with nice management clients and add on code to the Torque source (as well as other engines)?

Or rather have some half finished code free available for use with only slow and minor improvements from me and Fredrik?

Or maybe not interested at all, as you use the GPL master server?


Please feel free to pitch in any ideas, questions and comments you have.
Page «Previous 1 2 3 4 Last »
#1
09/26/2003 (2:21 am)
Damn c3command, if I remember rightly looked damn good, it was an rts/fps right.

I haven't thought about the master server too much before, but this sounds like a good thing. But no Mac? I'm not a Mac person but with some few Mac Games i think would be an easier market :-D!
#2
09/26/2003 (2:37 am)
Yeah - c3command was "what T2 should have been" game. More team based and with small RPG elements. It ended up the way that our design doc was implemented by Sony and released as PlanetSide. Just kidding, but _a lot_ of the unique features we had planned got into PS.

Regarding Mac - I've use the gnu common c++ lib for threading and sockets - which abstracts a lot of the OS dependant things and gives a fairly nice api to code against. Unfortunally I dont think its mac compatible.

Then again the master server itself is ment to run in some data center as backend server, and to be honest I've never heard of anyone running Macs as production servers.

The code that needs to be integrated into the Torque game server is naturally Mac, Windows and Linux compatible. So any game could use this system (also non-Torque games) as long as the master server runs somewhere on the net.
#3
09/26/2003 (2:42 am)
Features?
#4
09/26/2003 (3:13 am)
Current list of features (from top of head):

Most of the features below are finished and working. Some still need some clean up or attention.

master server part
* supports registration of new game servers to create a "currently running" game server list
* continiously pings game servers to see if they are alive
* sends back browse lists to Torque clients to connect to a game

authentication part
* registering a "user" with username, password, email adress and "cd-key"
* dummy cd-key validation (currently returns valid for all)
* login
* logout
* Torque GUI pages for the above + code to be implemented in the Torque networking layer to support the additional protocol commands

management part
* create/delete/managing of a "player" (the ingame avatar)
* adding other players to a buddy list (and you get added to theirs)
* managing buddy list
* seeing a list of buddies and their online status (backend code done, but not working yet)
* player mailbox used for invites (buddylist invites) only. No tmail, but could be done easily
* Torque gui not completed for the management part yet, but most protocol commands implemented in Torque + master server

general stuff
* a network library compatible with the Torque network code
* encryption code is done for Windows (needs to be ported to Linux yet) and needs to be wrapped into the appropriate commands (login, registration mainly)
* fully threaded - each command recieved from a client is executed in a thread of its own
* networking works over both TCP and UDP

Todo:
There is also support for master server management, but its not done yet. Features would be things like banlists, usage reporting etc.etc.

I got half finished code for adding clan management much like T2 has it, but I decided to pull it out of the current build to finish the important parts

Backend persistence - everything is nicely coded in OO with factories. I need to add mysql (or some other db) persistence to the factories - a 1 day job

Running through the code and add mutex lock to the appropriate parts

Support for filtering server lists "like T2"

General clean up, bug hunting etc.
#5
09/26/2003 (4:52 am)
Wow thats great! exactly what i need. 50$? tell me where to buy. ;-)
#6
09/26/2003 (4:46 pm)
I'd like to look at it as well, while we have player registration and chat, I bet it could give me some ideas on how to improve those interfaces.

I'd pay 50 bucks for it.
#7
09/26/2003 (7:05 pm)
Definitely sounds like an item that might be worth goin' the sales route with, 'specially if you flesh out just a couple o' more features.

Personally, I think you need to contact me so I can beta test it for ya ;-) (Yeah, I'm a cheap b*stard - beta is just another word for 'free' sometimes ;-)
#8
09/27/2003 (2:02 am)
Thanks for the reply so far.

So what kind of features would you want? T2 like clan management? A management console for the master server with banlists etc.etc.? Something else?

Also - we would like not to release the sources for the master server as part of at least the "cheap" price deal. But create a plugin structure for the cdkey validation + encryption, so you can put in your own code for those 2 crucial areas. We would contribute with 1 module for each so that everyone can use this if they dont have special needs.

Another question - what database supprt would you want? sqlite seems a bit "not enough enterprise" to run something like this on. Mysql might be the "lowest" database I would use for certain for a commercial game project.
#9
09/27/2003 (2:07 am)
I would like to see the clan management in it and maybe it would be nice to see who is online, banlist aso.

the cd-key validation should work and i would prefer mysql as database.

How much do you want for the source? 100 bucks?
#10
09/27/2003 (2:38 am)
Not sure about pricing - I dont expect to become rich from this (on the contrary), but if enough ppl are willing to pay a little, then I can take on the support burden and be OK with it. If only 2 people are willing to pay, then I guess the code will dump into mothball again for my own use.

But it seems that at least 4-5 ppl are interested in this if the price is around $50, which makes it at least worth thinking about going commercial.

As I'm working in the "regular non-game" software industry I would initially think about some commercial structure like this (its all still not-finalized):

$49.95 for a binary, 1 game license
~$100 for a source code release, non-reseller, non-distributable agreement. Along the lines of GG's deal with Torque

Can be bought as is, or with a support contract. Buying with support would allow for 1 year free upgrade and cvs access - or something similar.

Would that sound fair pricing and OK to you? If so, I will try to see if there is even a real business case here, or if I'm stuck with 2 paying customers that need 3 years of support...... hehe

If we gave this a push we could have a basic 1.0 version (without further features) ready within a month from start. We will work on some documentation and patch program for Torque 1.2 code to add the protocol changes. Also create some basic Torque GUI screens to be added to a game, where you basically just change the layout and thats it.
#11
09/27/2003 (2:53 am)
Well sounds good for me. I will pay the 100 bucks. I would really like to see this in action, maybe a little "demo"?
#12
09/27/2003 (2:59 am)
Yep - I could put up a master server on one of my servers once I clean up the "front end parts" for release (Torque patches and GUI screens).

As the browsing parts already work now, I could very easily set up a server that does only that for now if thats what you would like to see.

Oh - and naturally no money before this is finished up, ready and at least a demo is up running so you can evaluate what you buy before shelling out anything.
#13
09/27/2003 (3:04 am)
Would be nice. Im really interested in this. Really good work!
#14
09/28/2003 (8:55 am)
You definately should have an "update game" feature, that lets the admin send game patches to the player when he logs on.
#15
09/28/2003 (9:02 am)
Yes that would be great but torque doesnt support binary transfers right?
#16
09/28/2003 (9:04 am)
Could be coded as an extension to the existing protocol though - would be great to push maps, patches etc.

As minimum have some version check?!?!
#17
09/28/2003 (9:05 am)
Yes great idea, a map database aso.
#18
09/28/2003 (9:06 am)
It does. You just have to use Torque's networking code. The HTTP object may not support it, however.
#19
09/28/2003 (3:02 pm)
Our solution is a general solution, and could be used outside of Torque as well.

I have added support for reading cfg/ini files tonight, which gives the user more freedom to use this stuff without compiling and hard code variables inside the master server.
#20
09/28/2003 (3:10 pm)
I'd pay 150$ for this, thnx for getting this, i have been looking for this, but a few features would be good, is teh option for a mysql, or flat file for teh info storage, cd-key's are a must, and anotehr thing finding your friends being able to see what server they on, and maybe an instant messaging function?
Page «Previous 1 2 3 4 Last »