Ludum Dare 36
Coming August 26th-29th Weekend

Suggest a theme!
Theme suggestions for LD36 now open

About DDRKirby(ISQ) (twitter: @ddrkirbyisq)

I'm DDRKirby(ISQ). I do lots of cool stuff! Check out my main website here:


Ludum Dare 35
Ludum Dare 34
Ludum Dare 33
Ludum Dare 32
Ludum Dare 31
Ludum Dare 29
Ludum Dare 28
Ludum Dare 27
Ludum Dare 26
Ludum Dare 26 Warmup
Ludum Dare 25
Ludum Dare 25 Warmup
Ludum Dare 23
Ludum Dare 23 Warmup
Ludum Dare 22

DDRKirby(ISQ)'s Trophies

Jupi's Jam Favorites
Awarded by Jupiter_Hadley
on December 1, 2015
Audio - 2nd Place - LD29
Awarded by r2d2upgrade
on May 20, 2014
Theme - 2nd Place - LD29
Awarded by r2d2upgrade
on May 20, 2014
Fun - 3rd Place - LD29
Awarded by r2d2upgrade
on May 20, 2014
Overall - 2nd Place - LD29
Awarded by r2d2upgrade
on May 20, 2014
SonnyBone's Official 'RAD GAME' Award
Awarded by SonnyBone
on December 19, 2013

DDRKirby(ISQ)'s Archive

Last 20 minutes!

Posted by (twitter: @ddrkirbyisq)
Monday, May 9th, 2016 7:41 pm

Your LAST CHANCE to rate and review Nyamo’s Adventure!


Some things people have been saying about the game already:

“Absolutely my favorite game I’ve played this jam. Near perfection.

“This should be a top 10 overall game in my opinion, if not the number 1 winner.”

“Every once in a while an entry like this pops up. An entry that is just a joy to play and makes me wonder how this was even possible to make within the time limit.”

“I have nothing to say, this is too perfect to be commented.”

Silly bug fixed with Nyamo’s Adventure

Posted by (twitter: @ddrkirbyisq)
Saturday, May 7th, 2016 11:19 pm

D’oh!  I did the unthinkable — I made the Post-Compo version of Nyamo’s Adventure WORSE than the compo version by leaving in a debug flag that has you start with ALL abilities unlocked (instead of none).  Needless to say, this defeats the entire purpose of a 2D metroidvania exploration game *facepalm*

The bug has now been fixed, so I encourage you to replay and re-rate Nyamo’s Adventure if you played the buggy version where you start with all abilities.

I’ve also added automatic saving of game data, so if you navigate away or close your browser window, you should still be able to start again with the same number of collectibles and powerups.

Only two days remain…any additional ratings are greatly appreciated!


Click here to play and rate Nyamo’s Adventure.

Nyamo’s Adventure In-Depth Post-Mortem

Posted by (twitter: @ddrkirbyisq)
Thursday, May 5th, 2016 1:31 am

There’s still time!  Play and rate Nyamo’s Adventure now!


Nyamo’s Adventure is our Jam entry for LD35 — made by yours truly in association with my trusty artist Kat.  It’s a 2D “Metroidvania”-style platformer game with shapeshifting abilities, multiple worlds to explore, and collectibles scattered about!  We’re releasing it as part of our “Cocoa Moss” collection of games.

Overall, Nyamo’s Adventure was a blast to make!  This is perhaps our most solid LD showing to date as a team, and it’s really awesome thinking about how far we’ve come since we made Match Girl way back in LD28.  Match Girl was a solid game itself, and was very well-received (2nd place overall!), but just the sheer amount of content and different things that we were able to create this time around for Nyamo’s Adventure is really impressive in comparison.

I had 4 “goals” (ish) this time around for LD, and they were:

  1. Successfully use Unity
  2. Have fun
  3. Finish on time
  4. Make some awesome music :)

I’m happy to report that we managed to hit all four of those pretty well!  #2 was a little rough at times (more on that later) but overall things were great!


As always, let’s go over what went well and what didn’t go so well.

What went well:


Wow!  Color me impressed — Unity really overperformed as a dev environment and editor tool.  Now, I’ve used Unity in the past, so I’m well-familiar with both what it’s capable of as well as the little tricks of the trade that you pick up along the way as you work with the quirks of the engine, but I think I still underestimated just how much it allowed me to do when compared with my standard suite of tools (HaxePunk).  As much as I’d like to be a hipster and jump on the bandwagon, I can’t really argue with what it allowed me to achieve this LD.  Having the visual editor around for both editing and debugging was truly invaluable and saved precious precious iteration cycle time when I was trying to design levels, get mechanics working, etc.  Here’s the entirety of world 3 in Unity’s scene view, for instance:

Screenshot 2016-05-04 21.37.02

Being able to put the levels, UI, etc. together like this made things so much easier!


Level design and Tiled2Unity

Nyamo’s Adventure is a huuuge game compared to some of my other ones.  5 different worlds, each with a bunch of different screens, and the different rooms all fit together in a cohesive way.  I spent a LOT of time on level design — easily more than I actually spent on coding, which was quite surprising at first.  Although I’ve had some experience with platformer level design from the work I did for Match Girl, I had never quite exercised my designer mind like this before.  I made sure to read up on some Metroidvania design articles as I was first starting out (which proved helpful), and made sure to really plan out the first few screens of the game in a specific way to introduce the different concepts (moving, jumping, collectibles, the final temple door).  I’m actually really happy with how the level design ended up panning out, and how I was able to properly execute the Metroidvania feel.  Of course, it’s very simplistic and if you really look at it the different worlds are very similar in terms of how they lead you down a linear path to an ability and then use that ability to shortcut back to the beginning.  But I think it still works just fine, and designing the rooms themselves was also great thanks to Tiled being a wonderful tool:

Screenshot 2016-05-04 21.38.05

One of the first things I did after we decided on our game concept was to figure out how to integrate Tiled with Unity (something I hadn’t done before).  Luckily, Tiled2Unity exists, and was very straightforward to set up.  Besides a few snafus with our tilesets changing mid-design (was annoying to resolve but was certainly doable), it was pretty straightfoward and just worked pretty much the way I needed it to.  Awesome!


Animations, tilesets, and world design

Can we take a moment to appreciate how beautiful the art is in this game?

Screenshot 2016-04-18 19.06.17

Would you believe me if I told you that this is the first time Kat has worked on tilesets? (besides the single set from Match Girl, which doesn’t even count)  She really did an amazing job with everything, and it was awesome getting to pull the tiles that she drew into Tiled and using them to build out the different worlds, each with their own palette and feel.



The soundtrack took around ~5 hours in total to write.  It was a blast!  Nothing really new here — just standard jamming out like usual.  Everything was pretty straightforward, with the notable exception of the Temple theme which was basically my attempt to make something ambient and atmospheric in as little time as possible (11 minutes).  It’s kind of uninspired, BUT at the same time, I think it’s nice that it sounds totally different than the rest of the soundtrack because it helps to communicate the fact that it’s a special area.

It’s worth noting that I didn’t put much focus this time on reusing a shared motif throughout the entire soundtrack — there’s hints of it, but nothing you would really notice unless you’re really looking out for it.

Something I realized as I was making this soundtrack was that giving yourself a jumping off point in terms of atmosphere, tempo, or feel really helps in getting things started.  I think I started each composition with a very small idea of how I wanted to differentiate it from the others and that helped me get things started.  For example, for Autumn Colors I knew that the first world was going to be the “hub” of the adventure and was also going to be an outdoor world, so I wanted something that felt more “open” as well as relaxed.  Musically, that translated to a slower tempo, with a laid-back drum beat, and using chords similar to major 7ths.  For Take to the Skies, the spring world, I knew it was going to be the first “stage” that you explored after the hub, so I wanted it to contrast with the outdoor hub music, and also wanted it to be more upbeat and driving as you’re now getting into the “meat” of the game.  Musically, this meant a faster tempo, with more complex breakbeat-type drums.  I also knew that the world was going to have an “underwater” palette, so I used some specific instruments to evoke that feeling.  (Compare it to Song of the Sea from Melody Muncher to see what I mean)  Anyways, the point is that having that starting point allowed me to lay out the tempo and maybe even a drum loop right away, which really worked to get things started (often the hardest part about writing a song).

Soundtrack can be downloaded at



Spikes, knives, and other level elements

I almost feel like this one was luck because of how well it ended up coming together…

So, when I was first thinking of the design of the different worlds, I knew I wanted them to look different, and each feature a slightly different focus on the different abilities that you unlock as you go through the game.  For example, the puddle world (the dark one with spiders) was specifically constructed to be more closed-off and cave-like because there would be many places to make use of the puddle ability and it made sense to have tighter corridors.

However, there were no plans initially to have a different “gimmick” in each level.  That one just sort of happened through development, and I’m glad it did!  The disappearing megaman-style blocks (the first thing that I came up with), the spiders, and the knives really did well to differentiate each area and made the level design more interesting than just having different tilesets that were functionally equivalent.  I’m especially happy with how the spiders and the knives ended up interacting with the abilities that you find in the respective worlds — in world 3 you’re forced to use the puddle ability to avoid spiders that you can’t get past otherwise, and in world 4 you have to use the balloon ability to get past these long rows of knives shown in the screenshot below:

Screenshot 2016-05-04 22.21.15

Funny story about the spikes at the bottom of the pits you have to jump over — for a long time through development I was planning for them to be water or some kind of liquid, as you can see in A Kitty Dream and The Valley Rule (both wonderful references for this type of game, by the way).  But throughout development we never got around to putting in the graphics for the water (I had already coded an element that triggers death and a respawn when you touch it), and more importantly, I had no idea how we were going to animate it.  In the end we ended up coming up with the idea of using spikes instead and it was a simple, elegant, clearcut solution to the problem that I’m glad we stumbled upon.


What didn’t go so well:

2D platformer collision detection

Ugh.  I had done a warmup project with Unity to play around with their new 2D features (much improved since the last time I had used them) and to write myself some starter code (for doing basic things like playing sounds, fading the screen, etc.).  During that I had done some extremely basic testing to make sure that I could test “collision” (as in, detect when two objects touch/collide and do something), but for some reason I didn’t actually bother checking to see whether I could easily implement actual 2D platformer physics.  You know, moving and stopping flush to obstacles, jumping and landing on the ground, etc.  I have my own set of functions that I used to do all of this in HaxePunk (they are very scrappy but WORK very well at what they need to do), but I didn’t have any of that set up in Unity.

So, for the first couple of hours of development I was busy trying to wrestle Unity’s engine to get it to do what I wanted it to do…I already knew coming in that the Character Controller / etc stuff was probably NOT what I wanted, yet I also wanted to be able to hook into the built-in collision detection / etc. and leverage that.  I did NOT want to have to implement all this stuff from scratch, as that would just be ridiculous.  Fortunately I was able to jury-rig together something which worked very nicely, essentially just doing a handful of raycasts on a rectangle as described here.  That was pretty much the only major technical hurdle I ran into over the course of the project, but I wish that I had prepared for it earlier.  On the plus side, I now get to start building out my set of utility scripts, functions, and prefabs for Unity games, just as I did for HaxePunk, so hopefully this won’t be a problem in the future.



Ugh!  I was not in great mental or emotional shape through the weekend and there were some points when I was really not feeling too positive about the project, and in general worried that it just wouldn’t come together.  This wasn’t necessarily due to us being in bad shape, and more just due to me being tired and stressed out due to other RL things (was trying to pack for moving out of my apartment, not enough sleep, etc.)  Sometimes this just happens — unlucky that LD happened to coincide with a weekend when I wasn’t fully up to snuff mentally.  I also had some congestion in the eustachian tube of my left ear which can be really aggravating when it comes to mixing music.  Luckily it all ended up being fine in the en and we made it okay…phew!  Was really glad when we finally hit the submit button (and went out for a nice hearty dinner).


Sound design

Kind of a minor point here, but this project taught me that although my music skills are really on point, my sound design skills are not.  It was actually pretty difficult for me to come up with good sounds for Nyamo’s movement/etc. and I ended up having to redo some of them.  The collectible sound also ended up getting changed in the post-compo version to something that didn’t clash as much with the background music.  Labchirp is nice but sometimes you have sounds that are just tricky to figure out.  It’s something I need to be conscious of and try to research a bit more.

Unused graphical elements

Kat had some other graphics (like additional background and foreground elements) that she drew up that never ended up making it into the final product.  I really didn’t have any time to put them in at the time because I was busy scrambling to finish all of the different rooms, but even afterwards for the post-compo version they ended up not really fitting in and looking a bit out of place.  You can see in the post-compo version that there are more leaf decorations in the puddle world, but that’s the extent of how they worked out.  So, not the end of the world, but we probably could have designed some other way of adding some graphical accents to the levels.  I think we wouldn’t have had this issue so much if we had been working more slowly (i.e. not in a 72-hour game jam) and had time to step back and see what the overall look and feel was going to be like.


That’s about all I have to say about Nyamo’s Adventure!  It was an awesome experience to make, and I hope you all enjoy it as much as we did! :)

DDRKirby(ISQ) and Kat are In!

Posted by (twitter: @ddrkirbyisq)
Wednesday, April 13th, 2016 9:20 pm

Hey fellow LDjammers!  I’m happy to report that DDRKirby(ISQ) and Kat Jia are IN for LD35!

Long time vet here…this is my =12th= time doing LD already!  Last time around we made a cute collection of two-button minigames called Grow Your Love, which took 3rd place for audio, 13th place in Fun, and 13th place Overall!

Tools this time around:

  • Unity (C#), targeting WebGL +  desktop
  • FL Studio for music + sounds
  • LabChirp for additional sfx generation

Not sure what Kat will use for art yet as it depends on what style she ends up going with.

You’ll notice a big difference this time — I’m abandoning my trusty HaxePunk framework and hopping on the Unity bandwagon!  Now don’t get me wrong, HaxePunk is great, I like writing Haxe code, and being able to deploy to a Flash target is probably one of the best ways you can go for an LD game (besides maybe HTML5).  I like a lot of HaxePunk’s sensibilities, and working with a framework that is designed first and foremost for 2D sprite rendering makes me feel good inside.  But…as I work on more projects I’m sometimes wishing for some additional features, like per-sprite shaders, which HaxePunk unfortunately can’t do (yet?).

Unity has actually made a bunch of notable improvements in the 2D realm (I remember back when their 2D system was still very immature) and based on the warmup project I did together with Kat last week it’s looking like we’re all set to run with it for the jam.  I’ve actually worked quite a bit with Unity in the past and actually love coding in C#, even more than I do in Haxe, so that’s a plus.  Losing the ability to compile to a flash target does sort of hurt, but hopefully WebGL can at least try and substitute for that — I guess Flash is sort of finicky anyways…

I think overall the biggest thing we’ll be gaining is being able to lay out things using the Editor.  I think over these past years I’ve been underestimating how useful it actually is to structure your game elements and UI visually and immediately without having to go through a compile-run cycle each time.  With certain game types this doesn’t really matter as much but with Kat on board I’ve got more artistic resources to draw upon so I predict that it’ll be quite useful.  We’re also interested in doing our next game using Unity so this LD will be a good test of the waters.  I’m pretty hopeful from what I’ve seen so far!


Hopes and dreams for this time around are pretty simple:

  • Successfully use Unity
  • Have fun
  • Finish on time
  • Make some awesome music :)

Yep, that’s it!  No fancy goals this time around or anything =D


Good luck to everyone else who’s joining us this year — now is your best chance to stock up on groceries, snacks, and other supplies, and be sure to REST WELL!  You’re gonna need it :)

Grow Your Love Postmortem

Posted by (twitter: @ddrkirbyisq)
Thursday, January 14th, 2016 2:00 am

It’s postmortem time!

Grow Your Love

If you haven’t yet played Grow Your Love, you can do so here:

You can also download the official soundtrack here:

This was my first time doing a jam entry with my trusty partner-in-crime Kat Jia since waayyy back in Ludum Dare 28 when we made Match Girl (and took 2nd place!).  That was two years ago, and since then, the number of jam entries has more than doubled, going from 780 to 1,638.  Wow!

This time around, we managed to take 3rd place in Audio, 13th place in Fun, and 13th place Overall.  Not bad at all! 😀

My personal goals going into the project were:

  • Don’t make another rhythm game
  • Work on pixel art together
  • Have fun!
  • (Maybe) treat iOS and Android porting as first-class

Humorously enough, I actually did very poorly on most of these. xD  While I didn’t REALLY make another rhythm game, one of our seven minigames was a simple dance game (haha).  Kat ended up doing 90% of the art as I had no time at all to work on any of the graphics…I drew the shooting stars and some of the UI elements like the arrows in the kniting minigame, but that was it =X.  And iOS and Android porting, pfffttt, come on, we both saw it coming from a mile away that that would get dropped.

Fortunately, the most important goal of having fun was a huge success; this game was definitely very enjoyable to make!

As always, let’s see what went well and what didn’t go so well.


What went well

Concept, mood, feel, and overall vision

Probably the most common comment we got about our game was that it was really cute and adorable, which was great!  When we set out to decide what kind of game we were going to make, we weren’t trying to make something that was super innovative or challenging or anything — we really just wanted to make something fun and cute; something that would fit in with our Cocoa Moss label.  We had a really good and light-hearted energy bouncing ideas back and forth for the different parts of the game, and I think it reflects in the overall end product.  Kat did an especially great job with the dancing animations, and I tried to write out the Letter and Texting dialogue in a way to match the same style as well.  It all ended up coming together very well, and I think the game is much more about enjoying a cute story than about the actual scoring of the minigames itself, which is perfect!


Making smart code architecture decisions

Having SEVEN different minigames to make meant that code reuse was at a premium, and I found myself super-grateful to myself that I had enough foresight to plan well for it.  There was no way I would have finished all seven games in time if I had to create entirely separate logic for each of them.  Sharing most of the common logic for the tutorial demos, starting and ending the game, etc. saved me heaps of time and even though there were lots of hacks and messiness throughout the codebase (as always), it ended up working out really well.


Slamming out music faster than ever before

Holy crap.  I know I’m known in some circles for my speed-composing abilities, but I even outdid myself this time by writing the entire 10-song soundtrack in less than 5 hours total. O_O  FL Studio saves your project working times automatically; here was the breakdown of how long I spent on each track:

Lovers’ Rave: 32 minutes
Watch Carefully: 15 minutes
Hope You’re Not Asleep: 34 minutes
Stargazing: 20 minutes
Love Sprout: 3 minutes
Grow Your Love: 1 hour 6 minutes
Wiggly: 31 minutes
Our Love Has Grown: 46 minutes
From Me to You: 17 minutes
Rainbows of Yarn: 20 minutes

Total: 4 hours 44 minutes

Aside from the title theme I basically wrote each song in 20-30 minutes, which was kind of insane.  Of course, these were shorter songs, so it makes sense that I was able to churn them out at a faster pace, but I was surprised at how well I was able to work under pressure here while still remaining creative, especially given that some of the songs are not of my usual style.  I was under MASSIVE time pressure as I started doing the bulk of the soundtrack work, so I really had no choice but to do it quickly.  Ironically, this might have =helped= my creativity by giving me no choice but to go with my first gut instinct.  I’m especially happy with “Wiggly”, which was ridiculously fun to write.

You can read more of my comments on the individual songs in the in-game jukebox if you’d like — there are some interesting notes in there since a lot of the songs were repurposed from what they were originally intended for.  To be honest, neither me nor Kat were planning for the mood of the game to play out exactly how it did; it sort of evolved as things went.  I had to rethink how I was doing the music to reflect the shift in mood that ended up happening, but luckily I didn’t have any wasted work as a result.  I do have to say that the full hour I spent on the main Grow Your Love theme was well worth it; it’s now my favorite track of the entire soundtrack and I think it really gives a lovely first impression.  You’ll notice that I centered all of the songs around a shared motif — it’s a great technique I’ve used over and over again that really brings cohesion to a soundtrack. :)


What didn’t go so well

People not getting the menu controls

Sadness.  Perhaps I was going too deep with the “two button controls” theme, but I thought that in order to really be complete the menu of the game should use two button controls as well.  Of course, it’s hard to make menu controls using only two buttons, so I looked to DiveKick for how they did it and figured that I would do the same thing.  Apparently it wasn’t obvious to most people as they just gave the screen a blank stare and wondered why pressing left or right separately didn’t do anything, so in the post-compo version I made it painfully obvious by putting big flashing indicators on the screen and highlighting the text, press LEFT + RIGHT TOGETHER.  Sigh.  It’s always the little things that you assume that bite you in the foot later on…


Not testing on the release platform until later on

This one was a smaller point, but for most of development I was testing on Haxe’s Neko VM instead of actually testing the Flash compile.  This was fine, except halfway through development when I tried the flash build and ran into a crisis.  You see, most of the graphics in the game are upscaled by 4x, so I had set the camera zoom at 4.  But the text was way too big at 4x, so I had the text sized 50% smaller, so overall the text would be upscaled by 2x.  Setting the text scales to 50% worked fine in neko and everything was perfectly happy.  Well, as it turns out, in Flash with the buffer rendering flow, you actually can’t draw pixels with a size less than the current camera zoom, so instead of the text being nice and crispy at a 50% scale compared to everything else it was actually just unreadable.  Oops.  Luckily I was able to jury-rig a fix by hacking at the haxepunk code, so that was a major crisis averted.  The hack was pretty ugly — I set the camera zoom to 2 instead of 4 and then edited the image class so that every image in the game would be scaled up by 2, etc — but hey, you gotta do what you gotta do.  Managed to dodge the bullet on that one, phew!


Balance and scoring

Ugh, this is probably my number one regret with the game.  The scoring formulas and balancing of the minigames is pretty terrible and I really didn’t test them very much.  In particular the dance game seems to get people a lot — like rhythm tengoku/rhythm heaven, it’s grading you not only on whether you memorize the sequence correctly, but how on-beat you are.  Of course, I had no time to make sure the lag calibration was spot-on, so it’s not perfect at all. =(  In the compo version, some players also misunderstood the goal of the Letter writing game (do it as fast as possible), and players also tried to figure out which word made grammatical sense in the Texting minigame, instead of realizing that you just needed to tap on the YELLOW highlighted word.  In the post-compo version I tried to be much more explicit with the directions for those games, and made the tutorial overlay display across the entire screen because people were probably skipping the text due to being distracted.  Some people also got confused with the Stargazing game in the compo version by pointing to where the star was going rather than which side the star was on.  In the post-compo version I solved this issue by getting rid of the stars that start on one side and travel towards the opposite side, to make it more obvious.  We also made some tweaks to the dance minigame during development to make it more clear.  Clarity in instruction is always super hard to get right, I guess…

Initially I had planned on rebalancing the game and even adding an “Expert Mode” where each minigame gets harder (e.g. harder rhythms for dancing, longer letter and text, more arrows for knitting), but in the end I realized that Grow Your Love really isn’t =about= the challenge and the scoring anyways, so it’s not that important to have Expert Mode or anything like that.

Not enough time (as always)

Some of the issues with balance and scoring were a direct result of me having almost zero time to properly test and play through the game, as I was still working on core features like the main menu.

Several things accounted for the time pressure:

  • Making seven separate minigames just takes a lot of work, period.
  • There was a nontrivial amount of work put into making a horizontally-scrolling menu workable; I couldn’t just copy the vertical menus that I usually put into all of my other games.
  • Certain aspects such as Free Play mode ended up not being that important to the overall experience but still took time to implement and get right.
  • Did I mention making seven different games?

Overall there was just a LOT of stuff to get done; not only did I have the 7 games to program, but there was the menu, jukebox, liner notes in the jukebox, free play mode, scoring algorithms, the intro scene, record saving, tutorials, tutorial skipping, and don’t forget the ending scene!  This was probably the most hours I ever worked for an LD, and I felt =exhausted= afterwards, jeez!  Even after submission, I was still finding stupid bugs that I needed to patch up (at this point I still  hadn’t ever had time to actually play through the entire game).  I don’t know if there was really anything that could have been done about this, aside from maybe not worrying about Free Play mode…perhaps we could have gone down to 5 minigames, but I really think 7 is a good number and that we like all of the ones that managed to make it in.  Honestly I think we just did the best that we could have! =P


All in all, Grow Your Love was great fun to make and I hope you guys enjoyed playing through it as well.  As always, we learned a lot, and in the future we probably won’t try doing a warioware-style collection of minigames again.  I know that it worked well this time around, but it was just too much work!  It also caused an issue in that it took a long while before we had a single one of the minigames completely finished, as we were sort of working towards a lot of them at the same time.  One of these days, I’d like to have a LD where I actually finish the work for the main game EARLY instead of scrambling at the last minute!  (Melody Muncher was sort of close…).


Thanks for playing and reading about our game! :)

Rate Grow Your Love Today!

Posted by (twitter: @ddrkirbyisq)
Sunday, January 3rd, 2016 5:41 pm

There’s still time!  Play and rate Grow Your Love today!


It’s a cute collection of two-button minigames about a couple’s growing love.  Featuring music by yours truly!

234Screenshot 2015-12-14 18.50.43

Here’s what some other people have to say about Grow Your Love:

“Absolutely lovely!”
— DragonXVI

“This game was brilliant in many ways. The exact example for what I hope to play when I play LD-games. I absolutely have no minor thing to say about this. Very well done. My love has grown <3”
— CrownCity

“Sooo cute <3”
— GhostBomb

The soundtrack for the game is also now available for free download!

Click here for the Grow Your Love Original Soundtrack.

Post-mortem will be coming up once results are in.  Thanks for everyone who has played our game already, and good luck to everyone! 😀

DDRKirby(ISQ) is in!

Posted by (twitter: @ddrkirbyisq)
Thursday, December 10th, 2015 2:02 pm

Hey guys!  DDRKirby(ISQ) here, reporting that I’m in for LD34!  I’ll be entering the Jam this time, together with my artist/partner-in-crime who previously helped me with Hyper Furball and Match Girl back for LD27 and LD28.  Shameless plug time — we recently released a cute virtual pet app for iOS/Android and web, you can see it here!

This’ll be my =11th= time doing Ludum Dare…wow!  Last time around I ended up making a really fun rhythm game called Melody Muncher, which ended up nabbing 1st place in audio and 6th place overall.  It was a blast to make and the post-compo version is probably the most polished and fully-featured game I’ve made thus far!

Tools for this time around:

  • Haxe, via HaxePunk (OpenFL/Lime/etc), mainly targeting Flash
  • FlashDevelop as main IDE, Sublime Text for if I need to develop on my laptop for some reason
  • FL Studio for music and sounds
  • LabChirp, for additional sfx generation
  • Aseprite, for pixel art (new!)

I’ve been trying out Aseprite for another side project of mine lately and it’s been great so far!  Definitely beats laying images out in a spritesheet manually using GIMP =P  I’ll be using it with my mouse but my artist friend prefers to work with a tablet.

I’ll be ripping starter code from my previous projects (initialization, etc.) but nothing really significant.

Let’s set out some hopes and goals for this time around, shall we?

Don’t make another rhythm game

Well, this should be fairly easy to accomplish, I hope! =P  I’ve already made 3 of these (Ripple Runner, Melody Muncher, Rhythm Gunner), one of which was done for last time’s LD, so this time around we should do something different, or at least, if it’s going to be a game involving music, it should do so in a way that’s substantially different than just hitting things to the beat.

Work on pixel art together

We’ve never actually done pixel art together before, in fact my artist hasn’t really had much experience with pixeling, so it should be a new experience to try and adopt a pixel art style for this project.  She also has work on Sunday and Monday and thus won’t be able to contribute through the full 72 hours, so I’ll most likely have to pitch in as well, meaning it’ll be important that we’re both on the same page in terms of visual style and such.

In terms of style, I think I’m hoping to keep things relatively simple, maybe use a really small Game Boy-ish resolution (160×144), and try to keep our palettes pretty limited if possible.  We might not go all the way to limiting ourselves to 4 color palettes or anything, but simple is definitely good.  We might be aiming to emulate the style of the (original) Cave Story sprites, with no outlines and a relatively “soft” shading style, but we’ll see!

Have fun!

A bit of an odd goal, but you know, I think I’ve spent the last 10 Ludum Dares trying to really work on my game dev skills and really attempting to make great games that I’m happy with.  With games like Ripple Runner, Melody Muncher, and Match Girl, I think I’m actually really satisfied with how far I’ve come.  And that means I think it’s actually time to loosen up a little and worry a little less about results and what comes out of it all.  Even if we get mediocre ratings because of it, I think experimentation is a good thing now, as long as we have a good time doing it.

(Maybe) treat iOS and Android porting as first-class

Since releasing our first mobile app I think it might be nice if we could continue to release more games for mobile platforms, and now that I’ve figured out the little hoops that you have to jump through in order to get it all working (there are always little hoops), it shouldn’t actually be too hard.  So it might be nice to not only develop with that in mind, but actually go ahead and do the ACTUAL work for the mobile ports, especially in terms of UI work, etc.  At the same time, LD is always an event where you just don’t. have. enough. time. for. anything. so I get the feeling that this will be one of the first things on the chopping block when push comes to shove.  You know how it goes.

Good luck to everyone else entering LD!  Make sure you are all ready with your dev environment (no last-minute headaches and surprises!), stock up on food and snacks, and most importantly, get a good night’s sleep tonight!  You’re gonna need it :)

Melody Muncher Developer Commentary/Playthrough

Posted by (twitter: @ddrkirbyisq)
Sunday, September 13th, 2015 8:42 pm

Hey all!  I’ve made a developer playthrough + commentary video, playing through Normal mode and Expert mode of my game, Melody Muncher!

You get to watch me full combo a bunch of the normal mode songs while explaining some things that went into the development of the game, then you get to watch me do OK on most of the expert mode songs, and struggle through the last two.  Enjoy!

Melody Muncher Post-Mortem

Posted by (twitter: @ddrkirbyisq)
Saturday, September 12th, 2015 11:15 pm

Hi there!  DDRKirby(ISQ) here with my =10th= LD entry (wow!), Melody Muncher!


Link to play and rate:

This one was a blast to make, and I ended up working for 2 weeks to make the Post Compo version (out now!), adding a new mechanic, animated backgrounds for each level, more songs, 3 separate difficulties, and more!

When the theme was announced this time as “You Are the Monster” I was actually quite disappointed, just due to the fact that it was so similar to “You Are the Villain”!  I mean come on guys, really?  But now that I think of it, You Are the Villain was EIGHT LDs ago, so I guess I can’t fault people too much for it.  I wonder if anyone decided to redo the same game concept that they did for LD25?  It would be an interesting challenge, just to see how far your game jam skills have come over the past years…

Anyways, despite my initial dislike for the theme, my idea and game came together really smoothly this time; I can’t even remember running into any hiccups at all!  As always, let’s go over what went well and what didn’t go well.


What went well:

Avoiding other commitments during LD weekend
Almost every other LD I’ve done, I’ve had =something= else to attend to over the course of the jam, usually on Friday night.  Usually I tell myself that it’s fine and that I can just try to brainstorm in my head while that happens, but to be honest, that never quite works out and it’s basically like I start off behind by 4 hours already.  This time I decided that I really was just going to dedicate the whole weekend to LD and besides some driving here and there and dealing with meals (gotta eat!), I was just heads down working the whole time, which was GREAT!  An exhausting weekend, for sure, but I don’t think there’s any way around that.  For Sunday, after breakfast and running a quick errand in the morning, I pretty much worked straight through the entire day until the deadline…I stopped twice for the bathroom, once for refilling water, and once for a massive yawn/stretch…that’s it.  Hahaha, you other LDers will know what I’m talking about…Sunday is usually that day when it’s like “omg I have 5 hours left and I still have to add in 2 more enemy types, also my game has no menu, title, or tutorial and I haven’t tested the difficulty at all AHHHHHH”.


Game concept and execution
As mentioned earlier, everything came together really smoothly for Melody Muncher, without a hitch, really!  I spent Friday night doing my usual brainstorming routine, and considered plenty of other possibilities, but the idea of having the piranha plant munching guys as a rhythm game occurred to me pretty early on, and it clearly had the most potential while also playing to my strengths, so I went for it.  Huge success!

Level data layout
One of the reasons I was able to cram in six (!) full songs to the 48hr version of Melody Muncher was because I made sure the levels were really easy to program in.  Unfortunately this was NOT the case for my previous game of this genre, Ripple Runner.

Here’s what a level definition looks like in Ripple Runner:

// Section 1
addPlatform(startTime + -10.0 / bps, startTime + 36.0 / bps, -40, timingWindow, level);
addPlatform(startTime + -10.0 / bps, startTime + 36.0 / bps, 40, timingWindow, level);
addPlatform(startTime + 37.0 / bps, startTime + 44.0 / bps, -40, timingWindow, level);
addPlatform(startTime + 37.0 / bps, startTime + 44.0 / bps, 40, timingWindow, level);
addPlatform(startTime + 45.0 / bps, startTime + 52.0 / bps, -40, timingWindow, level);
addPlatform(startTime + 45.0 / bps, startTime + 52.0 / bps, 40, timingWindow, level);
addPlatform(startTime + 53.0 / bps, startTime + 60.0 / bps, -40, timingWindow, level);
addPlatform(startTime + 53.0 / bps, startTime + 60.0 / bps, 40, timingWindow, level);
addPlatform(startTime + 61.0 / bps, startTime + 62.0 / bps, -45, timingWindow, level);
addPlatform(startTime + 61.0 / bps, startTime + 62.0 / bps, 45, timingWindow, level);
addPlatform(startTime + 63.0 / bps, startTime + 80.0 / bps, -40, timingWindow, level, true);
addPlatform(startTime + 63.0 / bps, startTime + 80.0 / bps, 40, timingWindow, level, true); Checkpoint(startTime + 64.0 / bps, -40));
// Section 2
 addPlatform(startTime + 80.0 / bps, startTime + 100.0 / bps, -40, timingWindow, level);
 addPlatform(startTime + 80.0 / bps, startTime + 108.0 / bps, 40, timingWindow, level);
 addPlatform(startTime + 108.0 / bps, startTime + 116.0 / bps, -40, timingWindow, level);
 addPlatform(startTime + 116.0 / bps, startTime + 120.0 / bps, 40, timingWindow, level);
 addPlatform(startTime + 120.0 / bps, startTime + 124.0 / bps, -40, timingWindow, level);
 addPlatform(startTime + 124.0 / bps, startTime + 126.0 / bps, 40, timingWindow, level);
 addPlatform(startTime + 126.0 / bps, startTime + 128.0 / bps, -40, timingWindow, level, true);

And so on and so forth.  And that’s only the =first half= of the EASIEST level.  Yuck!  Unfortunately I was super duper hacky while coding up Ripple Runner so the way that I constructed the levels was actually just by placing each platform individually.  This involved tons of hacks, especially trying to deal with assymmetrical timing windows which varied according to which kind of obstacle you were using (spikes, rippling, jumping), and a bug that prevented me from creating single platforms that were too long….etc etc.

Thankfully I didn’t repeat the same mistake this time.  Here’s what a level looks like in Melody Muncher:

result.SfxName = "sfx/level3";
 result.BeatDivision = 2;
 result.BeatPixelLength = 80;
 result.Left = 
 "........ ........ ........ ........" +
"1.....1. 1....... 1....... 1...1..." + "1....... 1....... 1.....2. 1...1..." +
 "1.1..... 1...1.1. 1....... ........" + "1...1.1. 1.1..... 1....... ........" +
 "1.1..... 1...1.1. ........" + "1...1.1. 1.1..... ........" +
 "1....... 1....... 1.....1. 1...1..." + "1.....2. 1....... 1....... 1...1..." +
 result.Right =
 "........ ........ ........ ........" +
"1....... 1....... 1.....1. 1...1..." + "1.....2. 1....... 1....... 1...1..." +
 "1...1.1. 1.1..... 1....... ........" + "1.1..... 1...1.1. 1....... ........" +
 "1...1.1. 1.1..... ........" + "1.1..... 1...1.1. ........" +
 "1.....1. 1....... 1....... 1...1..." + "1....... 1....... 1.....2. 1...1..." +

Much better!  Here I’m using “1” to indicate a green enemy, “2” for a red enemy, and “3” for blue enemies (which don’t appear in this particular level).  I ended up using “[” and “]” to denote the yellow centipede enemies in the post-compo version.  The periods just indicate points where there are no enemies, and spaces get automatically ignored.  It’s still perhaps not 100% ideal as I still had to build up separate strings for the left and right sides of the screen, but overall inputting notes for songs went pretty quickly.

Coding it the Right Way
So, again, for Ripple Runner I used a bunch of stupid hacky coding, and as a result, even though your X position in Ripple Runner is locked to the position of the song (good!), your jump height and y position is not (bad!)–it’s actually just normal platformer gravity.  This led to some pretty clumsy manual hacking about to get the gravity to be correct for each level (it needs to be adjusted for each BPM setting!), and in general just led to sad times within the code.  The end result still ended up just fine, but…

When it came to program Melody Muncher, I had learned my lesson, so I made sure to do everything right.  The position of all of the enemies is dictated solely by the position of the music, and there are NO collision boxes or movement physics or anything!  Each enemy knows what beat it should be hit on, and the enemies on either side are kept in an Array, sorted by order of arrival.  When you press left or right, we run through the first part of the Array looking for enemies whose beat is within the defined timing window–no collisions or any other nonsense needed!  Very clean, very sensible, and the code was much better and simpler as a result.


Post-Compo Version
This might not technically count as something that “went well for LD”, but this was the most fun I’ve ever had working on a Post-Compo version of a game I’ve made.  Probably because of the above two factors, and also because I knew I had something with a lot of potential.  Making new songs and mechanics was a blast, and even though it took a lot of work to add all of the new features in the Post-Compo version, I’m super happy with how it turned out, and I believe this is my most polished game ever as a result.


What didn’t go so well:

Input Delay and Lag Calibration
Okay…so this was mostly a stupid mistake.  So one of the mechanics in the game is that after a few levels, enemies can come at you simultaneously from both sides, so you have to press Left and Right at the same time to do a split munch.  Simple enough, right?

Well, on the coding side, I implemented this by having a separate animation — one where Ms. Melody has two heads that are each attacking.  (As it turns out, while working on the Post-Compo version I had to redo this and just implement each head separately to allow for the yellow long centipede enemies to work)  I then also decided that because people probably weren’t always going to hit left and right at exactly the same time, what I would do is this:

When you first hit left or right, the plant transitions into a “getting ready to attack” state (with a different animation frame) and waits for a frame or two, during which you have the opportunity to input the other direction.  Once the frame or two is up, the attack actually happens.  So this was good because even if you hit left on frame #1 and right on frame #2, you still get the split munch on both sides.

The problem is that by doing this, I essentially delayed every input (as well as the resulting “munch” sound) by something like 17 or 33ms.  Now, that may not seem like much, but in a rhythm game where your actions need to be really tightly synced, you can really notice, and people did.  Add that to the fact that my default lag calibration for Flash builds was slightly off (I had to shift it by maybe ~50ms compared to native builds) and people definitely felt that their inputs were delayed.  Now, part of this was that I simply didn’t have enough time to program in a robust and user-friendly lag calibration setting (it’s much better in the post-compo version!), but most of this was just my own fault for adding additional input delay unnecessarily.

The good news is that the post-compo version fixes this entirely, and if you compare the two the post-compo version should feel MUCH better.

Missing was too punishing
In the original 48hr version of the game, if you try to attack when no enemy is on the corresponding side, Ms. Melody does this ugly faceplant animation which leaves you stunned for a half beat or so.  This was designed intentionally as a means of punishing you for trying to attack when there was no enemy, as well as to eliminate the cheesy strategy of just trying to munch on both sides on every single eighth-note beat.  If you didn’t have the recovery animation, you’d just be able to do that and get a perfect score, which was obviously no good.  I had been trying to think of various ways to solve that issue, and after trying it, this seemed like a clean solution, as well as making it very unrewarding to miss notes, which is what I wanted — it should feel good when you hit enemies, and bad when you miss enemies.

Well, the problem is that players don’t like feeling bad.  One of the complaints that I got was that the recovery time for missing was too long and it led to people feeling like the game was “unfair” (ugh, loaded term).  Now, if you’re used to rhythm games, you probably didn’t mind this as much, but if you’re not a rhythm gamer, what happens is that you miss one enemy, then because of that your input for the second enemy doesn’t register (since you’re still in recovery), which throws you off and then you end up missing again ……, in the end that’s a situation that just doesn’t really feel good.  So lesson learned — reward your players for succeeding, but don’t punish them for failing.

The solution in the post-compo version was to eliminate the recovery delay and just add in a proper scoring system that adds points to your score based on your current chain, a la Guitar Hero.  Now I no longer need the recovery delay because if you try to use the strategy where you attack both sides on every eighth note, you’ll keep on breaking your chain over and over again, leading to a poor score.  Problem solved!  But unfortunately, I just didn’t have time to get the more fancy scoring system and everything done in the 48hr version.

No Shovel Knight
Okay, so this wasn’t really that big of a deal, but when I was drawing up the graphic for the red enemies I knew I wanted it to be something big, beefy, and blocky, so I went with an armored knight.  Since it was a knight, I decided to give it a sword.  I even referenced some Shovel Knight images as I was drawing it up….but for SOME reason I missed the golden opportunity to just have my Red Knights carry shovels and be “shovel knights”.  Which would have made perfect sense (they’re trying to dig up Ms. Melody), AND would have been a great callout to a great game.  Biggest missed opportunity everrrrrr =(

48 Hours!!!!
Alright, I guess this isn’t really something that “went wrong”, but it still amazes me every time how quickly the 48 hours goes by, despite you wanting to cram in more and more features.  “If only I had 1 extra hour!!!”  This was apparent this time around as well; the submitted version of my 48hr entry was missing some key components that I really really wanted to get in, but I just. did. not. have. enough. time.

Specifically, better lag calibration was one item high-up on the wishlist that I didn’t end up getting to squeeze in until later.  It wouldn’t have taken long, either!

And, changing backgrounds was another real big item.  I had a hue shifting effect that I used in Ripple Runner which worked fabulously, and I really wanted to do the same thing in Melody Muncher, because without it the backgrounds feel very static, especially when the music is very energetic and has these big builds and climaxes.  Of course, it turns out that because I’m now working in Haxe and Haxepunk, I can’t just use punk.fx (flashpunk) to do an easy hue shift; in fact I still don’t know of any good way to do hue shifting in Haxe/Haxepunk without digging into low-level RGB code yourself. =(  The silver lining on that cloud is that because I wasn’t able to do easy hue shifting, I ended up making much more intricate and involved animated background effects for the post-compo version, so it all works out. :)



And that wraps up another post-mortem!  Results will be in very soon–good luck to everybody and remember, the real prizes are your games, not your ratings!  Be sure to take your scores with some salt; sometimes you get scores that don’t quite make that much sense.

Thanks for taking the time to read about Melody Muncher!  Hope you enjoyed it as much as I did! :)

Rate Melody Muncher today!

Posted by (twitter: @ddrkirbyisq)
Saturday, September 12th, 2015 10:01 pm

There’s still time!  Rate and play Melody Muncher today!

Then download the full 23-track soundtrack here!

1 2

This is probably the most polished game I’ve made thus far!  But you don’t have to take my word for it.  Here’s some comments I’ve gotten so far:

Best game ever played on any LD. And the music.. THE MUSIC!!!!

wow. Gives me a “One Finger Death Punch” meets “Rhythm Heaven” vibe and I’m very much into it. The music is exceptionally high quality, the corresponding enemy arrangements are enjoyable to play, the amount of levels is surprisingly large, and the overall level of detail and polish here is spectacular. Incredibly well done.

Six stars for audio, this is amazing for 48 hours! Downloaded the soundtrack.

Brilliant. Definitely belongs in that class of games made by clearly skilled people able to bring a game to within shooting distance of “a real game” in a very short space of time. Terrific.

Playing this game made me smile big.

I love you


Posted by (twitter: @ddrkirbyisq)
Monday, September 7th, 2015 2:45 pm

After two weeks of hard work, I’m proud to present the post compo version of my chiptune rhythm game, Melody Muncher Deluxe!


Please please please try it, especially if you were experiencing input lag issues with the 48hr version, as that should all be fixed now!

I’ve implemented a slew of extra features, including better timing code, animated backgrounds for every level, configuration options, high score saving and loading, a new scoring system, particle effects, more stages (and more music!), a brand new mechanic, and of course, EXPERT MODE!

I’ll let these pretty screenshots speak for themselves:


1Underwater stage


2Pretty backgrounds.  Also, a new enemy type — hold notes!


4One of the hardest songs in the game on expert mode.  You have been warned.


3Particle effects!


5Full soundtrack – TWENTY THREE (23) SONGS!

By the way, all 23 songs are included in the new extended soundtrack.

Download the extended soundtrack here!

I’ll be writing up a full post-mortem on Melody Muncher sometime soon, so look out for that, too!

Melody Muncher soundtrack download

Posted by (twitter: @ddrkirbyisq)
Thursday, August 27th, 2015 11:42 pm

The soundtrack for my chiptune rhythm game, Melody Muncher, is now out!

Melody Muncher Original Soundtrack

Get it here:

Melody Muncher – Finished!

Posted by (twitter: @ddrkirbyisq)
Monday, August 24th, 2015 12:36 pm


Go try it out if you’d like!  Be sure to use the lag calibration feature; some people have been complaining about timing issues, so that’s important (now comes with a visual guide!).

If you liked Ripple Runner, you’ll like this one too!  As always, features a full 9-bit chiptune soundtrack produced by me!

There are still many features that I want to add in…background color shifting (a la Ripple Runner), expert mode, more stages, off-beat enemies…I’m also regretting the fact that I didn’t give the red knights shovels instead of swords =(  Missed opportunity of the year…

I hope to start work on the post-compo version soon!  But for now, I’m going to just take it easy for a bit. :)  Congrats to everyone else who made it out of the Compo with a successful game, and to those of you still Jamming away, you can do it! (final stretch!)

Full Post-mortem will come a bit later as well :)

Calling it a night

Posted by (twitter: @ddrkirbyisq)
Sunday, August 23rd, 2015 2:31 am

Made good progress!  I have the three main enemy/mechanic types implemented, 3 songs, better animation for Ms. Melody, working gameplay, graphics for 2 of the enemy types, and a functional menu/difficulty/song select scene.  Phew!

Still to do:

  • Song #4 introducing the teleport enemy
  • Tutorials
  • Even more songs
  • Better visualization for beats?
  • Rudimentary lag calibration option?
  • Jukebox scene
  • Graphic for teleport enemy
  • Main Scene needs to actually end at end of song
  • Need alternate stepcharts for the higher difficulties
  • Scoring and star system

As always, 48 hours is a crazy short amount of time…wish me luck!  Hang in there everybody, you’re halfway there!

Munch munch munch

Posted by (twitter: @ddrkirbyisq)
Saturday, August 22nd, 2015 7:07 pm

Screenshot 2015-08-22 17.04.03


Good progress!  The idea came pretty quickly, and is a great “LD-sized” game I think.  I’ve got the music engine working, some pixel art, backdrops, and the first song done!  Still need a whole lotta work on the animations for Ms. Melody the piranha plant, and that green rectangle on the right is supposed to be an actual guy, but hey, one step at a time!

Getting pretty tired though, I just had a snack and think I’m off to a nap!

I’m in again!

Posted by (twitter: @ddrkirbyisq)
Wednesday, August 19th, 2015 3:58 pm

DDRKirby(ISQ) here!  That’s right, I’m joining LD again!

Here are my personal goals for LD this time around:

Skip my Friday social dance event to focus on LD – Usually every LD I do I always start behind on time because I go to a weekly dance event on friday night.  Well, not this time!  Just gonna focus on LD this time, and actually get a fresh start alongside everyone else. :)  Hopefully this will lead to me having a little more time too, since 48 hours is super tight already, as we all know.

If possible, do something using a 4-color palette – The past couple of LDs I’ve kept on wanting to do something with “a simple and clean art style, probably using basic shapes and subtle effects”, but I think I’m over that and I actually really want to try using the style that I did for Ripple Runner again, using 4 shades as in the good ol Game Boy days.  I’d actually love to create something that is reminiscent of A Kitty Dream…I know that isn’t strictly 4 colors, but I think that aesthetic is something that I’m really into right now, using pixel art and simple colors to create beautiful spaces.

Do something small so I can focus on aesthetics – I’ve never tried focusing on aesthetics before in an LD game but I want to attempt to do it, ratings be damned!  Of course, I may end up getting sidetracked and just do another rhythm-based game where you really get into the music, but I think I’d like to make it a goal to just make something that just looks and sounds great, rather than concentrating so much on the actual gameplay.  Easier said than done, of course–you still have to have an interesting game at the end of the day ;P

Tools I’ll be using:

  • Haxe and HaxePunk, with FlashDevelop as my IDE
  • FL Studio and LabChirp for music and sound.
  • GIMP for art
  • Tiled (potentially) for map editing

TODOs left before the start of compo:

  • Check out updates to HaxePunk and associated libs, make sure everything is up to date and compatible.
  • Download Tiled and its associated HaxePunk loader, make a sample project where I’m loading things from a Tiled map, because there’s a good chance (?) I’ll need a proper map editor.  Make sure there are no kinks in the process.  Reminder to self that when I was doing Rhythm Gunner I think pixelmasks were having some issues so I need to check on that again.
  • Get some rest :)

[cache: storing page]