protonscr

TF2 crashes when loading into a game (explanation on why Proton is still useful over native included)

protonclosed
ValveSoftware/Proton#8017 · opened 2024-08-23 by bugflug · updated 2024-08-23 · 1 comments · github
Bbugflug 2024-08-23 github

Compatibility Report

  • Name of the game with compatibility issues: Team Fortress 2
  • Steam AppID of the game: 440

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.

Symptoms

TF2 crashes when using Proton to load into a match or view a demo file. The game successfully boots into the main menu and only crashes when there would otherwise be a loading screen before spawning in to the game.

It may be notable that the game did work with Proton before the 64-bit update for some people.

The only notable errors, oddly enough, are about running out of font handles?..
steam-440.log

Reproduction

Use Proton 9.0-2 (or any version, actually) to boot TF2 instead of doing it natively. Using OpenGL or Vulkan is not important as both result in the crash. After the main menu loads, attempt to load a map in the console like map pl_upward or attempt to load a demo file. The game will crash before the loading screen even shows

Why report when TF2 works natively?

Luck has it that any and ALL 3rd party tools to make cinematic movies in the game are based on Windows DLL injection (with the game in insecure mode, of course). The main tool used is HLAE, a.k.a. Half-Life Advanced Effects. This enables a ton of custom effects like

  • rendering only the viewmodels
  • taking the camera outside of the player who recorded the demo without their model following the camera
  • altering the lighting of the game
  • smoothing a camera path with changes to the FOV and more.

While HLAE is technically a hack, it's a staple of literally every frag movie creation scene in every source game. I've even successfully injected the advanced effects DLL into TF2 when opened with Proton. The only issue is the game itself when it tries to load into a map/game.

Because of how important these 3rd party tools are to the TF2 community, it's important to support the game with Proton regardless of its ability to run natively.

Kkisak-valve maintainer 2024-08-23 github

Hello @bugflug, we're using one issue report per unofficially supported game title, so I've gone ahead and transferred this issue report to https://github.com/ValveSoftware/Proton/issues/3150#issuecomment-2306977708.

Proton versions

Upstream links