StrataSource / Portal-2-Community-Edition

Task tracker for Portal 2: Community Edition
https://www.portal2communityedition.com
146 stars 3 forks source link

Bug: Sorta only Legacy UI, Callback 304 PersonaStateChange, forcing me to go to Panorama UI which is unfinished #1590

Closed karl-police closed 7 months ago

karl-police commented 7 months ago

Describe the bug

To clearly identify this issue, you just disconnect Steam and re-connect it while the game is open. The game should then freeze temporarily, but for a long time.

I didn't encounter this issue on the Panorama UI. Only the Legacy UI. But stutter on the Panorama UI would only be present when I re-connected the internet, similar to the Legacy UI. Only difference is that on the Legacy UI, it's worser and you temporarily freeze.

https://steamcommunity.com/sharedfiles/filedetails/?id=3082362393

I only found out about Callback 304. I am not sure if there's more, I always had the doubt that even with my plugin fix, that there would still be something else that is causing small performance issues. But the majority is Callback 304.

What I'd do is, I'd compare the Panorama UI with the Legacy UIs source code. Or ask Valve to release it. And if it's just reverse engineering on a high-level, release pseudo code idk.

I think you need a lot of friends on Steam for this issue to show up.

PersonaStateChange is callback 304. I could not reproduce this issue when I switched to the Panorama UI, however, I'd notice a little bit of stutter when I re-connected the internet on the Panorama UI mode as well. Just not the freeze.

The issue is explained in that Steam Guide.

You can run VProf and stuff.

This is a screenshot from Portal 2 image

it will be a similar thing in P2:CE. Look at the peak.

 

I have no clue what callback 304 is responsible for, but blocking it didn't break Portal 2 at all nor did it ever break Co-op. I still do wonder what the hell it's purpose is.

Issue Map

Not Map specific

To Reproduce

I don't know if this exists on Linux. Try Windows.

You need 600 Friends on Steam or something.

  1. Open Legacy UI P2:CE (any branch)
  2. Open a map, but I don't think it's required, just go to the main menu
  3. Disconnect your internet until Steam goes offline
  4. Re-connect your internet and wait until Steam goes online
  5. Wait in-game, you should notice stutters until a temporary freeze

More documentation is here, it's the same issue as in regular Portal 2.

Operating System

Windows 10

AWildErin commented 7 months ago

What I'd do is, I'd compare the Panorama UI with the Legacy UIs source code. Or ask Valve to release it. And if it's just reverse engineering on a high-level, release pseudo code idk.

We can generally look through it. We're a licensed project so we have the code directly from Valve. Unfortunately can't give you an estimate as to when this would be fixed. Legacy UI is going to be removed eventually, but I think this should still be done before this.

I might be able to look into it sometime later this week unless somebody else beats me to it, but generally no promises.

karl-police commented 7 months ago

What I'd do is, I'd compare the Panorama UI with the Legacy UIs source code. Or ask Valve to release it. And if it's just reverse engineering on a high-level, release pseudo code idk.

We can generally look through it. We're a licensed project so we have the code directly from Valve. Unfortunately can't give you an estimate as to when this would be fixed. Legacy UI is going to be removed eventually, but I think this should still be done before this.

I might be able to look into it sometime later this week unless somebody else beats me to it, but generally no promises.

the thing you sent me, fixes the issue

karl-police commented 7 months ago

so yeah, fixed

thanks :)