This is a Friday Night Funkin' Game Engine designed in Godot, and is meant to be easy to modify / understand so that you can understand how the basic principles of the Rhythm game functions.
-
Note,Strum, &StrumLineuse Constructors for performance increase, no Scene is attached to the script. -
Conductorusing the "QuarterSeconds Conductor" formula (read the script for more info) -
ConductorhasAudioStreamSynchronizedso you can appendAudioStreamsinto it so it will always have the audio's synced. - Downscroll uses negative
scroll_speed - Optimized
NoteRendering- Only adds the
Noteto the Scene if it is in therender_limit
- Only adds the
- Uses Resources for
Chart,ChartMeta,ChartNote&ChartStrumLineto make it friendly to interact with, and add chart parsing for various engines.- Currently only CodenameEngine charts can be parsed as of now
- Implements a
FunkinHelperUtility- Currently is used for
DirectionTypeand Animation Remaps for Note Types
- Currently is used for
-
SparrowAtlasimplementaion somewhat based off of FunkinGodot- Combined formatting and rotated sprite implementation, the rest I did figure out myself but still credits to cherry 🔥
- I plan for the
SparrowAtlasresource to contain the SpriteFrames, AND the Texture as 1.tresasset but currently not implemented yet
-
NotePositionRemapto allow custom positioning ofNotes -
MultiAudioStreamPlayerfor containing multiple audio players and easier interaction for pausing, and syncing.