Repository navigation
Releases: HorrorPills/tf2mt
Release list
tf2mt v0.3.1
tf2mt v0.3.1
Wine and Steam no longer keep running after you quit
- Fixed: Steam, Wine and Steam's web UI kept running in the background after TF2 or the launcher closed, using CPU and RAM until a restart. Leftover Wine processes from crashed sessions piled up and could even stop the next launch from starting.
- Now, whenever TF2 exits (in-game Quit, Dock, crash), Steam is shut down properly and every Wine process ends. It doesn't matter in which order you close TF2 and the launcher, or whether you force-quit the launcher.
- Closing the launcher never interrupts a running game, and on macOS 27 tf2mt no longer stays in the Dock "running in background".
- Leftovers from older versions are cleaned up automatically the first time you open this version.
- No admin password, nothing installed outside the app.
Smaller fixes
- The Steam status text changes to "Steam is online." once Steam has logged in.
Update from inside the launcher (Setup → Updates), or download tf2mt-app.zip below if you're on v0.2.0 or older.
tf2mt v0.3.0
tf2mt v0.3.0
Smoother, more responsive aim (Metal renderer)
- Shallower frame queue: the game no longer runs a frame ahead of the renderer, and the display queue holds 2 buffers instead of 3. A frame now reaches the screen ~25–31 ms after it starts, down from ~41 ms (benchmark demo, vsync 120 Hz). Aim feels much more direct.
- If you have
m_filter 1set (mouse smoothing), trym_filter 0: smoothing adds lag on top. - The renderer logs this latency (
latency:lines in~/Games/tf2/logs/tf2mt/<session>/unix.log). Advanced overrides:TF2MT_GAME_AHEAD,TF2MT_DRAWABLES,TF2MT_INFLIGHT.
Automatic updates
- The launcher checks for new releases on launch and every 6 hours (Setup → Updates). Update now downloads the new app, verifies it against GitHub's SHA-256 checksum and its signature, replaces itself and relaunches. It never updates while TF2 is running.
- Coming from v0.2.0 or older: download this release once by hand. Later updates install from inside the app.
Known
- Occasional single-frame hitches still come from TF2's own frame time spikes under Rosetta (same on DXVK). A display with variable refresh (Adaptive-Sync over DisplayPort) hides them best.
The runtime is unchanged (still served from v0.1.0).
tf2mt v0.2.0
tf2mt v0.2.0: Team Fortress 2 on Apple Silicon, now with its own Direct3D 9 → Metal renderer.
Install
- Download tf2mt-app.zip, unzip, move tf2mt.app to Applications. First launch: right-click → Open (ad-hoc signed).
- Setup tab → Run setup. Downloads the Wine runtime (from the v0.1.0 release, checksum-verified), creates the Wine prefix and installs Steam from Valve. No Xcode, developer tools or Homebrew needed.
- Log in to Steam → Install TF2 → Play.
Already on v0.1.0? Replace the app; your game folder and Steam login stay.
New
- Native Metal Renderer, on by default: TF2's Direct3D 9 is translated straight to Metal (no DXVK/MoltenVK/Vulkan). Installed for each session and removed when TF2 exits. Plays on VAC-secured servers. Turn it off to use DXVK.
- Graphics preset (mastercomfig): Low (recommended, competitive) is installed on first Play; Medium/High/Ultra one click away.
- Debug tab: Metal performance HUD, frame-time recording for DXVK sessions.
- Smooth mouse fix and Friends offline remain on by default.
Requirements: Apple Silicon, macOS 13+, ~35 GB free, a Steam account. Nothing from Valve is redistributed.
tf2mt v0.1.0
First public release of tf2mt: Team Fortress 2 (64-bit) on Apple Silicon, tuned and measured.
Install
- Download tf2mt-app.zip, unzip, move tf2mt.app to Applications. First launch: right-click → Open (ad-hoc signed).
- Setup tab → Run setup. Downloads the runtime below automatically (checksum-verified), creates the Wine prefix with DXVK and installs Steam from Valve.
- Log in to Steam → Install TF2 → Play.
What's tuned
- Smooth mouse: Wine patch so mouse motion isn't discarded on cursor warps. Camera updates while turning go from ~40/s to ~120/s at 120 fps.
- No menu/loadout stalls: Steam Friends offline while playing (TF2's friends panel made ~1000 slow Steam IPC calls per frame under Wine).
- Fewer compile hitches: DXVK async pipelines + state cache.
- Tear-free vsync at your display's refresh rate (or uncapped/capped from the launcher).
Assets
tf2mt-app.zip: the launcher (no Valve content inside).tf2mt-runtime-wine10.0-0.6.11.tar.xz: Wine 10 (Sikarugir) + DXVK 2.4.1 + MoltenVK 1.4.1, unmodified (licences: THIRD_PARTY.md). You normally don't download this by hand; setup does.
Requirements: Apple Silicon, macOS 13+, ~35 GB free, a Steam account. Steam and TF2 are downloaded from Valve; nothing from Valve is redistributed.