phalangeography platform for moonlight vigil
etternagame/etterna
Advanced cross-platform rhythm game focused on keyboard play
C++
505
136
I started contributing to this project around the start of 2019 when I was short on personal programming projects, so began searching for a project I could contribute to. Growing up, I used to play a lot of Dance Dance Revolution at my arcade before they closed. I don’t get the chance to play as much today, so instead, I try to make time to work on this game so it can still be enjoyed. It’s not so easy with life going on, but I try to come back.
Major Contributions#
- Pull Request #445 - Organized source files, Removed unused files, Moved libraries
- Before this PR, all source files were in the same
src/
directory.
- Before this PR, all source files were in the same
- Pull Request #481 - Completely rewrite of CMake build system
- The original CMake build system was a mess - Difficult to modify, and difficult to understand.
- Pull Request #780 - Improved CI with GitHub Actions
- This one is semi-major, because it wasn’t a huge change, but it made out developer lives a lot easier, and I’m proud of it.
- Pull Request #882 - ๐ฅ Improve Crash Handling
- This one is major because finding out why our program crashed was a pain point (we only had log files). With this, we have stacktraces on every thread, and we can see the exact line of code that caused the crash.
All Contributions#
Pull Request | Description |
---|---|
#458 | Fix segfault on linux caused by image writing |
#468 | Remove unused CMake Variables |
#478 | Fix macOS Build issues caused by PR#445 |
#513 | Update root README.md |
#514 | CMake Spring Cleaning |
#520 | Remove redundant header text from README.md |
#529 | Prevent windows-only MinaCalc (internal lib) |
#532 | Change install directory |
#553 | Upgrade to C++17 |
#557 | Update CPack (installer generator) |
#559 | Fix Linux build issues caused by CMake updates PR#557 |
#561 | Change CMake order of operations to fix build issues on Linux |
#565 | Update Building.md to include images for CMake GUI |
#680 | Update macOS dependencies and build instructions |
#686 | Fix macOS Catalina crashing |
#728 | Update curl to 7.69.1 |
#767 | ๐ Improve Logging System |
#768 | Improve CMake System (delayed from PR#481) |
#783 | Completely move to Github Actions |
#786 | Fix Github Action for Coverity Scan |
#824 | Remove libssh2 requirement |
#911 | ๐งพ Better AppInfo - Embed git hash, version number, etc |
#917 | ๐ Improving Arch (Platform) Specific Code |
#1001 | ๐ macOS Auto-Untranslocation |
#1010 | ๐ Update LuaJIT |
#1016 | ๐งพ Better Issue Reports |
#1026 | ๐จ Update macOS Build and CI |
#1053 | ๐ฅ Updating Crashpad and Symbol Upload |
#1061 | ๐ก Update Crashpad and Linux Update |
#1071 | โ C++20 Upgrade |
Closed/Rejected Contributions#
Here are some PR’s where the standard was not met, or the scope was too large.
Pull Request | Description | Reason for Rejection |
---|---|---|
#466 | First attempt at rewriting CMake build system | Rejected for scope being too large |
#530 | Remove foreach.h | Rejected as not all replacements were correct |
#543 | Remove instances of using namespace <lib>; | Rejected for requiring too many additional changes |
#567 | Remove instances of using <anything>; | Rejected for changing game functionality |
#758 | Update files in Visual Studio, NetworkSyncManager to use /bigobj | Rejected for improved solution in different PR |
#884 | ๐ Better Documentation | Rejected because I thought I could do better |
#921 | โฒ๏ธ Updated Timer Implementation | Reason for closure not documented, likely too large in scope |
#921 | ๐ฅ๏ธ Improved Window System & ๐งน Minor Organization | Rejected because I knew I could do better |
#1013 | ๐ฅ๏ธ Improved Window System & Input | Rejected for affecting input timing |