github gauthierpiarrette/highball v0.10.10
Highball 0.10.10

7 hours ago

Forza Horizon 6 now starts on Apple's D3DMetal even in an environment whose graphics mode you set by hand. A game that only has DirectX 12 cannot run in a mode without it, so Play now gives such a game a mode that has DirectX 12, the one it was verified on, for that launch only. Your environment keeps its own mode for every other game, the log says what happened, and the game's page says the same before you press Play. On 0.10.9, Forza in an environment set to DXMT by hand started on DXMT and stopped at Steam's controller notice.

A game whose folder is a link (a game moved to another disk and linked back) is recognised again. Highball did not look inside such a folder, so the game had no icon, no per-program settings, and no DirectX 12 check.

When an environment already runs the engine a game needs, the engine question now offers to use that environment first, applying the game's fix there if it is missing (Mirror's Edge Catalyst with the EA app, highball-db#318). A new environment's done row offers to install the game in its Steam. Each environment's card counts the games installed in it, and a game installed in two environments lives in the default one, with Play there for the other copy (highball#264).

The first Play with a fix that changes the launch environment no longer starts a Steam client only to close it, which saved 15 to 45 seconds when Steam was not running.

Checked on a base M4 with macOS 27: Forza Horizon 6 in an environment set to DXMT by hand starts on D3DMetal, and the game drives through Tokyo at 46 to 53 fps on Very Low and 32 to 39 fps on Medium with FSR in the rain, at 1080p.

Also new since 0.10.3, the last stable release

  • Forza Horizon 6 plays on macOS 27. Play asks for the new Wine 11 engine r18, which carries Apple's D3DMetal 4, and applies the game's settings. The first start spends about three minutes optimizing shaders and asks for a one-time Xbox sign-in. The frame rates above come from one Mac, a base M4. Online play, controllers and the game's benchmark mode are not validated yet.
  • Xbox Live games keep their sign-in on the Wine 11 engine. A failed credential lookup made them ask again at every start. Forza Horizon 6 also stops warning about low memory, because Wine now reports what a program really uses on macOS.
  • Discord can show what you play, with the game's own Rich Presence when it has one. It is off by default, under "Share game activity with Discord" in Settings. Thanks to @matiasmg-ok for building it (PR #260).
  • The library opens on an Installed games row with large covers and a Play button on each, and switching an environment's engine opens a page that shows what moves with it. Both come from @matiasmg-ok's work in PR #230, thanks!
  • Games can be renamed from their tile's menu, and Reset name brings the store's title back.
  • Steam libraries on another disk show up, whether Steam lists the folder or the steamapps folder is a link.
  • The EA app installs again, on the Wine 11 engine, and Mirror's Edge Catalyst gets a recipe for it.
  • Data execution prevention stays on in both engines. With it off, every buffer write cost a trip into the system under Rosetta, which slowed Direct3D 9 games that stream vertices. In athei's test program on an M4, 1,500 frames of writes went from 30 to 50 seconds to about 1.3 (highball#165). Thanks to @athei for the patch and the test program.
  • Fewer crashes on the Wine 11 engine. Its DXMT build had a startup bug that could kill a game at launch or minutes in (highball#240).
  • Highball always opens its window, even after a quit with only Settings open.
  • Play no longer hangs on Steam's one-time "controller recommended" notice for games that run on D3DMetal.
  • The database gained many games and reports from players, and the app now always ships the current copy.

Each step is described in full in the beta notes for 0.10.4 to 0.10.9.

Don't miss a new highball release

NewReleases is sending notifications on new releases.