ProjectFNF 2.0, based on Psych Engine

Overview

Friday Night Funkin' - ProjectFNF

Installation:

Go here and download the appropriate version for your OS

Building:

Follow a Friday Night Funkin' source code compilation tutorial, after this you will need to install LuaJIT.

You can do this with: haxelib install linc_luajit on a Command prompt/PowerShell

Discord server

https://discord.gg/BUgn9dGgB2

Credits:

  • aflacc - Original maintainer of ProjectFNF
  • l1ttleO - Main developer of ProjectFNF 2.0
  • Shadow Mario - Coding for Psych Engine
  • RiverOaken - Arts and Animations for Psych Engine

Special Thanks

  • Keoiki - Note Splash Animations for Psych Engine

WARNING: This mod is still very early in development! You can request new features and report bugs though


Features

  • All Psych Engine features
  • Modifiers and gameplay options to enhance your experience and test your skill
  • Optimization features for low-end PCs

This isn't the true ProjectFNF repo!

A note on https://github.com/ProjectFNF/ProjectFNF
So here's the story in a nutshell:
There was ProjectFNF 1.0 (which was mostly developed by Zeptos), then I decided to create ProjectFNF 2.0 using Psych Engine and aflac agreed. Then, aflac gave permission to east to turn the ProjectFNF Discord server into South Engine, which east claims is "just a rebrand" which I never agreed in the first place (they countered this argument by saying that aflac gave them permission, and I couldn't do anything about it). During this time, I wasn't in the server, so I joined after the changes were made. I got frustrated and left. East then turned the Discord server back into ProjectFNF. I took a glance at their repo, and saw that their commit history was a mess, filled with tons of "fix" and undescriptive commits. I decided to keep developing OG ProjectFNF 2.0 on my own

Issues
  • Suggestion: Playing as the Opponent

    Suggestion: Playing as the Opponent

    In my opinion, it would be great if you could play as the Opponent. When on freeplay, after entering a song, the player could be prompted "Play as Opponent" and "Play as Boyfriend", so they can choose what they prefer.

    status: open to PR type: enhancement 
    opened by SteveeWasTaken 5
  • Some fixes

    Some fixes

    • add more references to projectfnf
    • make health bar icons bounce better (code taken from mic d up)
    • add advanced info bar option
    • add ke like info about song and engine used at bottom left
    status: invalid status: wontfix type: enhancement 
    opened by Stilic 4
  • make text able to got to 3

    make text able to got to 3

    title thing go brrrr but seriously so you know how people sometimes try to add 3 texts at the same time in the text file for title text? this allows them to go 1 more! just enough time to add mod name or credits!

    status: invalid type: enhancement 
    opened by MrClogsworthYT 3
  • this isn't much of a feature request...

    this isn't much of a feature request...

    What feature do you want to get added on the base engine?

    Can you please update Psych Engine to 0.6.1/0.6.2?

    To test your sight, and reliability, please select the option of what should NOT be requested.

    Stage Editor, 6K+ support, and winning icons.

    type: enhancement 
    opened by LeonGamerPS4 2
  • Crash with modded dialog

    Crash with modded dialog

    Describe your bug here.

    So I toyed olay the vs whitty definitive edition and it crashes after the opening animation

    Command Prompt/Terminal logs (if existing)

    No response

    Are you modding a build from source or with Lua?

    Lua

    What is your build target?

    Windows

    Did you edit anything in this build? If so, mention or summarize your changes.

    No I am using the vanilla and up to date versio. Of this

    bug help wanted status: not enough info 
    opened by zai205 2
  • This isn't really a feature request but...

    This isn't really a feature request but...

    What feature do you want to get added on the base engine?

    Could you please make this repository a public template?

    To test your sight, and reliability, please select the option of what should NOT be requested.

    Stage Editor, 6K+ support, and winning icons.

    status: duplicate type: enhancement 
    opened by Joalor64GH 1
  • This repository should be merged with the east's one

    This repository should be merged with the east's one

    Hello. I am here for talk with @l1ttleO on some problems with this repository: There is now two versions of PFNF: The one from this repository, and the the east's version (from me also). The l1ttleO's repo is maybe the most organized. But, if we still maintain two "2.0" of the same engine on differents repositories, there is a big issue. So, please, can you merge my and east's current work with yours on our repo, l1ttle0?

    status: invalid 
    opened by Stilic 1
  • Switch to patches for making changes to Psych codebase

    Switch to patches for making changes to Psych codebase

    This PR reverts the current codebase to Psych's and converts all ProjectFNF changes into patches. May or may not fix #41

    Why?

    • This significantly improves stability, as it is now guaranteed that code doesn't disappear during Psych Engine updates (as it previously did thanks to VSCode and Git weirdness).
    • This allows for very quick updates to new Psych versions because there won't be merge conflicts
    • This allows for easier debugging, since you can skip applying individual patches to make sure that they aren't the culprit
    • Distinguishing between ProjectFNF and Psych Engine code will be as simple as it can be
    • The list of patches will basically serve as the list of features (useful for people discovering the mod for the first time)

    How does it work? It uses Git's patch system (specifically, mailbox patches). This system is already used in projects such as PaperMC with great success Patches are created using git format-patch and applied using git am. While this may be confusing at first, the batch files provided in this PR should help reduce the learning curve. To avoid more questions, a CONTRIBUTING.md file was created ~~(totally not inspired by PaperMC's)~~ with step-by-step instructions on how to use the new patch system

    How does it affect the player? It almost doesn't! The changes are purely code-based, meaning the user won't notice almost any difference. However, as mentioned above, this will improve stability!

    How does it affect the Lua developer? It doesn't at all! Lua scripts will continue to work the same way as they do in Psych

    How does it affect the source code developer? Source code is a bit different. The developer can take 3 different approaches:

    1. Keep the patch system, but make changes via directly editing the source/ folder. The developer will edit the Psych codebase, significantly increasing the chance of patch apply failures with each line changed. This is probably the worst approach one can take
    2. Apply all patches once and never make use of them again. This is slightly better than the first approach since patches are already applied and won't cause any issues. However, this means that updating is extremely difficult.
    3. Use the patch system as intended. This is the recommended approach as it's the least invasive one.
    type: psych update type: refactor 
    opened by l1ttleO 0
  • Lua support isn't available on macOS and Linux

    Lua support isn't available on macOS and Linux

    Lua support will not be available on macOS and Linux until Psych Engine 0.5 is out Due to this, the following won't work: custom stages, custom song scripts, custom events and custom note types This means you will not see backgrounds on custom songs; custom mechanics, notes and events will not be available

    THIS ISSUE WILL BE FIXED WHEN PSYCH ENGINE 0.5 IS OUT AND IS PULLED INTO PROJECTFNF

    type: problem 
    opened by l1ttleO 0
  • Thanks for making this

    Thanks for making this

    I don't enjoy the loss of PFNFL (ProjectFNF Legacy) and this is the PFNF I'll be using from now on. Thanks for making this, and I'll be happy to see this grow!

    opened by VMGuy23 0
  • Pause menu change

    Pause menu change

    I cant seem to do anything with a pull request so here you go Here is the file for the pause menu i used for my own fork of this, and i wanna help out

    • Fixed change difficulty menu crash on linux
    • Added more in the pause menu in general

    just make the txt file back to .hx so it works, github cannot upload haxe files and zipping one file is useless PauseSubState.txt

    type: bugfix type: enhancement 
    opened by OneShotSank 0
Releases(v2.5)
Owner
A future Minecraft plugin developer (probably) Owner of @l1ttle-org
null
Sword Engine is a fork of Psych Engine that plans on adding more features and quality of life improvements.

⚠️ WARNING: This README is currently incomplete, This warning will be removed once it's complete. Friday Night Funkin' - Sword Engine Sword Engine is

swordcube 7 Jul 9, 2022
Fatality song composed by Maevings with charting and psych engine

Fatality song composed by Maevings with charting and psych engine

null 2 Nov 27, 2021
A CUDA-accelerated cloth simulation engine based on Extended Position Based Dynamics (XPBD).

Velvet Velvet is a CUDA-accelerated cloth simulation engine based on Extended Position Based Dynamics (XPBD). Why another cloth simulator? There are a

Vital Chen 28 Aug 7, 2022
Love 6's Regular Expression Engine. Support Concat/Select/Closure Basic function. Hope u can enjoy this tiny engine :)

Regex_Engine Love 6's Blog Website: https://love6.blog.csdn.net/ Love 6's Regular Expression Engine Hope u can love my tiny regex engine :) maybe a fe

Love6 2 May 24, 2022
Two Tribes Engine; the engine which we used to create Toki Tori 2+ and RIVE with

Two Tribes Engine We, Two Tribes, have used this engine for over a decade. It started with early development on the Nintendo DS and ultimately resulte

Two Tribes 117 Jun 21, 2022
OpenGL Template Engine - a C++ OpenGL graphics engine which aimed to be a simple startup template for 3D OpenGL projects.

OpenGL Template Engine is a C++ OpenGL graphics engine which aimed to be a simple startup template for 3D OpenGL projects. This is the template I personally use for my own projects and provides me with the general OpenGL 3D render setup with model import and UI.

Marcus Nesse Madland 2 May 16, 2022
A light-weight Flutter Engine Embedder based on HADK ,which for Android devices that runs without any java code

flutter-hadk A light-weight Flutter Engine Embedder based on HADK ,which for Android devices that runs without any java code 1.Build by android-ndk-to

null 12 Jun 15, 2022
Filament is a real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS, and WebGL2

Filament Filament is a real-time physically based rendering engine for Android, iOS, Linux, macOS, Windows, and WebGL. It is designed to be as small a

Google 14.4k Aug 11, 2022
Improved version of real-time physics engine that couples FEM-based deformables and rigid body dynamics

Enhanced version of coupled FEM and constrained rigid body simulation Description This little playground aimed to test our Conjugate Gradients based M

Andrey Voroshilov 25 Apr 11, 2022
a LTL rule-based engine

MMT-Security This repository contains the following folders: src : C code of mmt-security rules: set of official XML rules. An encoded version (*.so)

Montimage 3 Jun 16, 2022
ML based Text-to-Speech (TTS) engine for the Armenian language.

ArmTTS {#mainpage} ML based Text-to-Speech(TTS) C++ library for the Armenian language (light version, only CPU and Tensorflow Lite). The full version

null 1 Jul 17, 2022
FFF is a decentralized blockchain based on IPFS/RIPPLE, which integrates lua virtual machine-based smart contracts.

FFF is a decentralized blockchain based on IPFS/RIPPLE, which integrates lua virtual machine-based smart contracts. It is also a software platform designed to help coordinate voluntary free market operations amongst a set of social actors.

gen2600 5 May 31, 2022
An implementation of physically based shading & image based lighting in D3D11, D3D12, Vulkan, and OpenGL 4.

Physically Based Rendering (c) 2017 - 2018 Michał Siejak (@Nadrin) An implementation of physically based shading model & image based lighting in vario

Michał Siejak 1k Aug 8, 2022
Scrollytroller is a crank-based USB controller, initially inteneded for use with Playdate's Pulp web-based game development tool

Scrollytroller Scrollytroller is a crank-based USB controller, initially inteneded for use with Playdate's Pulp web-based game development tool. This

Scott Lawrence 4 Feb 17, 2022
A Navigator 2.0 based Flutter widget that automatically splits the screen into two views based on available space

A Navigator 2.0 based Flutter widget that automatically splits the screen into two views based on available space

null 3 Jul 13, 2022
Tools for interacting with music data in GBA games that use the Engine Software replayer.

A suite of tools for interacting with the XM-like music data found in certain Game Boy Advance games - specifically those that use the Engine Software replayer middleware.

Luna 17 Nov 16, 2021
Typesense is a fast, typo-tolerant search engine for building delightful search experiences.

Fast, typo tolerant, fuzzy search engine for building delightful search experiences ⚡ ??

Typesense 10.5k Aug 7, 2022
Dynamic 3D cellular automata engine with lua scripting support

Cell3D Cell3D is a dynamic 3D cellular automata engine with lua scripting support Installation Dependencies: Lua 5.3 Raylib Simplest possible build co

null 1 May 25, 2021