Finally, Nightfall post-mortem After some problems, got the game submitted on time. First time on LudumDare!
What is the game about
You control Doctor Sheerin, a brilliant researcher who finds a new and amazing thing: The Darkness. But his new discover didn’t got the attention of the population the way he desire: they want to destroy it. People are afraid of The Darkness, since the planet they live is surrounded by light all the time at each single point of its surface. So Doc. Sheerin must protect the reactor, a huge machine that generate and nurture a practical gun that fire shots of darkness at things, reacting extremely weird at living beings.
How the hell you got this??
Since the theme was announced at 10 P.M. where I live (Brazil, hu3 hu3 I REPORT U), and I was at a friend’s birthday party, I decided to do a beerstorm there. So I did. Got some theme ideas, listed below, with a short description of each one (used Trello to list them):
Ideas and development tracking
- candy (*): something mixing Katamari with Pokémon, but you throw the candy, enemies with the same color got stuck on it. Then you keep the candy with you, like pokeballs, and use again against other enemies (of course could be a limit of enemies attached to it);
- beach: I dunno, was too drunk to think how it could be a good idea;
- street racing: using the cars as weapons, but each car kills just their driver;
- music notes: you fight your enemy doing the correct music sequence, realized there are plenty of games like it;
- birthday (hah!): pretty unconventional, celebrate the birthday of your enemies to the death!
- cat launcher: like a rocket launcher, but with cats, and you control the cat (based on my cat);
- change the enemy size: shrink or grow its size, could have been funny;
- darkness (***): use a darkness burble to surpass enemies on your path;
- beer hose: like the water hose from firemen, but with beer! Put down your enemies with this delicious beverage;
- worm launcher: like a rocket launcher, but with worms, and… eh, OK;
- control the enemy: control the enemy while inside the field of action;
- the weapon is your character, versus himself: cool idea, but how?
- object from space (**): annihilate living beings!
- religion: convert enemies into allies. But if gods decide to interfere?
- the level (*): use the level as weapon.
So, the next day (Saturday), without hangover, ranked the ideas (marked above; *=cool idea, **=cooler idea, ***=super duper blaster idea). The candy and the level are pretty cool ideas, but maybe could be bigger to fit on the jam, specially because it was my very first try on it. I liked the object from space one, did a quick concept on Sketchbook Express (pictured above), and was very happy with it (later discovered another similar concept, play that, it is pretty cool!). But then, remembered about a short I’ve read long time ago… Isaac Asimov’s Nightfall. Perfect!
Nephthys, my Slackware development machine
Started sketching a simple level, guiding me to what I should have at the end of the day. With Trello I could plan tasks and manage the progress of the development, so I get a picture of what to do next.
Using C++ and SFML (also, Thor for animations and sfml-tmxloader for loading TMX maps), I kept the code privately on GitLab until the submission deadline (will move to our Github soon, keeping the tag ld32). Ended the first day having at least the characters and the map loading implemented. But it was not cool, I planned to having some keyboard input ready.
On the second day, faced some weird problems, but got the player’s input and enemy movement. And finally, on the third day, I rested. Just kidding, I had to put a lot of things together to finish a minimum viable product. Not with all I intended to have unfortunately, but at least something running.
Now, let’s see the good, the bad and the ugly.
WWW, Part 1: What Went Well
- I did a game on Ludum Dare!
- Learnt new things on the tight deadline (although it was pretty relaxed for me);
- Found a lot of cool games and ideas when playing other entries;
- New friends (yay!).
WWW, Part 2: What Went Wrong
- Spent so much time finding a cool tileset to use on the game, could just have used placeholders at the time and worried about that later;
- No music
- Not all features I wanted;
- Spent time trying to fix non-blocking bugs, instead of finishing the game and fixing them after;
- No z-order on objects;
- No game over screen;
- No progress information;
- Damn windows build;
- Slow on some machines.
And now? Well, I want to finish my game the way I dreamed about:
- faster enemies according time; show the number of deceased enemies;
- better enemy spawning;
- enemies attacking Doctor Sheerin;
- maybe they attacking power sources at the corners of the level, before attacking the reactor;
- opening and game over screens;
- make the art and audio;
- enemies should say something when dying;
- research on pathfinding (the current version is using fixed waypoints on the map file);
- use some advice from you all who played the game <3
Nightfall will become a test game to develop new things, use joystick as input devices, and other tests, just like a little sandbox. It will help me so much on the indie game development world. And now, go play it on its entry version! I plan a new post-mortem for the finished ludum dare version of the game too 😀
I want to create a simple collection of classes to ease the creation of games for myself, using SFML and SDL on its backend (SDL + emscripten == html5 ready games too!). So, I can be more active on game development (and on mini-ld as well). Unreal Engine is something I want to study too, and, who knows, use it on the next jam. Or maybe use a game framework we have created and is now being actively developed, bacon2d 😉
Maybe will use some ideas from the beerstorm to develop other games, or combine them and make something bigger. But now, time to play another entries!
Tilesets and character were downloaded from OpenGameArt, and are the follow:
Thanks for all the help, thank for anyone who played my game, have fun!