protonscr

Hyper Jam

protonopen appid 556050Game compatibility - UnofficialXAudio2
ValveSoftware/Proton#2333 · opened 2019-02-13 by Baguettedood · updated 2019-03-15 · 2 comments · github · game page · search this game
BBaguettedood 2019-02-13 github

Compatibility Report

  • Name of the game with compatibility issues: Hyper Jam
  • Steam AppID of the game: 556050

System Information

I confirm:

  • [x] that I haven't found an existing compatibility report for this game.
  • [x] that I have checked whether there are updates for my system available.

Issue 1: "Fatal Error!"

Issue 1: Missing mfplay.dll causes game to crash with "Fatal Error!" since it can not play startup movies.

Reproduction: Open the game. You will see "Fatal Error!" appear before you even reach the main menu.

Log (Zipped for size): steam-556050-fatalerrormfplay.zip

Notable lines from game's own debug log:

[2019.02.13-08.43.02:054][  0]LogWmfMedia: Failed to load mfplay.dll
[2019.02.13-08.43.02:054][  0]LogWmfMedia: Failed to load required Windows Media Foundation libraries
[2019.02.13-08.43.02:055][  0]LogWindowsMoviePlayer: Could not load mfplay.dll. Library not found.
[2019.02.13-08.43.02:056][  0]LogWebMMoviePlayer: Error: Movie '⯩䠀솁ࢀ' not found.

(Disclamer I dunno why the movie's filename is replaced with random unicode)

Workaround: Find your way to steamapps/common/Hyper Jam/HyperJam/Content/ and rename "Movies" to something else, such as "Movies2". The game will then ignore the startup movies when you launch it.

Explanation: Hyper Jam uses Unreal Engine 4.21 which makes mfplay.dll mandatory or else it will crash. Previous versions of Unreal Engine would instead fail more gracefully and skip the startup movies.

Issue 2: "Could not complete latency tests"

(Note: This should no longer happen as of Hyper Jam Patch 1.7.0.)

Issue 2: Online multiplayer shows error message: "Could not complete latency tests"

Reproduction: Open the game -> Press Online -> Quick Match -> Select Character -> Ready To Start.

Log (Also zipped for size): steam-556050-latencytestfail.zip

Notable line from game's own debug log:

LogMatchmaking: Warning: ICMP Ping to ap-southeast-1 failed. Error reason: InternalError

Notable line from steam-556050.log:

err:winediag:IcmpCreateFile Failed to use ICMP (network ping), this requires special permissions.

Workaround (Note this workaround seems to break the Steam Overlay and Steam Controller support for all games using this Proton version):

  1. Navigate a terminal to the appropriate dist/bin folder for your Proton version (For Proton 3.16-6 it was steamapps/common/Proton 3.16 Beta/dist/bin/)
  2. Backup the files wine-preloader and wine64-preloader in case you want to undo the changes.
  3. In the terminal, execute the following commands:
su
setcap cap_net_raw+epi wine-preloader
setcap cap_net_raw+epi wine64-preloader
  1. Multiplayer should become functional the next time you launch the game.

Explanation: The game sends ICMP messages to regional servers to test connection and latency. Wine/Proton doesn't have permission to do this by default. The above commands give this Proton version permission to do it.

Other less-pressing issues:

  • The game stutters a lot while it generates the shader cache. I'd recommend playing some "Local Versus" matches against bots until the stutters are gone.
  • Hyper Jam uses XAudio2 for its sound, so it would require FAudio included in 3.16-5 or newer for proper sound (I experienced this during the game's beta, and audio was not pleasant until FAudio came along)
  • Sometimes, losing focus of the game window can cause mouse clicks to not respond on certain UI elements. Tabbing out and back in seems to fix.
BBaguettedood 2019-02-14 github

Apparently the workaround for fixing multiplayer breaks the Steam Overlay and Steam Controller support. Possibly other things too. Keep this in mind.

BBaguettedood 2019-03-15 github

The latency tests seem to work fine now in Hyper Jam Patch 1.7.0 The patch notes state that it "Added some fallback latency tests in case the standard tests fail" which affected a few non-Wine users.

Proton versions

DLLs