Pages: 1 [2] 3 4 5 :: one page |
|
Author |
Thread Statistics | Show CCP posts - 6 post(s) |
Blue Harrier
Gallente Center for Advanced Studies
|
Posted - 2008.09.18 15:54:00 -
[31]
IÆve retired from computers after 25 years and although I understand some of the above the only bit I really understand is the following;
The guy in charge decided, the night before launch, to regenerate the entire universe at the last minute with the seed "42."
So who in the team is old enough to remember æThe Hitchhikers Guide to the GalaxyÆ (before it got æmodifiedÆ) from the 1991 BBC series?
Remember æThe answer to life the universe and everything is æ42Æ, ¬ Douglas AdamsÆ as now proved by Eve .
|
Tsanse Kinske
WeMeanYouKnowHarm
|
Posted - 2008.09.18 15:58:00 -
[32]
Originally by: Faife saw this post from someone who attended some conference where CCP talked about how their engine works a bit. i had no idea it was this complex, but it sorta explains why lag vs ships is so non-linear
Quote: Easily the most awesome lecture of the conference, CCP's CTO explaining the code and design of the simulation system behind the EVE Online servers: DESTINY.
The key point is a chaos-theory equation system of potential spheres of influence for every actor in a space. Essentially the algorithm goes something like this:
1) Begin server frame. 2) For each ship, calculate a sphere of possible client interaction based on the ship's dimensions, weapons systems, visual range, etc. 3) Using chaos theory equations of possible changes in a ship's behavior before the next time slice, fractally extrude out a set of event cylinders (with hemispherical caps) of the ship's possible influence before the next frame, within the 3D space. 4) Loop through the generated event cylinders and look for intersections. Lump intersecting masses together as "causality bubbles." Sets of events that could potentially influence one another. 5) Rapid cache out the causality bubbles as separate sets and defer the simulation of each bubble out through microtasklets in Stackless Python. 6) Send only the information relating to a player's intersected causality bubble/matrix to that game client. (Dump client's simulation state from pervious frame in lieu of the server's state if they disagree.) 7) Allow the client and server to run the simulation of that causality bubble in parallel. Continue the simulation on the client to make it appear seamless. 8) Yield to other causality bubble simulations in DESTINY and Sleep() for 1000ms. 9) Download any input changes by the ship's pilot from the client at the end of the server frame. As ships do not respond to inputs instantaneously in EVE, this is fine. 10) Push that input into the force equations in the physics simulation for next frame. 11) Push the causality bubbles' simulation result to TRANQUILITY, the actual server Main() process. 12) End server frame, loop while the execution context has not received a shutdown signal.
This prevents you from encountering a runaway O(n^y) algorithm of every ship in a solar system potentially acting on every other, and by only sending updates to clients based on that client's ship's causality bubble, it allows the game to be played on only dial-up modem speeds.
The only downside is in large space battles, in crowded spaces. In these scenarios, the intersection of extruded causality cylinders tends to encompass the entire system. This ship can influence this ship which can influence these ships which influence... etc. So the partitioning of simulation afforded by causality bubbles goes away. They tossed out some similarly awesome-sounding ways to fix this, that are in development, but I'm not allowed to talk about them.
Other really sweet things they did:
- Dynamically generated all solar systems in the universe using actual supercomputer-run disk accretion models. This means every solar system was formed the same way actual astronomical ones are, and no system is artificially held together by anything that would not work in real physics.
- Originally, the random seed to generate the EVE universe was taken from the server's Epoch Time at the start of the universe generation. The guy in charge decided, the night before launch, to regenerate the entire universe at the last minute with the seed "42."
- The location of solar systems relative to one another were modelled after cellular cohesion equations - the same thing that makes gold deposits form, blood vessels to grow in your body, and sets the pattern of the universe filaments as seen in the Cosmic Microwave Background Radiation.
JUS FIX TEH DAM LAGS CCP !!
* * * In the beginning the Universe was created. This has made a lot of people very angry and been widely regarded as a bad move.
-Douglas Adams, writing about EVE |
TYCONDEROGA
Amarr EMPERIAL ARMOR
|
Posted - 2008.09.18 16:02:00 -
[33]
Edited by: TYCONDEROGA on 18/09/2008 16:02:30
Calvin and Hobbes 4tmfw, to be honest.
WORD He who defends Everything, Defends Nothing! |
An Anarchyyt
Gallente Battlestars GoonSwarm
|
Posted - 2008.09.18 16:26:00 -
[34]
Originally by: Blue Harrier So who in the team is old enough to remember æThe Hitchhikers Guide to the GalaxyÆ (before it got æmodifiedÆ) from the 1991 BBC series?
Probably the same people who are old enough to know it was originally a BBC Radio broadcast in 1978.
Originally by: CCP Wrangler Second, a gentile is a non jewish person
|
Blue Harrier
Gallente Center for Advanced Studies
|
Posted - 2008.09.18 16:30:00 -
[35]
Originally by: An Anarchyyt
Originally by: Blue Harrier So who in the team is old enough to remember æThe Hitchhikers Guide to the GalaxyÆ (before it got æmodifiedÆ) from the 1991 BBC series?
Probably the same people who are old enough to know it was originally a BBC Radio broadcast in 1978.
Yep heard that too but didnÆt want to go that far back as it might frighten the æteensÆ on here on just how old some of us are .
|
An Anarchyyt
Gallente Battlestars GoonSwarm
|
Posted - 2008.09.18 16:37:00 -
[36]
Hey, I'm not even quite that old and I know about it.
Originally by: CCP Wrangler Second, a gentile is a non jewish person
|
|
CCP Atropos
C C P
|
Posted - 2008.09.18 16:38:00 -
[37]
I guess the OP's infos come from this.
|
|
Pherusa Plumosa
Minmatar Rionnag Alba Triumvirate.
|
Posted - 2008.09.18 16:50:00 -
[38]
Quote: The only downside is in large space battles, in crowded spaces. In these scenarios, the intersection of extruded causality cylinders tends to encompass the entire system. This ship can influence this ship which can influence these ships which influence... etc. So the partitioning of simulation afforded by causality bubbles goes away. They tossed out some similarly awesome-sounding ways to fix this, that are in development, but I'm not allowed to talk about them.
Movements in big intaweb space ship battles are not random and can be predicted easiely. If 300+ ppl set their waypoints to one system, this route might get crowded, no rocket sience. Just go through the autopilot waypoints of the pilots to make assumptions about their movements __________________________________________________
|
An Anarchyyt
Gallente Battlestars GoonSwarm
|
Posted - 2008.09.18 16:53:00 -
[39]
Originally by: Pherusa Plumosa Movements in big intaweb space ship battles are not random and can be predicted easiely. If 300+ ppl set their waypoints to one system, this route might get crowded, no rocket sience. Just go through the autopilot waypoints of the pilots to make assumptions about their movements
Wow, you absolutely have no idea at all what that is saying, do you?
Originally by: CCP Wrangler Second, a gentile is a non jewish person
|
MinSebsis
Minmatar CyPhEr TeChNoLoGiEs EvE Consortium
|
Posted - 2008.09.18 17:00:00 -
[40]
I want to know what secrets they are working on!
So CCP spill the beans! What is the secret.. Quote: They tossed out some similarly awesome-sounding ways to fix this, that are in development, but I'm not allowed to talk about them.
I remember talk about a new network layer or something called "slipstream" that they were working on for awhile, what ever came of that?
Take care Minsebsis
|
|
Dunedon
Trans Nebula Inc.
|
Posted - 2008.09.18 17:11:00 -
[41]
Originally by: CCP Atropos I guess the OP's infos come from this.
Please tell me that was taped and will be available for download (audio and/or video) ... I'd kill to hear that presentation (And I'm an Eve Carebear)
- Dunedon ------ WYSIWYG: I don't post with an Alt ... if I die in game for having an opinion, at least I know someone listened. - Dunedon |
Chainsaw Plankton
IDLE GUNS IDLE EMPIRE
|
Posted - 2008.09.18 17:23:00 -
[42]
Originally by: CCP Atropos I guess the OP's infos come from this.
my favorite bit is the degree in theoretical physics
|
|
CCP Lingorm
C C P
|
Posted - 2008.09.18 17:33:00 -
[43]
Originally by: Chainsaw Plankton
Originally by: CCP Atropos I guess the OP's infos come from this.
my favorite bit is the degree in theoretical physics
From memory the original designer of the System has a PH.D in Mathematical Physics ...
CCP Lingorm CCP Quality Assurance QA Engineering Team Leader
Originally by: Lord Fitz Eve is to WoW as Wow is to an 8 player game of Unreal Tournament.
|
|
Reptzo
Channel 4 News Team
|
Posted - 2008.09.18 17:34:00 -
[44]
Originally by: CCP Lingorm
Originally by: Chainsaw Plankton
Originally by: CCP Atropos I guess the OP's infos come from this.
my favorite bit is the degree in theoretical physics
From memory the original designer of the System has a PH.D in Mathematical Physics ...
Holy cow, a PH.D in math?? That is more school in math than I would ever want to pretend I did.
|
Faife
Minmatar Kinda'Shujaa
|
Posted - 2008.09.18 17:40:00 -
[45]
Originally by: Reptzo Holy cow, a PH.D in math?? That is more school in math than I would ever want to pretend I did.
mathematical physics. you not only have to setup the monster equations, but you actually need to solve them. Please resize image to a maximum of 400 x 120, not exceeding 24000 bytes. If you would like further details please mail [email protected] - Saint |
Reptzo
Channel 4 News Team
|
Posted - 2008.09.18 17:42:00 -
[46]
Originally by: Faife
Originally by: Reptzo Holy cow, a PH.D in math?? That is more school in math than I would ever want to pretend I did.
mathematical physics. you not only have to setup the monster equations, but you actually need to solve them.
All i can say is i am glad other people are both smart enough and motivated enough to do this stuff.
|
Bartholomeus Crane
Gallente The Crane Family
|
Posted - 2008.09.18 18:15:00 -
[47]
Edited by: Bartholomeus Crane on 18/09/2008 18:16:30 This is an interesting insight into how EVE uses optimistic predicting concurrency to reduce bandwidth and computing power problems, but it also shows its inherent problem. The use of causality envelopes is fine as long as they partition the possible statespace without too many intersections. When they don't, for example when all causality envelopes intersect, the problem becomes as intractable and indivisible as before. As such, I believe, it solves the problem in the general case, but offers worst-case performance when it doesn't. Only that in EVE the non-general case, i.e., large fleet battles, has become common.
I wonder if CCP has considered taking this approach one step further and introduce optimistic prediction in the non-general case as well, i.e., loosening causality when several causality envelopes intersect, perhaps even doing so recursively over different layers. This assumes that individual behaviour in the non-general case is predictable, which doesn't necessarily have to be so (although, to a large extend, I suspect it is).
It also comes with a drawback, because the expected incident rate of sending a negative delta correction will increase with more erratic behaviour, and it assumes that the computing power is available to catch up in time (eventually). Also, it means the client will duplicate some functionality so that it can handle things concurrently, irrespective of responses from the server, thus losing it's 'dumb client' status (which I now wonder it actually has).
Moreover, in the non-general case, some causality between the players actions and the servers reactions will be lost. It should however, I would argue, provide a certain buffer for lag in the non-general case, even if limited in the temporal sense (temporal in the predictable behavioural sense I mean, i.e., for as long as the behaviour is erratic or unpredictable). Still, the question remains if there is enough stretch in bandwidth to make this feasible, which is a question I can't answer without further data (if EVE is still supposed to be played on a dail-up modem, I doubt there is).
OK, lots of assumptions from my part, and maybe I misunderstood what was being quoted (it's not very rigorous, nor am I, I admit), but it appears to me that the implementation should work fine in general, but falls down in crowded situations, and this should, really, have been apparent from the beginning (and is actually the behaviour we see). Perhaps the above can be of some use in resolving this issue. -- Quis custodiet ipsos custodes? |
soldieroffortune 258
Gallente Trinity Council
|
Posted - 2008.09.18 18:26:00 -
[48]
Originally by: Blue Harrier
Originally by: An Anarchyyt
Originally by: Blue Harrier So who in the team is old enough to remember æThe Hitchhikers Guide to the GalaxyÆ (before it got æmodifiedÆ) from the 1991 BBC series?
Probably the same people who are old enough to know it was originally a BBC Radio broadcast in 1978.
Yep heard that too but didnÆt want to go that far back as it might frighten the æteensÆ on here on just how old some of us are .
i was shocked at first as well
we have at least 10 members that i konw of that are 35 years old and +
then we have some mbmers (one brit, and one romanian) who SOUND like 35 year olds, but are both 17
i myself am aroudn the average of 21
Originally by: soldieroffortune 258
"Eve is about making yourself richer while making the other guy poorer"
|
Cailais
Amarr VITOC
|
Posted - 2008.09.18 18:27:00 -
[49]
Originally by: Bartholomeus Crane Edited by: Bartholomeus Crane on 18/09/2008 18:16:30 This is an interesting insight into how EVE uses optimistic predicting concurrency to reduce bandwidth and computing power problems, but it also shows its inherent problem. The use of causality envelopes is fine as long as they partition the possible statespace without too many intersections. When they don't, for example when all causality envelopes intersect, the problem becomes as intractable and indivisible as before. As such, I believe, it solves the problem in the general case, but offers worst-case performance when it doesn't. Only that in EVE the non-general case, i.e., large fleet battles, has become common.
I wonder if CCP has considered taking this approach one step further and introduce optimistic prediction in the non-general case as well, i.e., loosening causality when several causality envelopes intersect, perhaps even doing so recursively over different layers. This assumes that individual behaviour in the non-general case is predictable, which doesn't necessarily have to be so (although, to a large extend, I suspect it is).
It also comes with a drawback, because the expected incident rate of sending a negative delta correction will increase with more erratic behaviour, and it assumes that the computing power is available to catch up in time (eventually). Also, it means the client will duplicate some functionality so that it can handle things concurrently, irrespective of responses from the server, thus losing it's 'dumb client' status (which I now wonder it actually has).
Moreover, in the non-general case, some causality between the players actions and the servers reactions will be lost. It should however, I would argue, provide a certain buffer for lag in the non-general case, even if limited in the temporal sense (temporal in the predictable behavioural sense I mean, i.e., for as long as the behaviour is erratic or unpredictable). Still, the question remains if there is enough stretch in bandwidth to make this feasible, which is a question I can't answer without further data (if EVE is still supposed to be played on a dail-up modem, I doubt there is).
OK, lots of assumptions from my part, and maybe I misunderstood what was being quoted (it's not very rigorous, nor am I, I admit), but it appears to me that the implementation should work fine in general, but falls down in crowded situations, and this should, really, have been apparent from the beginning (and is actually the behaviour we see). Perhaps the above can be of some use in resolving this issue.
Thanks for making me feel even more stupid.
C.
Originally by: Tarminic Your continued whining is somewhat diminished by your continued willingness to give your money to CCP.
|
Praesus Lecti
Gallente Blueprint Haus Intrepid Crossing
|
Posted - 2008.09.18 18:38:00 -
[50]
Originally by: CCP Greyscale
Originally by: Sarah Tuttle I think I understand what he is saying. What I don't understand is how any computer on earth can handle that kind of load and relay it correctly to 30,000+ users at the same time.
I'm pretty sure it's just one line of code...
10: GOTO Lag
|
|
Juliette Leblanc
Gallente Federal Navy Academy
|
Posted - 2008.09.18 18:51:00 -
[51]
Originally by: Faife
Originally by: Reptzo Holy cow, a PH.D in math?? That is more school in math than I would ever want to pretend I did.
mathematical physics. you not only have to setup the monster equations, but you actually need to solve them.
ROTFL I'm gonna drop that line next time I spot a mathematician. Then I'll run.
|
Kazuma Saruwatari
Caldari
|
Posted - 2008.09.18 19:03:00 -
[52]
Originally by: Bartholomeus Crane Edited by: Bartholomeus Crane on 18/09/2008 18:16:30 This is an interesting insight into how EVE uses optimistic predicting concurrency to reduce bandwidth and computing power problems, but it also shows its inherent problem. The use of causality envelopes is fine as long as they partition the possible statespace without too many intersections. When they don't, for example when all causality envelopes intersect, the problem becomes as intractable and indivisible as before. As such, I believe, it solves the problem in the general case, but offers worst-case performance when it doesn't. Only that in EVE the non-general case, i.e., large fleet battles, has become common.
I wonder if CCP has considered taking this approach one step further and introduce optimistic prediction in the non-general case as well, i.e., loosening causality when several causality envelopes intersect, perhaps even doing so recursively over different layers. This assumes that individual behaviour in the non-general case is predictable, which doesn't necessarily have to be so (although, to a large extend, I suspect it is).
It also comes with a drawback, because the expected incident rate of sending a negative delta correction will increase with more erratic behaviour, and it assumes that the computing power is available to catch up in time (eventually). Also, it means the client will duplicate some functionality so that it can handle things concurrently, irrespective of responses from the server, thus losing it's 'dumb client' status (which I now wonder it actually has).
Moreover, in the non-general case, some causality between the players actions and the servers reactions will be lost. It should however, I would argue, provide a certain buffer for lag in the non-general case, even if limited in the temporal sense (temporal in the predictable behavioural sense I mean, i.e., for as long as the behaviour is erratic or unpredictable). Still, the question remains if there is enough stretch in bandwidth to make this feasible, which is a question I can't answer without further data (if EVE is still supposed to be played on a dail-up modem, I doubt there is).
OK, lots of assumptions from my part, and maybe I misunderstood what was being quoted (it's not very rigorous, nor am I, I admit), but it appears to me that the implementation should work fine in general, but falls down in crowded situations, and this should, really, have been apparent from the beginning (and is actually the behaviour we see). Perhaps the above can be of some use in resolving this issue.
You, yes you with the very intelligent post. Why, in all of heck, are you not working for CCP and ridding us of the LAG once and for all?
See their "CCP is hiring!" there? Well send in your application NOW! -
|
Faife
Minmatar Kinda'Shujaa
|
Posted - 2008.09.18 19:33:00 -
[53]
Originally by: Juliette Leblanc
Originally by: Faife
mathematical physics. you not only have to setup the monster equations, but you actually need to solve them.
ROTFL I'm gonna drop that line next time I spot a mathematician. Then I'll run.
i think you'll find most mathematicians are pretty proud of not having to work too much with those plebian "number" things Please resize image to a maximum of 400 x 120, not exceeding 24000 bytes. If you would like further details please mail [email protected] - Saint |
Faife
Minmatar Kinda'Shujaa
|
Posted - 2008.09.18 19:37:00 -
[54]
Quote: I wonder if CCP has considered taking this approach one step further and introduce optimistic prediction in the non-general case as well, i.e., loosening causality when several causality envelopes intersect, perhaps even doing so recursively over different layers. This assumes that individual behaviour in the non-general case is predictable, which doesn't necessarily have to be so (although, to a large extend, I suspect it is).
you might be misreading. this would create more bandwidth issues as you'd now require updates on all objects in the now loosened (i'm guessing that's code for "bigger") causal-interaction space.
and i'm pretty sure it's not based on behavior but ship abilities, so a 150km snipest with 6 targeting spots waiting has a huge one (it can reach out and touch you across a grid), while a rookie ship with max_targets=1 has a tiny one.
and i'm not at all sure what you're talking about when you talk about recursion. in the general case that's usually good for keeping code clean, and not at all for keeping code fast.
(your mileage may vary, i never saw the slides, etc) Please resize image to a maximum of 400 x 120, not exceeding 24000 bytes. If you would like further details please mail [email protected] - Saint |
Haradgrim
Tyrell Corp INTERDICTION
|
Posted - 2008.09.18 20:33:00 -
[55]
Edited by: Haradgrim on 18/09/2008 20:33:23
In Soviet Russia; causality bubbles you! --
Originally by: CCP Oveur ...every forum whine feels like a baby pony is getting killed
|
Korizan
|
Posted - 2008.09.18 20:51:00 -
[56]
THere seems to be a lot of mentioning of weapon systems in the replies. The original post by Faife is in essence a way of handling ships and like items in a 4 dimensional space (forth being time) and predicting there locations.
SO what we are talking about is bumping to put it simply. This system also allows for a smooth looking invironment when multiple people are on the same grid. Other wise you would have people jumping around to random points when your client gets an update.
Recently some people have seen desync's. This is what happens when this system gets overloaded. Your clients predictions of what is happening compared to the servers are not in sync.
Now weapon system might use some of the numbers crutched by the system for damage modifers but they will run on there own algorithms. Keep in mind weapons sytem have there own tags such as target and lock and fire and set time cycles for each one. To some extent that are actually much simpler to deal with as they are most likely delt with after the fact then actually dealing with prediction of motion.
THis can be seen by the instant pop. or blown up before loading is complete.
Basically you are seen and fired on and those are sent to the server the server crunches and sends it all to the client who is still trying to load system and other items and gets the damage given all @ one go.
SO end up in your pod.
|
Chainsaw Plankton
IDLE GUNS IDLE EMPIRE
|
Posted - 2008.09.18 20:57:00 -
[57]
Originally by: Faife
Originally by: Reptzo Holy cow, a PH.D in math?? That is more school in math than I would ever want to pretend I did.
mathematical physics. you not only have to setup the monster equations, but you actually need to solve them.
heh I would rather write an algorithm to solve it and let the computer do it
and I must say the op was more interesting than my last few years in school
|
Quincunx
Minmatar Subspace Anomaly
|
Posted - 2008.09.18 21:02:00 -
[58]
Originally by: Winterblink 13) Become self-aware, perceive humans as threat, launch nukes
Haha, I lol'd. :)
|
Anton Marx
Caldari Warhamsters Against ALL Authorities
|
Posted - 2008.09.18 21:49:00 -
[59]
So what is this DESTINY server? Is this where the meme "OVER 9000" came from? Can someone say what the result will be in simple words?
DESTROYED
Against ALL Authorities блять! (c) Ivan Wise |
PirceHat
|
Posted - 2008.09.18 22:05:00 -
[60]
That actually explains why fighters lag the shit out of stuff. Because they can follow people in warp there causalities bubbles include a whole set of events that generally don't exists for other ships.
CCP should consider halving the number of drones carriers can drop and giving them a double damage bonus, same with Motherships.
|
|
|
|
|
Pages: 1 [2] 3 4 5 :: one page |
First page | Previous page | Next page | Last page |