About mrjohnson22 (twitter: @mr_johnson22)

University student / software developer / hobby game designer; was briefly all of them at the same time.


Ludum Dare 30
Ludum Dare 29

mrjohnson22's Trophies

mrjohnson22's Archive

I’m out

Posted by (twitter: @mr_johnson22)
Sunday, December 13th, 2015 9:41 pm

Didn’t have it in me this time. May as well stop now.
Good luck to all the participants!!

Starting late

Posted by (twitter: @mr_johnson22)
Saturday, December 12th, 2015 5:20 pm

Flash Pro CS4

Let’s gooooooooooo

Not participating, but…

Posted by (twitter: @mr_johnson22)
Saturday, August 22nd, 2015 3:34 pm

I’m probably posting this way too late for anyone to care, but I feel like saying stuff anyways. After participating in my first LD, whenever I didn’t participate again it was because I was extremely busy with school and/or work, and generally in a stressed/uneasy state of mind. That also meant I barely had the time to play any of submitted games or even play the winners until much later. I’m not participating this LD either, but I’m happy to say it’s not for the same reason. Things have been fairly hectic for the last few months, but in a good way, as I’ve been occupied with good, meaningful work since graduation; have had time to catch up with family and friends; all that good stuff. So although I’ve been busy, I’ve been enjoying it and have been learning a lot, and I’m nowhere near the stressed-out state I was in during the last few LDs. Things have been settling down as of late so I finally have free time again, but nonetheless, I’m completely out of practice and have to sit this one out.

However! Now that I actually have time to breathe, I’ll be playing the role of spectator. I plan to hop on the IRC and see what people are up to, maybe test out some games, learn from other people’s ideas (which I could really use, actually), and I’ll likely be streaming gameplay footage come submission time (as if anyone cares about what I have to say). It might not mean much but I enjoy being a part of things somehow, and I really do have a lot to learn about game design and may as well take the time to observe.

Good luck to all those participating!

Great community

Posted by (twitter: @mr_johnson22)
Friday, August 29th, 2014 10:19 am

There’s something I want to say before I forget to say it: I love this community. This LD and last (especially the former), I made under-featured, incomplete games riddled with problems, either due to time constraints, unfamiliarity with the tools I used, or just plain old bad decisions. Despite that, both times people have left comments telling me to keep going & develop my ideas further. Wow! It’s wonderful to see such a supportive community! And getting that kind of feedback really does make me want to continue. I aim to make the most of my last bit of time before school starts again to make something. I thank you all!

Blah, something

Posted by (twitter: @mr_johnson22)
Sunday, August 24th, 2014 7:35 pm

Looks like I decided to go for it after all! It wound up being just a crappy demo, but I’m glad I found the time to make something at all. I had a lot of fun and learned much about HaxePunk in the process (which I picked up recently and am loving).

Now, let’s see how many thousands of submissions will be like the one I wanted to make. 😛

PS: This post’s lack of a link to my game is not an accident.


Posted by (twitter: @mr_johnson22)
Friday, August 22nd, 2014 2:49 pm

After participating in LD29, I fully intended to take part in the next one…but alas, something important came up recently, and spending my entire weekend jamming might not be the best idea. However! If I feel a change of heart I might just slap together a mini-project that won’t take too long to make. But we’ll see.

In the case that I do participate, my tools will be:
-Ogmo Editor

Reflection on Results

Posted by (twitter: @mr_johnson22)
Thursday, May 22nd, 2014 6:38 am

Rating time is finally over. First off, congratulations to all participants! There were a ton of great games and I was honoured to have had the privilege to rate them (the ones I could get to, anyways :P).

Now that all is said and done, I’d like to briefly reflect on the results of my submission, Eat Champ. Like I mentioned in a previous blog post, I’m still a bit disappointed and even a little embarassed of it. I’m happy with the idea I went with, but I know I failed at executing it. And my game’s ratings show how people seemed to agree with that, as…wait, what?



…okay, I know not a ton of people reviewed my game, but hey, I’ll take it! I really didn’t expect to get top 50 in anything, or even top 100 (it scored pretty high in humour too, but maybe not for the reasons I intended XD). Hooray! At the very least, this tells me that the game’s concept was indeed something different, which is what I was aiming for. On the other hand, I scored pretty low in Fun and Overall, which doesn’t come to me as a surprise. So my main goal for next time (and in general) is to work on my execution; I can’t just have an idea I think is interesting and call it a day, I have to put forth enough effort to really make it *work*. I’m glad I had the opportunity to make these mistakes in such a positive environment, as it provided me with much helpful feedback & encouragement for improving my game design skills. Special thanks to everyone who rated & reviewed my game; I wouldn’t be here without you! :)

This LD has been a very valuable learning experience in so many ways. Hopefully I’ll be able to hone my skills enough by the time LD30 comes around! See you all then!

LD29 Gameplay Stream Archives

Posted by (twitter: @mr_johnson22)
Saturday, May 3rd, 2014 10:31 pm

As I mentioned in an earlier post, I’l be streaming some LD gameplay over the next few days. For those who won’t be/weren’t able to catch them live, the archives are located here.

There are probably plenty enough people doing Let’s Plays of this LD, but it’s fun to do so I’ll keep doing it. 😛

Stream starting soon!

Posted by (twitter: @mr_johnson22)
Friday, May 2nd, 2014 8:17 pm

I’ll be streaming some LD gameplay/”reviews” here pretty soon. I’ll be playing Compo games alphabetically, interrupted by whatever people suggest on #ludumdare or in the channel chat.

Eat Champ Postmortem

Posted by (twitter: @mr_johnson22)
Thursday, May 1st, 2014 5:40 pm

Now that some time has passed since Compo deadline, and that I have/am giving myself some time to myself, my mind’s a bit clearer to reflect on my submission, Eat Champ.

action! tragedy! romance!

Although I did have a lot of fun making it, I have mixed feelings on the final result; on one hand, to make the deadline I had to cut a lot of corners, leave out a lot of polish, and ultimately submit the game in a barely-finished state. Despite that, I’m still happy with the concept I wound up choosing, and the fact that I was able to stick to it until the end without it becoming a completely buggy mess is something I can be proud of, at least for my first LD! It’s also MUCH more playable than my previous (and first) game jam submission made some time ago (link if you’re curious), so I do feel that I’ve grown since then.

I’d like to spend a bit of time talking about the choice I made during development; for as crude as the game is, I actually did put a lot of thought into things! Even if the protagonist looks like this:


what a hottie

Right from the get-go, I wanted to avoid making a game with level navigation. In order for that kind of game to be fun, it needs solid mechanics AND good level design. I learned the hard way during my first jam that getting mechanics down is hard enough, and this time I didn’t want to have to worry about rushing to create levels to properly express my game’s mechanics. I only wanted to have one thing to worry about: keeping the mechanics fun, and to have them at the forefront of the game.

Another thing about games with level navigation is that they’re only as long as how many levels they have. With that in mind, I opted for a arcade-style gameplay, which naturally gives itself high longevity without much extra development effort. As much as I like games with levels, I knew that if I did make one, it would have been really short. I also hoped that a mechanic-oriented game wouldn’t be as hurt by time-saving cuts, since as long as the basics are down, the game can still be playable without having to be fancy or complex.

I think the style of game I wound up choosing, a “multitasking” game (I’m not sure if this style of game has an official name, but that’s what I’m calling it), accomplished those goals well enough. But remember how I just said I wanted a game that would be fun with just the basics? Apparently, I didn’t, because the “basics” of my game were several interdependent actions working together in tandem (managing eating/chewing with lung & belly capacity, etc etc). This meant that even putting one “action” in the game meant that I had to prepare every other action that depended on it, which made things tricky to finish in a timely manner. I still think keeping the actions dependent on another is an important part to the game, but next time I’ll avoid designing a game like that to allow for more modular development that can be taken one step at a time.

If I had made this game a year or two ago, I would have used pure Actionscript 3 in tandem with Flash Professional. Lately, though, I’ve tried to branch out to using game-oriented frameworks, and fell in love with FlashPunk (for the most part). I feel its best for tile-oriented games, but I still used it to make this one because of its high performance and how it saves time on tasks that can get annoying in pure AS3.

With that said, using it made me realize all of the things I take for granted when using AS3+Flash, like being able to animate a movie clip/entity in Flash and import it to my game. FlashPunk uses spritesheets instead of Flash symbols, so to get all of my Flash-drawn assets in (it’s a great drawing tool) I had to use a sprite-sheet generator (grapefrukt exporter) on everything. This was okay for the most part (and for the player’s head and hands, was actually better), but drawing and positioning status bars and everything was a bit tricky without feeling as closely connected to the display stage as I do with AS3. Most of those difficulties were due to inexperience, though, and working in an unfamiliar (but still effective) environment was a great learning experience that gave me a good idea of what I need to learn to make things easier for myself down the road.

There isn’t much to say here…I made some placeholder graphics, and they wound up being the final ones! How embarrassing. I was saving the task of better visuals & sounds for last, which I suppose was the right choice since those are the most expendable parts of a rapidly-developed game. But it still would have been nice if I gave myself a little bit of time making the game less ugly (I have to defend my decision to use floating hands, though, which is the go-to method to easily & effectively animate hand movement).

I did try to do a good job on the status meters, as I knew if I cheaped out on those no one would be able to tell that they were supposed to represent a digestive system. I also made sure to put key prompts in, and to provide visual feedback (usually by making things flash) when it was warranted to direct attention or inform the user that pressing a key did something (like digesting), or to differentiate similar-looking actions from each other (biting fills your mouth with food, but chewing doesn’t, so I did my best to animate the teeth differently for each action so players can tell the two apart. Did I accomplish that?).

So the effort I spent towards presentation was to help prevent the game from being too cryptic to play, which is nice and all, but I still think it’s confusing to play without reading the instructions beforehand. For instance, I insisted on assigning the “breathe in” action to pressing P and Q at the same time, and to forbid it while out of air if your mouth is full of food, but I didn’t give myself time to explain those rules visually as well as I did others. Especially since the game’s presentation doesn’t immediately liken it to a set of conventions (like a platformer), it was my job to properly express how to play it, and I failed to do a consistent job of that. But at least I did a better job of it then for my last game, though, which was even worse in that regard (hey, I guess I learned more than I thought from that game, heh).

I’ll keep this part quick. It’s probably clear that there were supposed to be many more features/actions to the game, as it’s a bit simple the way it is now. Of course, by mid-afternoon on Sunday I started to get the feeling that I would have to start making some cuts (I really thought I was going to be okay for time until right about then). I never thought that I had too much planned to put in the game, but it’s surprising what a time limit can do to you! So I did what I could to finish only what I needed to keep the game playable. I also didn’t give myself time to properly balance the difficulty of what I had put in, so I’m sorry that the game is so hard. 😛 The lesson learned here is that it’s best to start simple and build from there, rather than having even moderately-sized plans that will likely end up cut.

Also, those who have played the game probably raised an eyebrow while noticing that it’s currently hosted as a file dump, rather on its own page or as a game portal submission. To be perfectly honest, I’m not all that comfortable submitting it to a public portal in its current stage; unless its understood as being a hastily-made LD submission, it’s really not ready for public consumption, and I think it would do me more harm than good. With that said, I fully intend to release an upgraded version of the game within the next few days (hopefully over the weekend [EDIT: haha yeah right], when LD buzz is still hot!!), while keeping the original version in it as “48-hour mode” or something, for context. It’ll probably be just an audio/visual update, but if I have time I might even add in some cut features!

So thanks for playing, and thanks to anyone who read all the way to the end of this rambling mess! I do what I do for folks like you. <3

PS: I will probably be **STREAMING** some submission surfing soon. I'll make another blog post about it, so sit tight! Because I know you all care immensely!!


Posted by (twitter: @mr_johnson22)
Sunday, April 27th, 2014 7:07 pm

Ta da

Even though I wasn’t able to do a lot of what I wanted (if that isn’t painfully obvious already), I’m glad I stuck with the concept I picked, as it’s something I probably wouldn’t ever do outside a game jam scenario. The point of LD isn’t just to compete, but it’s to learn, and I think I accomplished that at least. :)

And yeah, the next LD I do is going to be a Jam…I severely underestimated how much having teammateshelps (especially ones who can draw). 😛

Grapefrukt Exporter helper class

Posted by (twitter: @mr_johnson22)
Saturday, April 26th, 2014 12:47 am

I forgot to upload this earlier! It’s a helper class I wrote for embedding tilemaps created by the Grapefrukt Exporter (https://github.com/grapefrukt/grapefrukt-export) into FlashPunk.


To use it, set PATH_ROOT to whatever the pathname of your image directory is, and set one of your project’s Additional Compiler Options as “-keep-as3-metadata+=Embed”. (In FlashDevelop, this is under Project->Properties->Compiler Options.)


Posted by (twitter: @mr_johnson22)
Friday, April 25th, 2014 10:32 pm

4 hours in and I’m still brainstorming. AUGH this is tough! Maybe if I elaborate on the ideas I have so far something will click. Here goes.


Idea 1: Eating competition game

-eat as fast as you can while keeping your food “Beneath the Surface” (don’t vomit / choke)

-reflex game: press key sequences/patterns to perform actions
-multitasking game: must perform several independent tasks at once: grab food+chew+swallow, digest, stretch(?), drink water ask for refills (2 categories: food & water), manage pulse/stress level(?), burp (without choking, don’t interrupt eating!), hiccups!!
-DANGER EVENTS: about to choke (quickly get some water, manage breath/pulse), about to throw up (mash key or something?)
-time limit: eat x foods in y seconds; once checkpoint reached, higher x and smaller y
-manage stomach fullness: counter with stretches (expand stomach, but takes time) or water (increases digestion speed but increases hiccup %, and bloats(?))

-easy to make: no character movement, collision, or level design
-longevity: randomly-generated events (no levels either) so it can be played for a long time, high score rush!
-theme is different enough? maybe too much?
-modular: should be easy to add more features & events if i have time

-theme is risky…should emphasize “beneath” and “surface”, perhaps visually (stomach meter with a bar on top, or something)
-repetitiveness: gameplay could fall into a pattern (=infinite score) if there aren’t enough events for the player to manage…gotta keep it fresh
-artwork: it needs it! can people tolerate my bad art? probably
-can i use flashpunk for this…? was expecting to be able to use an easy framework, don’t feel like using pure AS3 + Flash IDE


Idea 2: Climb & Dive

-have to climb a level within a time limit; jump from as high as possible to fall hard enough to break through the planet’s crust and escape to “Beneath the Surface”
-in a drill suit / ship or something, that can be deployed when you make the final jump
-space colony planet, want to breach into the core where it’s cold because the planet is getting to close to a sun (malfunction)

-vertical platformer: run & jump over obstacles, climb ladders, falling platforms (wide enough screen for big level, not just up)
-calamity: dodge falling objects, crumbling platforms
-maybe no enemies/HP: single-hit deaths
-maybe just one level, but going for high score: how high you can get before jumping, how far you can dig into the ground when landing, SUPER BONUS/Win if you manage to break through the crust!
-2 parts to gameplay: part 1 is vertical climbing, part 2 after the final jump, falling to the ground while dodging things (getting hit slows you down)

-can have fun with level design
-coding/building a level should be easy with Ogmo & Flashpunk

-sounds tough…and if development falls apart there won’t be much to make it fun
-need an elaborate level to make it fun, and won’t have much replayability
-really don’t want to make a random level generator if making 1 level isn’t enough


Idea 3: Climb a Sinking Level

-towers/spires are sinking “Beneath the Surface” of the ocean, or perhaps a volcano
-ancient ruins setting? you’re a native trying to find high ground

-narrow vertical platforming, with bursts of horizontal: climb a tower as it sinks, but once you’re near the top you have to jump to a tower beside you (this will only work if the adjacent tower only gets platforms once it has sunk for a while, so you won’t just jump to it right away)
-crumbling floors, spikes, hazards. can probably have health in this game, but falling off tower kills you
-some events trigger only once the tower has sunken a bit, so even if you can climb faster than it sinks, there’s still a challenge

-sounds fun, should be simple & safe enough to be fun

-how long with the game last without randomly-generated levels? Hand-designed ones probably don’t suit this game very well, since the player should have to “keep going”


Idea 4: Double-sided puzzle platformer

-controlling two players: one on each side of the ground (above & below), so one is “Beneath the Surface”
-spirit world? dream world? main character is “real/true” one, and the below one is the “fake/shadowy” one (can work out specifics later, but it’s flexible)

-top character falls down (normal), beneath character falls up: control both at the same time. Right/left moves them in tandem, jump button makes them jump perpendicular to their floors (top up, beneath down)
-different level obstacles on each side of every level: walls, spikes, lasers, LOCKED DOORS & KEYS ON DIFFERENT SIDES. Key for a door will be on the opposide side of the level, so one char grabs key & other char goes through door! okay.
-“bottomless pit” = gap in ground where both chars can fall through; lose life when they hit each other
-multiple levels, puzzle-style: have to get both characters to the exit at the same time

-easy & fast to make with Flashpunk & Ogmo
-inoffensive concept, will probably be enjoyable enough even if levels aren’t spectacular
-can skimp on the artwork until later on
-core engine should be quick to develop, allowing more time for level design (which is important)

-level design: might be hard to make levels with hard puzzles
-a bit too boring/safe

Okay, that was helpful. #2 & 3 are probably too complex to tackle or won’t be fun enough in time. I like the concept of #1 the most, and will hopefully be simple enough to make, as long as I’m okay with making a non-level-based game like I’m used to. I like #4 too but it might be too simple, however it can definitely be an option to fall back on if whatever else I choose to do goes belly up.

Compo & starting code

Posted by (twitter: @mr_johnson22)
Friday, April 25th, 2014 4:53 pm

Because I’m amazing and everyone cares about what I post, I should clarify that I’m entering the COMPO, not the Jam. I made a typo in my previous post (yowza!), and edited it to reflect this.

I suppose now is also a good time to post the slightly-tweaked version of FlashPunk I’ll be starting with. It’s not much, but I may as well make it public lest it causes a problem down the line.

Giving it a go!

Posted by (twitter: @mr_johnson22)
Wednesday, April 23rd, 2014 7:31 pm

***EDIT*** I’m doing the COMPO, not the Jam! I always get those two mixed up. Off to a great start!!!***

Barring any unforeseen circumstances, I’m in. It’ll be my second jam but my first LD, and the first jam I’ve done in a while; hopefully I learned enough since then to do better this time around!

I’ll be doing the Compo. As much as I’d appreciate more time, I don’t think I could last 72hrs of dedicated work without going nuts. 😛

Platform: Flash (web)
IDE: FlashDevelop
Engine: FlashPunk (AS3)
Sounds: sfxr, FamiTracker, Audacity
Artwork: Adobe Flash CS4 & Grapefrukt Exporter (github.com/grapefrukt/grapefrukt-export)
Levels: Ogmo Editor (if applicable)

Good luck to all those participating!

[cache: storing page]