nebulazorua / andromeda-engine-legacy

workin' on an FNF engine as an alternative to other engines
Apache License 2.0
90 stars 60 forks source link
fnf friday-night-funkin game haxe

USE TROLL ENGINE, IT'S A PSYCH FORK I'VE BEEN WORKING ON AND ITS WAY BETTER THAN THIS PIECE OF JUNK!!!

(though if you prefer hardcoding then andromeda might be better shrug)

(maybe later in the year if I start enjoying FNF modding again i'll make andromeda 2)

BEFORE PUTTING AN ISSUE IN, MAKE SURE YOU'RE ON HAXE 4.2.5!

Friday Night Funkin: Andromeda Engine

"ANDROMEDA ENGINE IS GOATED" - bbpanzu

Andromeda Engine is a fork of Friday Night Funkin' with customization and gameplay in mind.

Andromeda Engine includes but is not limited to:

Original Funkin' team

Credits / shoutouts

Also check out Forever Engine!

OG 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 Get the source code: https://github.com/ninjamuffin99/Funkin

Shoutouts to Newgrounds and Tom Fulp for creatin' the best website and community on the internet

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 ITCH.IO TO DOWNLOAD THE GAME FOR PC, MAC, AND LINUX!!

https://ninja-muffin24.itch.io/funkin

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 4.2.5
  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
newgrounds

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

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.

Then for each of these type haxelib git [libraryname] [library] so haxelib git polymod https://github.com/larsiusprime/polymod.git

polymod https://github.com/larsiusprime/polymod.git
discord_rpc https://github.com/Aidan63/linc_discord-rpc
hxvm-luajit https://github.com/nebulazorua/hxvm-luajit
linc_luajit https://github.com/nebulazorua/linc_luajit

Alternatively, you can run "dependencies.bat" (on Windows) to install every dependency

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

At the moment, you can optionally fix the transition bug in songs with zoomed out cameras.

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 Windows, you need to install Visual Studio Community 2019. While installing VSC, don't click on any of the options to install workloads. Instead, go to the individual components tab and choose the following:

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\release\windows\bin As for Mac, 'lime test mac -debug' should work, if not the internet surely has a guide on how to compile Haxe stuff for Mac.

If you get an error about StatePointer, you'll want to run these:

haxelib remove linc_luajit
haxelib remove hxvm-luajit

And then

haxelib git hxvm-luajit https://github.com/nebulazorua/hxvm-luajit
haxelib git linc_luajit https://github.com/nebulazorua/linc_luajit

(Thanks KadeDev for figuring this out because I was stuck on why it happened tbh)

Additional guides