123b01930e104851aec3daa491066fceff98ab48
The setjmp/longjmp error handling mechanism may fail with Microsoft C++ since they utilize the same stack-unwinding mechanism with C++ exception handling. Lua calling longjmp after luaD_rawrunprotected returns causes unpredictable behaviour. On Windows x64 build, this causes lua_error to crash the whole StepMania program. Lua provides the same macros to utilize C++ throw/catch, which effectively solve the problem. Just specify Lua library as C++ code to enable them. Reference: https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/longjmp
StepMania
StepMania is an advanced cross-platform rhythm game for home and arcade use.
Advanced cross-platform rhythm game for home and arcade use.
Installation
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:
- Windows users are expected to have installed the Microsoft Visual C++ x86 Redistributable for Visual Studio 2015 prior to running the game. For those on a 64-bit operating system, grab the x64 redistributable as well. Windows 7 is the minimum supported version.
- Mac OS X users need to have Mac OS X 10.6.8 or higher to run StepMania.
- Linux users should receive all they need from the package manager of their choice.
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.
Resources
- Website: http://www.stepmania.com/
- IRC: irc.freenode.net/#stepmania-devs
- Lua for SM5: https://dguzek.github.io/Lua-For-SM5/
- Lua API Documentation can be found in the Docs folder.
Licensing Terms
In short- you can do anything you like with the game (including sell products made with it), provided you do not:
- Sell the game with the included songs
- Claim to have created the engine yourself or remove the credits
- 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 http://www.stepmania.com/)
For specific information/legalese:
- All of our source code is under the MIT license.
- Any songs that are included within this repository are under the CC-NC license.
- The MAD library and FFmpeg codecs when built with our code use the GPL license.
Description
Languages
C++
85.7%
Lua
4.3%
C
4.3%
Rich Text Format
2.3%
CMake
1.1%
Other
2%