Skip to content

Friday Night Funkin' by Bobydeluxe, on its own - #198

Merged
Mason363 merged 6 commits into
mainfrom
fnf
Oct 24, 2026
Merged

Mason363 merged 6 commits into
mainfrom
fnf

Conversation

@Mason363

Copy link
Copy Markdown
Owner

Bobydeluxe's Friday Night Funkin' (#187), as a big game of its own: every week and song with the game's own timing, scoring and health, silent, the characters and camera keeping the beat. Its charts and pictures are fetched from the game's own files when it's built, not kept in the repo.

Bobydeluxe and others added 6 commits October 23, 2026 14:23
# Conflicts:
#	Makefile
#	README.md
…etched when it's built

The game is rewritten like NumPlay's other big games, after the original's own
code. Every note of the 166 charts plays at its chart time, to the
microsecond. The keys are read between the strips of each frame and every
press is judged at its own time with PBOT1: the points follow how close it
is, and Sick, Good, Bad and Shit end at 45, 90, 135 and 160 ms. Health,
combo, holds and their drops, misses and ghost misses are the game's (its
release has no ghost tapping). The characters dance and sing as the game's
do, the camera and the HUD bump on the beat, the health icons bop every beat,
and Ready, Set, Go counts you in. Story mode plays a week for its score;
freeplay has Boyfriend's songs and Pico's remixes.

The charts and pictures are the Funkin' Crew's, and their terms don't let
them be shared, so they leave the repository: tools/fetch.py fetches the 572
files tools/ref.txt lists from funkin.assets at its pinned commit (no audio),
and tools/data.py packs them at build time. The icon is drawn new.

The arrows, or 7 8 ( ), hit the notes. Back pauses (Resume, Restart song,
Exit to menu, Options with downscroll and a note offset, How to play, Quit
game, which asks first) and Home saves and quits. The menus have a key line
and a framed choice, and how to play comes before the first song. fnf.sav has
a magic, a version and a checksum, with a copy in fnf_saves.py; a damaged
file starts afresh.

tests/play.c checks the rules against the game's numbers, plays all 166
charts to a full combo of Sicks, runs 500 random sessions and checks the
saves. It builds like UNO, 1.66 MB installed. build.py, the packer, the
linker script, VALIDATION.md, the ARM scripts and fnf.yml go.
The game builds like UNO (BUILD_DIR, GAMES_REDIRECT, the apps and clean
rules, and make check holds it to the app space), with its games.json entry
as the fourth big game, its release line, its emulator test and the CI's host
test. The root README is left as it was. README, screenshots, the GIF and
the thumbnail.
@Mason363
Mason363 merged commit 248fb7c into main Oct 24, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants