About jacklehamster (twitter: @jacklehamster)

Jack Le Hamster, french game developer.


Ludum Dare 37
Ludum Dare 35
Ludum Dare 34
Ludum Dare 30
MiniLD #51
Ludum Dare 29
Ludum Dare 29 Warmup
MiniLD 50
MiniLD 49
Ludum Dare 28
MiniLD 42
Ludum Dare 26

jacklehamster's Trophies

I played too much of your game.
Awarded by ViKing Games
on September 7, 2014
you have been in Helevenium #LD29
Awarded by alvivar
on May 19, 2014

jacklehamster's Archive

Directory of all games in a JSON file

Posted by (twitter: @jacklehamster)
Saturday, May 3rd, 2014 11:30 am

I’ve uploaded the list of all the LD29 games submitted in JSON format, also including the first screenshot and all provided links for each game. I hope by sharing it, someone can find a good use and make something fun out of it. I used that list to produce my Ludum Maze.


This is the code to produce the list: https://github.com/jacklehamster/ludumdare/tree/master/LD29 (it’s in ActionScript 3).

Find your game in this maze of Ludum Dare Games!

Posted by (twitter: @jacklehamster)
Thursday, May 1st, 2014 7:16 am

Travel this maze to explore the collection of Ludum Dare games, play LD games, and look for yours! You start at a random location, so you could end up inside a wall. If that happens, just type in the location on the top left. (like 100,100) to go somewhere else. This is a good way to visualize games, because it gives you can see the high def screen shot and the link type (Web, PC, OS/X ect…) automatically and even figure out on which website it is hosted (Gamejolt, Newgrounds, itch.op, Dropbox…).

Try the Ludum Maze

Screen Shot 2014-05-01 at 5.48.40 AMScreen Shot 2014-05-01 at 5.50.02 AM




Note: This is NOT my LD29 entry. This is a project I did on the side by running some script to extract the list of LD29 games and reusing code for a game I never finished. Please also play and rate my LD29 entry Princess Fart!


Congratulations for those who made it for this LD29!

Posted by (twitter: @jacklehamster)
Monday, April 28th, 2014 7:02 pm

Switching to Jam. 48h version locked

Posted by (twitter: @jacklehamster)
Sunday, April 27th, 2014 5:44 pm

I was going for the compo but ran out of time. I pretty much spent 90% of my time making the cut scenes and pretty much missed the whole “making a game part”. So, I’ll give myself another day. Be patient 😉

Note that I actually uploaded the whole finished version at the 48h mark, but since I’m now doing the Jam I locked the game at the intro screen with a secret passcode. For those of you who are curious, you can try to guess the passcode

I guess it’s fitting for the theme. To play the game, you have to scratch the surface and find out what’s beneath!


Get your voice acting from Google Translate

Posted by (twitter: @jacklehamster)
Sunday, April 27th, 2014 12:30 pm

Kudos for the person who posted this tip on Ludum Dare (sorry I lost the post). This was useful for adding voice acting into my project.

Basically, with Google translate, you can have the program talk any word you type, and in accents from different country! Just type your phrase, click the “listen” icon and Google generates your very bad voice acting. The audio file can be found as mp3 using the Chrome developer tools.

Tip: You can choose a different language to vary your accents, but you’ll need to misspell the phrase to make sure the program speaks the correct phonetic sound. Like this:

“So, dats how they look like beneath the surfaice”



Quite fitting for the theme!

Credit: http://sarmati.deviantart.com/art/Truth-lies-just-beneath-the-surface-444958717

My entry for miniLD-50: Starcraft Demake

Posted by (twitter: @jacklehamster)
Monday, March 31st, 2014 5:19 pm

Finally got to a quite complete version of my demake for miniLD-50: Starcraft Demake!

battlecruiser overlord zerg-den zergling









I’m still using Flash, but some notable things I experimented with this time:
– Player.IO: I incorporated the multiplayer API of player.io (now under Yahoo). It’s pretty good! I had to work on my forgotten C# skills but was able to implement the client and server side by side, upload the server code and have it run flawlessly. This is one of the smoothest workflow I had working on a multiplayer game, and that’s probably why it’s the only multiplayer game I feel I completed successfully.

– Pixel Dorado: Also experimented with doing the art with this drawing program I made. It’s not released yet. I used to do art in Flash, but I found that I’m not a great vector artist, especially without any tools like wacom tablets, ect… I made this drawing tool so I can feel comfortable drawing. It’s called Pixel Dorado, it has no colors but it fits well my need.

Anyway, check it out. It’s Starcraft watered down, but it’s still multiplayer!


ArkBurst, our miniLD entry from Derail’d and Dobuki Studios

Posted by (twitter: @jacklehamster)
Tuesday, February 25th, 2014 2:18 am

Please check out ArkBurst, a collaborative project between my studio Dobuki and Derail’d studio for miniLD #49 jam. I worked on the code and they did the art, level design and music (Ryuno is the composer). It’s a brick breaker and the player is the ball!


Gotta say, my projects look a lot more polished when I don’t draw the art myself ;-P

Online tool for making 8-bit retro graphics from PNG

Posted by (twitter: @jacklehamster)
Wednesday, February 12th, 2014 5:01 pm

So myself I don’t really make 8-bit games, but I know a lot of you guys do. There’s one thing I would love to see more in your 8-bit retro games: CUTSCENES!

And I found the perfect tool to help you achieve that ;-). It’s an online tool (no download) found here: http://c64.superdefault.com/

I encountered this site when I was looking for a PNG to 8-bit retro converter. The naive approach was to scale a picture down, save it, then scale it up to make it look pixelated. That actually failed big time, simply because the result was too rich in color. It clearly looked like a scaled up photo rather than a retro graphic. There are a few tutorials that showed how to do it right using photoshop, but for the lazy type like me, I found that the online tool works best! Just look at this awesome 8-bit photo of Nicolas Cage below!


Anyone here experienced with Cocos2D JS

Posted by (twitter: @jacklehamster)
Tuesday, February 11th, 2014 12:19 pm

I’m in the process of slowly moving out of my comfort zone, and try to learn to make games without Flash. Flash has had its moments, but the port to mobile is getting really clunky and impractical.

So, the obvious choice would be Unity, as it seems to grow in popularity and has the advantage of being cross platform. But I was also considering another option: Cocos2D JS

I’ve read some tutorials, and it seems like a nice concept: I make a game in JavaScript, make it work within the browser, then port it nicely to iOS and Android. But there some issues with it I could think of:
#1. Well… it’s not clear but… is this developed by Zynga? ;-P
#2. The IDE of choice seems to be cocosbuilder.com, and at the top of the page it says Cocos Builder is no longer maintained. (then it redirects me to SpriteBuider.com). Does it look like a red flag?
#3. Isn’t JavaScript slow?

The reason I’m not completely sold on Unity, is because I’m mostly a 2D game developer, and I would prefer something a little more lightweight. Unity seems to be for the kind of devs who like to incorporate APIs, engines. I’m the kind of dev who’d rather implement basic collision detection than use a physics engine in my game.

Anyway, just looking for other dev’s thoughts about it. Thanks

Can games be made too difficult?

Posted by (twitter: @jacklehamster)
Friday, January 24th, 2014 7:06 am

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?

… read more:

Got lazy over the miniLD 48

Posted by (twitter: @jacklehamster)
Monday, January 13th, 2014 5:56 am

I woke up in the afternoon on Saturday, and decided I’m just too lazy to work on miniLD this time. The original idea I had would take too long to make anyway. Instead I just kept working on my post-jam and tried out what people have done for miniLD 48.

There’s quite a lot of interesting ones actually, it helps fill up the time during newgrounds’ downtime. For some, I don’t quite get how they connect with the themes, but the entries I’ve played are quite entertaining. Seems like you guys put a lot of work in it.

It’s nice to actually play some games and don’t feel like I have to vote. Sometimes voting seems like work, but for miniLD I can just play around and comment on interesting games.

Going OVERBOARD with post-jam version of My Champion

Posted by (twitter: @jacklehamster)
Tuesday, December 31st, 2013 12:24 am

After getting some positive feedback on My Champion, I decided to make a post-jam version. My first thought when doing the post-jam was that I shouldn’t go overboard. It’s just a  jam game after all… My next thought was: Screw it, let’s just go overboard!

So here are the additions to the post-jam of My Champion, and this time, I really went OVERBOARD!

* Tweaks to the gameplay: I tweaked the gameplay to make it more playable. Notably, you no longer go faster when running diagonally. The hit box against the gorillas are a bit smaller.
* Half-time: To respect the rules of soccer (or at least some of them), you get a half time at 45 min and get to switch sides.
* Translation to French and Korean: Yep, the game is entirely localized in French and Korean. I translated every words to French, and a friend help me translate to Korea. You can change the language dynamically during the game by pressing ‘L’. This took a lot of work!
* Extra options: You can mute the game. You also have the option to toggle auto-kick. I just added auto-kick to be able to play the game with one hand while holding a beer, but you do play much better by using the space bar.
* Dobuki Logo: The game now looks more professional with my logo ;-D
* Animations: I added the Kick animation for the cat. I also added the gorilla’s walk and kick animation.
* Head-turning: Oliver now sometimes turns his head slightly towards the ball. It’s a bit useful when you need to find the ball offscreen.
* Sound effects: You can hear the ball getting kicked!
* Illustrations: The text is now paired with a nice illustration that describes the story. You can now see how I originally designed coach Tapo (he’s a rabbit!). Also the cat has a name: Oliver!
* Practice mode: You can practice at controlling the ball on an empty field before the real match.
* Referee: Yes! There is now an in-game referee. Though it might just look like a smaller cat, it’s actually a hamster. He doesn’t affect the gameplay, but you can push him around to calm your nerves.
* Goal-keeper: I love this addition, because it’s a big reference to an anime I used to watch in France. I hope those of you who also watched it will recognize who I’m referring to. Note that in theory, this makes the game much harder, but hopefully the adjustment to gameplay compensated for that.
* Multi-player coop mode: That’s right! Multiplayer! I implemented a mode that lets you play with a friend on the same screen. Ok, it’s no longer “You only get one”, but it’s ok. We’re in post-jam ;-P. The second player use the keys ASDW or QSDZ for AZERTY keyboard 😉 and SHIFT. Both players have to remain on screen, so if one player falls behind, he’ll get dragged on by the stage’s boundaries. Note that the 2 player mode is unlocked only once you win a match, so I hope you guys can actually beat the game.
* Vicky: Not only you get a second player, but it’s a feline chick! Here name’s Vicky. She’s pink, she’s faster than Oliver, she can push him around, but she’s weaker at kicking the ball.
* 2 additional endings: Since there’s a new coop mode, I had to add two more endings. One for team victory, and one for draw/defeat. There’s also a nice little storyline to explain the inclusion of Vicky.
* Medals and score table: There are now 8 medals and a highscore table. Some medals are a bit tricky (can you find Waldhino?)

What I didn’t add:
* Crowd: I was going to add the crowd, but to get to it you would have to go pretty far past the game’s boundaries. Meh… I think I’ll go without it.
* Music for title screen: That’s actually the last thing I want to add before releasing the game on Newgrounds. I’m contacting some composer to help me come up with a nice theme song.

Meanwhile, enjoy the post-jam version, and if you haven’t yet, feel free to try and rate the Jam entry. Have a happy new year!

thomas prince

Thomas Prince


Screenshot 2013-12-30 20.22.44

Screenshot 2013-12-30 22.26.25Screenshot 2013-12-30 22.27.06

A long post-mortem for: My Champion (+ a few coding tricks)

Posted by (twitter: @jacklehamster)
Tuesday, December 17th, 2013 12:12 am
Whohooo, I’m done…

This time, I went for Jam. Didn’t get enough time, I even went a bit over the limit on the deadline, and didn’t even get all I wanted. Ok, but it was fun 😉

FIRST DAY (Fri-Sat): Thinking about the theme

The first 24h was spent just thinking about the theme. I actually thought about the theme during the slaughter, so I had some idea about what I wanted to do. I wanted to jump into programming, but I had to attend an open-house the whole day for an art school.

After it got announced, I developed my first idea immediately. It was going to be “You only get one bullet”, and you have a girl escaping a prison. She knocks a guard, grab his gun. Afterwards, the tutorial shows you how to shoot… then you see the title: “You only get one bullet” (I love to frustrate players ;-D). Of course, if you know about it, you can skip the tutorial and try to hold on to your bullet. I was going to make it possible to finish the whole game without ever using any bullet (basically you can use the gun to draw the gun, and you press another key to shoot). Then I just kinda paused for a minute. First, I kinda realize how much AI scripting and level design I would have to produce, and that scared me. Then I also thought more about the theme, and thought “You only get one bullet” is not that uncommon. Not that it’s bad, but I just thought, why not try something a little different. I also thought: “You ONLY get one” means you kinda wish you had more. More bullet would mean more killing I guess. Then I started thinking about this whole side-quest started by McFunkyPants: “Make a game with #NOKILL, no violence”. I didn’t even plan to participate in that, unless by chance my game didn’t have any violence. This time, I actually got swayed by it.

So back to the drawing board.
– You ONLY have something, so you wish you had more of it.
– It should be a situation where you’re supposed get MORE, but you can’t.

I then thought a bit about my warcraft games, where I would play the game with just one unit (hero unit). That’s kinda fun, but I still don’t get out of the #NOKILL thingy. However, it help me to think about the final idea. Instead of an army, you get one soldier… or instead of a team, you get one player!

Done! I always wanted to make a soccer game, now’s my one chance!…

SECOND DAY (Sat-Sun): Programming

Texture + Round Mask = Ball effect

Texture + Round Mask = Ball effect

Ok, I finally get in front of the computer. I start with a mockup for doing things in semi-3D, then scrap that out and go for 2D top view. First goal is to make the ball. Thankfully, I learned some tricks from making a pool game previously for rolling a ball (it’s basically rotating a texture on a round circle with a mask).




DIST < R1 + R2

DIST < R1 + R2


Next step was getting collision detection. That’s fine cause I’ve done this in several previous game. The idea is just to turn everything into a circle, then collision between two circles occurs when the distance between their center is less than the sum of the radius.



Next is the interaction between the player and the ball. The controls of the player and the ball had to feel good. I remember back in the day, there was 2 soccer games I tried on computer. One was FIFA, which was very popular at that time, but I didn’t like it much. Instead, I played this other game (I forgot the title). I just repeatedly have Rudy Voller run with the ball into the goal. I could definitely understand why it was not as popular. ( That game was way too easy.). I did enjoy the fact that the ball just sticks to the player until he/she gets tackled (which never happens with Voller cause you’re to fast!). Anyway, back to the game. I simply implement the equivalent to a magnet on the player, then have a repulsion magnet when we press [space]. As it turns out, if you just play the game pressing [space] continuously, it plays a bit like FIFA, which I actually prefer now.

Then I had to add players. I went back and forth between two ideas:
– Having fixed enemy players in the game, who try to hold position and approach the ball when it gets close.
– Having enemy players generated on the fly, coming in and out of the screen.
It turns out the second version makes no sense, but is more fun. So that’s what I chose.

The highlight of my sunday night was the real-world ludum dare meetup. I got to meet other jammers in person working on their game and presenting them. It adds a lot more to the game, when you hear someone talk about it, and see their face. It’s also nice to know others are Jam regulars, participating in other events like charity jam, 0h game jam, and putting their games on http://www.onegameamonth.com. It feels like you’re part of the community.

LAST DAY (Sun-Mon): Art, sounds, and headache

Until monday, I really got excited. I thought I would be able to achieve a lot, then I realize my head was getting a bit big, then I got a headache. I had to let go of so many nice idea, because I didn’t have time to squeeze them all within a Monday when I’m supposed to work. I did upgrade from the geometric shapes to actual sprites, so that was a plus. I also added ambient noise, but I’m not sure if this was a good idea. For some reason, I thought I would be able to have all the following before the jam deadline (which I had to let go):
– a referee!
– a complete intro showing the good coach (a bunny) getting harassed by the enemy coach (a horse), and the gorillas beating on the other cats
– a crowd, with hidden characters inside.
– replacement players (gorillas => rhinos => T-rex)
– an enemy goal-keeper

The last day was mostly disappointment, but now I realize I should have just kept it real. What I got at the end isn’t that bad for a weekend jam. I finally made my soccer game (achievement checked ✓), got to remind myself of Shaolin Soccer (a good chance to express how much Stephen Chow is an awesome actor), and got a kick out of writing a bunch of silly soccer player names.

I hope I get to improve this game, but I know the reality of things… I always end-up working on another new cool game instead, which is a good thing ;-D

You only get one player“You only get one player”

Jack in!

Posted by (twitter: @jacklehamster)
Tuesday, December 10th, 2013 11:12 pm

This will be my second LD. The first was LD26: Minimalism.

The World is in your hand










For LD 28, I’ll be using Flash, garage band, and my open source game engine TurboGraph: https://github.com/jacklehamster/TurboGraph-master

Basically, it’s an engine that makes caching bitmaps easier in ActionScript. It lets you use filters in Flash without ruining performance.

For minimalism, I saw a lot of entries concentrate on gameplay and use very basic graphics. That’s a smart move, since time is too precious to be spent on making elaborate art. For this LD however, I will try to go the opposite way. Minimalistic gameplay, just so I can spend all my time on art. I also want to take full advantage of my game engine by having complex vector graphics with tons of filters. I’m not a great artist (if I can call myself one at all), but I do enjoy drawing. I hope this will turn out to be a good experience.




BitmapCaching engine for upcoming ludum dare

Posted by (twitter: @jacklehamster)
Thursday, November 28th, 2013 6:54 am

Hey it’s Jack again,

So for he upcoming ludum dare, it is my understanding that we can use game engines that were produced before the 48h period. Since I’m planning to use mine, I wanted to release the code. It’s now on an open source license, and you can shoot me an email if you want some help on how to use it.


The engine simply consists of saving Flash vector drawings into a bitmap at runtime, and reuse it later. It’s a common trick for boosting performance in Flash, and I’ve been using it lately.

[cache: storing page]