Advanced rhythm game for Windows, Linux and OS X. Designed for both home and arcade use.
C++ Lua C CMake M4 XSLT Other
Failed to load latest commit information.
Announcers various text file changes Sep 7, 2011
BGAnimations Revert "More lua." Jul 18, 2013
BackgroundEffects Changed BackgroundEffects files to apply the playback rate to videos.… Feb 5, 2015
BackgroundTransitions change /new, merge with latest? BGeffects still need changing. Jun 19, 2012
Build Merge branch 'master' into 5_1_0 Nov 1, 2015
CMake SDL2 windows (#1296) Nov 22, 2016
Characters New attacks Jul 20, 2012
Courses easier to play course, no options in oni mode Mar 1, 2012
Data Changed Color key fragment shader to fix warning from using 1-alpha. Nov 1, 2015
Docs Notefield targets and a bunch of other stuff (#1480) Sep 17, 2017
Installer new installer graphics and icon Jul 16, 2011
Manual removed beta from link Feb 27, 2015
NoteSkins Notefield targets and a bunch of other stuff (#1480) Sep 17, 2017
Program Compile the Texture Font Generator with cmake. Oct 27, 2015
Scripts Added ScreenContinue:ContinueEnabled metric. Changed Actor:hidden and… Sep 15, 2014
Songs Springtime simfile song offset, bpm/bpm changes and other cosmetic ss… May 16, 2016
Themes new autogen graphic, add more mode-type icons Sep 21, 2017
Utils remove unnecessary handle.exe, as reported in issue #608 May 14, 2015
Xcode Enable submodule support for ogg and vorbis. Jun 21, 2016
_assets Basque language translation for default theme (#1343) Nov 22, 2016
autoconf Use XRandR 1.2 to set fullscreen resolution for single output Feb 23, 2016
extern Use standard bit detection. Add other cleanup. Jul 1, 2016
icons/hicolor Add desktop entry and icons for UNIX systems. Feb 18, 2010
src Notefield targets and a bunch of other stuff (#1480) Sep 17, 2017
.appveyor.yml Minor improvements for Windows. (#1249) Aug 11, 2016
.editorconfig Transfer sane math functions to the Rage Library. Sep 30, 2015
.gitignore Merge branch 'master' into 5_1_0 Oct 28, 2015
.gitmodules Enable submodule support for ogg and vorbis. Jun 21, 2016
.travis.yml Temporarily stop clang from compiling. Jun 12, 2016
CMakeLists.txt Log with std::string. Oct 11, 2015 In autoconf we trust (*snicker*) Jan 28, 2015 Merge branch 'master' into 5_1_0 Jan 16, 2016
StepmaniaCore.cmake SDL2 windows (#1296) Nov 22, 2016 Remove some sm-ssc references. Feb 4, 2014 Fix typo in Mar 10, 2015
stepmania.desktop remove the ssc part from the Name in stepmania.desktop Aug 30, 2014
stepmania.nsi add sm5_beginner.txt to NSIS install script Oct 2, 2014


StepMania is an advanced cross-platform rhythm game for home and arcade use.

Advanced cross-platform rhythm game for home and arcade use.

Build Status Build status


From Packages

For those that do not wish to compile the game on their own and use a binary right away, be aware of the following issues:

From Source

StepMania can be compiled using CMake. More information about using CMake can be found in both the Build directory and CMake's documentation.


This repository now uses submodules to attempt to keep the repository size down. Utilize git submodule init and git submodule update to get the necessary submodules.


Licensing Terms

In short- you can do anything you like with the game (including sell products made with it), provided you do not:

  1. Sell the game with the included songs
  2. Claim to have created the engine yourself or remove the credits
  3. Not provide source code for any build which differs from any official release which includes MP3 support.

(It's not required, but we would also appreciate it if you link back to

For specific information/legalese: