FNAFBA Postmortem
Well, well, well, my first new game of the year!
Admittedly I didn’t this game to be my first, in fact I wasn’t expecting to make it at all. But when a couple of my favourite streamers at FunBaseAlpha announced a chill jam last month I knew I had to join. I knew I wasn’t gonna have time to make a nice ambitious or polished game, so I decided to make an incredibly niche inside joke.
In Fun Night At FunBaseAlpha, or FNAFBA for short, you play as the streamers FunBaseAlpha defending their apartment from evil clones of themselves in a sort of Nazi Zombies style survival game. I also decided to make the movement grid-based because, well, I wanted to try it out.
For those interested here’s the stats on my entry:
I’m honestly surprised how high I ranked, considering this game was largely made as a joke and technical practice. But I’ll take it.
Anyhow, now time to talk about what worked, what didn’t, and what I plan to do next.
What Worked
First Release On A New Engine
I’ve talked about wanting to experiment with other engines this year, and while this game wasn’t how I expected to do that, I’m still happy I did it. FNAFBA is my first release made with Godot, an engine I’ve been playing around with since early January. I do like Godot so far, though some aspects were a bit confusing coming from Unity and Unreal.
It was genuinely fun to learning how to complete a game again. I mean I’ve done it several times, but the little technical things like switching levels, making a menu, creating the executable, etc. I had to learn effectively from scratch since it was a new engine.
It also helped me review how much of my ideas make it into the released game. For example, here’s a rough list of what I completed, worked on, and planned for FNAFBA:
Completed
- Grid-based movement.
- A-Star AI pathfinding using the same grid-based movement as player.
- Launching projectile by clicking on button with cooldown.
- Switching between scenes.
- Slide cutscene system.
- Damageable and repairable doors, with multiple damaged states.
- Multiple AI generated images.
- Manually coloured and edited icons.
- Manually cutout sprites made from video stills.
- Respawning enemies.
- Small apartment map.
Worked On
- Icons for Kvass, memory fluid and crypto.
- Memory fluid item use button.
- Player health bar.
- Attack animation frames for enemies.
Planned
- Player health can be restored by drinking memory fluid.
- Firing Kvass consumed bottles.
- Player could manually hold down a button in the streaming room like the repair door button.
- Streaming earned crypto the player could spend on upgrades and items.
While most of this was completed, you can imagine what this list might look like in a more ambitious game. The mere fact the game is playable is a success in my mind, even more so that players can get some form of enjoyment out of it.
AI Art Was Kinda Funny
I used AI art for the images of FunBaseAlpha in the intro and ending slides, and I think the images were funny as did others who played the game (including the guys from FunBaseAlpha themselves).
This was the first time I’ve used AI art for game dev beyond text-to-speech, and it was a fun little experiment. Though admittedly I don’t think I got as crazy with it as I could have. Having seen numerous DougDoug videos I know how well it can be used; I’m just not used to it.
Dungeon Crawler Practice
The big reason I used grid-based movement in FNAFBA is so I could practice some gameplay concepts for the upcoming Dungeon Crawler Jam. I participated last year and submitted the unfinished Pits Of Goremoth. A big problem that game had was the AI navigation was really hacked together. The built-in NavMesh system Unity had worked well for me in other games, but just didn’t work well for a grid-based dungeon crawler.
This time I decided to forego Godot’s navigation mesh system and just try A-Star, and it honestly worked much better, at least for this game. The A-Star system has issues that will need to be worked out, but I managed to make it work in a couple hours, compared to multiple days with the NavMesh system in Unity. It’s still incredibly unpolished, but it’s a good start.
The movement ended up being less janky than I expected and provides a reasonable base for future dungeon crawler games. Fingers crossed; I will be able to create a new game with it later this month.
Surprisingly Little Crunch
I have had some miserable crunch on some projects. All my SBIG entries have been late, and I’ve pulled numerous all-nighters in my life, including some jams.
For FNAFBA however, except for the final day I didn’t stay up past 12:30 to work on the game. Ideally, I wouldn’t have stayed up late on the final day either, but it’s an improvement.
What Didn’t Work
Technical Experiments At Expense Of Fun
The feedback I’ve received on the game has consistently mentioned the grid-based movement felt far too restrictive for the attempted Nazi Zombies style gameplay.
Quite frankly I kinda knew this while I was making the game. But in my mind, it was overpowered by wanting to test grid-based movement and AI and gaining experience in releasing a game with Godot.
The game really should have been just a regular FPS if I wanted it to be more than an experiment. FNAFBA succeeded in what I intended it to do, at the cost of being more interesting for the player.
Level Sucked And Was Empty
Once again, I left the level design for the end of the jam and the level ended up being barebones and not very fun.
Like the rest of the game, it was pretty slapped together which explains the emptiness, but I did make a small attempt at design. I tried to keep the doors spaced out enough so the player couldn’t just camp in one spot and shoot at all doors. And I also wanted to avoid the player being almost instantly killed by an enemy spawning a couple tiles away.
But I think I overcorrected, and the map ended up being a bit too spaced out for the movement speed. Poor level design has been a constant issue in my games, one I'm still working on improving. Though I imagine it'll take a couple more games before I start having half-decent levels consistently.
Lack Of Instructions
An issue I knew hours before I submitted was the game was lacking in clear instructions. I did the usual “place controls on the wall” thing for the movement controls that I’ve done in multiple past games, it’s a bit blunt but it works. The game is however lacking in instructions for how to shoot kvass (even if the button stands out), and its not clear the player can shoot through doors to damage enemies.
I also noticed during the FunBaseAlpha stream that it’s not specified the repair button is an actual button on-screen you need to click, rather than a button on the keyboard.
Future Work
For this game, the only future update might be a browser version. And only so I can get the experience of making a web-based release with Godot. Aside from that, I’d have to go all the way with adding in detail to the apartment or implementing the upgrade system and with it an increasing difficulty. But frankly that’s way too much work for an incredibly niche game that I largely made as a joke and an excuse to finish a Godot game.
And speaking of Godot, I plan to use it in future jams. I find it’s far more lightweight than Unreal, and it seems like it’s only going to become easier to use what with all the Unity refugees flocking to it. I do have another Godot game in the works which I hope to finish the first draft of in the next couple months, but we’ll see how that goes.
FNAFBA has really helped put into perspective what I can get done in a jam, and how much of what I work on is used in the final product. In future jams, I’ll have to dial down the number of ideas down to a more solid core just I can have a minimum viable product people can play and finish. And even more importantly, maintain a reasonable sleep schedule!
I think the biggest lesson for my future dungeon crawlers is to make the room layouts much smaller, so they don’t feel as empty and annoying to navigate. Also, I’d like to have the enemies not one-shot the player. There is logic for the player and enemies to have health taken away in bits, it was just ignored in the code and forced enemies to de-spawn, and the player to be sent to a death screen.
I’m happy I got a new game released only a couple months into the year, and I hope to get at 4 more out this year. Those being Dungeon Crawler Jam, SBIG jam, the in-progress Godot game, and my in-progress expansion pack for my FPS game Thesmothete.
Thanks to FunBaseAlpha for hosting the jam and streaming all the entries, all the other entrants for making the jam fun, and anyone who read this far!
Files
Get Fun Night At FunBaseAlpha
Fun Night At FunBaseAlpha
Streamers defend their apartment from evil twins
Status | Released |
Author | Enygmatic |
Genre | Simulation |
Leave a comment
Log in with itch.io to leave a comment.