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 33
Ludum Dare 31
Ludum Dare 27
Ludum Dare 25
Ludum Dare 24
Ludum Dare 23

schnerble's Trophies

Zombifier Master
Awarded by axoona
on September 13, 2015

schnerble's Archive


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.

Up And At ‘Em

Posted by
Saturday, August 25th, 2012 1:19 am

It’s 9:15am here, and I’m underway.  Coming up with an idea was harder this time – many ideas I had sounded fun to write, but not that fun to play.  The Evolution theme doesn’t fit easily into a lot of genres, either – and cutting out the things that would be just way too much work, I’ve ended up with something simple – some platforming action.  It’s a new one for me, though, so let’s see how it turns out.

So far I have an idea and a couple of shell HTML and JavaScript files, so nothing to post yet.  I’ve also switched editors (hmmm) but only because it’s to another one I know well: Qt Creator.  I do tend to oscillate a bit.  Let’s see how things look in a few hours (:

A library I’m using

Posted by
Friday, August 24th, 2012 3:08 pm

For the record, here’s a “library” I’m going to be using – more accurately described as a small group of useful JavaScript functions I collected from a few different tutorials.  There’s nothing too revolutionary here, and you can see it all in other places – pretty much all in the standard “Learning WebGL” tutorial, really – but I’d feel bad to not post it.  The rewrite would be quick, but it might save me a few minutes that I could better use by actually figuring out some new WebGL techniques (:


Feel free to use it if you like.

See you all in the morning – not sure when, but I’ll probably be up for a couple of minutes around 2am BST to check out that theme, and dream of… 1000 kittens?!


Posted by
Thursday, August 23rd, 2012 3:00 pm

Hey gang,

Count me in for my second Ludum Dare.  I’m going to be using some pretty different technology this time – intentionally, to broaden my horizons (: – and it may not be considered the best choice by everyone, but I’m sure I’ll enjoy it and will hopefully find it worthwhile.

  • Programming: JavaScript & WebGL (a bit different from Python last time!)
  • Environment: KDE 12.04; Kate for editing, and Firefox (with Firebug) and Chrome for testing (I’ll test on Windows too, and hopefully it won’t be too much hassle… <crosses fingers>)
  • [Programmer] Art: Gimp again
  • Sound: Bfxr
  • Music: Probably Autotracker again (thanks, Greasemonkey! I’m probably too perfectionist to write my own music in any reasonably short time anyway)

I’ve not done much with WebGL and JavaScript other than a few tutorials, but am reasonably convinced I can get something together – even if it’s just a bit of space shooting or something like last time (:

Best of luck to everyone!


Posted by
Sunday, April 29th, 2012 9:26 am

Hey people! Hope you’re all enjoying playing the LD game entries.

Here are a few notes from me about the ups and downs of the making of my game.  First, here’s a screen shot of the dev process: (the same one I posted before, but many won’t have seen it)

Space Rescue in development

The game didn’t actually change much from that semi-complete version, as at that stage I hadn’t put the collisions in – and those are pretty important (;

What Went Right:

  • Generally the shooty style seemed to work pretty well, and seemed a good choice for something to get done very quickly from scratch with no framework code.
  • The asteroid turned out pretty well.  The maths to work with it weren’t too bad – mostly just basic trig – and the fading was an interesting addition.
  • Art: actually went OK given that I’m very much a programmer (:  Maybe I should’ve called the asteroid a “moon”, though, as it does look more like one.
  • SFX & music: BFXR and Autotracker-bu are awesome.  Thank you again, increpare and GreaseMonkey.  Music-wise, I would’ve written my own given time, but had nowhere near enough.
  • Stuff that I crammed in using only about three hours in total: the menu, music, sound effects, spaceman rescuing, and level progression.  It wasn’t revolutionary, but all together added a lot to the experience, I reckon – particularly given that without spaceman rescuing I would’ve had to rename the game (;

What Went Wrong:

  • Frame rate jerkiness.  Holy cow.  I lost seven hours to fixing that up, as I took ages to figure out which of loads of potential issues was causing it.  Trust me when I say you would’ve found it pretty annoying had I not fixed it, but if I’d sorted it straight away, I would’ve got a lot more gameplay in.
  • Linux bundling.  Pyinstaller is very good, but it didn’t need to put in libasound.so.2, and the oddities with this library (it has a dependency with a hardcoded path that varies between distributions!) meant that most (if not all) Linux users couldn’t run it first go.  I should’ve tested this on other machines, but was too tired, and foolishly just crossed my fingers rather than checking.  (Note for anyone interested: removing that library fixes the problem)

What I Really Wanted To Add But Didn’t Have Time:

  • Zooming out for when the player went off screen, or adding arrows to point back (a lot of people mentioned this when reviewing)
  • Multiple asteroids; more enemy types; destroying the asteroids; power ups; etc (had loads of ideas here)

Other Points:

  • The control scheme could’ve used a bit of tweaking, but I was reasonably happy with it.  Reviews varied – everyone’s preferences are different – but to me it was at least pretty playable.

Check it out here if you get a chance:


Thanks to everyone for the feedback, good and bad – anything constructive is useful.

Cheers all.  I’m looking forward to the next one already! (:


Posted by
Sunday, April 22nd, 2012 5:56 pm

I got it done.  Of course, there’s nowhere near as much in there as I would’ve liked to put in, but everything always takes longer than expected – that’s the nature of software development, right? (:

The game doesn’t actually look much different to about this time last night, but it actually plays properly now.  Also it helps, when calling a game “Space Rescue!”, to actually have something to rescue (:  I snuck them in at about 10pm, so two hours before my own cut-off, leaving myself two hours for tidying.

It feels like a major achievement (:  Shooting at turrets, dodging bullets, and rescuing spacemen actually turned out to be pretty fun.  Hope some of you get a chance to have a look and enjoy it.

Nice work to all who submitted!  Now it’s time for sleep (;

The Final Stretch

Posted by
Sunday, April 22nd, 2012 1:57 pm

(Of course, I now have “The Final Countdown” running through my head, but that title is just a bit too obvious)

It’s getting there… getting there… I’ve got more of some things in than I expected, thanks to the very handy Bfxr and Autotracker-bu.  The only thing is that my game is called “Space Rescue”, and there’s currently nothing to rescue… (:

Two hours left until my target finish time.  I won’t get in anywhere near as much gameplay as I wanted to, but at least it’s looking fairly playable.  Not much new screen shot wise, but hopefully soon.

Incidentally, my microwave died earlier today.  Lucky it wasn’t my PC!

Anyway, keep it up everyone, and good luck (:

Here I Go Again On My Own

Posted by
Sunday, April 22nd, 2012 2:34 am

I guess it was inevitable that I’d get a song like that stuck in my head when restarting today. Heh (:

Anyway, back into it again, after about 6 1/2 hours of sleeping, showering, and such.  Here’s an image to give you an idea of what I’m up to:

So nothing revolutionary, and that asteroid doesn’t look very asteroidy yet – but who knows what I’ll be able to coax out of Gimp if I get the time… (:

Can’t remember if I specified it all earlier, but as you can see from the above, I’m on Kubuntu (11.10), and spending most of my time running Kate, Gimp, and terminals, and relying on Pygame to do a lot of the work for me.

Positive finish to the day

Posted by
Saturday, April 21st, 2012 7:23 pm

After a quite discouraging afternoon and early evening, the late evening and early morning (It’s 3:20am here) went a lot better.  It’s actually starting to look a bit like the game I was envisioning!  I’ll be crashing out in a minute and catching a short-ish sleep before back into it.

It’s spaceship shootyness for me – flying around asteroids and things.  I have a ship flying around and shooting stuff at stationary turrets on an asteroid now, and maybe will post some screen shots in the morning if I get keen.

The main thing is that it’s impressive to see so many different types of games on here!  Nice work everyone, and keep it up.

Finally moving

Posted by
Saturday, April 21st, 2012 3:18 pm

It hasn’t been exactly my best first day on a project.  Although I came up with an idea I like, I spent several hours messing around with sprite flickering problems – nothing like a bit of jerkiness to ruin the experience.  As always with the tricky ones there were lots of permutations – vsync, double buffering, graphics drivers, Linux vs Windows, two graphics cards in my machine, float to int rounding in my code, float to int rounding in library code, subpixel rendering, etc.  I even rewrote almost the whole thing in pyglet at one stage, after originally starting with pygame, but it didn’t seem to make that much difference, though for a while it looked like it would.

Anyway, I finally feel like the rendering is reasonably smooth for the movement now, so I can finally get on to getting some content and gameplay in there.  There’s a very long way to go yet, but fingers crossed I’ll get something interesting done (:

Up and at ’em

Posted by
Saturday, April 21st, 2012 1:14 am

I went to bed at 11pm, woke up at 2:05am (British time) to check the theme, and went back to sleep.  No dreams of inspiration about Tiny Worlds unfortunately – but now, at least, having a relatively good night’s sleep, I can get started on some brainstorming and tapping away at some code.

Looks like many of you are well on your way.  Keep up the good work! (:

Hey Ho! (I’m In)

Posted by
Friday, April 20th, 2012 9:49 am

Hey people!

This is my first go at any sort of competition like this.  I used to work on games, back in the day, but have been out of it for a while.  Let’s see how it goes when it’s all down to me (;

My intended tools are:

  • Pygame (+ pyinstaller; can build on Windows and Linux)
  • Gimp
  • Bsfxr

For everything else, I guess I’ll have to figure it out as I go along.

Best of luck to everyone! Let’s all hope our Internet connections don’t die, eh (;

[cache: storing page]