#FNaF World: C Edition - A FNaF World recreation in Pure C with the Raylib library
145 messages ยท Page 1 of 1 (latest)
Actually for the game I created a separate discord server tracking the progress, not 100% sure if I am allowed to put a link to the server here though
there are no rules against posting links for your project, just make sure its SFW content, nothing graphic/gore. and make sure you only do so in #madewithraylib (thread) or #1077616160922669158 (where we are now)
oh ok
the game is fine then
I can't put the link for some reason so I guess i'll just put the youtube channel where I track my progress
I've kinda neglected the channel because it a pain to screen record because I have to use the default screen recorder, then trim it so the video starts when I open the game and I can't use the built in editor because it is locked at 30FPS so I have to use a random website (I have to find something so edit videos easily)
Even though the game has full touch support right now I'm getting random SEG-FAULTS on android so I'm probably going to have to do a bit of work to get it to run properly
I guess I'm going to have to learn how to use Android Studio
some links are blocked. like discord server invites. it prevents bots from scamming
how are you building for android currently?
didn't think of that
raymod
I'm going to try other build system
yeah but if you have an itch.io page with a link to your discord or something thats probably a good way to do it. or a github, etc
raymod or raymob? raymob is what i was going to suggest because android studio is a pain and everyone seems to hate it ๐คฃ
raymob
mb that was a typo
the author is here. you can probably post your issues in #help-android and see if he can help fix the segfaulting and what not
(bigfoot71)
i havent touched android yet because i hate working with android build systems ๐ so thats as far as i can help lol
the error comes from the json map parser failing to parse the map json which leads to a NULL pointer
it half parses it because some info is filled
so it isn't an IO issue
I've never used Android Studio so I don't even know how to see the stdout ๐
oh, thats not really raylibs fault then ๐
I'm going to stay up till 4am if I have to (I can probably get it to work in 7 hours)
what if you hardcoded map stuff? is everything working fine?
Android Studio
ah
I'm a go boot up the old fedora partition which I only use during school because I have too much stuff on Windows
maybe it will be easier on Linux
I have a skill issue so I'll worry about the Android Version later
I started work on the battle system, right now I'm working on the drawing system:
Right now my target release for a demo release is near the end of this month, but I'm not sure how long it will take to make the fighting segment because the overworld took a couple weeks to finish (and get basically 1:1 accurate)
A more finished version of entity drawing
Over the past few days I've been working on the piping for the battle segment. Creating the attacking and move system and framework so I can easily implement various attacks. Also I got the label at the top to be even more accurate to the original by adding a black outline to the bottom of the letters
Here is a picture at the updated name label thing
I made a gamejolt page, when demo 1 releases you can either get it here or on Github:
https://gamejolt.com/games/fnaf-world-c-edition/963862
FNaF World: C Edition - A FNaF World recreation in C with the Raylib library
FNaF World: C Edition - A FNaF World recreation in Pure C with the Raylib library
I've been working on my own FNaF World in Raylib and genuinely the worst part was adding all of the attacks, mainly bc of the particles and converting all the jumbled Scott code
I made my own particle system with uses "UI Space" basically it ranges from (-1,-1) to (1,1) for my recreation I'm making it without the original source code (I'm remaking it based on gameplay) so under-the-hood game works a little different. I'm still figuring out how I'm going to do the battle system but these were how I have it layed out as of now:
{
NONE, HIT
};
typedef struct _Damage_Range
{
uint32_t min, max;
} _Damage_Range;
typedef struct _Battle_Projectile
{
clock_t max_lifetime;
_Damage_Range damage;
Vector2 velocity;
Rectangle hitbox;
Animation_V2 sprite;
} _Battle_Projectile;
typedef struct _Attack
{
_Damage_Range damage;
enum _Battle_Attacks_Types type;
clock_t delay;
} _Attack;
typedef struct _BattleEntity
{
uint8_t num_of_attacks; // Mostly for Enemies
uint32_t remaining_health, full_health;
char name[20];
clock_t last_attack;
Animation_V2 sprite_idle;
Animation_V2 sprite_attack;
Rectangle hitbox;
_Attack attacks[3];
} _BattleEntity;
typedef struct _BattleParty
{
uint8_t size;
_BattleEntity member[4];
} _BattleParty;```
Probably going to change a bit of it
Eh, that sounds even more difficult to port from Clickteam ngl
It isn't hard but it is really time consuming
The map for example
I had to replace every tile ๐
I remade the map based on the mini-map in spritefusion then made a Sprite-fusion JSON map converter to load the map
Thank God libraries like cJSON exist or I'd be cooked
I feels better just using a level editor and not having to recompile the map
I can add a new zone without having to modify the code
Yeah I get that
I plan to redo my code eventually
Just wanna finish the battle system for now
a bit of mine is messy and I need to add comments
I think I perfectly recreated Clickteam's collision system
I just have to clean it, I won't go as far as to reimplement some stuff
For me I used a rectange and checked the corner collision based off the tilemap
it was as easy as referencing a 2D array
Not perfectly accurate at that point
Some tiles, like rocks, have pixel perfect collision
It works close enough and it is hard to tell the difference
It a small compromise
Recreating the overworld took a month for me
I managed to get the visuals and map nearly 1:1
Lol I just wrote a program that did it for me in like a day
Helps when you're a supa dupa smart genius frfr like me
Dang I wish it took me that long
For me though I can't automate it bc I don't have the src, only the textures and sounds
You can decompile it using Nebula
tbh I kinda want to remake the game without it
Innaccuracy galore ๐
I want to see how accurate I can get it based of gameplay
I got the overworld basically 1:1
ยฏ_(ใ)_/ยฏ
One time that I definitely have to redo is the birds, it uses the particle system for some reason instead of the World Entity system I made ๐
To be fair I didn't have that at the time
and I wanted birds
For the touch joystick, I'm changing it from analog to digital, (although I'll add an option to toggle it) but analog doesn't feel as good digital because of Scott not normalizing Freddy's diagonal speed in the original game, basically he feels slow with analog controls (and I think square joysticks are cursed compared to circle so yeah). I guess I could make the speed auto-adjust when your walking diagonally then the controls would be a bit weird imo
Not sure why I decided to make it analog it the first place ๐
I'd make it analog but just for direction
I still have a bit tweaking to do to get it to look 1:1 but here are the WIP enemy attack animations
Also the heath bars are unfinished so that is why it isn't using the original font
Also the attack splash is also unfinished
I have to adjust the angular frequency of the damage particles and add the damage counter
I'm going to half the animation time and jump height
That should get it to be more accurate
Not familiar with fnaf but the jump height seems fine visually. The idle animation definitely needs slowed down ๐คฃ
Haven't been updating the Raylib thread much bc I have a dedicated server for the game, also I've been a bit busy with school but I added in a title screen transition animation
It's not 100% accurate to the original but imo it looks a bit better (the play button in the original didn't fade)
You aren't using copyrighted material, are you? Art/music/etc
The game is free so I don't think Scott will care much, the assets I'm not worried about because other fangames have used them without issues, but music I might have to redo
thats not how copyright works ๐คฃ
I'm at least going to try to email scott though to get permission before
i would definitely try and do that
If not I'll only release the source code
I might also try and make something to extract the assets from the original exe
just mentioning it since other people did fan games with original assets and mods of this server said its a no-no to use copyrighted material and "i dont think they will mind" and "other people have done it" are not valid excuses
now you're going backwards ๐
I'll definitely to get permission to use the assets, if not, it will be up to the user to get whatever texture pack they want
using your tool that rips the copyrighted material from the original game? ๐
context (from link onwards): <#1323445520072708189 message>
the code itself is fine because it isn't based off the original source code, it will be up to the user to make their own assets folder, how they get it or make it is up to them. I can also make it so you need the game installed in order to run it
worst case just the source code gets released
I think the texture pack option will be the way I'll go
The game is a passion project that stems from the game only having a Windows port and I thought it would be cool to play on the go
I'll try to work with my friend to make a texture pack (which doesn't use the original textures and music) that way the game has a default texture pack it can be shipped with
yeah, i just wanted to mention it before you got too far along
The texture pack idea too also makes the game easier to mod so that's good
I'm probably going to use the same codebase of this game or a stripped down version as a template for other games because it has a good-enough UI wrapper (with buttons, text, animations, etc) that adjusts to different aspect ratios nicely, a 2D overworld environment with that I can use a level editor to use (specifically Spritefusion) (so I can add new zones without writing any code or recompiling), json saves, touch support, basic controller support, a particle system, etc. I guess the piping for the battle segment can also be useful too but I would probably cut that
The level loader I already made public a bit ago: https://github.com/SpyterDev/Yellowwood
I emailed Scott to try and get permission, hopefully he responses because I don't know how old that email is or if it's active
Scott's given explicit permission for any fan creation to use his copyrighted material as long is it doesn't break his own set of rules, such as recreations of his paid-games, and any fan creations must be free and non-profit.
i see a lot of different information about that. some people said they got permission from email, apparently others were shut down after emailing. he has also publicly shut them down like this one on steam
one of the biggest points that several people have brought up is donโt make it too much of just a remake of one of the official games. and it looks like this is meant to be nearly 1:1 FNaF World
OP said he would email to get permission, so thats always going to be the best course of action.
his public emails i found are:
his email is [email protected] he doesn't use the other one
ah you edited your message lol.
such as recreations of his paid-games is the part where it may be an issue. it was originally paid, and other people said paid or not is a no-no ๐คทโโ๏ธ
I didn't edit that in lol
no, its 2 separate things. i also didnt see anywhere (in my brief search) where he publicly said that fangames can use copyrighted assets. just people saying their experiences with trying it.
but im not here to try and force that, just came to mention that using copyrighted material is frowned upon on the server
and ill disappear now
I'll just wait for a response, even though this is a fangame of an already free game, I don't want to do anything that might make him mad, it mostly a way for people who don't have a Windows computer to be able to play a remastered version and I want to make sure that's fine with him
Even though projects in the past have done something similar without issue, it is probably better to make sure ๐
If you're gonna wait for Scott to respond, you're never gonna work on this project again, because he's not going to respond.
The first demo will probably be done by early-mid February, I haven't been working on it too much cause of school recently so that's why development has been a bit slow recently
I'm probably going to have to make some adjustments for how textures and animations are loaded to support texture packs with different sizes then the original so you can have an HD or 4K ones for example
I'm rewriting the battle system because the way I represented animatronics and attacks wasn't exacted good and can only be compared to a camera made by taping a phone to a fork and putting that in the ceiling, not exactly a good one
Anyways should be a piece of cake to add new attacks and animatronics in the new system once that's done, you should be able to add them in minutes
For some reason I'm named the attack battle system interface: R.A.B.I.T.S:
R. udimentary
A. ttack
B. attle
I. nterface
T. yped
S. ystem
(I definitely have to come up with a better name this is more of a goofy temporary placeholder)
Originally it was going to be A.B.S.I (Attack Battle System Interface) but that reminds me too much like ASCII
I released a WIP developmental build for Windows (it's a test/developmental build so that's why it is only for Windows and not other platforms) (also sorry I forgot this back in January I forgot). Anyway if you want you can give some feedback to help improve the game that would be appreciated, also the code is still pretty messy which is why the src isn't available yet:
https://gamejolt.com/games/fnaf-world-c-edition-overworld-test/969988
Also it's not code signed so Windows will probably say it's from an unknown developer so just a heads up ๐
I added another plant layer (this was inspired by FNaF World Redacted which you should definitely check out) and went ham on the decorations and plants to make the game more full of life
Also now non-animated buildings are rendered as tiles instead of entities
Working on the dialogue system (the dialogue is going to be saved in JSONs so yup)
The map loader I made is for Spritefusion JSONs so I decided I'm probably going to use JSON for everything else included saves (which are already implemented in JSONs)