A near 1:1 port of Five Nights at Freddy's 1 to the Nintendo 64. Unfortunately, for the time being, it is unplayable in it's current state due to needing to add the ability to supply your own copy of the game and extract the assets, similar to the SM64 Decomp Project.
I would like to give a special thanks to Rasky and Buu342 for helping me along my Nintendo 64 development journey, and I'm really happy with this so far.
For those of you who are more visual learners, here is a tutorial I made for how to do everything necessary to compile the ROM.
Note: Currently CTFAK really only works on Windows from my understanding.
Once you have CTFAK installed, open it up and enter the path to your
legally obtained Five Nights at Freddy's executable file.
Hit enter with the Parameters
section empty, and it will load
all the data from the game.
Once it's ready, press 3 to use the Image Dumper
, and then
press 4 to use the Sound Dumper
. After both of these processes
are finished, you can hit 0 to exit the program.
- ImageMagick (for image compression)
- Libdragon (N64 API)
- FFMPEG (for audio compression)
- Rename (Install using your package manager of choice on WSL)
In order for the assets of Five Nights at Freddy's to fit on a Nintendo 64, they have to be compressed, both in color depth and image size. With the help of a handy-dandy tool I wrote in bash, which utilizes ImageMagick, we can convert the textures after copying them to a temporary directory.
This will be done inside of WSL, so if you don't have that set up, you should do so now.
Install all the dependencies.
sudo apt install imagemagick ffmpeg rename build-essential libpng-dev git
Download the .deb file from the Libdragon Releases and install it.
sudo dpkg -i gcc-toolchain-mips64-x86_64.deb
Clone the repository.
git clone --recursive https://github.com/RosieSapphire/FNaF64.git fnaf
Move into the Libdragon directory and build it.
cd fnaf/libdragon/ && ./build.sh
Move back into the main directory and copy the assets.
cd .. && mkdir tmp/
cp -rvf /mnt/c/<CTFAK Directory>/Dumps/Five\ Nights\ at\ Freddys/* tmp/
Run the script to convert the assets.
./copy_assets.sh tmp/Images/ tmp/Sounds/
Remove the temporary directory.
rm -r tmp/
After this, you should be good to build the ROM.
make -j4
Now you can run it, or put it on an N64 Flashcart via SD card or with the UNFLoader developed by Buu342.
Have fun!
Task | Description | Priority |
---|---|---|
Death Moaning | When a robot gets into your room and your camera is up, you should hear moaning | Medium |
Static Deltatime | Currently, the game uses a dynamic deltatime, which is fine, but there are better ways. | Medium |
Random for Pic | There is a random value that dictates what you'll see in certain cameras | Low |
Background Ambience | I haven't added ambience to the nights yet | Low |
Goofy Mode | I actually don't know what I wanna do with this. lol | Really Low |
Button | Menu Action | Game Action |
---|---|---|
A | Select | Toggle Lights |
B | N/A | Toggle Doors |
C | Change Selection | Switch Cameras |
R | Toggle Settings | Toggle Camera |
L | N/A | Toggle Camera |
Z | Delete Save | Toggle Camera |
DPad | Change Selection | Switch Cameras |
Start | Select | Exit Game |