GGG, [Removed by Support]

"

Do we know that, though?

From the 3.10.1d patch notes:
"
Improved performance by removing reflected damage calculations from monsters that would not reflect damage


I agree that GGG is always working towards optimization, but it's more than a little ridiculous to claim that this game isn't making calculations pointlessly when every other patch contains minor changes to fix exactly that.

I think we do honestly.

Well, in your example I feel pretty confident that the tradeoff was worth it, and that they probably didn't think to try it. But I also feel pretty confident saying that after 5 or however many years of optimizations that there probably aren't many of these left. If they do this for everything that might happen in the game they might lose more than they gain.
my evasion is so high i only insta rip sometimes
-----
Bug Fixes:
People were using cyclone for actual melee builds, so we nerfed it and made blade vortex. Also, we went ahead and made cyclone great for CoC casters while we were at it.
Last edited by Legatus1982 on Apr 26, 2020, 11:13:14 AM
"
Legatus1982 wrote:

All the stuff you said makes perfect sense, except that if there's one thing I know about POE it's that POE is way too complex for its own good. Initially reading your post I think to myself "hmm yeah makes sense they could probably shorten it" but I'm 100% certain there is some random mob that has a weird effect that could potentially have been spectered, or some other effect that is based on damage in a weird way, or some unique that does some effect that is applied in a weird way so as to break this assumption.

If everything you're saying is the only possible scenarios, then sure it'd work, but knowing POE I simply just have too much reason to doubt that's all there is to it.

Honestly sometimes I feel like POE is starting to become a casualty of its own creation, where all these uniques that have piled up have too many strange effects and all these weird interactions just bog the game down. I really hoped POE2 would be a separate entity from the original game, now that I know they're just running it as another 'expansion' of POE I have sufficient reason to doubt the game's future at this point. The game just needs a clean wipe.


Well I cant guarantee of course that its complete and correct but I really cant think of anything else and I have spent a lot of time thinking about stuff that could make this model fail, even ended up considering fancy shit like on block effects.


"
DarkKaine wrote:

...


GGG themselves said in 3.8 that their server CPUs are toast and lag builds and divine shrines also crashing server instances frequently so there are both server and client problems here.

With damage calculation I mean more than just the simple math but handling this whole thing with all its side effects from start to end:

https://pathofexile.gamepedia.com/Receiving_damage

Since lots of game mechanics are a side effect of intermediate results of the damage calculation, yet have to be dealt with before the main damage calculation ends as I showcase in my previous wall of text, its reasonable to assume that it isnt decoupled because it doesnt make sense to decouple stuff that is dependant of each other from start to end.

FLOPs are not the problem but rather memory reads or even memory allocations for projectile spawn as a 2 step on hit effect or the side effects like damaging ailments of the damage calculation, since memory reads are the bottleneck of modern processors even more in a big data hard to get good cache layout game like PoE, since unrelated shit must be compared so often for all kind of mechanics and item effects.

Spoiler


Main Ram reading, c++ vfunction call, branch misspredictions and Allocations might be a much worse problem of the damage calculation than the FLOPs.

Also the calculations cant be grouped up since they require that strict sequence on the one hand yet on the other hand even 1.1, the base damage could be already different for lets say an ice crash hits 100 monsters, some are burning, some are not, player is using immolate. Every calculation has be carried out individually and with it, all the memory reading and whatever other nasty stuff the side effects are doing.

Its also not possible to calculate future steps in advance since "ele penetration if critical strike recently" for example would make step 2 changing the outcome of lets say trying to calculate the stats of step 3 and 4 in advance.

Its messy to talk about it since we dont know how GGG implented it but it is a fact that its occasinally roasting both server and client and pretty often at divine shrines.

Like in my glacial hammer 100 grind there was this situation there the game was smooth, I run to a divine shrine, still smooth and when I hit the mobs the game suddenly turns 1 fps and after 4 frames I am at the main menu. Loggin back in, at least not dead lel, in hideout map is gone. Instance crash.

What should make me prevent from thinking that it is the damage calculation since it is the only significant difference in the game logic between hitting and not hitting mobs?

"


Do we know that, though?

From the 3.10.1d patch notes:
"
Improved performance by removing reflected damage calculations from monsters that would not reflect damage



Jesus Christ ...



Last edited by The_Human_Tornado on Apr 26, 2020, 3:23:39 PM
"
demonstorm wrote:
So, this is how you do it:

if (invulnerable) {
do not calculate damage //pseudocode
}

So, when am I hired?


This adds overhead on literally everything else in the game, just to cut lag on 1 type of shrine that spawns maybe 1 in 100 maps
I think this already exists in a way; bosses will become untergetable with no way to damage them when they are set to be that way when changing phases. It's obviously not used for allies cannot die since those actually do take damage. Maybe they could do this for divine shrines, but I think that would create a new problem where they would look too much like a bug in the game (already enemies can seem invulnerable in this way due to bugs or connectivity issues).

Personally they should just make Divine Shrine into a proximity shield shrine. GGG still gets to have the worst shrine in the game this way, it would be a more distinct telegraphing than allies can't die, enemies would be harder to actually hit = fewer calculations, and GGG can kill players that get too impatient and try to get into the shields.
"
They can still take damage at the "allies cannot die mod", so that would need a different formula.

And even that is missing out on the fact that ailments, reflect and leech still requires a full blown damage calculation.


Which is absolutely dumb when you think about it, you don't actually deal damage to the monsters because they are already at 1 life, but you can still kill yourself from ... reflected damage ?

What is this shit, honestly ?



Divine shrine/Allies cannot die aura are only consequences of poor optimization, it isn't the culprit, there are many things to improve first imo.
( And they don't really care about it, do they ? )



"
vio wrote:
i think the problem is simply that there are too may monsters around these shrines for server capacity.

Always increasing monster density has been causing more and more problems, it has been known for a while, it does not make the game better, and yet ....


Yep, GGG does not care, they might like to pretend that they do here and there, but the result is the game = they don't care.


"
DarkKaine wrote:
You're comparing the client to the server. The server handles hundreds of thousands connections at the same time. You don't get FPS drops if the server craps out, you'll get latency spikes.

Consider PoE like some extraordinary entity that does not follow standard rules :/
Sometimes a problem that should come from heavy server side calculation does make the game lag, as in : machine lag, not server lag.
Not saying that the amount of calculation client side is the problem, but something does.
SSF is not and will never be a standard for balance, it is not for people entitled to getting more without trading.

ShakinGaijin : thread 2612666, Dyadus burning earthquake!RIP :(
[outdated]SweetBreaker : thread 823111 (facebreaker IB witch).
[outdated]Sunder guardian : thread 1831267 [BHC]ripped
"
Fruz wrote:
"
They can still take damage at the "allies cannot die mod", so that would need a different formula.

And even that is missing out on the fact that ailments, reflect and leech still requires a full blown damage calculation.


Which is absolutely dumb when you think about it, you don't actually deal damage to the monsters because they are already at 1 life, but you can still kill yourself from ... reflected damage ?

What is this shit, honestly ?



Divine shrine/Allies cannot die aura are only consequences of poor optimization, it isn't the culprit, there are many things to improve first imo.
( And they don't really care about it, do they ? )




It is without any doubt fucking stupid since damage NECESSARILY means harm or injury. Therefor if there is no harm or injury, there is no damage. Thats not even just its use in everyday language or common sense but also how the dictionaries define it.

Its yet another "just GGG wording" thing, I think GGG should make their own dictionary or something like that so we can understand what they actually mean with the words from the english language that they are using.

That ziz clip reminds me how I lost my leaguestarter at legion league to phys reflect + allies cannot die. I went for pure ele scaling, did a 1000 phys reflect maps before, lifebar never moved a millimeter and suddenly oneshot myself at some "allies cannot die" pack. I have no idea how I can oneshot 9k ehp, 3 endu charges, 30% block, some dodge, 10k armour etc with _30 flat phys damage_ and no phys scaling but it just so happened.

Those 2 things might not be the core problem but no other phenomena I could think of in this game makes the poor optimization as noticeable as those 2 things, in my everyday gaming at least and barely anything is as deadly as going 3 seconds per frame or even crashing to main menu due to this shit. If they cant fix the core problem itself, they should fix this first imo. Its just too fucking deadly for HC.

But since we have this problem for more than half a decade already, there is little hope :<



I mean if you think about the word "reflect", I typically think of someone holding a mirror and bouncing back a laser beam. In which case the full force of the laser would hit back at me every time.
"
yamface wrote:
I mean if you think about the word "reflect", I typically think of someone holding a mirror and bouncing back a laser beam. In which case the full force of the laser would hit back at me every time.


Yea I guess thats what everyone thinks. But for GGG it means the laser beam goes through a crystaline maze of all the defenders defense layers (except block and ehp) and only after that whatever is left of it bounces back to the attacker.

Even more obscure is that you can endlessly leech from mobs with minimum hp as long as they stay in their "allies cannot die" aura. Leeching from nothing, free energy mane.

I guess we can conclude that a lot of stuff in this game would be more intutive and logical consistent if step 5 of the damage calculation would not be the cesspool for like 90% of the damage related game mechanics, at least they should move reflect to the end of step 2 so it actually becomes "attacking yourself" and leech to step 7 so it actually becomes leeching.
Last edited by The_Human_Tornado on May 16, 2020, 4:28:36 AM
The problem is that monsters under divine shrine can be hit

They could just remove the hit boxes of monsters under divine shrine to avoid having to deal with the spaghetti code that would surely crash the game when implementing bland things like stopping calculations
Need more brains, exile?
"
demonstorm wrote:
So, when am I hired?


Pretty sure if you walked in for an interview, you'd be "Removed by Support." :D
- 0 * - < _ > - * 0 -- 0 * - < _ > - * 0 -- 0 * - < _ > - * 0 -- 0 * - < _ > - * 0- 0 * - <
<739610877-3104-376.101077-1106.75103739110792103.108-5'92.9410776.>
- 0 * - < _ > - * 0 -- 0 * - < _ > - * 0 -- 0 * - < _ > - * 0 -- 0 * - < _ > - * 0- 0 * - <

Report Forum Post

Report Account:

Report Type

Additional Info