Please upgrade your browser for the best possible experience.

Chrome Firefox Internet Explorer
×

I think I know what's causing poor FPS for some users (no fix yet)

STAR WARS: The Old Republic > English > Customer Service (Read-Only)
I think I know what's causing poor FPS for some users (no fix yet)
 

Aishling's Avatar


Aishling
02.13.2012 , 01:25 PM | #661
Until this is addressed I intend to place this question in the Q&A section every week.

I have faith that with time this issue will be fixed, but honestly, it needs to be much sooner rather than later!

I am unable to group with other people.

Please, for the love of all humanity, FIX THIS BioWare!

oholyknight's Avatar


oholyknight
02.13.2012 , 01:59 PM | #662
Here, here. Good thread. Which leads me to ask the question that Bioware needs to answer for themselves. Why pay the same $15 a month, for less game? I am a huge fan of Star Wars, but a fan of a poor knock off I am not.
Oholyknight _Guild Leader: "Knights of the Cross"
If we live in the spirit, let us also walk in the spirit. Gal. 5:25
guild website facebook Guild HQ

ohmslaw's Avatar


ohmslaw
02.13.2012 , 02:03 PM | #663
Quote: Originally Posted by oholyknight View Post
Here, here. Good thread. Which leads me to ask the question that Bioware needs to answer for themselves. Why pay the same $15 a month, for less game? I am a huge fan of Star Wars, but a fan of a poor knock off I am not.
Well put sir.
The MEDICATION is Strong in This One!

Cupelixx's Avatar


Cupelixx
02.13.2012 , 02:56 PM | #664
Quote: Originally Posted by brossiah View Post
Not entirely surprised by this and it does give more creedence to the synchronous process stalling the renderer theory. Companion information is probably not stored client-side since then you could hack it and put your lvl 10 companion in lvl 50 gear. Anyway need to load a companion? Well then do the following:
  1. figure out what to load (network request)
  2. actually load it (asset load)
  3. build it (CPU process)
  4. render it (GPU process)

If you can, a good test here might be to see how much these processes overlap (or at least the HDD load and network request processes). Theoretically, TOR could start loading assets while requesting player/companion information, but then there's the issue of loading many more assets than you'll end up needing. Obviously the other choice here is to wait for the network request before loading, but that creates too much process dependency and defeats the point of multi-threading. My best bet for TOR is the former. They attempt concurrency by loading an asset chunk while waiting on the network request.

I'm of the opinion that TOR doesn't have a prediction engine built-in. I would have expected a fall-back that if TOR can't receive a response from the network fast enough, it would fall back to extrapolating trajectories based on some history of motion vectors. I haven't seen this happen at all. In the few instances where my connection drops, all players and NPCs completely and immediately stall in place. With extrapolation, they should at least continue to move in their last direction for a few seconds?

Lastly, the companion thing surprises me a bit. My first guess would have been that TOR would cache companion information client-side and sync it up either periodically or on some gear/customization change event. But I guess there are potential security issues there, so who knows? Could probably test by summoning/dismissing companion a few times in some minimal texture area like backwater Tatooine, but not really sure how much insight this would give to anything.

EDIT: A lot of supposition above with minimal testing. Take all with a grain of salt.
I get the feeling that most of this is correct. Data (not talking about cliet assets here) would have to be stored on the game's server clusters or it would be way too easy to hack the game, especially with account or player data. This is likely why we see the same thing with inventory and the character sheet. When you open those, the game has to query a backend database server for that information, then send the information back to your client which determines what to draw and how to draw it. The most troubling part is, why is this happening at all? Why is there already such a huge delay just opening inventory? My opinion is either inadequate/overloaded database servers, or poor database design. It could be bad networking code too but these problems seem to center around the client waiting for data (waiting for other characters/their companion data to load, inventory data etc).

In fact, I think this is exactly why I take a momentary 15 FPS hit when a player loads nearby. If they have a companion out, it's like a one-two punch. With the amount of disk thrashing we have been seeing, delays in getting this data from the backend multiplies the severity of the problem before the game even starts trying to load the appropriate asset!
Free stuff:http:/www.swtor.com/r/jS5GKV
Subscriber on Star Forge and want to make up to 10 MILLION credits to use my referral link? PM me and find out how.

DarkSirius's Avatar


DarkSirius
02.13.2012 , 04:23 PM | #665
Bump. Great thread. I've seen a lot of mention about how Blizzard pulls off "lag free" calls to game resource files. One thing to note though, Blizzard completely designed the game engine for WoW from scratch, in house, from the ground up. They didn't use a butchered version of an engine that, from what I've come to understand, didn't work out very well and doesn't really have any major titles under its belt.

Yes, I suffer the same crap as everyone else.

Cupelixx's Avatar


Cupelixx
02.13.2012 , 04:47 PM | #666
Quote: Originally Posted by DarkSirius View Post
Bump. Great thread. I've seen a lot of mention about how Blizzard pulls off "lag free" calls to game resource files. One thing to note though, Blizzard completely designed the game engine for WoW from scratch, in house, from the ground up. They didn't use a butchered version of an engine that, from what I've come to understand, didn't work out very well and doesn't really have any major titles under its belt.

Yes, I suffer the same crap as everyone else.
No denying it at this point. Using an engine which according to the programmers, was not finished was a terrible idea. This may end up being one of the most legendary fails in gaming of all time.
Free stuff:http:/www.swtor.com/r/jS5GKV
Subscriber on Star Forge and want to make up to 10 MILLION credits to use my referral link? PM me and find out how.

DarkSirius's Avatar


DarkSirius
02.13.2012 , 05:00 PM | #667
Quote: Originally Posted by Cupelixx View Post
No denying it at this point. Using an engine which according to the programmers, was not finished was a terrible idea. This may end up being one of the most legendary fails in gaming of all time.
Let hope not. I do like the game aside from the wonky performance. I'm still holding the thought this is marginally fixable and this is just some crazy growing pain.

Edit: I'm going to copy / paste this thread into an in game ticket under bug reports... repeatedly.

Grooz's Avatar


Grooz
02.13.2012 , 05:08 PM | #668
Quote: Originally Posted by fumanchunz View Post
I did not realize that you needed to copy the actual file to the virtual drive too, the instructions in the original post do not make that clear at all...

I'll give it a go now, cheers.
The op is putting temporary files on the ram drive, so the directories w/o the files are linked and swtor creates them when launched. The 180mb file brought up later in the thread is an effects file that is part of the game assets... not temporary... thus the file needs copied.

There are many small optimizations mentioned at various points in the thread. If things aren't working for you, please be extremely specific what optimization you are trying to use

Gadzooks's Avatar


Gadzooks
02.13.2012 , 05:18 PM | #669
Quote: Originally Posted by brossiah View Post
I'm of the opinion that TOR doesn't have a prediction engine built-in. I would have expected a fall-back that if TOR can't receive a response from the network fast enough, it would fall back to extrapolating trajectories based on some history of motion vectors. I haven't seen this happen at all. In the few instances where my connection drops, all players and NPCs completely and immediately stall in place. With extrapolation, they should at least continue to move in their last direction for a few seconds?
This is a mixed bag for me. Ive experienced what you are talking about, other characters running in place when I lag out or lose connection, unlike other games where they would just go running off in a straight line in the direction they were traveling in.

Another example is when you and some group member go traveling around. How often do you see one of them seemingly stop or get stuck on a ledge, when in reality they have already jumped off? I see this often when datacron hunting, which requires a lot of jumping and climbing.

On the flip side though, Im constantly seeing people falling or running off ledges, when in fact, they didnt run or fall off. This to me would mean that the game is doing some sort of prediction, as wonky as it seems.

The whole thing just makes me scratch my head. Watching other players move around in this game, especially when it involves jumping, is something the devs should seriously look into.

So on to performance....

Its possible that whatever the game is doing to predict what other players will do is linked to some of the slowdown in populated areas, such as the fleet. I dont think they limit prediction by range of your character to another character. I have a strong feeling its done by zone. Hence, while on the fleet, the game is running prediction code for EVERY other player, regardless of if they are right next to you, or on the other side of the fleet.

NOTE: I think that the patch that improved (a little) the fleet performance, did so by splitting the fleet into 2 percieved "zones". The outer region, and the inner region. (possibly more than that). This helps performance in areas of the fleet where there are fewer players total.

Here is where the light bulb clicked on for me:

Its quite possible that the amount and type of prediction for same faction/friendly players is going to be significantly different than the type used for players in pvp. The different/extra amount of prediction being used for players in pvp, could be THE cause, or part of the cause of the performance issues people experience in Warzones and Ilum. Especially if its not putting a range limit on the prediction (which may also account for the sudden hitching/lag you experience when a new player enters the area you are in (regardless of if you can see them).

Why does the game need to predict what the player on the other side of the map is doing if it has not immediate effect on you? It shouldnt. But I have a strong feeling the game is doing this anyway.

I dont think this stops with just prediction however.

In fact, I have a feeling that the game is making your client do a lot more than it needs to in regards to other players. Not just prediction. For instance, ive already confirmed that the effects file causes 100% of my performance issues. I originally attributed this to poor caching, or lack there of. But what if its more than that. What if its the simple fact that the game is trying to manage ALL of the effects for ALL of the players even if they are no where near your character? What if as soon as you jump out of the huttball spawn, your client is having to handle the data and info for all the enemies who just jumped out of their spawn on the opposite end of the map?

John Carmack talked a lot about handling things like this in multiplayer game play. For instance. If another player is behind a wall, preventing you from seeing them, your system shouldnt have to process or render much if anything about that player. If that player decides to shoot a rocket somewhere that you couldnt see, your system would handle a small fraction of the data that it would handle had that person fired a rocket right next to you. This cuts down not only on the amount of data being sent over the net, but as well as the amount of data that your system has to process. I have a strong feeling that in SWTOR, you ARE having to process every bit of data going on in the zone you are in, regardless of if you can see it or not.

You can prove this partially by staring at a wall in a warzone. If the game was only having you process data for what you might immediately be able to see or interact with, staring at a wall should net you a HUGE boost in framerate. Nothing other than the wall textures and a few polygons is having to be processed (do this in Alderan, away from other players - your framerate wont change). However, your framerate doesnt go up. This means that the game IS making your system handle more data than it needs to. And, given how it loads the data, its very likely that these things combined are causing delays, and slow downs, when you really NEED to be processing something thats going on (ie: right in front of you).

Sorry for the novel, and the mix matching of probably 2 or 3 semi different concepts here. I think they all may be related however.

Toyebah's Avatar


Toyebah
02.13.2012 , 06:09 PM | #670
Thank you to all those in this thread (and many others) who have worked hard on problem-solving this FPS issue. For me, I decided that considering I now spend more time reading the forums searching for a resolution to this issue than I do actually playing the game, that it is time for me to say goodbye, at least for the time being.

I do very much hope that a resolution will come soon, and that the hard work of the mighty 5% will be recognised and thanked.

Thanks once again,

Toy


------
Unsubbed 13/02/12