Skip to main content
Etterna

Etterna

Open Source Contributor
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.
  • 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 RequestDescription
#458Fix segfault on linux caused by image writing
#468Remove unused CMake Variables
#478Fix macOS Build issues caused by PR#445
#513Update root README.md
#514CMake Spring Cleaning
#520Remove redundant header text from README.md
#529Prevent windows-only MinaCalc (internal lib)
#532Change install directory
#553Upgrade to C++17
#557Update CPack (installer generator)
#559Fix Linux build issues caused by CMake updates PR#557
#561Change CMake order of operations to fix build issues on Linux
#565Update Building.md to include images for CMake GUI
#680Update macOS dependencies and build instructions
#686Fix macOS Catalina crashing
#728Update curl to 7.69.1
#767๐Ÿ“ Improve Logging System
#768Improve CMake System (delayed from PR#481)
#783Completely move to Github Actions
#786Fix Github Action for Coverity Scan
#824Remove 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 RequestDescriptionReason for Rejection
#466First attempt at rewriting CMake build systemRejected for scope being too large
#530Remove foreach.hRejected as not all replacements were correct
#543Remove instances of using namespace <lib>;Rejected for requiring too many additional changes
#567Remove instances of using <anything>;Rejected for changing game functionality
#758Update files in Visual Studio, NetworkSyncManager to use /bigobjRejected for improved solution in different PR
#884๐Ÿ“– Better DocumentationRejected because I thought I could do better
#921โฒ๏ธ Updated Timer ImplementationReason for closure not documented, likely too large in scope
#921๐Ÿ–ฅ๏ธ Improved Window System & ๐Ÿงน Minor OrganizationRejected because I knew I could do better
#1013๐Ÿ–ฅ๏ธ Improved Window System & InputRejected for affecting input timing