STONKS-9800: Stock Market Simulator

STONKS-9800: Stock Market Simulator

Not enough ratings
On the Structure and Implementation of Karaoke Songs
By Bird of Summer
Data on how karaoke mini-game tracks are constructed, intended for custom track building.
   
Award
Favorite
Favorited
Unfavorite
The Structure
There are two factors that go into a song. The OGG file and the song JSON.

The base OGG can be anything, as long as it comes in OGG format. I've had success stuffing Night of Nights in there.

The song JSON is more interesting.
It these basic properties:

Property
Description
"title": "[song_title]"
Name displayed in karaoke menu
"sound": "[file_name]"
OGG filename (without extension)
"bpm": [BPM]
Self-explanatory
"delay": 0.0
Timing offset- appears unused

You then have the song pattern itself (the notes you hit).
Each note is a 1/16th, and you can only start one note at once (playing notes during sustains is possible)

Value
Type
0
No input
"up", "down", "left", "right"
Single tap notes
"going_up_X", "going_down_X", etc.
Hold notes lasting X

Add 0.0s at the start of your pattern array to create an intro before the first notes. As notes begin spawning the moment you press sing, the padding should be at least 20 notes (longer with faster songs). You can finish your array as soon as you are done with your pattern, however: the OGG will play to completion.

The song JSON defines difficulties. The karaoke segment does not actually use these, but if you try removing "pattern_easy" from the song JSON, it will crash. Has to do something with how the JSON is handled internally. You can simply provide
"pattern_easy": [0]
and the song will load fine.
The Implementation
Based on the above, I was able to throw together a piece of software that "translates" Deltarune custom charts to the STONKS format. I do not think it wise to distribute it, but I will demonstrate an example.

The original is the work of MrPolish, found below.
here

The work distributes an ogg file, which you can easily identify to be 120 BPM using a tool such as Audacity. After that, translating the chart (here selecting vocals), leads to
these two files[files.catbox.moe]
which, dropped into your karaoke/ folder, are patently playable, if overcharted.

This demonstrate the capabilities of the chart system.
Proper chart making software is yet to be developed.