A project to modernize the StepMania 5.0.12/5.1 codebase to improve its performance and provide enhanced support for modern hardware and operating systems. We are also adding new features, including those being requested by our community, as well as refurbishing its support of non-dance/4-key game types, adding new game types, and so forth.
Project OutFox builds upon the existing StepMania 5.0.12/5.1 beta codebase, and maintaining backwards compatibility with older content is one of our main priorities (in fact, this is one of the reasons why the internal version number is 5.3 rather than skipping to a higher number like 6.0). Content that worked on StepMania 5.0.12/5.1 (including songs, themes, and noteskins) should still work on OutFox. If you experience any issues/weirdness, please report it to us.
Please note that we are deprecating the use of semicolon-separated
cmd() blocks (i.e.
OnCommand=cmd(linear,1.5;diffusealpha,1); ) as a means of placing commands on actors in Lua scripts, as this method is a non-standard Lua function that was created for StepMania, and OutFox is not optimized with this coding style in mind (themes may experience performance penalties if they use this method). It is strongly recommended that function chaining (i.e. code such as
OnCommand=function(self) self:linear(1.5):diffusealpha(1) end, ) be used instead.
Yes. Our installer on Windows also defaults to portable mode, so user profile data is stored in your installation directory.
If you would like to have a shared song library between multiple builds, you can use the
AdditionalSongFolders preference in
Save/Preferences.ini to specify a path.
The existing SMO functionality is deprecated, but we have future plans to develop a revamped online system.
Right now we are not maintaining a public code repository, but we will open one in the future. As Project OutFox is developing at a rapid pace, allowing source code access at this time would allow users to compile their own builds based on incomplete work, which would be difficult for us to debug and support during this phase of development..
Our code will be licensed under the Apache License 2.0, an open source license used by a variety of major projects (including Android) that provides stronger protections for our rights to be attributed for our work (particularly within forks), while maintaining the ability for StepMania to remain free and open source as it has always been.
If you have any questions related to the Project OutFox code itself, feel free to ask one of the development team members on our Discord server, and we'll be happy to discuss.
The project began as a method to add online and profiles to SM5, but when we looked into the engine to see how this could be appropriated, it was discovered just how much in a sorry state the codebase was, and it looked mostly abandoned. I spoke to Shakesoda in hopes of a resurrection in the form of a team project, and it was requested rather than breaking 10 years of content and community to take the time to make a proper 5.x build that is stable and supports what the community as a whole wants from the game.
This backward compatibility support has been an absolute git to do, but it's something now we are down the line which we are proud of, as it has brought many players and newcomers to the community, and provided a very stable experience for folks during the lockdown. We will continue to maintain a near 100% compatibility where we can, and this is taken into consideration whenever we plan a new feature or change engine components.
We asked if it was ok to close the source while this process was done, and it was deemed wise for the health of the repo and the need of people who are just wanting to play. Its why we've been around the repo but not on it as taint can happen and we do not wish this. SSC [Spinal Shark Collective, the 5.0.x development team] did this same behaviour before us, so we did not see it as a problem. Some vocal members of the community disagreed, including some of the SM dev team. We have also been compared to past SM repo contributors who may have left a less than savoury memory in the minds of some, and it has also been hard to differentiate from history we have no involvement with.
StepMania 5.2 was originally intended to be the next version. However, it included a number of major changes that broke compatibility with previous versions, and were not well-received by the community and other developers.
StepMania 5.2 was originally meant to be 5.1. However, in response to the reception, it was officially delayed in favour of a new 5.1 that was largely an update to 5.0.12 that did not break compatibility with existing content. This was done under the presumption that the new version (subsequently renamed 5.2) would eventually be completed. However, this did not end up happening.
Currently the game features two modes: a HIDAPI-based "Legacy" input system, similar in behaviour to the input system seen in StepMania 5.0, and an XInput-compliant input system (additional configuration is needed to use unrecognized controllers in this mode, see here for more information). If you are unable to map any buttons to the game, try switching modes to Legacy, available as an option in the Experimental Settings menu, or follow the guide mentioned above on how to map your controller with XInput.
Parts of the game are so well-optimised now that they're running too fast, and the rest of the game needs to catch up. We will have a proper fix later, but increasing the amount of background activity (i.e. having other programs running in the background, etc.) is a temporary solution.
Simply Love does work on Project OutFox and since version 5.0, official support has been introduced. With versions 4.8 and 4.9, a compatibility warning is shown by the theme if an unsupported version of StepMania is detected. On 4.8, you can press the Escape button twice to bypass the compatibility warning, but 4.9 blocks this workaround.
If you prefer utilizing those older SL versions, the check can be removed by opening Scripts/SL-SupportHelpers.lua in the theme, and changing the line
if not (t and (t==0 or t==1)) then return false end
if not (t and (t==0 or t==1 or t==3)) then return false end
These issues were brought upon by misunderstandings with the theme's developer over our plans for Project OutFox (including concerns over the aforementioned lack of public source repository). These concerns were able to be resolved with version 5.0.
An unofficial fork is also available and has been forked by TinyFoxes community team, which seeks to perform additional tweaks for compatibility and integrations with Project OutFox.
Install either libglvnd and/or libopengl0 based on your distro.
On Debian-based distros, install the
libopengl0 package. (
sudo apt install libopengl0)
On Fedora-based distros, install
sudo dnf install libglvnd-opengl)
If you receive errors such as "No noteskins found" or other unusual behavior, you will have to change macOS security settings in order for Project OutFox to operate correctly. MacOS performs a process every time a new program has been downloaded called quarantine, which will require Gatekeeper (The OS's security manager) to verify its signature. The OS does not trust unsigned applications, and prevents access to external files unless given manual permission by the user.
To do this, open Terminal and run the following command:
xattr -dr com.apple.quarantine /path/to/StepMania, replacing
/path/to/StepMania with the path to the directory containing the StepMania executable (manually typing it out, or dragging the folder containing the game executable directly onto the window to fill it automatically).
On older builds, macOS Catalina also generated a message stating that the game was requesting permission to receive keystrokes from any application. This was a side effect of previous code that has since been removed.
This is due to the renderer not supporting scaled screens yet. To fix this, right-click the game executable and select "Get info" (or highlight the file and press Command (⌘)+I, and toggle the "Open in Low Resolution" option under General.
If your log (Installation directory/Logs) shows
WDDM1.1 at the end of the graphics card name:
00:00.505: Last seen video driver: Intel(R) 82945G Express Chipset Family (Microsoft Corporation - WDDM 1.0)
or the log shows
Microsoft GDI as the renderer, then you are running the OpenGL-crippled "Windows" driver that is downloaded on a fresh install. Project OutFox will not work on these drivers, as we do not support DirectX 9 anymore (the old D3D renderer that 5.0.12/5.1 uses; keep in mind that it'll be deprecated by Microsoft in the near future).
There is a list of drivers at this site location which may help. Unfortunately, for some of these cards, you may need to keep your Windows 7 install disc handy:
If you happen to use the Intel HD Graphics 3000 graphics chip, there is a technical workaround below that will restore OpenGL functionality on Windows 10 and could be worth a shot if you're experienced with your operating system:
You can download the corresponding driver for your graphics card on AMD's website by visiting the link below and searching your model: