![]() |
| [[ Home | Forums | 3D Engines Database | Wiki | Articles/Tutorials | Game Dev Jobs | IRC Chat Network | Contact Us ]] |
|
|||||||
![]() |
|
|
Thread Tools | Search this Thread | Display Modes |
|
|
#26 | |||||
|
New Member
Join Date: Sep 2009
Location: Santa Monica
Posts: 18
|
Quote:
actually, no they are not. the improved latency from P2P is another well known fact, known by all professional multiplayer game developers - however, it is typically not the primary concern. the O(n) growth of bandwidth per-peer is usually more important. and "updated frequency" i'm afraid is a delusion of yours, you seem to believe that P2P for some reason offers some potential for higher send rates, in fact, it is the opposite - client/server allows clients to operate asynchronously with other players - it is the deterministic lockstep P2P model which has to wait for the most lagged player before advancing the simulation. Quote:
aha... you mean like you just went and googled for 10 minutes and rattled off some names of games (you think) that use P2P. what exactly is that supposed to prove? certainly it does not prove this statement of yours: Quote:
or this one: Quote:
finally, for your original questions: Quote:
the answers are 1) yes 2) no 3) definitely not. Last edited by gaffer : 09-02-2009 at 05:54 PM. |
|||||
|
|
|
|
#27 | |||
|
New Member
Join Date: Aug 2009
Posts: 21
|
Quote:
you keep repeating symbols without ever putting any real numbers in your equation. what definition? where is the server in your definition? SERVER, SERVER, SEVER.. tooo-toooo! whatever your definition is, it's wrong, wake up! *** 32 clients, 20Hz, Client-Server Cost: Server Upload: 429,440 bytes/sec = 3.27 mbps Server Download: 16,000 bytes/sec = 0.12 mbps *** 32 peers, 20Hz, Peer-to-Peer Cost: Client Upload: 31,000 bytes/sec = 0.24 mbps Client Download: 31,000 bytes/sec = 0.24 mbps 1.) Avergage ADSL can support 32 players in p2p game? YES/NO 2.) Average ADSL can NOT support 32, nor 16 players in c/s game? YES/NO Quote:
lol. as many times explained to you already, latency between peers is proportional only to distance and can flow continuously at normal frame rate, like 60Hz. latency in server/client model not only depends on distance, which is always longer, but now frequency depends on server update rate as well, which is usually low and proportional to number of players, plus time penalty for extra routing. that's about 50-100ms extra latency, if not much, much more, just for choosing a server/based model over p2p. but this additional latency is not just latency, it's a frequency slow-down factor, it brings even more noise to the flow. -- if a packet arrives at the moment when server just started with a physics loop, it means it would practically be stuck there for about 100ms before the information can be sent to actual destination. ...even over LAN you can't really scale the number of players, nor you can get rid of this extra latency caused by the server calculating physics loop. no, p2p does not need to wait, only if it wants to sync, but it basically only runs in the past to accommodate highest latency player, just like server does, no waiting... tho p2p can modify this dynamically, on the fly, hence produce gradient change and keep smooth animation, while conserving determinism. Age of Empires needed to sync because simulation on each of the peers had to be deterministic, identical, but they did manage to achieve smooth animation and perfect sync nevertheless. so, not only they managed the bandwidth constraints of 28.8 modem, but they achieved fluid animation, dynamically adjusting to suit all kinds of latency and packet loss over the internet, and in the same time having deterministic and identical simulation on each peer. that is an explanation, my dear friend - numbers and examples... tho i can always use some of your kind of "arguments" and "explanations", call you stupid and delusional, but i will not. Quote:
hahahaa... i'm proving you wrong, i'm proving to you how p2p has been successfully implemented even on 28.8 modem with 8 players! again, client/server model could never manage it and this makes all your bandwidth comments even more ridiculous. the question really is, what are you trying to prove? are you saying you do not believe some games actually use p2p? do you think you can make some argument or you just gonna fight me with you disbelief? what, do you mean to say Halo 3 does not use p2p? What then, does it have dedicated server? GTA IV you say can not possibly be using p2p, eh? Rockstar, they can't be that much delusional and stupid to use it, is that what you're saying? Last edited by gbLinux : 09-02-2009 at 06:37 PM. |
|||
|
|
|
|
#28 | |
|
New Member
Join Date: Aug 2009
Posts: 21
|
Quote:
lol... try to argument your silly opinion and you will see numbers start to laugh in your face. in fact, do you have any argument for any of what you said here? ...you are just saying stuff, being angry, but you failed to support any of your statements, the only argument you really have here is O(n), and you forgot to consider the server, hahaa! so, do you think you can actually articulate your opinion so we can see where did your calculation go astray, or not? |
|
|
|
|
|
#29 | |
|
New Member
Join Date: Sep 2009
Location: Santa Monica
Posts: 18
|
Quote:
your own numbers in your first post in fact demonstrate how P2P uses more bandwidth per-peer than client/server, and that the bandwidth required to run an integrated server is identical to that of a peer. you cannot seem to understand this fact, probably because you are either a) mentally retarded b) 12 years old, or c) don't understand english and run forum posts through google translate - or d) all of the above. which particular reason it is, i don't really care. enjoy your ignorance abaraba, you seem to have it in abundance but remember - if/when you eventually getting around to coding a multiplayer game, and suddenly your bandwidth is growing at O(n) and your simplistic input/command based P2P technique breaks down because you do not understand why your game is non-deterministic across peers, when you *finally* discover that you have to wait for the input from the most lagged peer before simulating the frame -- don't come crying to us, because we knew it all along, tried to explain it to you, and you were too stupid to listen. Last edited by gaffer : 09-02-2009 at 06:43 PM. |
|
|
|
|
|
#30 | |
|
New Member
Join Date: Sep 2009
Location: Santa Monica
Posts: 18
|
Quote:
1) NO 2) NO ![]() Last edited by gaffer : 09-02-2009 at 06:36 PM. |
|
|
|
|
|
#31 | |||
|
New Member
Join Date: Aug 2009
Posts: 21
|
Quote:
List of device bandwidths From Wikipedia, the free encyclopedia http://en.wikipedia.org/wiki/List_of_device_bandwidths man, you will loose your job if your employers find about this. it's abnormal how you're failing to compare two numbers. -- your whole point of coming here with insults was to say how p2p has increased bandwidth PER PEER, without ever realizing that without DEDICATED SERVER it actually makes for much better solution bandwidth wise, and in fact the only solution if you wish to support any more than 8 players. Quote:
angry man... lol. what is it you want again? btw, that is wrong and delusional what you just said. -- i'm not making a game, i just wanted to inform people of this so they know why they can only have 8 player laggy multiplayer on their Xbox 360, while they could actually have fluid 32 players with the same connection. stop talking about bandwidth, without DEDICATED SERVER it is an argument for P2P, and against client-is-server approach.... so, stop hitting yourself! Last edited by gbLinux : 09-02-2009 at 07:23 PM. |
|||
|
|
|
|
#32 | |
|
New Member
Join Date: Sep 2009
Location: Santa Monica
Posts: 18
|
Quote:
so you are in fact saying that a peer-to-peer solution, uses less bandwidth that an integrated server and clients? is this what you believe? really? i'm sorry, but you are completely wrong. |
|
|
|
|
|
#33 | |
|
New Member
Join Date: Sep 2009
Location: Santa Monica
Posts: 18
|
Quote:
this statement also is completely wrong, so you can stop trying to "inform people of this" - because it is in fact, not true. |
|
|
|
|
|
#34 | |
|
New Member
Join Date: Aug 2009
Posts: 21
|
Quote:
you are looking at the numbers, and all you can say is "NO"?!! are you in some kind of weird state of disbelief? try to think it, just open your eyes and look at the numbers, wake up! *** 32 clients, 20Hz, Client-Server Cost: Server Upload: 429,440 bytes/sec = 3.27 mbps 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27 3.27.... *** 32 peers, 20Hz, Peer-to-Peer Cost: Client Upload: 31,000 bytes/sec = 0.24 mbps Client Download: 31,000 bytes/sec = 0.24 mbps 0.24mbps, ok? you can't be that blind, what is wrong with you? ...how long before someone will arrive here to confirm it to you how 3.27mbps is actually bigger than 0.768mbps, while 0.24mbps is smaller number than 0.768mbps?? a.) is average ADSL upload bandwidth 0.768mbsp-1.0mbps? b.) is 3.27mbs more than 0.768mbps? c.) is 0.24mbps less than 0.768mbps? more? less? it's not even funny anymore! no, i'm not talking about "integrated bandwidth", i'm talking about POSSIBLE and NOT POSSIBLE. Last edited by gbLinux : 09-02-2009 at 08:22 PM. |
|
|
|
|
|
#35 |
|
New Member
Join Date: Sep 2009
Location: Santa Monica
Posts: 18
|
here are some numbers that match with the reality:
in P2P, you must send a packet to every other player in the game so if your packet size is X, and your player count is n, then your bandwidth is X*(n-1), since you do not have to send a packet to yourself. in client/server, if you have a dedicated server, each client has to only upload a small amount, lets call this C - since it only needs to send this packet to the server, and not to all other players, the total upload per-client is C since the server has to to receive packets from all players, it's download bandwidth is going to be C*n. it also has to send a packet to each player, lets assume these packets are also size X, so it has upload of X*n if instead of having a dedicated server, you assign one of the players as a server, then you have the following arrangement instead: each non-server player has upload C, and download X the server player has download C*n-1 and upload X*(n-1) so you can see that in fact, the worst case bandwidth for a single player in an integrated client/server is X*(n-1), exactly the same bandwidth that every player has in P2P. also notice that total bandwidth for the P2P situation grows at O(n^2), while the total bandwidth in client/server grows only at O(n), this is the main reason why people prefer client/server for high player count games Last edited by gaffer : 09-03-2009 at 03:08 PM. |
|
|
|
|
#36 |
|
New Member
Join Date: Sep 2009
Location: Santa Monica
Posts: 18
|
don't just believe me, have a read of this post - which explains exactly the same concepts, written by somebody i don't even know - and they come to the exact same conclusion: client/server is generally a better choice than P2P for high player count games.
http://www.gamedev.net/community/for...age=1� Last edited by gaffer : 09-03-2009 at 03:08 PM. |
|
|
|
|
#37 | ||
|
New Member
Join Date: Aug 2009
Posts: 21
|
Quote:
yes, that post there actually has few valid objections, but "MORE BANDWIDTH" is not one of them, as WITHOUT DEDICATED SERVER bandwidth works in favor for P2P, and even with dedicated server, fluidity and lower latency, together with server cost and game overall longevity might prove p2p universally superior solution, for players and developers alike, if they started to think. Quote:
even if your math was sane you now have come to the point to equate p2p and c/s in bandwidth usage and actual practicability... if that was true, p2p would still have more fluid frequency and much better latency. but you're wrong! if amount of information about one client is X, then, my friend, C/S upload bandwidth for the server is: X*n*(n-1). what is your latency, are you blushing yet? Last edited by gbLinux : 09-02-2009 at 09:08 PM. |
||
|
|
|
|
#38 | |
|
New Member
Join Date: Sep 2009
Location: Santa Monica
Posts: 18
|
Quote:
define "more fluid frequency" ![]() Last edited by gaffer : 09-03-2009 at 03:09 PM. |
|
|
|
|
|
#39 | |
|
New Member
Join Date: Sep 2009
Location: Santa Monica
Posts: 18
|
Quote:
but what if you have non-player owned objects, how exactly do you network that in P2P? in this case - the peer cost is X*(n-1) not X*n*(n-1), since you will have more objects to send than you can fit in any packet. and if instead of a state passing system you attempt to solve this using a deterministic networking model (age of empires), then your bandwidth is no concern at all since you are sending just inputs/commands - but you cannot in this case get P2P to work unless you wait for input from the most lagged player so much for your "more fluid frequency" and lower latency in P2P! ![]() Last edited by gaffer : 09-02-2009 at 09:21 PM. |
|
|
|
|
|
#40 | |
|
New Member
Join Date: Aug 2009
Posts: 21
|
Quote:
yes, determinism and/or syncing, so yes passing even more data if necessary, booo-hooo, just like if you wanted to offload your server physics to clients... data is data, it's just the difference where is it coming from, but the rest is the same. there is no waiting here, only issuing commands some time for the future, ie. "working in the past", but that only increases interaction latency, it is not a "slow-down" factor. it's the same thing the server does.. all the things in p2p can be solved just like in s/c model. you can look at each two peers as having a "direct link", like Game Boy, it's simple and it works. why do you imagine anyone would need to wait for the "laggest" player? you live in the past, your assumptions are based on 10 year old conclusions, using 10 year old hardware, let me explain... your objection only applies to situation when peer can not manage to render and do the math as fast as other computers. ....but, that was when you had 386 and i had 486 with coprocessor. that kind of "slow-down" and lag is not an issue anymore, any client absolutely must be able to run the game at full speed in single player mode which is all it takes to play it in any number of peers. this kind of lag will cause all the same problems with s/c approach if you wanted to have that kind of synchronization. assuming every peer have sufficient bandwidth, which is really what is necessary for c/s to work as well, there are no other lags here, just pure 'speed-of-light-over-distance' latency, always better in p2p model. in worst case you can have it not-synchronized and get something like quake 2, only better, on higher frequency, with more players at once and without dedicated server, having some average ADSL/DSL connection and some average computer capable of playing the game in single player mode. there is several posts around these forums that assert most racing multiplayer games actually do use p2p, since latency and player-player interaction is very critical, so would you be surprised if many racing games used p2p? those kind of games, and many other, do not tend to have dedicated servers at all. Last edited by gbLinux : 09-02-2009 at 10:01 PM. |
|
|
|
|
|
#41 | |
|
New Member
Join Date: Sep 2009
Location: Santa Monica
Posts: 18
|
Quote:
and total bandwidth grows at O(n^2) which makes it unsuitable for high player counts, do you disagree with this fact? Last edited by gaffer : 09-03-2009 at 03:02 PM. |
|
|
|
|
|
#42 | ||
|
New Member
Join Date: Aug 2009
Posts: 21
|
Quote:
no, total bandwidth does not make it unsuitable. you use much more when you watch YouTube and upload your porn. server upload bandwidth grows O(n^2) as well, remember? so, if you wanna be the sucker that has to host a game pushing 3.27mbps, then go ahead, but try to realize not everyone has a rich and stupid friends, living in area with such broadband options. 4 player game is what you can get with the server approach with p2p is 32 and more, as it was said already, and then you failed to equate the bandwidth by ridiculously suggesting how server upload is X*(n-1)!!! *** 32 clients, 20Hz, Client-Server Cost: Server Upload: 429,440 bytes/sec = 3.27 mbps *** 32 peers, 20Hz, Peer-to-Peer Cost: Client Upload: 31,000 bytes/sec = 0.24 mbps Client Download: 31,000 bytes/sec = 0.24 mbps Quote:
what are you talking about? i already told you i'm not developing a game. i never mentioned any plans, nor type of game, nor methods i wish to use, and i very much never said anything about "non-deterministic lockstep sync model", being my preference or whatever. you went completely off... why would you have synchronization and "lockstep" in non-deterministic game? why do you put such rubbish in my mouth? and... what do you mean by "lockstep"? do you mean FIXED TIME STEP ?! aaaaahahaaaaa HAHAAHAHAHAAHAAAAAAAA! hahaaaaa... oh, mercy!! Last edited by gbLinux : 09-02-2009 at 10:30 PM. |
||
|
|
|
|
#43 |
|
New Member
Join Date: Sep 2009
Location: Santa Monica
Posts: 18
|
oh fixed timesteps, yes you seem to have quite a lot to say about that subject don't you?
![]() http://gafferongames.com/2008/10/20/...ernet-stalker/ http://www.geocities.com/ze_aks/myBo...hOneStone.html http://www.gamedev.net/community/for...opic_id=512216 http://developer.nvidia.com/forums/i...eaded&st art= http://developer.nvidia.com/forums/i...showtopic=2149 http://www.devmaster.net/forums/showthread.php?p=61304 http://www.devmaster.net/forums/showthread.php?p=60743 http://www.bautforum.com/space-astro...y-problem.html Last edited by gaffer : 09-03-2009 at 03:10 PM. |
|
|
|
|
#44 | |
|
New Member
Join Date: Aug 2009
Posts: 21
|
if you think you were right insulting me for thinking my math was wrong visa vi X(n-1), then what kind of insults do you deserve now when it turned out it was your math which was not just wrong, but stupidly wrong, especially since you barked and waved hands a lot before you actually managed to make a statement, pathetic.
Quote:
at t=1 object had velocity 10, yet it did not move, eh? listen to what people are telling you on your own web-page, listen and wake up! WITH CONSTANT ACCELERATION EULER METHOD IS EXACT, and not only it is exact but all your stupid interpolation only slows down algorithm and introduce bugs, which your later "smooth" with more unnecessary code, hence even more slowing down the algorithm and introducing visual artifacts. MOST (ALL) GAMES WORK WITH CONSTANT ACCELERATION, ie. games rarely need to simulate exact planetary or electron orbitals, and for everything else EULER CAN DO EXACTLY!!! people, check your sanity, physics text-books, use your calculator and your head, this guy's ruined many frame-rates with his stupid articles and idiotic algorithms. no interpolation/extrapolation bullshit do you need in your game, unless, again, you are simulating planetary orbitals or subatomic interactions - which i can actually simulate with my "Crazy Algorithm". http://www.youtube.com/watch?v=DUNP4z-Vaac http://www.youtube.com/watch?v=JpI-klsq9nQ http://www.youtube.com/watch?v=2bIaGw3V6OQ http://www.youtube.com/watch?v=aYBMrGM6IpM man, when someone wakes you up... you will be blushing like a girl, good luck! ..and eat my shorts mr. X(n-1)! Last edited by gbLinux : 09-03-2009 at 02:24 AM. |
|
|
|
|
|
#45 | |
|
New Member
Join Date: Sep 2009
Location: Santa Monica
Posts: 18
|
Incorrect:
a) euler integration as applied to position and velocity from acceleration is not exact even under constant acceleration. you can easily verify this by trying it out with a few values and comparing with s = ut+1/2at^2 b) X*(n-1) is actually correct in the situation where a given packet size X is sent per-player as described in my post game servers do not typically include state for all players in each packet sent. this is because they culls for player-player visibility and construct a custom packet to send out to each player. in practice, this means that bandwidth usage is much closer to X*(n-1) than X*n*(n-1) and consider this statement of yours: Quote:
i'm guessing you don't know what explicit vs. semi-implicit euler is then? http://en.wikipedia.org/wiki/Semi-implicit_Euler_method Last edited by gaffer : 09-03-2009 at 05:42 PM. |
|
|
|
|
|
#46 |
|
DevMaster Staff
Join Date: Sep 2008
Location: Left Of Albakurky
Posts: 978
|
@gaffer: I recommend you just walk away from the keyboard, think some pretty thoughts, and just leave this thread alone. The guy googles not for general knowledge, but only to find smidgeons that further his useless agenda. It's like starting an argument over the wonderfulness of potatoes versus turnips. It can be interesting to some, but when someone gets insulting because you prefer potatoes over turnips, it's just downright stupid at that point to continue...
___________________________________________
Hyperbole is, like, the absolute best, most wonderful thing ever! However, you'd be an idiot to not think dogmatism is always bad. |
|
|
|
|
#47 | |
|
New Member
Join Date: Sep 2009
Location: Santa Monica
Posts: 18
|
Quote:
i agree, it's probably best to just lock this thread |
|
|
|
|
|
#48 |
|
Senior Member
Join Date: Oct 2005
Location: Pensacola, FL
Posts: 1,032
|
Glenn,
It's nice to see you on DevMaster; I'm just embarrassed that it is for troll battling. I've really enjoyed your networking and networked physics articles. -Judge |
|
|
|
|
#49 | ||
|
New Member
Join Date: Sep 2009
Location: Santa Monica
Posts: 18
|
Quote:
thanks, yes - troll battling, not great, sorry about that just came on here to make sure nobody got led astray by this wildly incorrect statement: Quote:
but it seems this guy is beyond the reach of rational argument so i'm just going to stop posting ![]() Last edited by gaffer : 09-03-2009 at 03:02 PM. |
||
|
|
|
|
#50 | ||
|
New Member
Join Date: Aug 2009
Posts: 21
|
Quote:
go back to high-school. you are not doing proper integration if you get error with constant or uniform acceleration. free fall, projectile motion, billiard ball collisions... all the earthly physics (except springs, oscillations, harmonics and orbitals) is calculated EXACTLY with pure simple KINEMATIC EQUATIONS everyone knows from high-school, and that's all you need for any game, ANY GAME. s = ut+1/2at^2 is EXACT formula, no errors, check your physics TEXT-BOOK! if you get errors it's because you are DOING IT WRONG. but, don't blame Newton and Euler, it's your algorithm that sucks, my friend. no need for any kind of integration, you just need INSTANTANEOUS ACCELERATION, then calculate position at the end of the step as usual, like in high-school. a= (a1+a2)/2 STEP 2: v=a*dt STEP 3: s=v*dt --->REPEAT that's it... i mean this is basic physics, what is going on... is everyone hypnotized or what? Quote:
what is wrong with you!!?!?! PHYSICS WITH UNIFORM ACCELERATION IS EXACT, no error!! PEOPLE CHECK YOUR HIGH-SCHOOL BOOKS, this is insanely, unbelievably stupid. implicit/explicit? why? what are you trying to do? what error are you trying to fix???! you do not need it! you only need to integrate basic kinematic equation in you time-step like this: 1. a= (a1+a2)/2 2. v= a*dt 3. s= v*dt --->REPEAT http://courses.ncssm.edu/apb78/iwp/i...help/euler.htm "For non-accelerated and uniformly-accelerated motion, Euler's method provides an exact solution. " - with uniform acceleration there is no need for any kind of interpolation/extrapolation, do you agree, YES/NO? Last edited by gbLinux : 09-03-2009 at 04:17 PM. |
||
|
|
![]() |
| Thread Tools | Search this Thread |
| Display Modes | |
|