Sharkalien / FNF-Benjine

A Friday Night Funkin' fangame engine made with Godot

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

A Friday Night Funkin' fangame engine made with Godot!

Click here to jump straight into getting started with developing on the Benjine. Don't always rely on the main branch for looking at Benjine code. The main branch may have changes farther ahead then the current version of the Benjine you're using. Always be sure use the official releases for stable versions of the Benjine.

The engine actively in development for FNFVR and the second version of the Bogus mod. Meant to closely replicate the original feel of FNF, with a flexible backend in mind.
All Benjine mods MUST be open source, just like with the original FNF. It also helps avoid folder name clashes for mods.

Play or get the Benjine on itch.io or GameJolt!

Credits / Attributions

ThisIsBennyK - Lead developer, programmer, graphic designer, UI designer (YT / Twitter / Other Games)
DodZonedOut - Options music (it's called "Grease Monkey" and it slaps) (YT / Twitter / SoundCloud)
Sayge3D - 3D note model (Carrd)
Palladium346 - Extended icons, Funkin' Team icons

The Funkin' Crew Inc. - Art, music, sounds, etc. of the original game (Newgrounds / itch.io)
Godot Engine - The game engine this game was made in! (Website / License)
Emilio Coppola - Creator of Dialogic, the textbox system this game uses. (Dialogic is under copyright (c) 2020 Emilio Coppola.) (Website / License)

Features

Use Godot as the visual editor for your projects!

  • Lay out stages and characters easily in the scene editor What Week 1 looks like behind the scenes

  • Use practically any feature of Godot to your advantage An example of viewports and shaders used to mesh Week 1 and 6 into one level

Some nice quality-of-life changes

  • A slightly redesigned Story Mode menu

No more strangely disproportionate characters that are out of sync with the beat lol

  • All sorts of scroll types

Downscroll Middlescroll Down-the-middle-scroll (for the osu! and Quaver fans)

  • A bunch of options! (Coming soon: and mods can add their own!)

Gameplay options Sound options (more than just the master volume) Way more control over the controls

Mods are supported and easy to install!

  • Create basic mods that are automatically meshed into the base Benjine...

  • ...or advanced mods that let you create whatever you want! For example... FNFVR!

Getting Started

  • Download the latest version of Godot BELOW 4.0 (if you're from the future and Godot 4 finally has a stable release).
  • Clone this repo / download this source and extract it into an empty folder.
  • Open Godot and press "Import."
  • Navigate to the project folder and open the "project.godot" file.
  • Click "Import & Edit."
  • Now you're ready to mod!

How to mod using the Benjine

Check the wiki for the latest info on how to mod the Benjine.
The Benjine assumes you have some sort of experience working with the Godot game engine. Please do not ask me how to use Godot.

Exporting your mod

In order to be a valid Benjine mod, your mod MUST have:

  • A folder with a unique name (ex. whitty, bogus, sonic_exe, etc.)
  • A ModDescription resource called mod_desc.tres in (your mod name)/desc
    • Your mod description and any resources it uses MUST be contained in (your mod name)/desc
    • Make sure to add the package name
  • A ModCredits resource called credits.tres
  • A SongList resource called song_list.tres in (your mod name)/songs

Here's what that all looks like

To export your mod:

  • Open the PCK Packer scene

Where to find the PCK Packer

  • Click on the PCK Packer node and fill out the package name and its filename (don't worry about the other options unless you have a specific reason to use them)

The options for your PCK

  • Run this specific scene by pressing the clapboard with the play arrow, or press F6. You should see a black screen. Once it's done, assuming the packing goes well, you should see something like the example console output. (You may get some warnings about output overflow, but they shouldn't matter if the pack is done correctly.)

Run the scene What the output should look like

  • Open your project folder (which can be done as shown below).

Right-click res:// and open it in the file manager

  • Your completed PCKs will be in here!

A completed mod!

About

A Friday Night Funkin' fangame engine made with Godot

License:MIT License


Languages

Language:GDScript 99.5%Language:C# 0.5%Language:GAP 0.0%