|
Author |
Thread Statistics | Show CCP posts - 0 post(s) |
Oblom
Minmatar Sebiestor tribe
|
Posted - 2007.03.30 13:11:00 -
[1]
Decoupled you say? I see 5 threads there and 4 of them belong to audio. That leaves one thread for the game. Of course, it's possible to make something like this work as a single task using some kind of internal scheduler, but it's not practical. So I think it's plain obvious that the whole thing just waits dead frozen for server requests to complete while you listening to the music.
|
Oblom
Minmatar Sebiestor tribe
|
Posted - 2007.03.30 18:44:00 -
[2]
All I wanted to say is that only thing that don't freeze is music Because it runs in a separate task.
|
Oblom
Minmatar Sebiestor tribe
|
Posted - 2007.03.31 01:56:00 -
[3]
Edited by: Oblom on 31/03/2007 02:03:22
Lag is a common problem for any online game. But stopping screen updates completely while waiting for server to respond is just a sloppy program design. Nothing more. Not a "decision they made." You render what you can. You know where your ship moves, you render it. You know where static objects are, you render them. And you do it all the time. You don't know where dynamic objects are, you do something different. Predict therir movement or don't display them at all. But just freezing the screen is real mess and not an answer. Especially when completely unrelated things like opening market window cause the whole thing become dead. This is design error, admit it.
EDIT: Xianthar, you mentioned other games. With lag causing jumping. Whose are FPS or sim games where players actulay aiming at moving objects. Here it's entirely different story. You don't really aim. So jumping won't matter much. Also jumping is better then completely freezing your client, because other players can see and target you while you can do nothing.
|
Oblom
Minmatar Sebiestor tribe
|
Posted - 2007.03.31 02:23:00 -
[4]
Originally by: Solbright Edited by: Solbright on 30/03/2007 22:58:15 ... As for achieving decoupling, you certainly don't need multi-threading for that.
It can be done and it was done numerous times. But it makes program structure rather complex. It used to makes sense under DOS and on weak processors where overhead of the real time OS was too high. But now it really doesn't matter. Using multiple tasks simplifes overall program structure and makes it easier to maintain.
|
Oblom
Minmatar Sebiestor tribe
|
Posted - 2007.03.31 02:45:00 -
[5]
Originally by: Solbright Lag is not the cause of stutter. Decoupling is pretty simple really and prolly easier to do in a single thread than trying to use IPC functions.
It depends. You need to use asynchronous I/O for everything with exit/callback routines or check on status quite often inside other portions of the code and jump to differnt places, figuring out priorities and deciding what to do next. It's just makes program structure real messy. And IPC only hurts foe fiew minutes till you figure it out.
|
Oblom
Minmatar Sebiestor tribe
|
Posted - 2007.03.31 06:11:00 -
[6]
Originally by: Solbright Yeah, right! Like IPC is trouble free. Why do you think multi-threading hasn't been the norm since multi-tasking OSes have been all the rage on the desktop for a couple of decades atleast.
I didn't say multithreading or multitasking is trouble free. It's trade of. By using external scheduler (provided by OS) you usually get some performance penalty. Especially in OS with preemtieve multitasking. You can spend more time scheduling then processing. On the other hand separating real time application into separate tasks handled by OS lets you make the code simpler and better structured.
|
Oblom
Minmatar Sebiestor tribe
|
Posted - 2007.03.31 17:16:00 -
[7]
Too much data or not - it doesn't matter. Updates of the screen with available information should never stop. Like own ship, static surroundings and things like blinking stars . Arriving data can be buffered and processed as time allows. There will be delay with displaying some objects, but no freezes. Then you optimize the code and see what can be done to make things faster. But I still think that in most cases it caused by server side delays with client just sitting frozen doing nothing while waiting for server to respond.
But again, it doesn't reallly matter. We are not going to fix it. We only can make a little bit of noise on the forums about it. Question really is will CCP ever attempt to fix it?
|
Oblom
Minmatar Sebiestor tribe
|
Posted - 2007.04.01 03:44:00 -
[8]
Edited by: Oblom on 01/04/2007 03:48:15
Originally by: Solbright
Well, isn't that a good enough reason? To make some noise so CCP takes action?
They don't care and they don't listen. I started playing this game in 2005. And I quit. One of the reasons was this client freeze thing. People did talk about this back then. But no reaction on CCP part. And I just couldn't tolerate it after playing other games that don't have this problem. Actually no other game on the market has it this bad. EVE is the all time record keeper in screwd up programming. It was too irritating to me. The reason I am back is because CCP spam mailed me with 7 day free offer. I took it hoping that they made things better. Well, they didn't. They did other changes to the game that I care less at my level, but they didn't fix the things that bothered me most. I was stupid enough to give them another 15 bux just to make sure they have their priorities really screwd up. I found they they have. My fault. It was quite obvious during first couple of hours. So see you later CCP till the next 7 days free offer. But next time I will pay nothing.
|
|
|
|