Windows installer release meant to be installed in its own clean directory.
- Installer will install VS2015 C++ x86 redistros & portable.ini - cc8add3 5a5eec8
- Millisecond Scoring system (MSS & Wife) - 0e02141 0c1eaf3 bc26e1d 92f3398 bd9ad63
- Mina Standardized Difficulty (MSD) - bd9ad63 065aef4
- Polling on X11 Input Thread - e8964fc
- Predictive Frame Limiter - 8fbd324 b27d673 3d0f895 4a1dca9 edbb2df a77e8b7
- Preference for Allowed Lag in milliseconds - 87a8085
- Some new songs come shipped with Etterna - bd9ad63
- SongFinished message for Fail Grades - 70a432f
- The Til Death theme & some optimized Noteskins are now shipped with Etterna - bd9ad63
- Uninstaller will uninstall all proper files - 5abe56f
- C++ Standard is now C++11. CMake standard is now 3.2.0. - 89eda0d b0821f8
- Caching and Uncaching Noteskins no longer calls MakeLower several times - f7f2e52
- Calculate instead of search for visible Beats for Taps - cc491ff 028b8f2 1e16e08 26b8064 28cce6d 7efa383
- CrossedBeat Messages can be sent - e973335
- D3D Display Resolutions are now unsigned ints because they can't be negative - aec2955
- DancingCharacters & Lights are allowed to update - fa2870d 956b81c
- Default preferences & bindings are more the commonly used ones - 16d03b2 e8964fc 1b49619 053a655
- DirectX is the default renderer on Windows - 5a5eec8
- Don't autogenerate courses by default - 935d764
- Don't autogenerate lights data by default - d973824
- Don't calculate the NonEmptyRow Vector elapsed times every time NoteData is loaded - 1f1b75c
- Don't get a song cache hash unless needed (songload optimization) - 2b3722c
- FPS only updates per rendered frame - 6404aee
- Generate Chartkeys in the load from disk to cache process - c21c490 c154cb8
- Improve song load speed by optimizing a for loop - 10808b4
- Improve stat calculation lag & use std::chrono for timers such as device timestamps and fDeltaTime - 8bec801 57bc635 d59c4eb 3a1cab2 33802bf
- Invalid (autoplay & negative points) scores don't save - de0eb09
- NoteDisplay updates every frame again, since the game runs faster - 150325c
- Optimize calls to BeatToNoteRow by replacing it with a function that uses the calculated timestamps from the Non Empty Row Vectors - de1ebe0
- Optimize FindEvent function in TimingData - dd6cb56
- Pulled SM 5.1 changes for cache writing & loading some SSC files - 2196aa0
- Pulled SM 5.1 changes to remove the custom Mersenne Twister, replace it with std::shuffle - c158f80
- RStrings and some other things are now almost always passed by reference - dac3888 3ef472b
- Replace Rage toUpper/toLower functions with std functions for a 32% speed boost on song loading & optimizations for Screens with lots of text - d4331d8 e778a35
- Redundant NoteDisplay IsOnScreen function only checked what is already checked for all cases elsewhere - 0de46d1
- Unneeded Hold body rendering overshoot - dd0c1f9
- Edit Mode was crashing upon any Gameplay Judgments - b5be683
- Holds in skins which don't explicitly flip the head/tail were improperly rendered - b337430 acdefc2
- Hold tails were wrongly flipped - aca2bd4
- Installer didn't work - 46bdf4b
- Unlocked Gameplay FrameLimiter froze the game sometimes - 2b4d67e