Blog Archives

How to create a game

This is sad, I’m actually procrastinating right now. There’s a game I really need to work on, but writing a blog post requires less thinking for me. Oh well, I’m just gonna write a post about how to create a game. Like for my previous post, I try to be non-technical.

STEP 1 – Come up with the idea

I know it’s obvious, but you do have to spend a little time on it, and here is why. Throughout the process of making your game, there will come a point where you will decide: is this really worth it? Even if you’re doing a game jam and they gave you a theme, like make a game about “sausage”, don’t just jump in and say “I’ll make a game where you have to eat as many sausage as possible”. Don’t go for the obvious. One recurring issue when making any project is, at some point, you might want to give up. There’s nothing wrong with giving up, sometimes you are much better off spending your time on something worthwhile. However, if you find yourself giving up easily on projects, then something needs to be changed. Giving up a project does feed into depression, or a sense that you can’t do anything right.

Good ideas do come back

Back to our sheep (revenons à nos moutons). The reason I put importance to idea is that a good idea will stick with you, and you will be less likely to drop your project. You will think about it during the day when you take the bus, and you will dream about it in your sleep. Let’s say you had an awesome idea for a game jam. Let’s say you failed to create your game by the deadline, but the idea was really good. Perhaps you’ll start working on your idea regardless of any jam. Perhaps there will be another game jam that perfectly fits your idea. Great ideas do stay for a while. As far as my own personal experience, I can talk about this one idea I had a long time ago that had yet to be achieve. The idea is some kind of virtual world, where people can put their own content. Perhaps ten years ago, I dreamed about that idea. Then three years ago, I tried to implement it in Flash. I failed over and over, but kept working on it. Eventually, I made a prototype which was very hard to use. It was just a 3D maze, nothing more than that, except that walls could be replaced by creating a .swf file (creating a flash), basically that means I could create walls separately from the maze. My original idea started to fall apart, as the project looked more and more too ambitious, the code was getting harder and harder to understand, and… I kinda felt that idea was crap. I kinda gave up on the prototype, because I created something that was too complicated for me to use.

Three years later, a few months ago, I did Ludum Dare 29 (a game jam). Created my game, submitted it, and was done with it. Then I started thinking back about my incredible 3D maze, and thought… wouldn’t it be cool if I could travel inside a maze and just go from game to game, like I’m in a museum looking at paintings on the wall, and with a click of the mouse, be transported into one of those games that was created for Ludum Dare 29. Why not reuse my 3D maze? After all, it was purposely made to accept any kind of content on the wall. I worked on it as an extra Ludum Dare project, relearned my old code, and produced Ludum Maze. I felt great, because I felt I just got 10% closer to my big crazy idea of virtual world. RockLeeSmile also made a video about Ludum Maze. I didn’t really know who RockLeeSmile was before that video, but I found out he has more than 50k subscribers so yeah! He’s popular.

Now, I find myself rethinking about my original idea of virtual world where people can put whatever the hell they want, so I plan to work on it again soon.

In short, make sure you have a solid idea. You can still change your idea later, even do a 180 degree on your idea if necessary, but do get started on a great idea. It will push you forward.

STEP 2 – Pick up the low hanging fruits

The next step might not be the usual one you can think of. Basically, don’t just go ahead and start coding… unless it’s what you love to do. My advise is to pick up the low hanging fruits. By that, I mean you have to work on the game as much as possible, without feeling that it is actual work. For me, coding is work, it’s difficult, it’s painful at time… Drawing is ok, but it’s still work. Quite frankly, there are very few things for me that don’t feel like work, but I do find that writing music is the least effort intensive work. (yeah everyone is different). So a lot of time, before doing any coding, any artwork, I make the music first. I do have to say that music is a great starter. Once you have your music, you leave it on while working on your game and somehow it motivates you.

Yet, there are several things even less effort intensive than music. How about writing a story. Just fill in your intro, write the backstory of your game! Or how ’bout just making the website for it. For me it’s work, but for a lot of people, making a website is an nice and easy task. My point is you gotta have something started, otherwise you’ll never get started, that’s quite obvious when you say it. Now, I’m saying this because I am sometimes lacking motivation when starting a game (I do catch up later), but perhaps a lot of you are full of energy right from the batch. In that case, I’ll advise you to go for the meat, just go ahead and attack the most difficult task! You’re ahead of the game anyway.

STEP 3 – Let someone know

Be aware that this is step 3, not step 1 or 2. Why?

Well… at this point you’re more or less committed. You’ve done a bit of work, you solidified your idea. So you can pretty much say you’re not all talk. (at least for yourself). Then you can talk about your ideas to friends. The reason you shouldn’t be talking about your game at step I… is NOT because someone might steal your idea. (That is a decent point, but by now I’ve come to realize that people are not that evil). No, the real reason is because there will come a time when your friend will ask you. “So, what happened to that … whatever… “Gargamel vs the Smurf tower defense” game you were working on. And you don’t want to be like…. “Well, I kinda gave up on it because… oh shut up.”. Basically you don’t want to be all talk. I don’t mind “people who are all talk”, you guys are entertaining. ;-P

But for yourself, you don’t want to start feeling like you’re all talk. Again, it feeds into this self deprecating / depression pattern. You think you’re just good at talking but you don’t achieve anything. You might sense that people don’t take you seriously, because you’re all talk. Even though, quite frankly, you shouldn’t care what others think about you. But we’re all humans, we all want to be loved… or hated by those who envy you. Anyway, at the end, what you think about yourself is important, and you want to prove to yourself that you can achieve.

Also, let’s say your friend asks you: “So how’s this game coming along”. Then you just take out your phone, and just go: “Hey, listen to the soundtrack I finished for the game.” They’d be like: “Yeah! Rock on dude!” (…. or dudette!)

STEP 4 – Where’s the beef?

Ok, so you’ve done your homework, you came up with the idea, cooked out some starters, and tweeted about your progress… I don’t think there is any step that comes between step 3 and…. The Meat!

What I call the meat is the core of the game. Something in the game that says: “If it’s not in the game, the game doesn’t exist!”. For vegetarians, you can call it the Tofu. I call it the meat.

The meat is the most difficult part to digest. For me it’s usually the most painful work. For me, the meat is the coding. It’s hard to believe, but I hate coding. I hate it and love it at the same time. I’m married to coding, for better or worst. You can’t stand the meat, and you can’t live without the meat. Once you’ve started the meat, it will stick with you until the end, but you know you’re really into it. You’re in attack mode, and you feel the pressure and adrenaline. By attacking the meat, you are really committed at this point. You might think, well if it’s an obligatory step, why mention do I even have to mention about it anyway. Well, do be aware that I am putting steps in a chronological order that I find fitting. So I mention the meat, because the meat happens right now, at step 4.

STEP 5 – Test your shit before throwing it out!

Again, an obligatory step. Who makes a game and throws it out there without even testing it to make sure it works? I’m ashamed to raise my hand. I can explain, I actually don’t have an iPhone, but with Adobe AIR I do sometimes produce iPhone games, simply because it’s possible. A lot of time I couldn’t test the game on an actual device, so the game might be submitted to the App Store, then a pissed of Apple employee will come back to me and say: “Your game doesn’t work. Thanks for wasting my time. Test your shit before throwing it out!” (That’s what goes through their mind, not what they replied to me) Yah, sorry but I have to work with what I have. I do however test the game in a simulator, so in a sense I don’t skip this step.

When testing, it is important yet ironic that you must try to find the enjoyment in your game, yet realize that others will not experience the game the same way you do. Now, let’s say you create a puzzle game. How can you possibly enjoy a puzzle game when you know all the solutions? The idea here is imagination. You really do have to imagine someone playing the game. One of the nice trick is feed on surprises. It’s hard for me to think of a good example… I remember when I produced the intro for my game “The World is in your hand“. Basically, the intro is a series of questions where you just say “Yes” or “No”. Because it was designed for people with motor disability, you only press one button, so Tap=Yes and Double-Tap=No. As you go through the intro, it feels like you just tap to skip to the next scene and it was true for that intro. Regardless of whether or not you said Yes or No, the intro would move on to the next page and the character in the story would respond accordingly to your Yes/No answer. This is true except for the final question. In the last scene in the intro of “The World is in your hand”, your wife asks you: “I’ve been working on something. Do you want to see it? (a flying chair that she’s put all her heart creating just so that you can fly around despite being disabled). You say Yes, and you start the game, where you’re on a flying chair roaming around the world. You say No and your wife leaves. You’re left alone and depressed, a game over screen comes up. This is the only way you can get a game over. When I wrote that intro, I was thinking the whole time… “ok somebody is gonna say No and be like WTF. Even by mistake, somebody is gonna say No. I want that WTF moment, I really look forward to it. Heck, I’m rolling on the floor just imagining that moment. I’ve never heard of anyone getting to the Game Over screen, because you have to be a jerk to your wife. Yet, it made me happy to think about it.

But yeah, do test your game, and you really do have to make an effort of imagination to visualize someone playing your game and discovering it for the first time.

STEP 6 – The cherry on the cake

This is actually one of the most important step. It’s not even obligatory, yet it is the most important. There comes a point where you can safely say, “I’m done!”. You even polished the game… that’s step 5.5 which I forgot. Anyway step 5.5 is boring to talk about so I’m just gonna skip it. So what is the cherry on the cake if it’s not polishing.

The cherry… is what makes your game special. At some point, you need to think about the game and say to yourself: “Why am I doing this? Where is the wow moment? What is the thing about this game that lets me talk about it to everyone? What is the one single one second moment that will bring shivers to your audience? That’s the cherry on the cake. The wow moment. Again, it’s not obligatory because you can release a game without any wow moment. If the purpose was just to practice making a game, perhaps learn a new programming language, then it’s perfectly fine to just throw out your cake without the cherry.

You see, a cake can be delicious, but without he cherry (PS: The cherry doesn’t have to be a cherry, it can be a piece of potato),… without that cherry, the cake is missing that inner beauty, the thing that makes you visualize the cake in your mind. The thing that makes it not just plain, but plain perfect. For your game, it’s the thing that makes people be like: “Wow… LOL…. OMG…. I love this. Even if I really hate the game, I love this.”. The cherry doesn’t have to taste better than the cake. If the cake is delicious, the cherry takes it over the top. If the cake is shit but the cherry is delicious, then the cake might redeem itself.

Let’s be less cryptic. Your game is really fun, but you didn’t have that moment when someone got touched, or surprised. Your game will be forgotten after a week. Now you add the WOW moment. Your game will be remembered. If it’s bad, it’s going to be remembered as a bad game, that had this one moment that people will fondly think of. People will remember that.

My main point, and this is the cherry of my blog, is that you don’t make games just to make games. You do it because you want to show humans, how humans are awesome.


Implementing the High Score table for My Champion


This post explains how to implement the leaderboard I used for my game My Champion. At the time, I was looking for a premade leaderboard that would be available on any portals. I first looked at the Mochi leaderboard but that one seem to be too resource intensive. So instead, I decided to implement my own. Since I didn’t want to support a server on my end, I had to find a free service for the backend. I ended up using Gamejolt’s API because it had a few features I was looking for, such as the ability to display a score that is not just a numeric value (like 1-0, 3-4…), and an “extra” field for putting whatever information I want.

A few interesting features of the resulting leaderboard are:
– Shows the flag of the player’s country, linking to a google search combining that country and the world “football”.
– Showing the profile picture if the player is logged into one of the major portals
– Linking to the player’s profile on that portal
– Showing an icon of the portal through which the game is played

Read the rest of this entry

Can games be made too difficult?

Can a game be made too difficult?

Lately, I’ve had a few decisions to make in terms of the difficulty of the games I produced. I made this soccer game, which was apparently insanely difficult. I did spend a lot of time trying to win a match, and felt pretty satisfied when I did. When it came to releasing a test run of that game, it turns not only nobody was able to beat it, but nobody could even get a draw! (ok I think one person managed to win). Still, I struggled before reducing the difficulty, because I felt that players should really try to beat the challenge. On the other hand, one thing to keep in mind is that a level of difficulty that’s too high really drives popularity down, because let’s face it, it’s no fun when you can’t win ;-/ I decided to tone down the difficulty so that winning a match now is as difficult as it was to get a draw, and now it’s still very difficult to win by more than one. (I’ll try to add more levels in practice mode to draw people in.). Okay, I had to cave in. It’s concerning though, have gamers become softer, are easy going games now becoming the standard?

The case of Warcraft 3

Let’s take a closer look at one of my favorite games, Warcraft 3. I used to play Warcraft 3 like mad. I started coming up with the stupidest strategies (like playing only with catapults or just heroes), against actual players. I always loved being challenged, struggling to win, and be stressed about losing. Sometimes, the game almost felt like a chore. It drained all my energy. My co-workers would ask me to join a team game or a 1 on 1 challenge, and I know it’s a just game, I know it’s fun and all, but a part of me would feel like it was almost like work. Still, I loved the game, and never got enough of playing it. Then one day I discovered a variant of Warcraft 3, the notorious… TOWER DEFENSE! I’m not sure if most of you know, but tower defense started as custom Starcraft / Warcraft maps. It was kind of like a tweak on the game, that brought a whole new set of fun experience. Was it fun? Hell yeah! But this was a different type of fun. I didn’t feel tired playing tower defense. It was so relaxing, I sometimes played it before going to bed if I couldn’t sleep. It was Warcraft 3 without the pain. It wasn’t necessarily easier to win, but I felt it was just pure pleasure. One thing was missing though. I didn’t feel I was really challenging myself. I was getting better at something, but I didn’t consider that to really be skills. I don’t mean to bash tower defense, but to me it’s on par with watching television. I just sit back and watch monsters being blown by towers. 

Games with upgrades

Another type of games I’d like to talk about is the games with upgrades. Those are popular games and the concept is almost out of a cookie cutter machine. You have some challenge, you try, fail, but each trial provide money to upgrade something, making the challenge a bit easier. This seems like the answer to difficult game, right? At some point, I thought about adding an upgrade system to my soccer game, but later decided against that. I want to let game developers know, upgrade systems is NOT the answer to everything. If I added an upgrade system to the soccer game, it would change the game fundamentally. The issue with games with upgrade, is that they turn the gameplay into a game of patience. Eventually, if you keep trying you’ll probably get further until the end. There’s a sense of progression, not necessarily because you’re getting better at the game, but most likely because the game is getting easier. It’s not really a bad thing, but one thing to keep in mind is that adding an upgrade system will considerably alter the gameplay. Another example is a game I recently produced called Dragonworm. Originally, I was planning an old school shoot-em-up (like R-Type, Gradius, Xenon 2). The artist wanted to add the concept of upgrading, failing and retrying… We made the ship (a flying worm) upgradeable, with lots of weapons and fun goodies. You collect gold as you play, and get to upgrade the ship after you die. At the end, I was pleased with the result and found the upgrade system very compelling. I noticed something though. For me, the game is the most fun when I only had 2 upgrades. If I fully upgrade the ship, it actually becomes a stroll in the park. I also realized that this would be the experience most player would have: A difficult start, progressively becoming easier. I didn’t want players to totally miss out on what I considered the most fun aspect. That’s why I added special challenges, where you try to finish the game with limited upgrades. My philosophy about upgrade type games: by themselves they provide a great sense of fun, but the message conveyed is that you can just buy stuff and make things easier, rather than keep practicing to become skilled and eventually overcome a difficult tasks.


Nowadays, games increasingly have tutorials. A game without instruction is often criticized for confusing the player. Tutorials / in-game instructions make a game easier to approach. They ease the player into the game, making it more user friendly. So tutorials are a no brainer right? Absolutely not! While designing a tutorial seem like the nice polite thing to do, it could, in a lot of cases, ruin immersion. Sometimes, you want players to discover a game. You want them to approach it with a sense of candor, perhaps a bit scared and confused, not knowing whether they’re doing the right thing… Like a child discovering a toy! The second option would be like having some higher power (like a parent or teacher) holding the child’s hand, explaining how the toy is supposed to be played, then watch as the child repeats the action just taught. Kinda alters the experience, doesn’t it?

Personal philosophy

I realized that deciding the difficulty of a game really comes down to my personal philosophy about life. I think people can struggle through video game and overcome difficulties. I also want players to discover games like they’re exploring a virgin world and not feel like there’s some higher power watching over them. I know I don’t always succeed at following that philosophy, but my goal is to approach it progressively. While the difficulty of games and the lack of assistance might not be great for improving user reviews, I hope to help players adapt and eventually feel the same experience I had when I first discovered video games: struggling, confused, lost, yet marveled.

Another Ludum Dare game complete!


My Champion is my second Ludum Dare entry. This time I did the jam so that I could spend more time on graphics. This was a success, I do enjoy the game quite a lot, and so far some positive reviews. I worked further on the post-jam version to improve the experience, as well as adding a second player and full translation in French and Korean.

Read the rest of this entry

The World Is In Your Hand | Magical Death Chair Of Life & Death!

The World is in your hand was a game I produced a few months ago for a 48h game competition (Ludum Dare). The theme was Minimalistic, so I just made a game where you have to use one button.

Today, I was curious to see how widely known the game was, by googling it. I found this gameplay video. Someone played the game, made a video of themselves playing, and commented on top of it. I quite enjoyed watching it.

This reminds me why I’m in this game making business thingy. I’m not doing this for the money (although money would be nice). I’m doing it because I enjoy having people experience my games. That’s pretty much it!


I just released a game called Social Planets. It actually started out as a ludum dare challenge. It was about “Hitchhiker’s guide to the galaxy”, and although I didn’t have any knowledge of the book, I just thought I’d make a game about a dude hitchhiking from planet to planet. Visiting aliens and talk to them.

Then came the hard part: What do i make the alien say? I’m not a great writer, and at the same time, i try to turn this hold planet hoping thing into an adventure game. Well, after being not super satisfied with the result, i was willing to submit it to Newgrounds and readied myself for crappy reviews. But before doing that, I had an idea:

So if someone write the name of the planet that doesn’t exist, they end up on an empty planet (how boring). How ’bout instead, I put a “VACANT” sign, and let the player occupy the planet, with their own dialog, and uploading their own picture of the alien. Well, I’m not sure if it made the game more fun, but it surely made this an interesting experiment. So far we have ~400 new planets. Feel free to check out Social Planets on Newgrounds