yep this game needs to be optimized!
Just checked with 1 instead of 0 for DrawActorPersent, it seems to be the same.
The game never goes over 32% CPU usage on my i5-4460 (when the whole system is at 45-ish%).
I know how bad an algorithm can be, even when going through a small dataset (for example, O = n! complexity). Happens that what causes the issue here isnāt a lack of computing power from the client side; the application is running in two separate cores of my CPU and wonāt ever get to 100% of both. It also isnāt being bottlenecked by my RAM speeds. I donāt really know what you mean in your argument.
More or less i had in mind my Weapon Swap issue, where after changing map/channel it works instantly.
But after running around on the same map for a while, fighting monsters, swapping equip back and forth. It starts causing more and more freezes up to a second or so.
So there is something, probably in the memory going on, uncleared, piling up until one changes map/channel. That especially gets called by this weapon swap function.
I donāt know how much of the same parts in memory are called by other stuff, but if bits and pieces of general gameplay rely on what causes weapon swap to freeze the game after a while, it will run gradually worse when playing for a longer time on the same map.
[Edit] And i donāt think while freezing the game it caused my cpu to go up.
May go and check that out.[/Edit]
But as already mentioned this wouldnāt probably be directly connected to the more players on screen = instant low framerate.
Just tested spamming Alt+Z to switch weapons, while monitoring CPU/RAM usage. All of this in Ashaq Underground Prison 3F, in an empty channel.
Idle: 60fps, ~710MB RAM usage, ~33% CPU usage
Single Alt+Z: Doesnāt change
During Alt+Z Spam: Drops to 30~35fps, RAM usage drops to ~690MB, CPU usage doesnāt change
After Spam: Back to 60fps, RAM usage back to ~710MB, no changes to CPU usage
Single Alt+Z after spam: No changes
I donāt call this 20MB RAM drop anything notable; might have been random as the gameās memory usage oscillates a lot. I canāt reproduce this slight freeze when switching weapons even after doing 100+ switches (didnāt do anything between them, though)
I also tried spamming with weapons with different models so the game has to render them again; I had similar behavior except I got to 28-30fps during the spam.
Weirdā¦ is the second weapon set stored in the inventory?
EDIT: I also wonder if repeatedly swapping a piece of armor in a short period of time also hurts the frame rate?
Yep.
In fact, itās my first time using this feature, so I just configured my weapon sets (I am in my low level Wizard, so my first test was with an Oak Staff in both slots, the second one had a Cane Rover in one of the slots (with no off-hand equipment because I have none in this character)).
Right click spamming at armor pieces causes my FPS to drop from 60 to 45-50. No resource usage changes.
Iām almost sure itās the netcode at fault here, as armor pieces wonāt affect rendering at all.
Awesome, glad we came to the same conclusion
The true hidden final boss of this thread is the netcode. Basically it seems you can safely blame it for anything and everything rofl.
Hang on, got a video recorded. With external software to also capture a part of the taskmanager at the same time.
Strangely enough recording did hurt my framerate quite a lot. Couldnāt tell the software (OBS) to use another core through taskmanager though. But the basic problem should be visible. Will cut the video and upload it in a minute.
try it again with closed inventory (put pieces of armor on hotkey bar)
Same result, except that the FPS drops scale with the amount of keys (and different pieces of equipment) being spammed. Got to 28fps with 4 items being swapped.
Well, the packets sent should scale in the same way, soā¦ yeah.
Aight just got back home from work! If youāre up for it, letās do some testing and meet up in Klaipeda server (in Orsha city) channel 14.
Is there a specific discord server I should join to share info faster?
I didnāt make one yet; but Iām getting a mission done and Iāll be right there.
Edit:
Discord channel: https://discord.gg/hades-lavos-arcanist
This is 15 minutes of gameplay cut down to 1:30min.
It starts of with instant weapon swap.
Few minutes later slight hitches start showing when using weapon swap.
And even later the hitcher get ever so slightly bigger.
After changing channel at the end, everything is fine again.
I had this when leveling on this map a few days ago. When iāve been there for over an hour that it started freezing the client for even longer.
But i didnāt want to grind on 0 exp monsters for that long right now. I just knew this was a place where a good bunch of them keeps spawning.
You can also notice that weapon swap causes high CPU load (best noticeable in 2nd cut - with small hitches), i wonder why, this wouldnāt be just the CPU waiting for something.
The amount of RAM used stays at about the same, but it goes up and down.
What could indicate a decently big problem.
The game may barely utilize caching. That could mean the game loads and unloads things all the time instead of reusing already loaded stuff, wich could be quite bad.
Also dat killsteal at the endā¦
I got you on tape, buddy!
Umā¦ I got the opposite effect.
Spamming weapon swap or armor swap causes CPU load to decrease! Also causes your FPS to drop.
thatāsā¦ strange, because it would make more sense when we assume the cause is some network waiting.
But when i recorded it clearly when up from 5-10% to 20% and back down when i stopped.
So maybe there are multiple culprits cause bad framerates all over the game?
Well first offā¦ are you sure that the increase isnāt due to the program recording the video? Or some other application youāre running?
Yeah pretty much, because that should show on that program on the taskmanager, not on Client_tos.exe.
Only things could be the addons, like exp viewer. But i kinda doubt that.
Iām also using the -dx11 command, and already disabled pretty much everything suggested in some other performance gaining thread.
But I also had this issue before i changed those things.
I start wanting to look at the source code and figure out whatās wrong more and moreā¦
inb4 spaghetti code and you canāt understand anything; the devs canāt either
Edit:
Weāre in Orsha CH14, Klaipeda server, by the TP Trader right now, in case anyone wants to help with some testing on a controlled environment.
That thought actually made me laugh
Btw. for network latency info:
Iām Playing on Orsha, connecting from germany.
ping is about 0.1s - 0.2s (//ping ingame command)