Jump to content

Consolidated Login Server


Guest nightsta69

Recommended Posts

just a curiousity question, has anyone thought about making a consolidated login server, so you can just log in to 1 login server, and others can register thier world server to it. this way people can have a more diverse list of servers to to choose from, instead of scouring over countless sites trying to find a decent server? its how the EQemu is, and works great. more people can see a server, and find out which ones are the popular ones, and which ones are striving to be popular,and its all centralized. just a curiousity thought.

Link to comment
Share on other sites

That actually sounds like a fairly good idea, come to think of it :D

I do see several problems with this though:

1. Your realm can only connect to one realmserver, so everyone has to go through that central realm - what do you do when it goes down?

2. The gameserver needs write-permissions on the database. This is in theory a very bad idea if you don't fully trust the other gameservers.

3. GM level is per account, and accounts are shared between realms. It would mean any GM could administer any server.

If you have several servers you can trust, it would be a good idea to add them (in fact, our own situation is two test / development realms and one main realm, all in different locations but connected to the same realmserver), but as it stands now security would be too great an issue to just let anyone register and add their own server.

Link to comment
Share on other sites

That actually sounds like a fairly good idea, come to think of it :D

I do see several problems with this though:

1. Your realm can only connect to one realmserver, so everyone has to go through that central realm - what do you do when it goes down?

2. The gameserver needs write-permissions on the database. This is in theory a very bad idea if you don't fully trust the other gameservers.

3. GM level is per account, and accounts are shared between realms. It would mean any GM could administer any server.

If you have several servers you can trust, it would be a good idea to add them (in fact, our own situation is two test / development realms and one main realm, all in different locations but connected to the same realmserver), but as it stands now security would be too great an issue to just let anyone register and add their own server.

1. the server obviously would need to be hosted by a reliable host, preferably by the mangos team.

2. not sure about this one, as I haven't messed with mangos in quite some time.

3. this can be done using forums accounts here. how it is done over on the eqemu site, is to register your server on thier login forum account, you use your forum account, and register the server name to your account, then it should be just as easy as adding a check with the server name against the account logging in, via an added column in loginserver. and if they match up, then grant GM status, else they are a normal player. additional GMs can be added via php script here, by the server owner. honestly shouldn't be that hard to do.

other then number 2 (which again, i'm not educated on this, just thought I would throw the idea into the pool), eqemu has this in place, and it allows for a greater diversity of players amongest the servers, and allows for much more diversity amongest servers for the player base. again, just an idea, that I think is very feasible, and completely viable.

think i'll grab the source, and see what I can do. cause now i'm curious lol.

Link to comment
Share on other sites

#1: a reliable host is good and fun, but in case you weren't here in the past few weeks: the mangos forums were down due to a DDoS attack. There is simply no way to guarrantee the realm server will not go down, and when that happens there will be thousands of users unable to connect. With a distributed model the risk is far smaller since there is not a single point of faillure.

The problem with #3 is not registering the accounts - this is of course a trivial matter. The problem is Mangos itself, which is not build to handle GM levels based on realm. Untill the developers here take time out to implement it, there is no way to distinguish between GM's of different realms.

As for #2: in your realmlist is stored what the server population is, uptime, timezone and a few more fields are listed there. I am not entirely sure if it still works without write-rights to the realm database - it just might. But that would mean any account related commands ingame will not work anymore (like banning, password change, etc). This issue I can actually see being worked around, though it will cost some usability for realm owners.

Link to comment
Share on other sites

That actually sounds like a fairly good idea, come to think of it :D

I do see several problems with this though:

1. Your realm can only connect to one realmserver, so everyone has to go through that central realm - what do you do when it goes down?

2. The gameserver needs write-permissions on the database. This is in theory a very bad idea if you don't fully trust the other gameservers.

3. GM level is per account, and accounts are shared between realms. It would mean any GM could administer any server.

If you have several servers you can trust, it would be a good idea to add them (in fact, our own situation is two test / development realms and one main realm, all in different locations but connected to the same realmserver), but as it stands now security would be too great an issue to just let anyone register and add their own server.

#1: a reliable host is good and fun, but in case you weren't here in the past few weeks: the mangos forums were down due to a DDoS attack. There is simply no way to guarrantee the realm server will not go down, and when that happens there will be thousands of users unable to connect. With a distributed model the risk is far smaller since there is not a single point of faillure.

The problem with #3 is not registering the accounts - this is of course a trivial matter. The problem is Mangos itself, which is not build to handle GM levels based on realm. Untill the developers here take time out to implement it, there is no way to distinguish between GM's of different realms.

As for #2: in your realmlist is stored what the server population is, uptime, timezone and a few more fields are listed there. I am not entirely sure if it still works without write-rights to the realm database - it just might. But that would mean any account related commands ingame will not work anymore (like banning, password change, etc). This issue I can actually see being worked around, though it will cost some usability for realm owners.

1. yes I heard about the DDoS attacks, only thing I can say about this would be using redundancy. even if 1 server is down, have a backup. can't guarentee anything in life, i'm just looking at making it easier.

3. yes this is something that developers would have to be interested in, to change. but again I believe would be for the greater good, and would bring an alrdy spread out community, just a little bit more together. maybe a change needs to be implimented to have GM status looked into, on the server side, when the client is handed off from the realm server, to the realm. then you can still keep the functionality of banning, and such kept per realm. this is how the eqemu servers are setup as. I know it might seem like a big change, but I see it having its benefits as well.

2. again this i'm not educated in, but will be soon. I will see if I can setup a test or something, just to show if its easy enough to do.

Link to comment
Share on other sites

heres my thoughts on how this can go about, to help keep functionality and control within the server owners hands.

you have:

Login Server A (centrallized login server, hypothetically based from the getmangos devs)

and Login server B (server hosted by server owner)

have a simple switch in the conf, stating either function as a dedicated login server, or communicate with login server A.

client logins into login server A, it does a check to see if that account is banned (forum ban or whatever). if passes, then client is allowed access to realm select. client selects realm and login server A then passes client onto Login server B. then Login server B checks for bans against the server, as normal, and if nothing exsists, then passes client onto realm server. this way server owner still has control over who is banned, and who isn't, keeps his functionality as well, and can choose weather to operate with the centrallized login server.

basically the switch within the conf gets checked, and if its told to communicate with login server A, then it will hold onto its check functions until signalled from login server A that a client is being passed on to it, for further confirmation. and if client is banned, then kick him to server select screen, or just to make it more annoying, kick him back to the log in screen.

idk if this seems overly complicated or not. but it seems like a viable approach. this way login server A doesn't need mysql access to login server B. login B can do all the database entries, and pass on to mangos. basically it will either keep the login server as a dedicated login server, or a relay between Login server A and realm.

Link to comment
Share on other sites

1st - that will NEVER happen here, read mangos rules and EULA

2nd - its easy to add as many realmlists as servers, u just need acess to realmd db so world-realmdd (realmd.exe) can acess it to permit login, but it also req write permissions

3rd - currently GM levels and bans are per acc not per server, there is inumerous patches around to change gm per server, can be used to easly dev ban per server as well

Link to comment
Share on other sites

1st - that will NEVER happen here, read mangos rules and EULA

2nd - its easy to add as many realmlists as servers, u just need acess to realmd db so world-realmdd (realmd.exe) can acess it to permit login, but it also req write permissions

3rd - currently GM levels and bans are per acc not per server, there is inumerous patches around to change gm per server, can be used to easly dev ban per server as well

bleh, i'm sorry, I forgot that this project is bound by too many rules and restrictions on how you can further it, or your education (IE showing how server to server interactions can coincide together, even when using 2 diff databases or show how major companies can integrate several platforms together under a centralized system, to better output a product to a customer.) it can be used for educational purposes. anyways, i'll head back to what I was doing. feel free to delete this thread.

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use