Homebrew Switch Hero - Guitar-hero clone for Switch

forgotten-865

Well-Known Member
Newcomer
Joined
Jan 15, 2026
Messages
80
Reaction score
231
Trophies
0
XP
434
Country
Australia



A five-fret rhythm game for Nintendo Switch homebrew, written in C++17 and SDL2. It plays Clone Hero-style song folders, downloads charts from Chorus Encore in-game, and works with Joy-Cons, a Pro Controller or a Wii guitar. It is an independent implementation, not a port of Clone Hero's proprietary source.

Install on a Switch​

The ready-to-copy build is in release/. Copy release/switch-hero into the switch folder at the root of the SD card:
Code:
sd:/switch/switch-hero/
  switch-hero.nro
  songs/First-Light/     (demo song)

Launch it from the Homebrew Menu. Hold R while starting any game to open the Homebrew Menu with full memory. That's recommended for big songs and needed if the download keyboard won't open. Settings are saved to sd:/switch/switch-hero/settings.cfg and high scores to sd:/switch/switch-hero/scores.cfg. release/INSTALL.txt has the same steps for the SD card.
Coming from the prototype when it was called Fretboard? Move your songs and settings.cfg from sd:/switch/fretboard/ to sd:/switch/switch-hero/, then delete the old folder so the Homebrew Menu only lists Switch Hero.

Features​

  • Smooth, steady scrolling. The song clock runs on the real-time timer and slowly leans towards the audio's average position, changing speed by at most 1% (the approach YARG uses). Notes don't wobble with the audio backend's buffer steps. Each note sits exactly where the highway's perspective puts it, and notes fade in from the far end of the board.
  • Hit windows and timing grades. How far off a note can be and still count depends on the difficulty: on the Normal setting, +-85 ms on Expert, 92 on Hard, 100 on Medium and 110 on Easy. Options -> Gameplay -> Hit window makes that Strict (about the old fixed 70 ms on Expert) or Lenient. Inside the window, perfect is the closest ~36% of it, great the closest ~64%, and the rest is good, worth 1.35x, 1.15x and 1x. Presses are judged at their input timestamps (SDL events on desktop, the input thread on Switch) rather than at the frame that reads them.
  • Timing tips. If a song's hits were consistently early or late (the median of at least 12 hits is 6 ms or more off), the results screen says so and offers Fix timing, which moves the audio offset by that amount.
  • Offset calibration. Tap along to set the audio and visual offsets (see Calibration).
  • In-game chart downloads from Chorus Encore (see Downloading charts).
  • Cut-jewel gems and classic fire. Gems are rendered in 3D once at startup, on background threads. A ray marcher lights each sprite pixel of a cut jewel in a gunmetal bezel: eight crown facets rise to a flat table, and each facet catches the room and the stage light up the highway differently. The result is saved as textures, so a gem costs one sprite per frame. Gems flatten slightly toward the far end of the board, as the view angle there is shallower. Hammer-ons light the table up white, which stays readable at play size, and star notes are cut stars. Hits throw orange fire, a shockwave, and spark streaks. Perfect hits burn bigger with a star glint, and star power burns blue-white. The strike line pulses with the beat. It's all baked into textures at startup, so it costs little per frame.
  • High scores. Your best score, stars and full combos are saved for each song, part and difficulty. They show on the song list and difficulty screen, and the results screen calls out a new best.
  • Smooth browsing. Charts and covers load on a background thread once the cursor rests, and previews open their audio off the main thread too, so scrolling a big library never hitches. The song list sorts by title, artist or best stars (ZR), and left/right jump between letters, or between star counts when sorted by stars.
  • Song previews. Rest on a song and it fades in from its preview_start_time (or 30% of the way in), then loops.
  • Rock meter, star power and no-fail mode. A miss drains the meter three times as fast as a hit refills it. Star power pulls it back twice as hard.
  • Three controller modes: press-to-hit for Joy-Cons and Pro Controllers, strum, and Wii guitar over Bluetooth.
  • Its own look. A 2000s bedroom full of burned CD-Rs, duct tape and grip tape, with every texture generated in code (see Look).

https://github.com/R-drg/switch-hero/releases
 

Site & Scene News