A downloadable game for Windows, macOS, and Linux

This is a rhythm game with a unique tilt mechanic, but otherwise kept quite simple: no hold notes or anything, just pure RHYTHM 👍 (yet it has some details that *might just* allow for complex note patterns :smiling_imp:)

Controls

  • Your position is indicated by the yellow star which can be moved to different faces of the central "stage"
  • Hold WASD to tilt the player onto the stage's 4 sides; tilting only needs to be timed correctly to hit the red triangular notes
  • Press IJKL to hit the bar-shaped notes approaching from 4 directions, including either edge of a side face (the corners, which the player can reach by tilting onto the side face)

Mechanics

Note types

Notes approach the centre stage, moving steadily from the 4 directions, and should be hit when they reach the stage's light outlines.

  • Centre note: long bar-shaped notes that approach towards the 4 edges of the stage's top face, where the player is by default; from the top-down view, they should be hit when they reach the inner square outline
  • Corner note: similar to the centre notes, except quite a bit more vertical in 3D space; they move vertically/horizontally from the top-down view but eventually reach a corner, where you should tilt the player onto an adjacent side to then hit towards the corner
  • Tilt note: red triangular notes that approach along the floor; unlike the other note types, you hit these by tilting towards the note at the right time

Timing

Like the usual rhythm game, time your inputs to the chart's rhythm in order to score the most points. The normalized score is just (raw score ÷ maximum achievable score × 1,000,000) so there is no bonus for combo (the maximum achievable score is simply the note count × 2). You also get a rank based on the normalized score:

RankScore cutoff
P1,000,000
S≥ 0,950,000
A
≥ 0,850,000
B≥ 0,750,000
C≥ 0,600,000
D< 0,600,000
  • For centre and corner notes, hitting too early will count as a miss, but this doesn't apply for tilt notes
  • Here's a table of timing windows:
Timing±50 ms±100 ms-150 ms (early), or didn't hit
JudgementGoodOKMiss
Hit effect colorblueyellowred
Raw score2 points
1 point
0 points

[kinda crucial] details

As briefly mentioned implied, corner notes can be hit from either adjacent side face from the corner it's approaching; e.g. if you have a corner note coming from the right and headed for the top right corner of the stage, you can either tilt upwards and hit right, or tilt right and hit upwards; both produce identical results.

But this also applies to centre notes, so if you have a centre note coming from the right, then you can either stay on the centre of the stage and just hit right, or tilt right and hit left (since when the player moves to the right side face, the right edge of the stage's centre face will be to the left of the player).

Regarding the tilt mechanics, centre and corner notes provide a kind of "tilt leniency" system:

  • In the case that you press both a tilt and a hit button at the same time, your inputs may not be perfectly in sync, so the game may register the hit before you actually tilt, or vice versa
  • Without tilt leniency, if you wanted to hit a corner note and you inputted the hit slightly before the tilt, then it'd register as hitting from the centre face before tilting and then not hitting the corner note
  • However, the game actually accounts for this by letting that note store the direction you hit towards, so it will register as long as you tilt in such a way that the note will be successfully hit
  • Centre and corner notes don't care about the timing of your tilt; you just need to have been on that side face at any point within the "OK" timing window, and the note will be hit based on the timing of your hit

Charts

📮If you've made a chart, share it in the #chart-posting channel here:
https://discord.gg/yW64fn6j8E

Folder structure

Your charts should be placed in the folder specified in the game's settings. Each song's assets are contained within the song's own folder. These are the assets that the game will load:

  • "metadata.txt" is a required file for each chart; inside, you should fill out the song/chart information (one per line). The game will identify the info if they're preceded by the following: "TITLE=", "ARTIST=", "CHARTER=", and "BPM=" (note that BPM doesn't have to be a number, e.g. you could write "BPM=90~250 (180)" as a way of specifying the tempo range)
  • The first MP3 or OGG that it finds will be used as the music (for all difficulties)
  • The first PNG or JPG that it finds will be used as the chart's cover art
  • The presence of each text file named "[0/1/2/3/4].txt" gets displayed as the 5 possible difficulties: Easy, Normal, Hard, Expert, and Master; e.g. the path of the Expert difficulty would be something like "/charts/Song Name/3.txt". You don't have to chart all 5 difficulties, as the game will only show the ones in the chart's folder

Chart format

In a chart's [difficulty].txt file, notes and rests are parsed character-by-character, each note or rest lasting one "tick". The tick duration depends on the current BPM and beat division. First, here's a table of how the game reads the characters in the chart file to spawn the 16 unique notes, mapped for QWERTY keyboard layout:

3
q 🌽w 🌽e 🐟r 🌽t 🌽
as 🐟d 🐟f 🐟g
z 🌽x 🌽cv 🌽b 🌽
  • 🐟: centre notes are mapped to the characters of an E S D F layout
  • ⭐: tilt notes use the characters that are one extra key further from the centre of ESDF, being 3 A C G
  • 🌽: corner notes can come from 2 directions for each corner, so there are 8 characters dedicated to them; W R and X V approach their corners from the top and bottom, while Q Z and T B approach from left and right
  • Any non-note character (not in the table) will be counted as a tick of rest, lasting the same duration as the note character. However, space and newline characters are ignored so you may use them to make your chart look neater; e.g. "e--e --e-" will produce a simple tresillo rhythm lasting 8 ticks
  • Write "#[bpm],[div]" to change the BPM and beat division for; e.g. "#128x0.5 .. .." will set the BPM to 128, and the note division to 0.5 which results in each tick lasting 2 beats instead. The character between those two numbers can be anything that isn't a digit or period, and as that second number ends at the space character, the 4 periods are parsed as 8 beats of rest. If one of the numbers is omitted, it will be kept the same; e.g. "#,4" will retain the previous BPM but set the division to be 16th notes (semiquavers)
  • To create multiple notes to be hit at the same time, put those notes in square brackets; e.g. "[sf]" lasts one tick (like a regular single note), but will spawn two centre notes coming from the left and right at once
  • Put "!" before any note character to use an alternate appearance (currently it's a trail effect); you may use it to indicate a tilt note should be held
  • Add the "~" symbol at any line to write comments in the chart files for each difficulty; the rest of the line will count as commented (until a newline)
  • To offset the start of the chart in order to sync it to the audio, you can just insert 1 tick of rest with its BPM being (60 ÷ desired delay in seconds) and beat division at 1
  • For testing purposes, you can make the first line of the chart begin with "~START=" followed by a timestamp in seconds, to fastforward the chart to that time upon loading it in-game (although all notes prior to that point will instantly spawn in and then miss)

Planned features? (maybe)

  • Extra early indicators for which directions the notes will approach from, and other improvements for readability
  • Overhaul of the UI so it actually looks good and has a theme instead of the default Godot elements
  • Early/late info, including an osu! style bar; along with better offset adjustment
  • Controller support, so you'd tilt with the left joystick and hit with the 4 buttons
  • An entire built-in chart editor
  • Loading custom skins, which includes 3D models for ingame elements
  • More original songs for the game?
StatusIn development
PlatformsWindows, macOS, Linux
Rating
Rated 5.0 out of 5 stars
(2 total ratings)
AuthorInterChan
GenreRhythm
Made withGodot
Tags3D, Godot, Level Editor, Low-poly, Music
Average sessionA few minutes
LanguagesEnglish
InputsKeyboard

Download

Download
Sidenote v1-beta2 windows.zip 26 MB
Download
Sidenote v1-beta2 linux.zip 23 MB
Download
Sidenote v1-beta2 macos.zip 47 MB

Development log

Leave a comment

Log in with itch.io to leave a comment.