Repository navigation
What's new
- No more lost sound followed by a freeze. If your audio output stopped taking sound for a
while, the game's sound stopped for good, and the game later froze, for example on the save
screen after an event. Every version so far had this. Now the game keeps running, unheard, and
the sound comes back as soon as the output takes audio again. Thanks to Omega3komma3 for the
report and the two bug reports (issue #20). - No more rectangular borders in the Showcase (where you rotate and zoom around a car, in the
car lot, the customize shop and on a Blacklist rival's car) or around a Blacklist rival's
bio. The Showcase's darkened edges and the bio's black panel now reach the edges of the
screen, on every screen shape; on a 16:9 screen they left a thin border, as on an Xbox 360,
whose TV hid it, and on a MacBook or a Steam Deck a wide one at the top and bottom. Thanks to
DoubleDips, who reported it, and m9cy884mv6-a11y, who confirmed it on the Steam Deck (issue #19). - Mac: in a window, the picture now runs up under a transparent title bar, and the window's
buttons show only while you move the mouse over it. Thanks to aleszczynskig, who wrote it (pull
request #23). - Mac: no more crash when switching fullscreen on a 120 Hz screen. On a MacBook Pro's ProMotion
screen, switching fullscreen on or off, or resizing the window, could close the game now and then
(since v0.1.4; its crash report named "mutex lock failed"). It no longer does. - A quit asked for from outside the game is now a normal quit: the stop signal a launcher
sends, Ctrl+C, or closing the terminal the game was started from. Your settings are saved, as
with Quit Game. Closing its terminal used to end it on the spot, and every session, even one
ended with Quit Game, left a crash marker in its logs folder until the next start.
How to update
- Mac: drag the new SpeedBreaker into Applications and choose Replace, then allow it once more with Open Anyway (System Settings > Privacy & Security).
- Steam Deck, Steam Machine, Steam Frame and Linux: unpack the new download over the old folder (
~/Games/SpeedBreaker). Your Steam shortcut keeps working. - Everywhere: your saves, settings and the installed game are kept, and no disc image is needed.
More about it
- The sound: SpeedBreaker keeps the game's sound in step with your audio output, and when the
output stopped taking audio altogether, the game's sound waited for it for good; the game's own
sound system then stopped too, and the next time it waited for a sound to unload, the game froze.
Reproduced by stopping the output in the middle of a race; with the fix the game played on and
the sound came back when the output did. The log now says when the output stopped taking audio
and when it came back, and a hang report includes the audio's state. - The borders: the few black frames between two shots of the career's opening scene are now
black to the edges of the screen too. - The title bar: the window's saved size now takes in the title bar, so a window from an
earlier version opens a title bar shorter, with the same picture. - The 120 Hz crash: the thread that times the frames on a ProMotion screen could still be using
the old swapchain while a fullscreen switch replaced it. On the MacBook Pro where it was seen,
v0.1.5 crashed in 1 of 11 test runs of rapid fullscreen switching and resizing; with the fix,
none did in 15 runs (39 minutes), including runs made to hit the problem more often. - Quitting: a crash still saves a crash report, and the next start still offers it. A session
that ended without quitting (stopped by force, or the power going) now leaves its marker, and
the next start's log says so.
The full list of changes is in CHANGELOG.md.
Which file is for my device?
| Device | Download | Setup |
|---|---|---|
| Steam Deck, Steam Machine and Linux PCs (x86-64) | SpeedBreaker-steamos-x86_64.tar.xz |
Steam Deck and Steam Machine, Linux |
| Steam Frame (arm64) | SpeedBreaker-steamos-arm64.tar.xz |
Steam Frame |
| Mac with Apple silicon, macOS 15 or later | SpeedBreaker-macos.dmg |
Mac |
| iPhone and iPad (experimental) | SpeedBreaker-0.1.6-ios.ipa, or build it yourself with Xcode |
iPhone and iPad |
| Windows and Android | Coming soon |
The two SteamOS files are not interchangeable: the arm64 one is for the Steam Frame only, and the
x86-64 one doesn't run on the Frame. Each download has a .sha256 file next to it (see Checksums
below).
All downloads are built from this release's source, commit 9d2cb93. The first line of the
game's log, and Settings > Advanced, say SpeedBreaker v0.1.6 (9d2cb93).
The Source code archives that GitHub adds hold SpeedBreaker's own source, with no game code or
data. Building from them needs your own disc; see
Building from source.
iPhone and iPad: the experimental IPA
SpeedBreaker-0.1.6-ios.ipa is signed by nobody: a sideloading tool such as AltStore signs it
with your own Apple Account and installs it. The IPA itself hasn't been installed on a device
yet: the iPhones and iPad it was tested on ran the same app built and signed with Xcode. Please
report how it goes, working or not, with your device and tool.
- The game asks iOS for more memory than most apps (two entitlements: Extended Virtual Addressing
and Increased Memory Limit). A free Apple Account can give at most the second, and only with
some tools: AltStore Classic 2.2 or later is expected to keep it; SideStore 0.7 drops both.
Without them the game may not start, or iOS may close it in busy scenes. When iOS refuses the
memory, the game says so on screen instead of closing. - A free Apple Account's apps stop opening after 7 days until the tool refreshes them, and at most
3 sideloaded apps can be active at once. These are Apple's limits. - iOS or iPadOS 17 or later, on an A15-class chip or newer, with a controller or keyboard.
- Coming from a build you made yourself, the IPA installs as a separate app: install the game again
from your disc image. Saves made in the old app stay with it. - Sideloading the IPA
has the steps and which tools keep what. Building it yourself with Xcode still works as before.
How these downloads were tested
Each download attached here was tested before release. It was unpacked or opened as the setup
steps say, with a fresh home folder, and the game was installed through the installer from a disc
image:
- x86-64: on a Steam Machine (SteamOS 3.8). The game raced at 60 fps, with the default upscaling
and with FSR 1. Stopped with SIGTERM (the signal a launcher normally sends), it quit cleanly, kept a
setting changed just before, and the next start reported no crash. In a 60 Hz display test, no frame jumped ahead or
froze. - arm64: on a Steam Frame (SteamOS 0.3.0), outside the headset. The game raced at 58.7 fps with
Xbox 360 Display Gamma on, no frame froze and the game's speed was unchanged; stopped with
SIGTERM, it quit cleanly with its settings saved, and FSR 1, the Controls page,
Quit Game and the Fullscreen setting worked as in v0.1.5. - Mac: on a MacBook Pro (M1 Pro, macOS 27.0.1). The game raced at about 60 fps, also with
Upscaling set to FSR 1. In a window, the title bar sits over the picture and the window kept its
size through two trips into fullscreen and back. Quit Game, the Controls page and Check for
Updates worked, and quitting from outside the game left no crash marker. On macOS 15.6.1
(Sequoia), in a virtual machine on a Mac Studio, it installed and raced at about 60 fps in
fullscreen. - Updating from v0.1.5: on a Steam Machine, a Steam Frame and a Mac, v0.1.6 went over a working v0.1.5
the way How to update says: the game used the existing install without reinstalling it, showed
What's new once, and kept the settings. - iPhone and iPad IPA: built and checked (its version, its two entitlements, its license notices, no personal
data), but not installed on a device yet; see above.
Checksums (SHA-256)
| File | For | Size | SHA-256 |
|---|---|---|---|
SpeedBreaker-steamos-x86_64.tar.xz |
Steam Deck, Steam Machine, Linux PCs | 16.2 MB | cc3ab4d89a5d0c950fca9a8ee2a6fe1822b844aedb1eccce4a9e10642e44b834 |
SpeedBreaker-steamos-arm64.tar.xz |
Steam Frame | 13.9 MB | 64d07351241f246a7c4d2e53eef3159343ceca57dc2a4b2da688900fd0e32645 |
SpeedBreaker-macos.dmg |
Mac (Apple silicon, macOS 15 or later) | 19.8 MB | d7d1d16650464ad36448166b65d4dc270a7bac7946d2251325508045b595932c |
SpeedBreaker-0.1.6-ios.ipa |
iPhone and iPad (experimental, to sideload) | 15.8 MB | b054b87272a6d3e44775acf82e24e7e0f21b2e2e5fce35bd541361012d3925b5 |
SpeedBreaker-0.1.6-third-party-source.tar.xz |
Source of the LGPL and GPL libraries in the downloads | 213.6 MB | e980c2c64847cc38098c70cb180d2c2cc54ad7ed1e28bc28302ce5a5b6eb1954 |
Each file has its .sha256 next to it on this page. Download both into the same folder, then
run sha256sum -c SpeedBreaker-steamos-x86_64.tar.xz.sha256 on SteamOS or Linux, or
shasum -a 256 -c SpeedBreaker-macos.dmg.sha256 on a Mac (with your file's name). It should
say OK.
Known issues and limits
- Mac, the first time you open it: the app isn't notarized by Apple, so macOS refuses to
open it and offers Done or Move to Trash. Click Done. Then go to System Settings >
Privacy & Security, scroll down to the message that SpeedBreaker was blocked, click Open
Anyway, and confirm with Open Anyway and your password (or Touch ID). After that it opens
normally.- The Open Anyway button only stays there for about an hour after the refusal. If it's gone,
open the app again. - You do this once per download, so once more after each update. Control-click > Open no
longer skips it. - The app isn't damaged. If macOS ever says it is, check the download against its
.sha256and
download it again. - Apple silicon only, macOS 15 or later.
- The Open Anyway button only stays there for about an hour after the refusal. If it's gone,
- macOS 15 Sequoia was tested in a virtual machine, not yet on a real Mac. If you play on
macOS 15, a short report in the issues, working or not, with your Mac's model, would help a lot. - Mac frame pacing was measured on a MacBook Pro (M1 Pro) with its 120 Hz ProMotion screen, in
fullscreen. Other 120 Hz screens (other Macs, external displays) and windowed play weren't
measured; a frame that isn't ready in time is shown when it is, as before. - A Brightness slider moved before v0.1.4: if you moved the game's own slider in an earlier
version (where it did nothing) and the game has saved since, v0.1.4 and later use that setting
from the main menu on. At maximum the picture is much brighter and washed out, as on a 360 with that save.
In the pause menu > Options > Video, set the slider back to the middle, or press Y (Defaults) and
choose Yes. Settings > Display > Brightness doesn't undo it. - Steam Deck OLED: set the refresh rate to 60 Hz (Quick Access > Performance). At 90 Hz
the game stutters. Leave the Framerate Limit off. The Steam Deck LCD hasn't been tested yet. - Game Mode on Steam Deck and Steam Machine:
- Browse for image... may not open in Game Mode. Use the image the installer found instead:
it is highlighted, so press A, then A again on Install. If it found more than one
(for example one in Downloads and one on the SD card), pick yours with Up and Down first. - Choose a folder... opens its folder picker only in Desktop Mode. Pick the folder there, or
run~/Games/SpeedBreaker/speedbreaker.sh --install <image> --dest <folder>from Konsole. Use
a folder on the internal storage or on a card formatted by SteamOS, or Game Mode won't find
the game. - Game Mode only sees SD cards and USB drives formatted by SteamOS. For others, copy the image
into Downloads from Desktop Mode. - Docked, or on a Steam Machine, set the shortcut's Game Resolution to Native.
- Browse for image... may not open in Game Mode. Use the image the installer found instead:
- Steam Frame: it plays as a big flat screen in the headset; it is not a VR mode. Set Display >
Frame Rate to 30 fps for smooth play (the headset's compositor shares the graphics chip; the
game keeps its full speed). The Frame's file manager can't unpack the download: use the Konsole
command in the setup steps. Since v0.1.2 the game needs a current SteamOS on the Frame (September
2026 or later): if it saysGLIBCXX_3.4.34 not found, update SteamOS. - Linux:
- Always start it with
speedbreaker.sh. Started on its own, the program inlib/fails on
most systems with a message such asGLIBC_2.44 not found. - The x86-64 download is tested here on SteamOS. Players reported v0.1.1 working on Fedora 44
with a GeForce GTX 1080 Ti and on Ubuntu 24.04 with Intel Arc graphics (issue #2).
The dedicated-GPU choice on two-GPU laptops hasn't been tried on a real laptop here yet: a
note with your laptop's[video] Vulkan devices:log line would help. - Choose a folder... needs a file chooser portal or zenity; without one, install with
--dest. - It needs a CPU with AVX2 (Intel Haswell, AMD Excavator or Zen, or newer) and Vulkan 1.2
graphics.
- Always start it with
- iPhone and iPad: the IPA is experimental and hasn't been installed on a device yet (see
above). On the iPhone 18 Pro Max, long sessions on a charger get it hot even at 1x, and Frame
Rate Auto then drops to 30. - Going back to v0.1.4 works, but if you change a setting there, it forgets the keys set on
the Controls page: back in v0.1.5 or later they are the defaults again. - Game versions: only the USA (NTSC-U) Xbox 360 disc is supported. PAL and Japanese discs,
re-releases, Games on Demand packages and the PC version aren't, and no title update is used. - Not in this release: importing Xbox 360 saves, controller button remapping, mouse control in the game,
more than 60 fps (the game's own cap), and Android builds. Windows is coming soon.
Reporting a bug
- Open the settings (F1; Back + Start on a controller; on a Steam Deck hold View and press Menu;
on a Steam Frame press Menu + View; a three-finger tap on iPhone and iPad), go to
Advanced and choose Save Bug Report. - A notice says where the zip file went: usually your Desktop (on SteamOS, pick it up in Desktop
Mode, or in the Desktop app on a Steam Frame), or the SpeedBreaker folder in the Files app on
iPhone and iPad. Its name says which version you're running, for example
speedbreaker-bug-report-v0.1.6-<date>_<time>.zip. Nothing is uploaded, and nothing is
checked online unless you press Check for Updates. - Check the open issues first. Then
open a new issue, attach the zip, and say which device and download you use, what you were
doing, what you expected, what happened, and roughly how long into the session it happened.
If the game crashed, start it again and save a report: the crash report is included.
Never attach game files or disc images to an issue.
CONTRIBUTING.md
says how bug reports and pull requests are handled.
Thanks
To aleszczynskig for the Mac title bar (pull request #23), to Omega3komma3 for the sound and freeze
report and its bug reports (#20), and to DoubleDips and m9cy884mv6-a11y for the menu borders (#19).
License and legal
SpeedBreaker is free software under the GNU General Public License, version 3 or (at your
option) any later version (GPL-3.0-or-later). Each download carries its license notices and every
bundled library's own license (licenses/ in the SteamOS downloads,
SpeedBreaker.app/Contents/Resources/licenses in the Mac app, SpeedBreaker.app/licenses in the
IPA).
The complete source of the LGPL and GPL code by others in these downloads (FFmpeg with
SpeedBreaker's patch and libmspack in all of them; the GNU C Library and GCC's runtime libraries in
the x86-64 one) is attached below as SpeedBreaker-0.1.6-third-party-source.tar.xz.
"Need for Speed" and "Most Wanted" are trademarks of Electronic Arts Inc. Steam, Steam Deck, Steam
Machine, Steam Frame and SteamOS are trademarks of Valve Corporation. iPhone, iPad and macOS are
trademarks of Apple Inc. All other trademarks belong to their respective owners. SpeedBreaker is a
fan project by project(u), not affiliated with, endorsed by or sponsored by Electronic Arts Inc.,
the Need for Speed brand, Valve Corporation or Apple Inc. It contains no game data or assets, and
is provided "as is", without warranty of any kind. No game files are included: you need a
backup of your own USA (NTSC-U) Xbox 360 disc.