Back again with my first post mortem !
If you don’t know what I’ve done, here your chance :
Let’s get a bit of background, I’m not a coder but I’m an “artist”. But a vfx artist, so I’m more a technician, and I’m bad at drawing. I’m making Ludum Dare because I still like to code on my spare time and it’s a good opportunity to train myself and in the field of games which is something I love since I’m 7/8 (I’m 24 by the way). That’s it, just some stuff so you’ll know a bit about me for what comes next.
For now, let’s get a quick review of my week end (all hours are European/France time)
- 9:00 : After a good night, time to know what theme is on. LD started 6 hours ago (3:00 in the night in France)
- 10:00 : Still reviewing photos, game reviews, trying to get an idea but I’m a bit nervous as I can’t seems to find ANY-THING
- 10:30 : Got an idea about a company that would recruits Gods to help little planets, could be cool, freedom would be given to the player to watch different reaction happens on the planet
- 12:00 : Had to take some time out, it gave me a bit of opportunity to think more about my concept.
- 16:00 : Going through the first classes of my code, I worked on a first prototype with one planet. I did a first mockup for graphics, and had a great boost from that as I was able to make something that I really liked with just few clicks and tricks on Photoshop. I’ll be focusing on making one functional level, which would ideally be the hardest of the game with all the features.
- 18:00 : Lost some times trying to make some procedural was a complete waste of time that could have been avoided with just a few more thinking time.
- 01:00 : I have a basic prototype, the planet have 3 Tribes that you can feed using Farms, you take food here and give it to a Tribe. Tribes don’t interact with each other and I’m really disappointed that it’s not here. But I’m tired, I wanted to have a working prototype so let’s just say something can happen with this basic game mechanic and we’ll see tomorrow.
- 9:00 : Back to work, the mission is clear, I have to make basic menus, first levels, so let’s do it !
- 13:00 : I now have a title screen, a level selection menu, and two working levels with introduction text/panel, tutorial, and objectives. I now know I won’t be able to put more features here so I’ll be focused on the feeding part of the game design.
- 15:00 : Two more levels, a total of 4, and I want 8 of them, time to work harder.
- 18:00 : Still on more level to do, the last one, so let’s take a break and make some sounds and music. A bit of work has been done in the level selection menu, planets are now displayed instead of just rectangles.
- 19:00 : Music is ok and coded, sounds need to be integrated, I made a logo for the title screen and enhanced it also.
- 20:00 : Sounds are here, last level is ok, let’s add some polish.
- 21:00 : Still polishing, title screen is ok, and also took some time to add an important feature, a progress bar on the levels, because it’s too easy to forget the goals.
- 22:00 : My best friend arrived on Skype and is actively beta testing the game, awesome help but he found a bug that prevents people to go through level 7 and I can’t understand what’s happening.
- 23:00 : Bug finally cleared, still polishing some stuff, finishing the end screen.
- 00:00 : Gods Inc. is finished ! Time to wrap stuff, create the entry, and LD is over.
Now, we can take some lessons about this:
- Concept: My first LD 6 months ago was just a basic platformer, nothing really original here and it was pretty far to be really interesting regarding the theme. I had a hard time to find something and I took the first good idea that came in, it was a risk but I felt it was good. In the end it was more fun and encouraging for me.
- Code skill: I never actually finished any game or any project, which is a shame, but I tried a lot of stuff and gained a lot of knowledge in AS3/Flashpunk. I was more confident and was afraid of nothing, it’s great to put code stuff on the side and be able to think more about the game itself that the tool.
- Time planning: Having something playable on the Saturday night (just a bit before 24h into LD) is for me a good goad. It wasn’t what I really expected at this time but it was a working prototype with a simple mechanic that could be turned into a game for the entire next day.
- Graphics: The concept itself made graphics easier and thanks to my good abilities on Photoshop I was able to create any planet I wanted in no time with a lot of variations. I also used one background image for all the levels and just a line of code let me have random variation each new level launched with different colors. Everything was made in time and started early so it went smoothly through the weekend.
What didn’t work:
- Concept refinement / Ambition: I was okay with the concept, but maybe too much. I lost time and opportunities because I let joy overwhelm me. Too much features to code, it results in a drop of confidence at some point, about my coding skills, my speed, and the final game.
- Code planning: Levels where hard coded, with Tribes and Farms placed by code on the levels. No structures or external files to read levels seemed okay to me at first, but in the end it was a mess. I lost TOO much time implementing the victory conditions that were just if statements. And I had to rewrite this with my progress bar class because the information wasn’t readable. Next time if it happens again, I’ll clarify technical requirements a bit.
What to learn:
- Think small: Having ambition is cool, having a good idea is cool, but in the end you won’t lose time thinking more. My whole game revolve around the feeding tribes mechanics, but it can feel boring after some levels (4/5 out of 8 it seems), because it wasn’t my only trick in the game at first. If I said from the start let’s concentrate on one idea it would have been better. Instead of multiplying mechanics I would have tried variations and twists around the feeding stuff making it more interesting in the whole game. I still feel that it was a necessary error, it feels natural to me now, but it wasn’t in the process, it was something I needed to experience. Even the whole scenario idea got completely lost in the process, just no time to do it.
- Put some structure: I never wrote technical stuff as I didn’t consider myself as a real programmer. With this LD things were more serious, and I need to act with more preparation. First for the levels, they were handmade because it wasn’t tilemaps, it might not happen again, depending on the theme, but if it does, I’ll at least write some proper class to implement victory conditions, text assets etc all inside. Victory conditions are not just variables but there’s always a way to work something to make it better to integrate and communicate with all the code. And secondly for the classes, I never extend basic classes, it’s something I need to work on. Multiple classes existed here while being quite similar, it’s a waste of time, this is a method I don’t really use but I could use it.
In the end I have a game that I like anyway, and I feel I could take it to a new level, making a kind of 1.5 version. Or even try to create the real idea I had in mind, that would let the player experience the whole planet concept in a full freedom play with interacting tribes etc.
Surely LD was something big to me this weekend, I learnt a lot, and I already feels that it could be even better next time.
Thanks for reading, and see you next time !