ValveSoftware / Proton

Compatibility tool for Steam Play based on Wine and additional components
Other
24.28k stars 1.06k forks source link

SMITE (386360) #2208

Open Kreyren opened 5 years ago

Kreyren commented 5 years ago

Compatibility Report

System Information

I confirm:

steam-386360.log is not generated

Symptoms

Game hangs on installing .NET framework dependency. -> results in fatal.

Reproduction

Install SMITE on a proton in steam -> Installation gets stuck on installing .NET framework dependency.

Relevant

https://github.com/ValveSoftware/Proton/issues/1786 ? https://github.com/ValveSoftware/Proton/issues/18


Workaround

Installing dotnet472 via protontricks (?) -> It's able to download the dotnet -> Installation was successful(?) (Outputs installation was successful), after installation error is shown image

536355.981:000c:000d:trace:module:MODULE_InitDLL (0x7bc20000,PROCESS_DETACH,0x1) - RETURN 1
pid 1604 != 1603, skipping destruction (fork without exec?)

Using wine-mono (?)

massatt212 commented 5 years ago

game still wont work thx to EAC

Kreyren commented 5 years ago

game still wont work thx to EAC

If the game has same issue on wine then make a winebug and share URL here.

If you are able to make it work past splash screen on wine, then please share output of wine --version and winetricks list-installed.

massatt212 commented 5 years ago

smite was a lil tricky but i got it to work https://youtu.be/Fu_qOHNPmeQ

Kreyren commented 5 years ago

@massatt212 wow o.o Care to share instructions? ^^

EDIT: wait did you just greb EAC from paladins and parsed it in Smite? xD lol

massatt212 commented 5 years ago

It's in the video watch the files I highlighter and copied

Baysul commented 5 years ago

It seems like this game won't work until EasyAntiCheat pushes out an update that's compatible with Proton/WINE. The good news is that they're apparently working with Valve on a solution.

Kreyren commented 4 years ago

Any news on this?

kisak-valve commented 3 years ago

Smite

Issue transferred from https://github.com/ValveSoftware/Proton/issues/4581. @amirping posted on 2021-01-30T20:45:06:

Compatibility Report

System Information

I confirm:

steam-386360.log

Symptoms

The game crash just after few seconds from the splash screen shows up, I do the test with Proton Experimental - 5.13 and 5.0 it gives the same behavior

Reproduction

Install smite with on Debian 10.

StaticRocket commented 2 years ago

Seems to be working fine now. Anti-cheat and all. Scratch that, I forgot to check my configs.

JustEnoughDucks commented 2 years ago

@StaticRocket Can you post your logs and EAC logs to show that EAC is properly initialized? Hi-Rez games have a history of bad EAC implementation leading to un-initialized anti-cheat and letting the player play temporarily before kicks start and ultimately going back to un-playable when EAC starts properly initializing again.

StaticRocket commented 2 years ago

@StaticRocket Can you post your logs and EAC logs to show that EAC is properly initialized?

Actually, thanks for reminding me to check the logs. This only works under Proton-GE right now. Proton Experimental doesn't seem to like it. Here's the logs though: steam-386360.log gamelauncher.log

It looks like it's initializing properly, but I may be mistaken.

luciencooper commented 2 years ago

Whilst the game loads using GloriousEggroll's custom build of proton, I have checked the loader.log file and I don't think it's connecting to the EAC service successfully. It's likely Hirez have not updated their implementation of EAC and are still using an older version of the SDK. It's also possible Smite's EAC implementation is flawed allowing the custom build to act as a sort of bypass. I would be extremely cautious playing the game this way as they may consider it anti-cheat evasion. There hasn't been an announcement from Hirez regarding Linux/Proton compatibility either which also raises concern.

loader.log

kisak-valve commented 2 years ago

SMITE EAC files not found by proton 7.0-1

Issue transferred from https://github.com/ValveSoftware/Proton/issues/5586. @thekindstranger posted on 2022-02-17T16:15:29:

Compatibility Report

System Information

I confirm:

Symptoms

Starting SMITE results in EAC error message saying "File Not Found >:\home\kindstranger\.steam\debian-installation\steamapps\common\SMITE\Binaries\EasyAntiCheat\EasyAntiCheat_x86.dll". I have verified that the file is in the expected location (backslashes obviously replaced with forwardslashes), and have attached screenshot of my verification.

Game has worked with an earlier version of proton, but had other minor issues (related to proton not closing properly, not EAC)

Reproduction

Launching SMITE, getting the error.

steam-386360.log

SMITE_EAC_issue

TheGoblinPopper commented 2 years ago

This is still an issue. Logs show the following issue:

[2022.07.17-23.35.36] Download Progress: 0%.
[2022.07.17-23.35.36] Download Progress: 0%.
[2022.07.17-23.35.36] Download Progress: 0%.
[2022.07.17-23.35.36] Download Progress: 0%.
[2022.07.17-23.35.36] [Connection] Connect result: No error (0) Response Code: 200 Destination IP: 13.35.73.5
[2022.07.17-23.35.36] [HTTP Error Response] HTTP Response Code: 200 Curl Code: 0.
[2022.07.17-23.35.36] Falling back to a secondary CDN path.
[2022.07.17-23.35.36] [Connection] Connecting to URL: https://download-alt.easyanticheat.net/api/v1/games/140/client/wine64/download/?uuid=571011f6-ea69-7af4-57fb-aa6ce61783c0
[2022.07.17-23.35.36] Download Progress: 0%.
[2022.07.17-23.35.36] Download Progress: 0%.
[2022.07.17-23.35.36] Download Progress: 0%.
[2022.07.17-23.35.36] Download Progress: 0%.

I tried hitting that URL and it DOES resolve, but it downloads a blank file, so I cant tell if Proton, EAC, or Hi-Rez needs to fix something,

The error loops a few times and fails all three times with the same issues with the only variation being the URL is falls back to.

To be clear this never worked on PROTON, but Glorious Eggroll's fork did fix a lot of these issues for a while and it recently broke again.

kisak-valve commented 2 years ago

The problem is in the online game Smite.

Issue transferred from https://github.com/ValveSoftware/Proton/issues/6124. @hrach333 posted on 2022-08-28T15:21:10:

The game runs perfectly. The problem starts in online mode. When the match starts, it literally throws about 2 seconds (sometimes a little longer) into the game menu. I think it has to do with EasyAntiCheat. Please help.

Baysul commented 2 years ago

From what I've been told, Hi-Rez has no plans to make Smite officially compatible with Proton/the Stream Deck. Unless Valve can somehow convince Hi-Rez to prioritize compatibility, I wouldn't hold my breath.

This game is the only thing stopping me from completely ditching Windows. It's really a shame.

ethanrusz commented 1 year ago

I'd love to see Proton support come to Smite. I have to keep a Windows install around for this game, which sucks.

Newbytee commented 1 year ago

From what I've been told, Hi-Rez has no plans to make Smite officially compatible with Proton/the Stream Deck. Unless Valve can somehow convince Hi-Rez to prioritize compatibility, I wouldn't hold my breath.

Told by whom?

Kreyren commented 1 year ago

@nonathaj @bturk-hirez @cgspicer @tfosterhrz

Hey, could you add proton in the EAC support for it to let us play the game? ^^ Seems to work perfectly fine on wine otherwise

See https://partner.steamgames.com/doc/steamdeck/proton#1

nonathaj commented 1 year ago

Unfortunately, none of the people you tagged have the access to do that. However I did pass your message along internally.

Kreyren commented 1 year ago

However I did pass your message along internally. -- @nonathaj (https://github.com/ValveSoftware/Proton/issues/2208#issuecomment-1472657529)

Thanks! ^-^

Baysul commented 1 year ago

From what I've been told, Hi-Rez has no plans to make Smite officially compatible with Proton/the Stream Deck. Unless Valve can somehow convince Hi-Rez to prioritize compatibility, I wouldn't hold my breath.

Told by whom?

Hey, sorry for taking so long to respond to your comment. I asked in the r/Smite Discord server. If I'm remembering correctly, it was one of the Olympians who told me this. I also asked Liefwarrior, another Olympian, and they simply told me there is no official Steam Deck support at this time.

The Olympians have direct contact with Hi-Rez staff so I'm assuming that's who they heard it from. However it seems @nonathaj has forwarded our message! :O

I'm really hoping this goes somewhere. Smite really is the ONLY thing that's keeping me from having 250GB of extra SSD storage on my PC.

Baysul commented 1 year ago

From HiRezWombat on the thread about this in the r/Smite Discord:

Hey, sorry been busy. Lief added me on this this thread, but I needed to do a bit of research before replying and then work got away from me. So from what I've read there are a couple of things that games must do to support Proton. 1) Include the .so file version that accompanies their EAC windows library 2) Enable Linux via the EAC portal 3) Push out an update for the game once those things have been done.

If you look in your live SMITE folders the easyanticheat.so files exist already. And I re-confirmed with our ops team that the Linux version is enabled in the EAC portal. We did that a while ago, but apparently that still doesn't get the desired result. We haven't been able to prioritize the investigation as to why that alone hasn't resolved the issues, but if there are suggestions please feel free to share them here and I can communicate those back to the team to see what steps may be taken in a way that doesn't risk our other priorities.

Newbytee commented 1 year ago

loader.log only says this for me:

[2023.03.29-14.14.30] Loader initialized.
[2023.03.29-14.14.30] [EAC Callback] Code 914. Message: ''.

Does anyone here have any idea what code 914 could mean?

StaticRocket commented 1 year ago

I got one full game in before getting booted this time so they are getting closer to getting this working. Not sure whats tripping it now. Didn't think to catch the logs in the working session while it was running. Currently also seeing code 914 from EAC.

following related snippet from Launch.log before getting booted:

[0020.80] Log: FEACClient OnGameServerConnect
[0020.93] Warning: Failed to find notify DeactivateArrowFX on TgPawn_Artemis_0 (No_Detailed_Info_Specified)
[0021.69] Log: UTgGameMoviePlayer::HandleInstanceChatMessage Type:3
[0021.69] Log: UTgGameDC_Chat::AddChat Type:3
[0021.69] Log: UTgGameDC_Chat::AddChatMsg Type:3
[0021.69] Log: Chat[3]: [VVGH] Hi!
[0022.55] Log: UTgGameMoviePlayer::HandleInstanceChatMessage Type:3
[0022.55] Log: UTgGameDC_Chat::AddChat Type:3
[0022.55] Log: UTgGameDC_Chat::AddChatMsg Type:3
[0022.55] Log: Chat[3]: [VVGB] Bye!
[0022.76] Log: [CK] ATgGameHUD::FinishIntro()   Attempting to rejoin Session just in case
[0022.76] Log: BRIAN: Attempting to join session via cached session id
[0025.15] DevMusic: PComMusicTheme PlayMusicEvent found event named Opening
[0025.15] DevMusic: PComMusicTheme UpdateMusicTrack Fading in SoundCue AUD_MUS_Level_Mayan.a_cue_level_mayan_start over 5.000000 seconds
[0025.39] Log: FEACClient::ReceiveEACMessage 24 bytes
[0025.39] Log: FEACClient::SendEACMessageToServer 24 bytes
[0025.45] Log: FEACClient::ReceiveEACMessage 24 bytes
[0025.45] Log: FEACClient::SendEACMessageToServer 24 bytes
[0025.52] Log: FEACClient::ReceiveEACMessage 64 bytes
[0025.52] Log: FEACClient::SendEACMessageToServer 128 bytes
[0025.53] Log: FEACClient::SendEACMessageToServer 24 bytes
[0025.59] Log: FEACClient::ReceiveEACMessage 24 bytes
[0025.72] NetComeGo: Close PComNetDriver_2 PComNetConn_0 0.0.0.0:9009 04/02/23 14:11:18
[0025.72] Log: FEACClient OnGameServerDisconnect
[0025.72] Log: FEACClient OnGameServerDisconnect: clearing data

I did find this Launch backup though showing the "working" log. Launch-backup-2023.04.02-14.08.37.log

Kreyren commented 1 year ago

@StaticRocket Provide compatibility report, include wine version, where you got the wine and ideally steam hardware report

One of the hypothesis is that WINE's lacking some call or the call is insufficient that's causing the anti-cheat to trigger, but your setup seems to pass so there is probably something unique causing it to succeed which would be a good info.

Kreyren commented 1 year ago

Does anyone here have any idea what code 914 could mean? @Newbytee (https://github.com/ValveSoftware/Proton/issues/2208#issuecomment-1488618404)

Cross-Referencing:

The second provides more info:

[2020.10.04-00.05.36] [EAC Callback] Code 915. Message: '[HTTP Error Response] HTTP Response Code: 403 Curl Code: 0.'

So theory is that it's related to the downloading of the following file

Seems like some issue with downloading in:

[2023.04.02-16.10.47] [Connection] Connecting to URL: https://download.eac-cdn.com/api/v1/games/140/client/wine64/download/?uuid=30c6abef-33ab-8376-e556-1fb8794a12c6

Where reportedly using

https://download.eac-cdn.com/api/v1/games/140/client/win64/download (note win64)

Downloads a 16.2 mb file[https://discord.com/channels/101131186675388416/1086030710214774855/1092964484752085062]

CC @Guy1524 Can you provide context to the issue with downloading of this file?

Log of the failure from https://discord.com/channels/101131186675388416/1086030710214774855/1092225906786971773

loader.log

Which seems to be a common breaking point

StaticRocket commented 1 year ago

Wine version was Proton Experimental. I have not been able to reproduce the event again. That was with a completely fresh install of Steam and SMITE and it still kicked me the first time I loaded into the game. info.txt

Kreyren commented 1 year ago

@StaticRocket How does it fail for you? With the mentioned file download?

StaticRocket commented 1 year ago

No, it appears to be related to something tripping a logoff event. Launch.log

Kreyren commented 1 year ago

No, it appears to be related to something tripping a logoff event. Launch.log -- @StaticRocket (https://github.com/ValveSoftware/Proton/issues/2208#issuecomment-1524708878)

[0153.39] Log: Missing cached shader map for material mat_fx_spearglow, quality 0, compiling. [0153.39] Log: Can't compile mat_fx_spearglow with seekfree loading path on console, will attempt to use default material instead [0153.39] Warning: Warning, Failed to compile Material FX_TheMorrigan_Skin7.Materials.mat_fx_spearglow for platform PC-D3D-SM3, Default Material will be used in game.

That could in theory cause EOS to trigger :thinking:

a3ternalis commented 1 year ago

I'm having the same error codes in my launch.log files. Launch.log Launch.log

I'm having trouble uploading my loader.log file, but it's giving me the same result as earlier in this thread and my previous uploads on discord. Fails the download, falls back to a secondary CDN url, and fails again.

Kreyren commented 1 year ago

CC @kisak-valve The issue as diagnosed is likely a bug in EAC as it's failing to authentificate linux players with failure described in https://github.com/ValveSoftware/Proton/issues/2208#issuecomment-1524695653.

Developer put best effort to fix the issue, failed and are trying to contact Valve for help for the last week, talked with plagman who said that Valve send someone, but they weren't able to reach the developer.

Can you do something about this from the valve's side?

Optionally see https://github.com/ValveSoftware/Proton/issues/2208#issuecomment-1472332386 for developer's github.

Kreyren commented 1 year ago

Update: The game works again, requires a manual patch which hi-rez has been informed about [https://discord.com/channels/101131186675388416/1086030710214774855/1111703374899990588] and said to be fixing soon for the game to work out of the box on linux. :penguin:

The EAC bug as highlighted above has been confirmed and fixed by Valve on the server-side.[https://discord.com/channels/853130811581530142/855613337441534002/1111084160258416711]

This should now make SMITE, Paladins and possibly games with similar issue such as Hell Let Loose work now.

Currently the game requires moving EAC files to the correct location as it seems that the EAC developer (likely intentionally due to their history with linux) broke the EAC which resulted in Hi-Rez not dedicating resources to fixing a broken solution as they don't have the appropriate access to fix that themselves. ProtonDB instructions for this have been submitted and are awaiting approval.

As described:

It now worth trying SMITE with manually dropping .so files from where they are (/EasyAntiCheat/) to the two other EasyAntiCheat dirs (/Binaries/Win64/EasyAntiCheat for 64 bit game version and (/Binaries/Win32/EasyAntiCheat for 32 bit). -- https://discord.com/channels/853130811581530142/855613337441534002/1110958766796582922

Thanks Valve and Hi-rez for cooperation on this issue and fixing it <3

Additionally the GloriousEggroll versions of wine currently have insufficient patch to address the issue with file locations for EAC

def main():
    """ Fix EAC location in smite
    """
    install_dir = glob.escape(util.get_game_install_path())

    # Fix EAC incorrect location:
    if not os.path.exists(install_dir + '/Win64/EasyAntiCheat/easyanticheat_x64.so'):
        subprocess.call(['ln', '-s', install_dir + '/EasyAntiCheat/easyanticheat_x64.so', install_dir + '/Win64/EasyAntiCheat/'])

    if not os.path.exists(install_dir + '/Win32/EasyAntiCheat/easyanticheat_x86.so'):
        subprocess.call(['ln', '-s', install_dir + '/EasyAntiCheat/easyanticheat_x86.so', install_dir + '/Win32/EasyAntiCheat/'])

If that would be to be updated then the game would work out of the box on GE wine in case hi-rez takes a long time to fix the issue.

My post about it on fediverse: https://qoto.org/web/statuses/110437726883330189

massatt212 commented 1 year ago

Paladins? I don't think paladins have a each.so file, why will it work?

Kreyren commented 1 year ago

Paladins? I don't think paladins have a each.so file, why will it work? -- @massatt212

Because paladin's EAC outputs the same curl error i will look into that soon as well. There are reports of Realm royale working too, because of this fix, but i didn't look into it yet.

massatt212 commented 1 year ago

Ok

AdverseMiller commented 1 year ago

There are reports of Realm royale working too, because of this fix, but i didn't look into it yet. @Kreyren

I’m not sure how it would work on realm Royale, easy anti cheat doesn’t appear to have any .so Linux libraries like smite does, it just has the DLLs

TheGoblinPopper commented 1 year ago

Tested and worked on SMITE. To simplify for anyone looking to do it as described above. I uninstalled and reinstalled the game and move the following files:

Take the *.so files from here - .../.steam/debian-installation/steamapps/common/SMITE/Binaries/EasyAntiCheat

and put them in here: .../.steam/debian-installation/steamapps/common/SMITE/Binaries/Win64/EasyAntiCheat .../.steam/debian-installation/steamapps/common/SMITE/Binaries/Win32/EasyAntiCheat

When you are done the folder should have 3 files in it. An .so and two .dll files.

Boot the game and enjoy! :-D

Thanks @Kreyren

Newbytee commented 1 year ago

@Kreyren Is this some private Discord channel? I can't view it.

Kreyren commented 1 year ago

@Kreyren Is this some private Discord channel? I can't view it. -- @Newbytee

That's frog's discord server on https://discord.gg/linuxgamingdev

AdverseMiller commented 1 year ago

There are reports of Realm royale working too, because of this fix, but i didn't look into it yet.

I copied the linux libraries from Smite to Realm Royale (not sure if that is what I was supposed to do as Realm Royale doesn't have any) and it did not work, still kicked out after a few seconds.

Kreyren commented 1 year ago

There are reports of Realm royale working too, because of this fix, but i didn't look into it yet.

I copied the linux libraries from Smite to Realm Royale (not sure if that is what I was supposed to do as Realm Royale doesn't have any) and it did not work, still kicked out after a few seconds.

Move that to Realms Royale issue plz if there ain't one then make it, thankuu