Skip to main content
Friday Night Funkin’ includes extensive debug functionality accessible through keyboard shortcuts. Most features are only available in debug builds of the game.
Debug Builds Only: Most of these hotkeys only work in debug builds. Release builds have limited debug functionality for security and performance reasons.

Global Hotkeys (Any State)

These hotkeys work from any screen in the game:
HotkeyFunctionDescription
F2Debug OverlayEnables the Flixel debug overlay with partial scripting support
F3ScreenshotTakes a screenshot and saves it to the screenshots directory (works in release builds)
F4EjectForcibly switch to Main Menu with no transition (useful if stuck)
F5Hot ReloadReload scripts and data files, then restart current state
InsertGarbage CollectionImmediately perform memory garbage collection
Ctrl+Alt+Shift+LForce CrashCrash the game with detailed log and stack trace (Main Menu only)
F5 Hot Reload does not reset song charts or song scripts, but it resets stage layouts, character animations, and most other data files.

Play State Hotkeys

These hotkeys work during active gameplay:

UI and Display

HotkeyFunctionDescription
HHide UIMakes the user interface invisible (works in Pause Menu, great for screenshots)

Gameplay Manipulation

HotkeyFunctionDescription
1End SongImmediately ends the song (Results Screen in Freeplay, next song in Story Mode)
2Gain HealthAdd 10% to the player’s health
3Lose HealthSubtract 5% from the player’s health
9NEATOSecret debug feature

Time Travel

HotkeyFunctionDescription
Page Up (Mac: Fn+Up)Forward JumpMove forward by 2 sections
Shift+Page UpBig Forward JumpMove forward by 20 sections
Page Down (Mac: Fn+Down)Backward JumpMove backward by 2 sections
Shift+Page DownBig Backward JumpMove backward by 20 sections
A section is typically 4 measures (16 beats) of the song. The time travel hotkeys let you skip through the song quickly for testing specific parts.

Editor Access

HotkeyFunctionDescription
CHART HotkeyOpen Chart EditorOpens the Chart Editor with the current song loaded
STAGE HotkeyOpen Stage EditorOpens the old Stage Editor overlay

Freeplay State Hotkeys

These hotkeys work in the Freeplay menu:
HotkeyFunctionDescription
PSwitch CharacterToggle between Pico and Boyfriend (reopens Freeplay)
TTest RankPlay the Gold Perfect rank animation on selected song
Shift+AcceptBotplay ModeStart song with Botplay mode enabled
Ctrl+Switch SongPreview Alt InstrumentalPlay first unlocked alternate instrumental as preview
Botplay Mode makes the game play perfectly automatically - useful for testing charts without actually playing.

Title State Hotkeys

These work on the title screen:
HotkeyFunctionDescription
EscapeQuitExit the game
DCOOLSecret feature
UI Left/UI Right2COOLSecret navigation
YWOAHEaster egg
These work in the main menu:

Primary Hotkeys

HotkeyFunctionDescription
~ (Tilde)Debug MenuOpens menu to access Chart Editor and other editors (rebindable)
Shift+AcceptFreeplay as PicoWhen selecting Freeplay, open with Pico as playable character

Debug-Only Hotkeys

The following hotkeys only work on debug builds and are for testing purposes:
HotkeyFunctionDescription
Ctrl+Alt+Shift+WAll AccessUnlocks all songs in Freeplay
Ctrl+Alt+Shift+MNo More AccessRe-locks all songs except default unlocked ones
Ctrl+Alt+Shift+RGreat ScoreGive a hypothetical overridden score to test rank maintenance
Ctrl+Alt+Shift+PCharacter UnlockForce Character Select screen to play Pico’s unlock animation
Ctrl+Alt+Shift+NCharacter Not SeenMark all characters as not seen, enable BF’s new unlock animation
Ctrl+Alt+Shift+EDump Save DataExport save data as JSON file for inspection

Chart Editor Hotkeys

When using the Chart Editor, these additional shortcuts are available:

File Operations

HotkeyFunctionWindows/LinuxmacOS
New ChartCtrl+NCtrl+N⌘+N
Open ChartCtrl+OCtrl+O⌘+O
Save Chart AsCtrl+Shift+SCtrl+Shift+S⌘+⇧+S
ExitCtrl+QCtrl+Q⌘+Q

Edit Operations

HotkeyFunctionWindows/LinuxmacOS
UndoCtrl+ZCtrl+Z⌘+Z
RedoCtrl+YCtrl+Y⌘+Y
CutCtrl+XCtrl+X⌘+X
CopyCtrl+CCtrl+C⌘+C
PasteCtrl+VCtrl+V⌘+V

Selection

HotkeyFunctionWindows/LinuxmacOS
Select All NotesCtrl+ACtrl+A⌘+A
Select All EventsCtrl+Alt+ACtrl+Alt+A⌘+⌥+A
Invert SelectionCtrl+ICtrl+I⌘+I
Select NoneCtrl+DCtrl+D⌘+D
Select Before CursorShift+HomeShift+Home⇧+Home
Select After CursorShift+EndShift+End⇧+End

Note Manipulation

HotkeyFunctionWindows/LinuxmacOS
Mirror XCtrl+Shift+MCtrl+Shift+M⌘+⇧+M
Mirror YCtrl+Alt+MCtrl+Alt+M⌘+⌥+M
Mirror XYCtrl+Shift+Alt+MCtrl+Shift+Alt+M⌘+⇧+⌥+M
HotkeyFunctionWindows/LinuxmacOS
Previous DifficultyCtrl+←Ctrl+Left⌘+←
Next DifficultyCtrl+→Ctrl+Right⌘+→
Playtest FullEnterEnterEnter
Playtest MinimalShift+EnterShift+Enter⇧+Enter

Animation Editor Hotkeys

When using the Animation Editor:
HotkeyFunctionDescription
1Spritesheet ViewSwitch to spritesheet view
2Animation ViewSwitch to animation offset view
HToggle HUDShow/hide editor UI
F4Exit EditorReturn to main menu
Ctrl+S (Mac: ⌘+S)Save CharacterSave character JSON with all data
Ctrl+Shift+SSave OffsetsSave legacy offsets text file
W/S/A/DSing AnimationsPlay directional sing animations
Shift+W/S/A/DMiss AnimationsPlay miss animation variants
SpaceIdlePlay idle animation
EnterReplayReplay current animation
E or ]Next AnimationCycle to next animation
Q or [Previous AnimationCycle to previous animation
///Adjust OffsetMove animation offset (5px)
Ctrl+ArrowsFine AdjustMove animation offset (1px)
Shift+ArrowsCoarse AdjustMove animation offset (10px)
FToggle Onion SkinShow/hide reference overlay
GFlip CharacterFlip character horizontally

Stage Editor Hotkeys

When using the Stage Editor:
HotkeyFunctionDescription
HToggle HUDShow/hide editor UI
EscapeToggle ModeSwitch between Movement and Attributes mode
VSelect ToolActivate selection cursor
///Nudge SpriteMove sprite by 1 pixel (Movement mode)
/Adjust ParallaxChange scroll factor by 0.1 (Attributes mode)
[Layer DownMove sprite back one layer
]Layer UpMove sprite forward one layer
DeleteRemoveDelete selected sprite
ZUndoUndo last action
Ctrl (Hold)Temp SelectTemporarily use select tool while held
Ctrl+Mouse WheelZoomZoom in/out on stage

Platform-Specific Notes

On macOS, keyboard shortcuts use different modifier keys:
  • (Command) replaces Ctrl
  • (Option) replaces Alt
  • (Shift) remains the same
  • ^ (Control) is used separately from Command
The Chart Editor automatically displays the correct symbols for your platform.
MacBooks without dedicated Page Up/Down keys should use:
  • Fn+Up for Page Up
  • Fn+Down for Page Down
Some hotkeys can be rebound in the options menu:
  • Debug menu toggle (default ~)
  • Chart editor hotkey (from Play State)
  • Stage editor hotkey (from Play State)

Debug Overlay (F2)

The Flixel debug overlay provides advanced debugging features:

Features Available

  • Watch Window: Monitor variable values in real-time
  • Console: Execute commands and view logs
  • Stats Display: FPS, memory usage, draw calls
  • Visual Debug: Collision bounds, camera bounds
  • Scripting: Limited support for script debugging
The debug overlay has partial support for modding scripts and can help debug custom functionality.

Hot Reload (F5)

The hot reload feature is incredibly useful during development:

What Gets Reloaded

Reloads:
  • Stage layout data
  • Character animation data
  • Scripts (most types)
  • Asset files from assets folder
  • UI layouts and styles
Does NOT Reload:
  • Song charts (known bug)
  • Song scripts
  • Some cached assets

Using Hot Reload Effectively

1

Make Changes

Edit files in your assets folder (stage JSON, character data, etc.)
2

Press F5

Hit F5 to trigger hot reload without closing the game
3

State Restarts

The current state restarts with the new data loaded
4

Test Changes

Immediately see your changes in action
If you need to reload song charts, you must exit to the main menu and re-enter the chart editor.

Memory Management (Insert)

The garbage collection hotkey forces immediate memory cleanup:
  • Useful when testing memory-intensive features
  • Can help identify memory leaks
  • May cause a brief frame drop during collection
  • Not typically needed during normal gameplay

Screenshots (F3)

The screenshot feature works in both debug and release builds:
  • Saves to screenshots/ directory in game folder
  • Filename includes timestamp
  • Captures current frame at full resolution
  • Works from any state
  • Use with H hotkey to hide UI first

Force Crash (Debug Only)

The force crash hotkey is for testing crash reporting:
  • Generates detailed crash log
  • Includes full stack trace
  • Useful for testing error handling
  • Only works in Main Menu on debug builds
  • Creates crash report file for analysis
Only use the force crash feature when testing error reporting systems!

Tips for Using Debug Features

  1. Use F5 to quickly iterate on data changes
  2. Use time travel (Page Up/Down) to test specific song sections
  3. Use H to hide UI for clean screenshots
  4. Use 1 to quickly skip songs during testing
  • Use 2 and 3 to test health drain mechanics
  • Use Shift+Accept in Freeplay for botplay testing
  • Use time travel to skip to difficult sections
  • Use Chart Editor hotkey to quickly fix issues
  • Use F5 after editing stage JSON files
  • Use F4 to quickly escape if stage breaks
  • Open Stage Editor from Play State to edit live
  • Use Animation Editor’s onion skin (F) for reference
  • Save frequently with Ctrl+S
  • Test in gameplay after each major change

Security Note

Debug features are intentionally disabled in release builds to prevent:
  • Cheating in gameplay
  • Unauthorized access to debug tools
  • Performance overhead from debug systems
  • Security vulnerabilities
When distributing your mod, use release builds to ensure debug features are properly disabled.

Build docs developers (and LLMs) love