FNA-XNA / FNA

FNA - Accuracy-focused XNA4 reimplementation for open platforms
https://fna-xna.github.io/
2.63k stars 264 forks source link

Steam Overlay not working on OS X #5

Closed connorshea closed 8 years ago

connorshea commented 8 years ago

OS X 10.11.2

Tested with:

I'm pretty sure it's not a problem on my side, as the Overlay works in non-FNA games, e.g. Hotline Miami 2, Dustforce, Guacamelee, Team Fortress 2, and Counter-Strike: Global Offensive.

Also tested on the Steam Beta as well as the Steam stable client, occurs with both.

I'm not sure how I can best help you debug this, would you like my Console dumps?

connorshea commented 8 years ago

The issue also effects Transistor, it looks like. Could be an issue carried over from MonoGame, or one caused by SDL2?

flibitijibibo commented 8 years ago

Eversion has this problem too, so I think it's SDL2. I can't fix this, Valve has to fix it.

connorshea commented 8 years ago

Just found a file named libsdl2-2.0.so.0 in CSGO, but the Overlay works for that. I'm guessing this is an Overlay problem, not an SDL one, but is that worth forwarding on to the SDL team?

flibitijibibo commented 8 years ago

I would forward it to Sam, as he has a view of both SDL and Valve's stuff internally.

flibitijibibo commented 8 years ago

I should also point out that the overlay worked at one point but has stopped working for games that are still on old FNA versions that were built before this problem started, so the regression is definitely in the overlay.

connorshea commented 8 years ago

How would you recommend I contact Sam?

flibitijibibo commented 8 years ago

Message slouken@libsdl.org

connorshea commented 8 years ago

Awesome, thank you :)

flibitijibibo commented 8 years ago

I think we figured it out... the overlay doesn't work when launching from a shell script. This affects Valve's games as well!

connorshea commented 8 years ago

Per Alfred at Valve:

This sounds like the apple issue with their shell now stripping the DYLD_INSERT_LIBRARIES environment variable, which we use to inject our overlay. We also set a STEAM_DYLD_INSERT_LIBRARIES environment variable to help work around this design choice, in any launch shell script your game(s) have you could add this line to fix it:

DYLD_INSERT_LIBRARIES=$( STEAM_DYLD_INSERT_LIBRARIES)

flibitijibibo commented 8 years ago

Ah okay, so this is more along the lines of MonoKickstart rather than FNA anyway, if you want to not call it an Apple bug...

Fuck me that's going to be a lot of updating for nothing.

connorshea commented 8 years ago

As an Apple user, sorry :(

flibitijibibo commented 8 years ago

This doesn't appear to work anymore! Has this been replaced with something? I still see it in the scripts for Valve games, but the variable is empty now...

connorshea commented 8 years ago

God damn it Apple....