Dr Doom wrote:
PLURVIOUS wrote:
I get that sometimes on Firefox. My solution is to use Chrome. The problem is that the planet list refresh is far more complicated and client-intensive than it needs to be. A ridiculous amount of javascript code is executed that loads your ENTIRE planet list into the browser's memory. I don't know how to adjust the threshold that Firefox uses. Really, Dan should fix this on his end, though. There's no reason to be passing the huge amounts of data back and forth that GL does (basically the entire current tab/overlay each time you click).
I feel like fixing this would really help with lag then too, ya?
I normally use firefox and have minimal issues though.
Yea, I think a re-design of the site in general would help with lag. For example, when I'm NPCing, there's no need to re-load my entire list of active effects for each click. All that should be passed to the server is the fact that I clicked [Attack], and all that should come back is the damage dealt and received (a few bytes) plus any possible debuffs. Instead, the entire overlay is window is refreshed with a bunch of info that doesn't change anyway. The javascript RAM, not known for its efficient garbage collection, builds up on the client while the network traffic, trying to stay sychronized with the overlay state, hiccups and then you end up with a blue bar. It has to sit and think for a few seconds while everything resynchronizes - the result is that intermittent lag we see every nth number of clicks sometimes. But what the Hell do I know, right?
The entire planet list re-loads when you go to the planet tab or flag a planet, or do anything planet-related (scan a new planet, etc); Depending on what else is happening on the client machine and whether the browser happens to be using RAM versus virtual memory at the time (and maybe anything else happening with the underlying javascript engine), you sometimes get lag-type behavior. If Dan had instead implemented a sorted heap or other data structure that allows more efficient add/remove of elements, it would be much faster and the lag would have a far less chance of making Firefox think its a script "error" (aka, script taking too long to run).