Git Product home page Git Product logo

fnf-newgroundsport's Introduction

Friday Night Funkin v0.2.8 (Newgrounds Exclusive)

This is the repository for Friday Night Funkin' v0.2.8, a game in which lies on a singular web page on the internet with no open-source code.

This project is the result of reverse engineering the transpiled JavaScript code into readable Haxe code, which can now be built upon with ease.

Our goals

This project aims to bring v0.2.8 back into Haxe as close as possible to the original.

This means bugs and other issues with v0.2.8 in general are not being fixed.

Any issues regarding these types of bugs (e.g. Cutscenes not working on desktop) will receive a wontfix label and be immediately closed.

Any errors on my part though will be fixed as soon as I notice them. If you catch something before I do, please open an issue regarding the error.

Important notes

To not mess with any of the integrations Ninjamuffin had in place, I have decided to completely remove them from the project.

What's missing? Logins, awards, and a check to see if the game is outdated or not. Other than that though, the repo should be mostly accurate to how to game is shown on the website.

If demand is high enough, I may make a separate branch for you to enter in your own Newgrounds API keys and bring these features back. We'll see.

Support Friday Night Funkin'

Play the Ludum Dare prototype here: https://ninja-muffin24.itch.io/friday-night-funkin

Play the Newgrounds one here: https://www.newgrounds.com/portal/view/770371

Support the project on the itch.io page: https://ninja-muffin24.itch.io/funkin

Support the project on the Kickstarter page: https://www.kickstarter.com/projects/funkin/friday-night-funkin-the-full-ass-game

Credits / shoutouts

Build instructions

THESE INSTRUCTIONS ARE FOR COMPILING THE GAME'S SOURCE CODE!!!

IF YOU WANT TO JUST DOWNLOAD AND INSTALL AND PLAY THE GAME NORMALLY, GO TO THE RELEASES PAGE AND DOWNLOAD PRECOMPILED PACKAGES FROM THERE!

IF YOU WANT TO COMPILE THE GAME YOURSELF, CONTINUE READING!!!

Installing the Required Programs

First you need to install Haxe and HaxeFlixel. I'm too lazy to write and keep updated with that setup (which is pretty simple).

  1. Install Haxe (If you're having issues installing libraries on latest, try using Haxe 4.1.5 instead)
  2. Install HaxeFlixel after downloading Haxe

Other installations you'd need is the additional libraries, a fully updated list will be in Project.xml in the project root. Currently, these are all of the things you need to install:

flixel
flixel-addons
flixel-ui
hscript

So for each of those type haxelib install [library] so shit like haxelib install flixel

You'll also need to install a couple things that involve Gits. To do this, you need to do a few things first.

  1. Download git-scm. Works for Windows, Mac, and Linux, just select your build.
  2. Follow instructions to install the application properly.
  3. Run haxelib git polymod https://github.com/larsiusprime/polymod.git to install Polymod.
  4. Run haxelib git discord_rpc https://github.com/Aidan63/linc_discord-rpc to install Discord RPC.

At the moment, you can optionally fix some bugs regarding the engine:

  1. A transition bug in songs with zoomed out cameras
  • Run haxelib git flixel-addons https://github.com/HaxeFlixel/flixel-addons in the terminal/command-prompt.
  1. A text rendering bug (mainly noticeable in the story menu under tracks)
  • Run haxelib git openfl https://github.com/openfl/openfl in the terminal/command-prompt.

You should have everything ready for compiling the game! Follow the guide below to continue!

Compiling game

Once you have all those installed, it's pretty easy to compile the game. You just need to run 'lime test html5 -debug' in the root of the project to build and run the HTML5 version. (command prompt navigation guide can be found here: https://ninjamuffin99.newgrounds.com/news/post/1090480)

To run it from your desktop (Windows, Mac, Linux) it can be a bit more involved. For Linux, you only need to open a terminal in the project directory and run lime test linux -debug, then you can run the executable file in export/debug/linux/bin. For macOS, open a terminal window and run xcode-select --install and press install on the prompt. Once it finishes, you can open a terminal in the project directory and run lime test mac -debug, then you can run the executable file in export/debug/macos/bin. For Windows, you need to install Visual Studio Build Tools (you'll need to scroll down a bit to find the download). While installing, don't click on any of the options to install workloads. Instead, go to the individual components tab and choose the following:

  • MSVC C++ x64/x86 build tools (Tested with MSVC v143 - VS 2022 C++ x64/x86 build tools (v14.33-17.3))
  • Windows SDK (Tested with Windows 10 SDK (10.0.19041.0))

This will install about 4GB of crap, but once that is done you can open up a command line in the project's directory and run lime test windows -debug. Once that command finishes (it takes forever, even on a higher end PC), you can run FNF from the .exe file under export\debug\windows\bin.

Additional guides

fnf-newgroundsport's People

Contributors

acrazytown avatar actuallyasmartname avatar actualmandm avatar angeldtf avatar brandybuizel avatar dinkley avatar enter-a-nickname16 avatar geokureli avatar injourn avatar jakkzero avatar jan200101 avatar kade-github avatar lotusotho avatar ninjamuffin99 avatar pkpenguin321 avatar princessmth avatar regulad avatar sqirradotdev avatar tentarj avatar thedrawingcoder-gamer avatar treacherousfiend avatar voltrexkeyva avatar waviestballoon avatar worstaquaplayer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

fnf-newgroundsport's Issues

can I use this as a base for my engine

I am making a engine called otaku engine and I want to use this as a base for my engine.
I will credit you (if you say yes), but if you say no I won't use it and I will make my own version
please and thank you

Question: Add a comment

I found this comment on tank stage on ninjamuffin stream

					// this goes after tankSky and before tankMoutains in stage file
					// need to accomodate for the velocity thing!

can you just add it?

Enhancement: Use hxCodec instead for compatibility on desktop

Please check for duplicates or similar issues before creating this issue.

What is your suggestion, and why should it be implemented?

There is a library called hxCodec which supports both web and desktop targets.
We should probably switch to this instead of using the current video code.

Question: How To Compile FNF-NewgroundsPort(MACOS AND WINDOWS)(NOT A QUESTION)

I don't know where to contact the creator of this source code, i wanna contact him to put this tutorial on the code page. But i decided to put this as a question so macOS guys can know what to do! Windows users get outa here!!!!!! But windows users, if your having problems while compiling, I think this can help.

Installing the Required Programs

First you need to install Haxe and HaxeFlixel. I'm too lazy to write and keep updated with that setup (which is pretty simple).

Install Haxe (If you're having issues installing libraries on latest, try using Haxe 4.1.5 instead)
Install HaxeFlixel after downloading Haxe
Other installations you'd need is the additional libraries, a fully updated list will be in Project.xml in the project root. Currently, these are all of the things you need to install:

flixel
flixel-addons
flixel-ui
hscript
So for each of those type haxelib install [library] so shit like haxelib install flixel

This is the most important part of this thing for MacOS USERS!!!!! and i think windows users. (I think this can work with latest versions of macOS devices)

You HAVE to install and older version of flixel!! Install flixel first THEN do this part! If your having a error saying (UpdateFragment Something Something) you may need to read this, Flixel 4.11.0 I think 5.0.0 and other versions fucks it up so 4.11.0 is recommend!! Copy And Paste the installation on the link, then go to Terminal/Visual Studio Code to install 4.11.0 and it may work! For Visual Studio Code you need to close the window or force quit or just quit so it can work, wait in a maybe 10 or 20 seconds.and open visual studio again then it will WORK!!!! If it still doesn't work then your probably doing it wrong

You'll also need to install a couple things that involve Gits. To do this, you need to do a few things first.

Download git-scm. Works for Windows, Mac, and Linux, just select your build.
Follow instructions to install the application properly.
Run haxelib git polymod https://github.com/larsiusprime/polymod.git to install Polymod.
Run haxelib git discord_rpc https://github.com/Aidan63/linc_discord-rpc to install Discord RPC.
At the moment, you can optionally fix some bugs regarding the engine:

A transition bug in songs with zoomed out cameras
Run haxelib git flixel-addons https://github.com/HaxeFlixel/flixel-addons in the terminal/command-prompt.
A text rendering bug (mainly noticeable in the story menu under tracks)
Run haxelib git openfl https://github.com/openfl/openfl in the terminal/command-prompt.
You should have everything ready for compiling the game! Follow the guide below to continue!

Compiling game

Once you have all those installed, it's pretty easy to compile the game. You just need to run 'lime test html5 -debug' in the root of the project to build and run the HTML5 version. (command prompt navigation guide can be found here: https://ninjamuffin99.newgrounds.com/news/post/1090480)

To run it from your desktop (Windows, Mac, Linux) it can be a bit more involved. For Linux, you only need to open a terminal in the project directory and run 'lime test linux -debug' and then run the executable file in export/release/linux/bin. For MacOS you need to 'lime test mac -debug' on Visual Studio Code or Visual Studio(I use visual studio code so idk it will work for visual studio. For Windows, you need to install Visual Studio Build Tools (you'll need to scroll down a bit to find the download). While installing, don't click on any of the options to install workloads. Instead, go to the individual components tab and choose the following:

MSVC C++ x64/x86 build tools (Tested with MSVC v143 - VS 2022 C++ x64/x86 build tools (v14.33-17.3))
Windows SDK (Tested with Windows 10 SDK (10.0.19041.0))
This will install about 4GB of crap, but once that is done you can open up a command line in the project's directory and run lime test windows -debug. Once that command finishes (it takes forever, even on a higher end PC, For Me(MacOS) doesn't take that long but if you have a slow computer, it may take forever!), you can run FNF from the .exe file under export\release\windows\bin As for Mac, 'lime test mac' <---- If your done with the source code if your not done or its not working GO BACK UP!!!!!! you'll find your .app build on 'export/release/macos/bin' I think thats all you need to know! Any typos i did or any stuff that is blank, comment!!! other wise you may be probably compiling.

Bug Report: Notes move choppy

While playing on the remastered version, i noticed that the notes move across the screen noticeably pretty choppy, especially compared to 0.2.8 and even your own legacy branch. Iโ€™m not exactly sure where in source this issue would be located.

Bug Report:

Notes move noticeably more choppy on remasterered branch as compared to the legacy branch and 0.2.8?

Lime test html5 -debug problem

i recive this error when i try to port html5 test -debug

source/Controls.hx:480: characters 5-37 : Cannot access field or identifier inputID for writing
source/Controls.hx:490: characters 5-37 : Cannot access field or identifier inputID for writing
source/TitleState.hx:118: characters 3-8 : Unknown identifier : video
source/TitleState.hx:119: characters 3-8 : Unknown identifier : video
source/TitleState.hx:120: characters 3-8 : Unknown identifier : video
source/TitleState.hx:139: characters 3-12 : Unknown identifier : netStream
source/TitleState.hx:140: characters 3-12 : Unknown identifier : netStream
source/TitleState.hx:141: characters 33-40 : Unknown identifier : overlay
source/TitleState.hx:141: characters 33-40 : ... For function argument 'child'

Bug Report: Cutscenes only work in browser

Due to the wacky ass way videos work in HaxeFlixel, cutscenes only work in the browser. This may be patched later with something that can play webm files on multiple platforms.

Bug Report: Preference Scrolling

Scrolling in Options > Preferences/Controls is not the exact same in the NG version, since I do not have the exact code, but close enough.

Enhancement: Add a new FlxAnimate thingy

While looking into your repo, I saw that you had a very weird FlxAnimate and FlxSymbol.
(I know this is kinda some sort of spam but)
I've been working on a repo with a guy called FlxAnimate which tries to support this.

Either way, the repo looks pretty good!
Really impressed

Bug Report: Can't Compile

When I enter lime test windows -debug in the VSCode terminal, the game fails to properly compile. Every asset is in the export folder however no exe file is present. Terminal complains about ObjectType and ClassType not being found in the plugin front end, along with the controls and preferences hx files containing too many arguements.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.