Ah, the Ludum dare! Your favorite gamejam. You have fond memories of the last one: the wait before the announcement, the not-so-inspiring theme, and its famous 48h time limit…
48h, Really? 30h at most if you ask me. Everyone will tell you that you need to eat properly and to take a break from time to time. This is not the purpose of this post, I will just assume that you have at least one 8h sleep and a few proper meal during the weekend.
How it might go
So 30h. Let’s do this! Let’s say you have the perfect idea for the jam, and you spend the first day producing cool graphics, slick animations, and great audio. Good. It took some time of course, but it’s done.
Now you have 15-20 hours to make an actual game that has a usage for each asset you made… Aaand done! That was easy! No weird physic bug, no special case to handle, and you implemented every single mechanic you wanted. After all you knew exactly how to play an animation in your game engine. Right?
~5 hours to go. Let’s wrap it up : 2-3 levels, a title screen, a game over screen… Aaand you submitted just on time. Hurray! Can’t wait for the comments :
That was super hard, I gave up on the second level. Graphics are great.
Great! Difficulty is good. Too bad he didn’t see the boss though.
Looks awesome, but I don’t understand how my abilities work”
Ow man, one of those guys who rate games in 2 minutes and don’t actually try to play it. That sucks.
I didn’t know where to go after I beat the third patch of enemies.
Wait, what? There is just one path: you need to jump on the platform offscreen. Did he not try that?
My attacks felt very underwhelming, and it was hard to beat the simpler enemies”
Well of course! You need to make combos!
21 days later you are a bit depressed from the comments. You even wrote a post about it, asking if people actually played your game. No one seemed to care. Results are in and your best score in #84 in graphics. Audio is at #261. You’d rather not talk about the rest.
Let’s go back, and refine our objectives
This example I gave is highly unrealistic. Nothing goes smoothly from start to finish, and the simple tasks will take more time that you would expect. That is, if you don’t have an unexpected bug popping out of nowhere.
You might have the time to implement all the mechanics you want AND have nice assets AND a proper level design… but you cannot know for sure. So Keep It Stupidly Simple! (or “Keep It Simple, Stupid” if you prefer that one)
If you ever want to make a good LD entry, you not only need to make a game, but you also need to make a game that doesn’t drive people away by beeing too hard/long/boring/complicated/… And for each feature you add to the game, you will have to make sure that it’s not too hard/long/boring/complicated, which comes on top of the technical challenge.
Why not going easy on yourself? Why wouldn’t you pick just one feature? (feature, concept, mechanic… call it however you like). It is better to have one cleanly executed (and matured) feature than a bunch of half-baked ones. A few examples:
- You have to navigate a maze to reach a visible goal but the walls are invisible
- You have to navigate a maze to reach a visible goal but you can only stop moving by bumping into a wall
- A basic platformer but jumping toggles some platforms
- A basic platformer but wall-jumping breaks the walls
- Solve a mystery but you cannot ask the same question to different persons.
After all, YOU are the only one defining the amount of work required.
Pick an idea
When the theme is announced (or even before), write any ideas you may have, no matter how stupid or vague they may be.
Go through your list and, unless it’s a REALLY simple idea, remove those who don’t match your skills (you can always keep that idea for another game):
- It needs good graphics, and you are not good at art? Next! Coming up with assets you deem acceptable will take too long.
- It needs a physic simulation, and your game engine doesn’t have one? (or you never used it?) Next! Don’t risk going through technical hurdles when you can avoid it
- It needs to have animation synchronized with the music, and you are not sure how to do that? Next!
This might seem a bit over the top, but my point is that you need to come up with your own rule that guarantees the idea is reasonable. Mine is “If I can’t make it with colored squares on a single screen, I need a good reason to keep that idea”.
Combine that to the “one feature” rule we talked above and you have an efficient way to filter out your ideas.
…no matter how stupid…
Implement your core feature
Once you have your one key feature, get it to work as soon as possible. This, as said earlier, will take more time than expected. So don’t go on a tangent here. Just get it to work. Bonus point if you can tune the controls so that it’s not boring to move around in a blank room.
Then introduce your concepts properly. Easier said than done, I know; “how to make a tutorial” deserves its own article… So here are the first 3 level of my LD26 as an example (not a single line of text to explain things):
“This is how you move (what you can do), and what you have to do”
“This is the concept I will build the rest of the game on”
“This is how you can fail”
Congratulation! You now have a (very short and ugly) game, one that is not bugged or broken.
When the core feature is implemented
If you reached that stage, there is a chance that you are either late in the first day (and you should go to bed), or already in the second day. From there, you have a few options:
Implement a second feature
I wouldn’t recommend it. You are not guaranteed to have enough time to add a concept to the game. If you feel confident, go for it, but it will be less risky to focus on smaller tasks and improve what you already have.
Add some content
This will probably mean adding a bunch of new levels, but it could also be adding a bit of dialogue to NPCs, adding a new station in you space game, a new kind of enemy…
With only one twist to your game, it might seem hard to produce multiple levels without going in circles… but it’s not. Watch this:
The key here is to play with your core concept to see what kind of situations you can have. Make a couple of level based on each situation. Don’t make them to hard and keep them short (remember that “on one screen” constraint?): remember you want the players to keep playing so don’t frustrate or bore them.
Once again, gifs to the rescue:
Levels 4-6: Follow a path, a basic precision challenge
Level 7: Development: Find the path yourself
Twist! Find which goal is reachable
Make it pretty
Add sounds. That’s the easy one, and the most important in my opinion: a lack of sound feels wrong. People don’t necessarily notice, but they tend to give a worst rating to soundless games. It’s better to have poor sound effects than none (unless they are unpleasant of course)
Add graphics. I know you want to. It’s ok. Now you can.
Add some juice: Screenshake, particles… There are a lot of things you can do in that domain, and a lot has been said about it (content that is just one google search away). This is usually the last thing I do, as I can keep adding “one more thing” until the end.
chain reactions are awesome
Add a story
What now? A story? I thought I wasn’t suppose to add a big feature!
Well… Yes. If you go for a story, you can’t deliver an incomplete one. But it is hard to break something if all you are doing is adding a bunch of
if (eventX) display(textEventX); Worst case: you don’t have the time to finish it, and you just have a few lines of code to comment.
You don’t even need to have many kind of events:
onLevelStart, onLevelEnd, onDeath... is enough. Before you know it, you will have a complete, narrated game. Or even NPC expressing their personality.
Boom! you gained a few stars in mood, maybe humor, and a new kind of comments “Man, I love the little dialogs in that game!”
“But I just have a bunch of squares running around! How could a story–“
Final thoughts and TLDR
There are a lot of rules and tips to succeed at a gamejam out there, and I just added a handful to the mix. You might not agree with some of them, and that is totally fine. Just remember that one:
You are making a game for people to play. Try to make something enjoyable, not a half-baked version of what you wanted to create.
Now go check you tools one last time, and join us while we wait for the theme.
Have a nice week-end!