Master Server
by smally · in Torque 3D Professional · 05/13/2013 (5:46 pm) · 16 replies
NOTE: Edited to clarify what I really meant
Question: If someone were to say, submit a master server would that even be considered for a project and the steering committee. Or is that something that's been looked at as hands off in the past?
My thoughts were since the engine has been missing a master server for some time, and people have had to write their own, or rely on others to get one of their own up.. Why not create a master server project and seed it with a codebase to do the job.
Was wondering if the master server was hands off or if this would even be considered.
Question: If someone were to say, submit a master server would that even be considered for a project and the steering committee. Or is that something that's been looked at as hands off in the past?
My thoughts were since the engine has been missing a master server for some time, and people have had to write their own, or rely on others to get one of their own up.. Why not create a master server project and seed it with a codebase to do the job.
Was wondering if the master server was hands off or if this would even be considered.
About the author
Most people say that is it is the intellect which makes a great scientist. They are wrong: it is character. -- Albert Einstein
#2
05/14/2013 (2:21 am)
A master server is a seperate program, but if you want to upload one for others, you could do that on your own repo, this would be very useful.
#3
05/14/2013 (8:00 am)
Perhaps the Steering Committee would consider establishing a Master Server project for this - even have several options within that scope. For instance, depending on your server environment you might want a .NET solution, a PHP, Python or Perl solution or even a IIS snap-in.
#4
I actually misspoke, I meant creating a separate project for it. I didn't actually mean putting inside of the engine itself. Sorry about that.. That's what I get for posting with little sleep.. I'm fully aware that it's separate. I'll rephrase the question now that I'm more awake.
Anyway,
@Richard
Thank you! You saw through my sleepy jumbled thoughts. I have a master server that we use for High Availability, High performance, and High concurrency here. I was basically thinking, well why not just give it in to the project here because that's one piece it's been missing for some time.
05/14/2013 (2:57 pm)
@Nathan, DuionI actually misspoke, I meant creating a separate project for it. I didn't actually mean putting inside of the engine itself. Sorry about that.. That's what I get for posting with little sleep.. I'm fully aware that it's separate. I'll rephrase the question now that I'm more awake.
Anyway,
@Richard
Thank you! You saw through my sleepy jumbled thoughts. I have a master server that we use for High Availability, High performance, and High concurrency here. I was basically thinking, well why not just give it in to the project here because that's one piece it's been missing for some time.
#5
05/14/2013 (3:02 pm)
Rails? I've been tempted to do a Rails/Heroku master server for a while... then realised I have no reason to do that :P.
#6
05/14/2013 (3:03 pm)
Nope, this one is straight C and the other version is C++
#7
We have talked about releasing its code in the past. It would need to be cleaned up and made to work with Torque 3D MIT, but perhaps it could be done as part of the v4.0 plan. It could be put together as a separate project/make file, much like the Linux dedicated server.
However, the GG Master Server is very simplistic in what it does, so there is plenty of room for more robust Master Servers. And multiple languages/environments are always nice. If it helps out, we could create a central Master Server GitHub repo with separate directories for each style of Master Server. We would certainly be looking to the community to be the ones to really maintain it through Pull Requests, etc.
- Dave
05/15/2013 (11:25 am)
The official GG Master Server actually does compile against the engine (TGE in this case) to make use of its networking code. So if we were to release it, it would be part of the T3D code base and repo.We have talked about releasing its code in the past. It would need to be cleaned up and made to work with Torque 3D MIT, but perhaps it could be done as part of the v4.0 plan. It could be put together as a separate project/make file, much like the Linux dedicated server.
However, the GG Master Server is very simplistic in what it does, so there is plenty of room for more robust Master Servers. And multiple languages/environments are always nice. If it helps out, we could create a central Master Server GitHub repo with separate directories for each style of Master Server. We would certainly be looking to the community to be the ones to really maintain it through Pull Requests, etc.
- Dave
#8
If most don't see it as that big of a deal, then we can restart that when the time requires it as I'm not sure it's that important right now. When decided though, it would be nice to see it setup like that. A lot of people have different thoughts as to what a master server should do or really be and that's really up to the game itself.
An MMO might want theirs to act as a gateway to the entire system, or even to perform other logic, such as keeping track of what nodes are live and what aren't. Who can accept a new connection, who is full kind of thing.
Whereas the typical FPS is just a matchmaking service and not much more. Plus the server end of things differ a lot. Some want a windows one, some prefer linux, etc.. It's really too variable.
If we did a project for the repo like that I would assume we wouldn't want to just throw in 20 variations
I think though for now, we should really get people to speak up now before we create a repo? Last thing I want to do is create more work for you guys either. Any thoughts?
As for the GG one, I'd be willing to port it to T3D 3.0 and update it to v4 as well, if we need more manpower ;)
05/15/2013 (3:59 pm)
Well that's some news to me ;) I figured the GG one would compile against the engine, which to me isn't a big deal as it's really quite natural for that to be anyway. I just didn't know what the state of things was with the master server anyway. If most don't see it as that big of a deal, then we can restart that when the time requires it as I'm not sure it's that important right now. When decided though, it would be nice to see it setup like that. A lot of people have different thoughts as to what a master server should do or really be and that's really up to the game itself.
An MMO might want theirs to act as a gateway to the entire system, or even to perform other logic, such as keeping track of what nodes are live and what aren't. Who can accept a new connection, who is full kind of thing.
Whereas the typical FPS is just a matchmaking service and not much more. Plus the server end of things differ a lot. Some want a windows one, some prefer linux, etc.. It's really too variable.
If we did a project for the repo like that I would assume we wouldn't want to just throw in 20 variations
I think though for now, we should really get people to speak up now before we create a repo? Last thing I want to do is create more work for you guys either. Any thoughts?
As for the GG one, I'd be willing to port it to T3D 3.0 and update it to v4 as well, if we need more manpower ;)
#9
05/15/2013 (7:51 pm)
Dave, that's exactly what I was thinking - a central repo with directories for each flavor.
#10
Yup, it was your post that headed me in that direction. :)
@smally:
The T3D Steering Committee always needs more manpower in the form of community involvement. So thanks for volunteering! I'll put together a package with the TGE version for you to convert. Could you please send me an email so I can mail you a link (no email address in your profile)? Thanks!
- Dave
05/21/2013 (8:07 am)
@Richard:Yup, it was your post that headed me in that direction. :)
@smally:
The T3D Steering Committee always needs more manpower in the form of community involvement. So thanks for volunteering! I'll put together a package with the TGE version for you to convert. Could you please send me an email so I can mail you a link (no email address in your profile)? Thanks!
- Dave
#11
Edit: Sent email to the address listed on your profile
05/28/2013 (5:05 pm)
Weird.. There should have been one there. I'll send you one and fill one in there as well.Edit: Sent email to the address listed on your profile
#12
I'll see about getting that package to you this week. Thanks for helping out.
- Dave
06/03/2013 (9:07 am)
@smally:I'll see about getting that package to you this week. Thanks for helping out.
- Dave
#13
06/03/2013 (3:24 pm)
Not a problem about the package or helpin out. Least I can do.
#14
tbarlow
07/04/2013 (3:48 pm)
so has anyone been working on a master server yet just checking im looking into puting one up so I was wonder what was going on thankstbarlow
#15
07/06/2013 (10:14 pm)
Yes I'll have in a port of it send to David here by the end of this next week. Just trying to get back into the swing of things here. I ended up in the hospital here for the last week and a half with a terrible bacterial infection.
#16
10/25/2013 (12:46 pm)
Where did the code for master server end up?
Torque Owner Nathan Martin
TRON 2001 Network
This doesn't stop you from simply having your own repository on github for your own torque master server implementation to share with everybody. Helps to make a resource posting announcing the availability of said program and a link to the repository for all to see. :)