Monday, April 11, 2011

CSM 6 - Time Dilation

First a note to my three readers.... I am not dead... just very very busy with IRL stuff (moving, work, etc). I will get to the cheapfleet challenge prizes soonTM I promise.

Now that the CSM 6 is underway under the leadership of Chairmen Mau/The Mittani/Mittens they have decided to start doing things. It seems that unlike previous CSMs that tried to operate in the way that CCP intended, the new CSM is planning to completely ignore the normal rules and procedures and try and operate more efficiently. The leadership seems to think the best way to get going is to place and ‘issue spotlight' on Time Dilation being worked on by team gridlock.

What is Time Dilation

I first say Time Dilation mentioned in a dev blog (unable to find link however so it may have been my imagination) and it appears to have been mentioned during fan fest. What it involves is slowing down the order of events in the game during situations of high lag. To the players things would appear to be moving slower, however it would remain consistent. Right now the frustrating thing about high lag fights is that players really don't know what is going on in the system. They might be warping around and jumping out, when on the server it is just waiting for an opportunity to generate their killmail. In other cases the lag is so bad that the client can't ever get a handle on what is happening and players are loosing capitals while seeing nothing more than a black screen. Naturally this has led to a lot of frustration.

Time dilation would slow every event down. As a person looking at the battle things would seem to be moving ridiculously slowly. However. if you recorded your screen and then played it back with a fast forward, it would look normal. Ships would take the usual amount of time to lock. Reppers would take the usual amount of time to repair, ships would move at the normal velocity and guns/missiles would fire at the normal rate.

Under this situation if the lag was such that the server could only process 10% of the requests per second, things would run at 10% of the speed. A ship that took 10 seconds to lock would seem to take 100 seconds. A gun that fired every five seconds would seem to fire every 50 seconds.

What I wonder though is why the CSM is even talking about this, let alone shining a spotlight on it. Clearly some the members of the CSM think that this technique will SOLVE the lag problems. Obviously CCP developers are looking into this very closely already. What concerns me, as a developer, is that the CSM is trying to tell the developers what to do. If the VP on my company came to me and said 'Look Tot, I think we should develop this new report in C++ because it is really fast' I would think he was an idiot. The developers at CCP really don't need, want or benefit from having the CSM dictate how they go about optimizing the code-base.

There are a lot of things that could go wrong with Time Dilation. Here are two of them:
1. From reading dev-blogs a lot of the issues that cause lag are related to locking. When things go under a lot of stress the objects in memory for the servers are getting locked up by other tasks. Time dilation will do nothing to help this and will probably make locking worse since time itself will be locked. Processes will not be allowed to do work because they are waiting for the next second to tick over. Aside from the obvious potential for the whole node freezing up, this could seriously negatively affect performance.

2. In general the load on a server from an online game is equal to the square of the users. With time dilation this will not go away. If a node can handle a fight of say 100 players in real-time without lag, then having 2000 players in one system will mean that time will run 20*20=400 times slower or about 9 seconds per hour. By the time players have shot their artilery twice, we will hit downtime. Hardly a satisfying experience. With 4000 players it becomes 40*40 = 1600 time slower or about 2 seconds per hour! What do you think is going to happen if PL catches 10 Goonswarm Titans in bubbles? If you don't think Goonswarm (or any other alliance in a similar situation) won't bring as many players into the system as it takes to effectively stop time, you are playing a different game than me.

Instead of just implementing Time Dilation, the developers at CCP are instead working on improving their algorithms to get as much speed as possible out of the system as is. It is a painstaking process that does take time, and they may resort to Time Dilation as a last resort, but it is not a solution to all of the lag problems by itself. Rather it is a tool that can handle extreme cases, only if the rest of the system has been brought up to snuff. That is the right way to do it.

So CCP developers, don't listen to the CSM regarding time dilation. Continue to do your jobs as you have been doing and good luck :)

And CSM .... concentrate on your job, dealing with features and the design of EVE. It is okay to stress the issue of lag and the problems it causes, but don't tell developers how to do their jobs. At best you will be ignored.

5 comments:

  1. Maybe I have to re-read the CSM releases, but my reading was not that the CSM believes that Time Dilation will solve the lag problem as such, only that it will remove the unfairness inherent in the current implementation.

    Obviously work on general speed-up must not cease; but at least Time Dilation might re-instate the precious quality of Graceful Degradation which would keep the large fights playable while the devs work on root improvements.

    ReplyDelete
  2. I read this devblog the same way Druur did. TD (time dilation) is just way to make sure that only side doesn't get an unfair advantage. It also allows the battle to continue. I really doubt that CCP won't be working on improvements to their code at the same time as they are working on TD.

    ReplyDelete
  3. What the CSM is doing is placing an 'issue spotlight' on Time Dilation. What is an 'issue spotlight'? I am not sure but it seems to me that the chairman of the CSM is excited about this since he thinks that it will solve the problem. The problem is that the CSM is not a technical advisory panel. Compared to the actual developers they have little if any idea how the EVE server works. By placing thier first 'issue spotlight' on time dilation they are putting their efforts in completely the wrong place.

    ReplyDelete
  4. It is worth mentioning that CCP thought up the idea of time dilation. This isn't something the CSM sucked out of their non-technical thumbs.

    The CSM has requested more detailed information from CCP. If after receiving more information, the CSM still believe it will address the problem of unfair battles, then the CSM intends to get behind it and push it, try move it up the priority list.

    Thats it. Nothing more. Nothing less. The CSM is definitely not doing anything like what a technical advisory panel would do.

    ReplyDelete
  5. CSM6 barely has anything to do with this good idea. It was on the assembly hall with unanimous praise as a bloody good idea long before Mittens and His Merry Men arrived

    ReplyDelete