A first try in making a rythmic platform game in Godot
- make demo riff (150bpm) * done, trouble with bass export
- does music preload ? How preload music work ? * seems to work like that
- add icons to Beat and Grid * done
- add a full riff counter to trigger events that span on multiple measures * done, not very elegant, maybe add it into Tempo class
- set the music and tempo in project * done, triggered with buttons and layers wait for next measure to start.
- make filled blocs with collisionShape * done with custom parameters but doesn't work when duplicating it to another scene
- make blocs movements triggered by tempo data _ *done, but better with animationPlayer_
- make areas to reach to trigger new layers of music and level * done
- try player stick to platform (move_and_slide_with_snap) * done
- experiment more detailed bloc movements with animationPlayer * done, by checking 'sync to physics' in collision parameter of KinematicBody
- make different bloc behaviours * WIP
- check how to apply tempo data to animationPlayer animation _ better be done by injecting midi data and convert tick to absolute time
- test game mechanics
- may need to make tempo with 16th
- make tempo global, see how to connect it to any element * No, better have one tempo per song
- have a midi parsing and then syncing or selecting trigger events on a visual GUI
- separate X and Y line steps for grid subdivisions
- keyboard input for the time being, make swipe after
- have a "1,2,3,4!" when touching an area, so that player analyzes level rythm first, later in the gamedev
- try player that moves like blocs but on user input
- try player movement/input in sync with tempo
- WIP
- better tempo algorythm, data structure and bgm sync * done, make it global
- blocs movements not pixel-perfect, to solve * solved thanks to Tweens
- how to have 'reaching' animations, ex: speed curve before reaching beat hit, can move on beat or reach beat * Getting closer, can trigger tween 1 quart before for example and using Expo curve for example
- more modular bloc behaviors. ex: move 1, wait 1, back 1 use animationPlayer
- Make metronome * done, and solved latency bug by using 1 timer instead of 3
- Metronome sends tempo data out * done
- player receives tempo data * done
- player moves sync to tempo * done, parameters : direction, distance and on which beat move
- implement all eight beats scenario * done, refactoring may be needed later
- have speed adapt to selected beat, or make it custom for each element * done, exported in inspector for now
- make a grid * done
- make different platform elements & behaviors * tested by duplicating in editor and works. later refactor in a more scalable design
- make player & input (keyboard UP/LEFT/RIGHT/DOWN) * done, simple keyboard inputs
- test a first game design with music at 120bpm * WIP, make better collision shapes