Graal Forums  

Go Back   Graal Forums > Development Forums > Future Improvements
FAQ Members List Calendar Search Today's Posts Mark Forums Read

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 05-19-2007, 07:34 PM
Tyhm Tyhm is offline
Psionic Youth
Tyhm's Avatar
Join Date: Mar 2001
Location: Babord, West Graal Deaths:1009 Kills:1
Posts: 5,635
Tyhm has a spectacular aura about
Lagless Server, Invincible Security.

I think I have it. The way to make the System stronger, faster, and harder to hack. We farm out the Server's tasks to random players.
Not just
Server: "Give player42 all the processor load of the Server", but more like
Server: "player2's asking what the Bomy Lord's doing. Have player(int(rand(0,playercount))) figure it out."
Then, since that raises the problem of some clever scriptkiddy coming up with a trainer that gives bad answers every time he's asked, have the server spend its idle moments testing:
Server: "Hey player38, player2 wants to know what the BomyLord's doing"
player38: "Now's my chance! Server, the Bomylord lays down a bunch of bombs in this pattern, then shouts expletives."
Server: "That's funny, by My math it should have moved to 32,28. FLAGGED!"
GP: "What the-Player 38 got flagged for returning...oh wow, yeah, that's a banhammer..."
-and because only the System NPC knows which ones are tests and which ones are actual requests, player38 never knows if he's Actually screwing with the server or just letting the server know he's being a bad little scriptkiddy.
Also, since player38's never asked to calculate things for player38, he can't very well edit the world to his own liking. If the only players online were all hacking at the same time it'd be a problem, but then again, Graal would have some considerable problems if the only people playing on a server were all trainerers...and it might be best to just let them have their fun in such circumstances. Similarly, the server would have to do the math on its own, normally, when the playercount got too low (but then, the server should be able to handle a load of 3 players)...and some minor scripting would have to go into "If player96 doesn't return an answer within 0.4 seconds, go to somebody else and raise 96's latency index. If they don't return an answer within 0.4 seconds, calculate it personally and return the answer immediately"

It's a thought, I dunno enough about the server infrastructure to say if it's really feasable.
__________________
"Whatever," said Bean, "I was just glad to get out of the toilet."

"Power does not corrupt. Fear corrupts, perhaps the fear of a loss of power."- John Steinbeck
"I'm only acting retarded, what's your excuse?" queried the Gord.
- My pet, the Levelup Gnome

http://forums.graalonline.com/forums...&postcount=233
Reply With Quote
  #2  
Old 05-19-2007, 07:39 PM
Twinny Twinny is offline
My empire of dirt
Twinny's Avatar
Join Date: Mar 2006
Location: Australia
Posts: 2,422
Twinny is just really niceTwinny is just really nice
Send a message via AIM to Twinny
Wouldn't there just be more overheading triggering all the players to do these calculations rather than the NPC-Server handling them itself?
Reply With Quote
  #3  
Old 05-19-2007, 08:15 PM
Deadly_Killer Deadly_Killer is offline
Registered User
Join Date: Feb 2002
Posts: 227
Deadly_Killer is on a distinguished road
I laughed.
__________________
- Zidane / Zidaya
Reply With Quote
  #4  
Old 05-19-2007, 08:52 PM
JkWhoSaysNi JkWhoSaysNi is offline
Ruler of the graalaxy
Join Date: Feb 2005
Location: Great Britain
Posts: 488
JkWhoSaysNi is on a distinguished road
Send a message via ICQ to JkWhoSaysNi
That would cause more lag for everyone because their computer would use more bandwidth it would also be significantly slower because you'd need to wait for the data to get sent across the internet (and back) before getting an answer. Not only that, potentially it could get out of sync because results from some players will come back slower than results from others due to network and cpu speed.
__________________

Coming soon (Hopefully:P)
Reply With Quote
  #5  
Old 05-20-2007, 08:35 PM
Tyhm Tyhm is offline
Psionic Youth
Tyhm's Avatar
Join Date: Mar 2001
Location: Babord, West Graal Deaths:1009 Kills:1
Posts: 5,635
Tyhm has a spectacular aura about
It seems to me that the server already is pretty good at handling intra-player dataflow. And that players are already pretty good at passing data and crunching numbers. And that network traffic is an inevitability.
As it stands:

Clientside (no lag, no security):
Player A enters the room of the Bomy Lord. (proc: P.A)
Player A calculates the Bomy Lord. (proc: P.A)
Player A reacts to the Bomy Lord. (proc: P.A)
Repeat.

Serverside (high lag, high security):
Player A enters the room of the Bomy Lord. (proc: P.A)
Player A contacts server. (network: P.A->server)
Server calculates the Bomy Lord. (proc: server)
Server contacts Player A. (network: server->P.A)
Player A reacts to the Bomy Lord. (proc: P.A)
Repeat.

Propsal: (low(er) lag (than serverside), high(er) security (than clientside))
Player A enters the room of the Bomy Lord. (proc: P.A)
Player A contacts server. (network: P.A->server)
Server reroutes connection to Player B (an insignificant network&processor load)
Player B calculates the Bomy Lord. (proc: P.B)
Player B contacts server (network: P.B->server)
Server reroutes connection to Player A (an insignificant network&processor load)
Player A reacts to the Bomy Lord. (proc: P.A)
Repeat.

I'll grant it only works if the server takes drastically less energy and time rerouting connections than processing and responding, and it requires a certain Battle.Net-like faith in the other guys' processors, but it beats what we're doing.
__________________
"Whatever," said Bean, "I was just glad to get out of the toilet."

"Power does not corrupt. Fear corrupts, perhaps the fear of a loss of power."- John Steinbeck
"I'm only acting retarded, what's your excuse?" queried the Gord.
- My pet, the Levelup Gnome

http://forums.graalonline.com/forums...&postcount=233
Reply With Quote
  #6  
Old 05-20-2007, 09:14 PM
JkWhoSaysNi JkWhoSaysNi is offline
Ruler of the graalaxy
Join Date: Feb 2005
Location: Great Britain
Posts: 488
JkWhoSaysNi is on a distinguished road
Send a message via ICQ to JkWhoSaysNi
but transferring data across a network is significantly slower than calculating it on the server.

You're also doubling the necessary network traffic, which will double the lag. Any small gain in the amount of time taken to do the calculation will be lost by transferring the data across the internet twice.

Unless you're talking about making a direct connection between player A and player B and make graal a p2p network, the problem with that is that graal will have to listen on a specific port... which not everyone will have open for incoming connections.

Then what happens if player B logs off in the middle of the transaction? You get even more lag because the connection has to be remade with a 3rd player.

You're also relying on the potentially limted network and CPU speed of individual players.
__________________

Coming soon (Hopefully:P)
Reply With Quote
  #7  
Old 05-22-2007, 04:29 AM
Tyhm Tyhm is offline
Psionic Youth
Tyhm's Avatar
Join Date: Mar 2001
Location: Babord, West Graal Deaths:1009 Kills:1
Posts: 5,635
Tyhm has a spectacular aura about
Yeah, Peer-To-Peer (as opposed to the other P2P, Pay-to-Play).
Like I said, I don't really know enough about the architecture...I don't reckon the AIM server has a whole lot of thinking to do in maintaining people talking to each other, even while masking their IPs from each other. But then, making random connections and randomly quizzing these connections could be just as bad.
Which pretty much leaves us back at "Either have the player do the calculations, or have the server do it." If we lived in a world where players could be assigned relative lag indexes, and said indices would be stable, we could trust the two high-powered processors to do each others' work: player1's fighting the bomylord while processing the mushroomlord for player 2, and player2's fighting the mushroomlord while processing the bomylord for player 1, and all the server's doing is occasionally checking up on them...
Pipe dreams, oh well, it woulda been nice.
__________________
"Whatever," said Bean, "I was just glad to get out of the toilet."

"Power does not corrupt. Fear corrupts, perhaps the fear of a loss of power."- John Steinbeck
"I'm only acting retarded, what's your excuse?" queried the Gord.
- My pet, the Levelup Gnome

http://forums.graalonline.com/forums...&postcount=233
Reply With Quote
  #8  
Old 05-22-2007, 08:21 AM
Twinny Twinny is offline
My empire of dirt
Twinny's Avatar
Join Date: Mar 2006
Location: Australia
Posts: 2,422
Twinny is just really niceTwinny is just really nice
Send a message via AIM to Twinny
Waaay to impractical. For the most part, it seems most serverlag comes from triggers. The next would be poor scripting.
Reply With Quote
  #9  
Old 05-22-2007, 10:01 AM
Skyld Skyld is offline
Script-fu
Skyld's Avatar
Join Date: Jan 2002
Location: United Kingdom
Posts: 3,914
Skyld has much to be proud ofSkyld has much to be proud ofSkyld has much to be proud ofSkyld has much to be proud ofSkyld has much to be proud ofSkyld has much to be proud of
Send a message via AIM to Skyld
Quote:
Originally Posted by Tyhm View Post
Yeah, Peer-To-Peer (as opposed to the other P2P, Pay-to-Play).
Like I said, I don't really know enough about the architecture...I don't reckon the AIM server has a whole lot of thinking to do in maintaining people talking to each other, even while masking their IPs from each other. But then, making random connections and randomly quizzing these connections could be just as bad.
Which pretty much leaves us back at "Either have the player do the calculations, or have the server do it." If we lived in a world where players could be assigned relative lag indexes, and said indices would be stable, we could trust the two high-powered processors to do each others' work: player1's fighting the bomylord while processing the mushroomlord for player 2, and player2's fighting the mushroomlord while processing the bomylord for player 1, and all the server's doing is occasionally checking up on them...
Pipe dreams, oh well, it woulda been nice.
There is no advantage in the NPC-Server passing the jobs to the clients. It'd be a security risk if the tasks were somehow intercepted (and it'd happen), and if a client dropped out, suddenly the server has lost some instructions. The transfer mechanism isn't fast enough, and the server would suddenly have to start regulating tasks instead of just doing them itself in a third of the time.

The machines that the NPC-Servers are running on are pretty good machines; it's just as easy to leave them there doing the work in the same fashion.

In theory the idea is probably a good one, but there are so many architectural limitations that make it highly impractical for something like this.
__________________
Skyld
Reply With Quote
  #10  
Old 05-22-2007, 12:11 PM
zokemon zokemon is offline
That one guy...
zokemon's Avatar
Join Date: Mar 2001
Location: Sonoma County, California
Posts: 2,925
zokemon is a jewel in the roughzokemon is a jewel in the rough
Send a message via ICQ to zokemon Send a message via AIM to zokemon Send a message via MSN to zokemon Send a message via Yahoo to zokemon
Quote:
Originally Posted by Skyld View Post
but there are so many architectural limitations that make it highly impractical for something like this.
Well said!
__________________
Do it with a DON!
Reply With Quote
  #11  
Old 05-22-2007, 09:09 PM
Tyhm Tyhm is offline
Psionic Youth
Tyhm's Avatar
Join Date: Mar 2001
Location: Babord, West Graal Deaths:1009 Kills:1
Posts: 5,635
Tyhm has a spectacular aura about
Yeah...
hah, we should do P2S (Peer to Self) transfers.
P1: "Where did the Bomy Lord go?"
S: "I don't know, where Did the Bomy Lord go?" (Reflecting pings)
P1: "Right there."
S: "Right there." (Either reflecting pings or checking math - either all the load of 127.127.127.1 or part of the server's regular load)
P1: "Okay!"

But every time Stefan comes up with a clever way of checking that clients aren't cheating, the scriptkiddies come up with a clever way of bouncing the Right answer whenever they're being checked and the Wrong answer the rest of the time...
__________________
"Whatever," said Bean, "I was just glad to get out of the toilet."

"Power does not corrupt. Fear corrupts, perhaps the fear of a loss of power."- John Steinbeck
"I'm only acting retarded, what's your excuse?" queried the Gord.
- My pet, the Levelup Gnome

http://forums.graalonline.com/forums...&postcount=233
Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 01:59 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
Copyright (C) 1998-2019 Toonslab All Rights Reserved.