This project allows you to create a stream of notes (aka a beatmap/chart) for the "Feel the beats" rhythm game on scratch. (a-la guitar hero/osu mania) Game link: https://scratch.mit.edu/projects/214754770/ **REQUIRES TURBO MODE** REMEMBER: Use the [S][D][F][SPACE][J][K][L] keys to PLACE notes. Use the [W][E][R] [T] [Y][U][I] keys to DELETE placed notes. Only the "Regular" note type works - there are no hold or double notes yet. v2.00003 - July 2020 (update description again) v2.00002 - Sept 2019 (update description again) v2.00001 - Oct 2018 (update description + thumbnail) v2.0 - April 2018 (full release) v1.0 - April 2016 (demo) ---------------------------- INSTRUCTIONS (IMPORTANT) A finished chart I made is already included in this project, click either of the "Load" buttons in the main menu to open it and see how this project works. To create a new chart: 1. Find a suitable piece of music (see rules below) 2. Hit 'make new chart' button from main menu 3. Fill out the song info (name, artist, song length, etc) *** *** You can use a BPM tapper (google it) to get BPM. See section below for more hints about this. 4. Edit your sound files in audacity and upload them into the "song" sprite (within this project) as shown in the instructions. 5. Use the "play full speed / play half speed" buttons on the left side of the charter interface to start song playback. 6. Use the [S][D][F][SPACE][J][K][L] keys to PLACE notes during playback. 7. Use the [W][E][R] [T] [Y][U][I] keys to DELETE placed notes during playback. 8. SAVE (remix) the project - or else you will LOSE ALL YOUR WORK! Open your remixed charter to work on your chart. 9. If you accidentally return to the main menu, You MUST load from 'Last saved state'. (If you "load from 'export' sprite" without having "exported" earlier, you will LOSE ALL YOUR WORK) 10. When finished, click the {EXPORT} button on the top of the charting interface to export your chart. The "EXPORT" sprite will now have all the chart information. 11. Move the song sound files from the "SONG" sprite over to the "EXPORT" sprite. (just the FULL song and half-speed FULL song) 12. Now the "EXPORT" sprite can be saved to your computer and uploaded into the Feel the beats game project. 13. Give your "EXPORT" sprite a new internal ID and It will show up on the game menu and be playable! ---------------------------- RULES - Choose songs that don't change speed (aka no changes in tempo [bpm]). This is because the charter only has one tempo (bpm) stored for the song and cannot change this on the fly. - Choose songs with simple rhythms (eg, where the main melody is always 1 note per beat, or 2 notes per beat, etc...). Don't try to chart something with - for example - complicated eighth notes and triplets, because you can't change note snapping while charting. (eg, if you choose 1/8 note snapping, then you'll be stuck with 1/8 snapping [and triplets require 1/3 snapping]) - Only chart the 1 or 2 main instruments, any more is unmanageable - Don't chart songs any longer than 30-60 seconds. You can make songs shorter by just cutting a section from a longer song with audacity. (It's very time consuming to chart songs that are longer) - Songs with constant tempo and time signature are required (ex: simple midi songs & digitally produced songs - as opposed to jazz) - You MUST use music files with ALL silence before the first note removed (the charter expects the song to start immediately, so this helps you synchronize notes). - When filling out song length be accurate to 0.001 seconds. - When uploading song 'halves', be accurate in cutting the song exactly in the right place (or else sync will be off during charting). - If you use audacity to make half-speed files, check the 'high-quality' option when exporting (sounds better) - Save your music files as .mp3 so they take up less space. Music files larger than 10MB cause the scratch client not to save. ---------------------------- NOTE STREAM FORMAT Each index in the array is one time step (tick) of the chart. The total number of ticks (length of array) = song length in secs * BPM * 60 * (1 / beatstep) [beatstep is notes per beat, aka tickrate] Each entry in the array is "0000000" (each 0 representing 1 of 7 note channels). The '0's are replaced by '1's when a note is placed. The charter does not currently support data compression, the output notestream list is directly used by the game. If you know some notes are not synced correctly you can open the notestream list and make manual edits instead of using the charting interface. Be sure to edit the game-wide 'global' notestream instead of the one that's private to the 'export' sprite.