About | Rules and Guide
Construction1990’s Internet Montage? No!
Please excuse the site weirdness. Mike is fixing and making things.
Ludum Dare 31 — Coming December 5th-8th 2014!

  • ??? Begins: in 7 days, 12 hours, 49 minutes, 46 seconds
  • October Ends: in 8 days, 13 hours, 1 minute, 46 seconds
  • Ludum Dare 31 begins: in 43 days, 13 hours, 49 minutes, 46 seconds
  • (FYI: Clock might be off) | Ludum Dare 31: Real World Gatherings (Now Open!)

    [ October Challenge 2014 | Resources | Submit/Edit | View All ]

    About schnerble

    I'm a professional programmer, and have worked on a variety of bits and pieces in the past, including games. It's nice to get a chance to try making a whole one myself, though! :)


    Ludum Dare 27
    Ludum Dare 25
    Ludum Dare 24
    Ludum Dare 23

    schnerble's Trophies

    schnerble's Archive

    Sadly I’m Out

    Posted by
    Monday, December 9th, 2013 10:40 am

    I was really looking forward to LD28.  Nothing like having an excuse to programme something fun!  Unfortunately I’m now going to be away this weekend, so will have to give it a miss – but at least it’s for positive reasons… I have a couple of job interviews coming up (:

    Enjoy yourselves in the compo, and may the best game win!  See you here again next time (:

    I’m In – With Difficulty :)

    Posted by
    Friday, August 23rd, 2013 11:49 am

    Hi all!

    After missing LD26 due to family commitments, I’m back in for LD27.  Looking forward to it!

    I’m using another new technology this time: Emscripten, to compile C++ code using SDL (and ideally OpenGL) into JavaScript code playable in a web page.  The guys have done a remarkably good job on that; I’ve just been trying it out recently, and it’s really cool.  I’m in the middle of a bit of indecision about exactly which libraries to use, as I’ve been playing with SDL, and that’s really cool, but unfortunately not all of it is implemented in Emscripten yet – including some things I was going to depend on, such as setting colours and transparency levels for surface blitting.  I’m having a last-minute look into using the WebGL subset of OpenGL ES 2 in it, in the hope that I can get everything going that I need – though the question arises whether it’s really worth using WebGL via Emscripten as opposed to just WebGL in JavaScript… hmmm (:

    The little bit of my own library code I’ve been using, to make sure I can actually get something going in the time, is here.

    Adding to this interesting situation is my current lack of Internet access from home.  Well, luckily there’s an Internet cafe nearby, but that may lead to me finishing early, as they’re not likely to be open when LD27 closes at 2am Sunday night, UK time… I have some ideas about uploading at the last minute via my mobile phone, but we’ll see.

    Target Platform: Web
    Language: C++ / Emscripten / JavaScript / HTML5 / WebGL (wheeee)
    Development Environment: QtCreator on Linux (Kubuntu 13.04)
    Graphics: GIMP
    Sound: SFXR + Autotracker

    Good luck to all, and may your bugs be few and uncomplicated!

    Post-Mortem / Timing Breakdown

    Posted by
    Sunday, December 30th, 2012 1:38 pm

    Hi everyone!

    I thought I’d write a bit of a post-mortem for my game, Thievery, but in doing so decided on something a bit different.  From my git logs for the game, I have a reasonable record of what happened when (and can take a fair guess at the rest), and thought I’d post it to see if it’s of interest.  The stats at the end were interesting for me (:

    My game is about helping a thief sneak around and steal gold from houses and pickpocket guards, while avoiding capture by the guards and guard dogs.  Note that the times listed below include a fair bit of time spent on “art” – it was definitely programmer art, so nothing too impressive, but it still took time (:

    Saturday December 15

    02:00 Theme announced; I'd decided to sleep through and find out in the morning
    08:00 Woke up; started getting ready and brainstorming at the same time
    08:30 Started work on Thievery
    09:08 Got a basic loop running, with newly-created background and placeholder player sprite
    10:15 Added player movement
    12:53 Added dagger shooting, after spend ages on sprite rotation
    13:18 Finished lunch
    14:13 Put guard & thief images in
    14:46 Can now shoot guards with daggers, using rectangle collisions
    14:57 Limited player movement to the screen dimensions
    15:45 Back from 45 mins jogging
    16:39 Added basic stats, plus dying animations for characters
    16:49 Added damage animation
    18:51 Added houses
    19:20 Wrote some basic level loading code
    19:40 Finished dinner
    20:31 Fixed rectangle collisions (for daggers/houses, etc)
    20:58 Added circle collisions (for living/moving things)
    21:46 Added chests
    23:54 Added looting
    00:30 Guards now chase the player when seen
    00:56 Guards now hit the player when in range
    01:10 Now reports player death, and forces restarting
    02:13 Added guard patrol routes

    Sunday December 16

    08:00 Woke up
    08:30 Back to work
    10:03 Guards now move around obstacles, instead of getting stuck
    10:23 Added pausing
    11:07 Guards now can't see through houses
    12:39 Added basic events system and character chatter
    13:40 Back from an hour at the gym
    14:00 Finished lunch
    15:48 Added more events with chatter, and a win screen
    16:48 Added guard vision cones
    18:00 Back from meeting friends for 45 minutes
    18:20 Guard vision cones now turn red when chasing
    19:32 Added better level data
    19:50 Guards can now only see forwards
    20:00 Finished dinner
    21:09 Added intro screen
    21:15 Guards can now see at 90 degrees at close range
    22:09 Added guard dogs
    22:35 Added Pickpocketing
    00:07 Added sounds, including triggering from events
    00:49 Added music - main and win screen
    01:30 Windows build fixes: paths, extra keys
    01:49 Added guard alerts
    01:58 Submitted Linux version
    02:00 Deadline for development (start of submission hour)
    02:06 Submitted Windows version

    Overall totals:

    • Programming: 25 hrs 30 min
    • Art: 3 hrs 45 min
    • Level and other content design: 1 hr 35 min
    • Sounds: 45 min
    • Music: 30 min
    • Breaks, etc: 4 hrs 30 min
    • Sleep: 11 hrs 45 min (+2 hours before LD25 started)

    Final points

    • Most fun thing to put in: guard and thief chatter (I couldn’t be too inventive given my tiredness, but it was still satisfying)
    • Next thing I would’ve done if I had time: given the player a way to hide from guards to get away
    • Thing to do for next time: get better at art (;
    • Thing that I wasted the most time on: sprite rotations (got confused about centre-relative vs corner-relative, rotation angles and units, etc)

    I had a great time creating this game.  I’m glad that many of you have had a play and enjoyed it, and hope you all enjoyed yourselves making your own games as well (:  Good luck to all in the voting!


    Thievery: Done!

    Posted by
    Sunday, December 16th, 2012 7:40 pm

    Pretty happy with the way this turned out, in the end:


    There’s a load more I could’ve done, but the essence of it is there.

    I did enjoy the Thief games back in the day.  Top-down ones can be fun too (:

    Hope you enjoy having a play!


    The home stretch!

    Posted by
    Sunday, December 16th, 2012 11:14 am

    Well, kind of.  Eight hours left – so that’s a full regular work day, right?  I’ll get loads of stuff done!…

    The good thing is that I think I’ve solved all the most complicated problems that I expected to encounter, so hopefully everything else will go along smoothly.  No more screen shots for now, as things probably won’t change all that much before release anyway – but still…

    Enjoy the last phase, gang.  Try not to hit the caffeine too hard! (:


    Posted by
    Sunday, December 16th, 2012 3:26 am

    Sometimes you get those curly bits of logic that seem like they’ll be a massive pain and keep you busy for hours – and sometimes they just start working very quickly!

    Again, you can’t see a lot from the screen shot, but the guards now chase the player around the houses without getting stuck on the houses.  That may not sound amazing, but it’s certainly very satisfying to get it working (:


    Mornin’, Mornin’

    Posted by
    Sunday, December 16th, 2012 2:06 am

    It’s 9am in Oxford, and I guess I’ve had maybe 5-6 hours of sleep – but am anxious to get underway.  I’ve got plenty of enthusiasm for this idea, and hope I get enough done to do it justice.

    There are a lot of great ideas taking shape out there, so nice work all!  I look forward to seeing your results (:

    So much done – and so much left to go

    Posted by
    Saturday, December 15th, 2012 7:27 pm

    My idea is slowly taking shape: it’s something like a 2D sneak-‘em-up.  You can’t really tell what’s going on from the screen shot, but the idea is that the player is supposed to be stealing the treasure from the houses, ideally without alerting the guards.  The guards move around on patrol, and chase the player when they come in range, and the player can throw daggers back at them.

    There’s much more to come, but as always, it’s a matter of figuring out what gives the best cost/benefit ratio.  At least I’ve got collisions working reasonably well, which is a relief (:  There’s a ticking time bomb in the code with switchings of tops and bottoms of rectangles, due to pyglet doing things up the opposite way to what I’m used to, and me writing it the wrong way around and kind of getting the behaviour buried in.  Fingers crossed it all just works… hah!

    I’m off for a bit of shut-eye.  Pleasant dreams, all – hope you dream of fun things and not crash bugs!



    Posted by
    Saturday, December 15th, 2012 1:13 am

    Up and at ‘em; it’s just after 8am in England.  Hi to anyone else in Oxford!  (though last time I checked there weren’t many)

    I’m already feeling a little better about things than for LD24: I have an idea, and there’s a fair chance it’ll be pretty fun if it turns out.  It’s not super-original, but is a bit of an alternate take on some games I’ve liked in the past.

    There seem to be a lot of possibilities with this theme (have to admit, I struggled with “evolution” last time) so hopefully we’ll get a good variety of entries from people with all sorts of ideas (:  Nice work by the organisers to give us plenty of interesting themes to choose from.

    Good luck to all!


    Posted by
    Friday, December 14th, 2012 4:44 pm


    Hope you’re all doing well, and looking forward to LD25 (:

    I’m in, once again – and returning to my favourite language, Python, after a brief flirtation with Javascript/WebGL, and of course C++ for my day job.  My preparation has, as always, been pretty average; this time I’ve even barely touched any vaguely-related code beforehand, and had my office Christmas party last night.  Still, I’m not here to win it – I’m here for the buzz we all get from exercising our creative instincts (:

    • Language: Python
    • Library: Pyglet (hopefully; maybe back to Pygame if things go pear-shaped)
    • Graphics: Gimp
    • Sound: Bfxr
    • Music: Autotracker

    Big hugs to Increpare and Greasemonkey as always for Bfxr and Autotracker.  I’d like to write my own music for one of these competitions one day, but that’d require more preparation and learning a new app, as well as taking some time away from game coding – so we’ll see.

    I’m crossing my fingers I can avoid bugs of the magnitude I had the last couple of times: jerky updates in LD23, and resource load timing weirdness in LD24.  Pyglet looks very nice so far, so we’ll see.

    The one person I know on here isn’t joining in this time – so, Ludum Dare community, it’s just you and me this time…  and let’s have a good one!  All the best to all of you, and I hope you have a great weekend (:

    That’s That Then

    Posted by
    Sunday, August 26th, 2012 6:04 pm

    I’ve wrapped it up and submitted now.  It’s good to have it done – but no doubt without the deadline I would’ve been going for much, much longer.  It’s just a basic platformer in the end.  Unfortunately there just wasn’t time for anything more – which, most disappointingly, involved pretty much all of the points of difference.  (various abilities and power ups: weapons, speed/slow time, movement speed, radiation tolerance, radiation special attacks, changing forms with mutation and evolution levels, particle effects for fanciness – not to mention various forms of variety to the jumping around platforms)

    Anyway, it was certainly an educational experience, and enjoyable for the most part (except for the bits I mentioned earlier! (: ), so all’s good.  I was kind of line ball as to whether to submit it, but it’s there now as a kind of proof of… well, not really concept, but proof of effort, or something (:

    Hope your games all turned out well.  I look forward to playing a few of them!

    Progress Shot

    Posted by
    Sunday, August 26th, 2012 12:02 pm

    I reckon I’m only about half way to where I would’ve needed to be at this point to get my idea realised, but I thought I’d post the first shot of my game where you can actually do something.  It’s not very much, but still – jump!  Collect!  Jump again!  Wooo! (:

    Development screen shot of "Radiation Man"

    Development screen shot of “Radiation Man”

    This is where I’m up to.  It’s the beginnings of a game – but I’ll need to be unbelievably productive from here to get something good done in time.  Oh well (:  It’s been fun – other than the far too many hours of “Why isn’t WebGL drawing anything?  Aargh!” – and there’s still a bit more time left!

    Holy Crapola – That was a Close One

    Posted by
    Sunday, August 26th, 2012 8:50 am

    Imagine this scene: you’ve been developing your Dare game for about 25 active hours (minus one or two for eating and short breaks, and not including sleep), and with ten hours to go, your game stops working.  Not just that, but it fails in an area you haven’t touched… for probably about 15 active hours… wha?  The debugger seems to indicate it’s freezing in a WebGL call.  WTF?  Why?  The only code I touched was nowhere near that.

    Revert to last known good version; still fails.  What?

    Try a different browser… try another version further back… try a different folder… try a different OS… no joy.  What on Earth?  Is this it?  Am I defeated?

    Fortunately I did figure it out.  I was unintentionally depending on a timing issue with textures being loaded, and so certain values being set correctly.  Saving one new file to the data directory seemed to have somehow changed the load timings so one critical texture wasn’t loaded in time.  That timing bug led to an infinite loop, and a further bug meant a WebGL array creation call that was only supposed to be run once was actually run every time.  Who knows why the “step out” function in the debugger just froze inside the array call?  Not me…

    Ironically, the process this time has been too slow, and I’m unlikely to have anything worth submitting anyway, so this didn’t actually stress me out as much as it might have.  Still, there’s another reason to code defensively – so even when you’re in unfamiliar API you’re less likely to shoot yourself in the foot… (:

    Now, let’s see whether we can get an actual game going in the last few hours!  Good luck to everyone – it’s great to see how much you’re all getting done, and I hope your results turn out well.

    A Big Day – But Not Much Progress

    Posted by
    Saturday, August 25th, 2012 6:11 pm

    It’s been a pretty challenging day.  I’ve paid the price for not being familiar enough with my tools, and spent most of the day fixing frustrating bugs with things just not appearing on screen, or appearing in the wrong place, etc.  I finally have the sprite rendering working properly now (plus some 3D bits) – and yes, that sounds easy, but unfortunately not when you’re writing it all yourself and have missed some critical details here and there!

    It’s looking unlikely that I’ll get far enough into development to get the real theme in there, but hopefully I’ll have some sort of game out of it by the end of play tomorrow.  Screen shot in the morning, maybe… though there’s not much to do in the game yet (:  Fingers crossed for a more productive Sunday, and we’ll see how we do.

    If anyone’s curious, I actually switched back to Kate again from Qt Creator after about ten minutes due to some formatting bugs, so it’s all shiny Kubuntu-styled editing for me just now.

    All posts, images, and comments are owned by their creators.

    [cache: storing page]