About Ian MacLarty (twitter: @muclorty)


Ludum Dare 33
Ludum Dare 31
Ludum Dare 30
Ludum Dare 29
Ludum Dare 26

Ian MacLarty's Trophies

Ian MacLarty's Archive

New tool: Vertex Meadow

Posted by (twitter: @muclorty)
Friday, December 11th, 2015 3:26 am

I made a simple to use 3D environment creator called Vertex Meadow: http://www.vertexmeadow.xyz/

It’s completely web-based and allows you to make 3D levels using a simple paint-program-like interface. You can also easily share your creations via URL (similar to Puzzlescript) or export for a standalone build.

Multiple levels can be strung together via link triggers.

I hope someone finds it useful! I’ll probably make something using it for the Jam.


I’m in

Posted by (twitter: @muclorty)
Friday, April 25th, 2014 4:34 pm

I’ll be using my own open-source framework: https://github.com/ianmaclarty/lotech. Best of luck to everyone!

Last minute in

Posted by (twitter: @muclorty)
Friday, December 13th, 2013 6:41 pm

I’m in for my second LD. I’ll be using my own open source framework: https://github.com/ianmaclarty/lotech, plus Gimp, Audacity, Blender and maybe Animoog or Figure on my phone.

It took me some time and several walks around the block to figure out what sort of game I wanted to make.  I had a lot of ideas, but all of them seemed a bit lame. Eventually I decided I’d better start something, so I took the least lame idea I had and began working on that.

My idea was to make a kind of infinite runner with a block dodging other blocks.  Dodging would be done by alternating between 2 discrete states: above the horizon and below the horizon.  This sounded a bit boring to me, but it fitted the theme, and I thought I could eventually make it more interesting by introducing some extra colour-based mechanics.  For example the enemy blocks could be different colours and the player could collect coloured orbs that would eliminate enemies of a certain colour.

Once I implemented the base idea I found it was quite fun on its own, especially when I ramped up the challenge by varying the speed of the enemy blocks.  I decided that I didn’t really need any other mechanics – they would just add clutter and go against the theme.

I wrote a simple text-based pattern parser so I could easily experiment with new enemy block patterns.  I thought it was important to have distinct, pre-designed patterns in the game, as opposed to just random sequences.  This would a) allow the player to improve by learning the patterns, b) make it easier to ensure there were no impossible sections, and c) facilitate a sense of progression by introducing new patterns as the player got further.

My initial control scheme was press and release the space bar once to change states.  I quickly realised that having space down represent one state (below the horizon) and space up represent the other state (above the horizon) was far more elegant and allowed for faster state changes.  This allowed me to increase the challenge even more while still keeping it playable.

On the second day I had the idea to introduce persistent markers at death points.  Initially I had thought to use gravestones for the markers, but later I had the idea of using flowers instead, which was a bit less morbid.  I also liked the symbolism of new life coming from each death.  This also lead to the name choice.  I was going to call the game “Monday” and only changed the name at the last minute to “Tulip”.

I made the music using Figure for iPhone, which is fantastic for quickly creating catchy loops.  I originally had more loops and arranged them randomly, but I found it difficult to get consistently good sounding results, so I just went with a few loops strung together in a predefined pattern.

I used my own engine (https://github.com/ianmaclarty/lotech), which worked quite well.  I think there are definite advantages to using an engine you’ve created yourself: you know exactly how it works, so you’re aware of its quirks; if you run into a bug you can just fix it;  if you need a new feature you can just add it.  Of course there are disadvantages as well.  I wasted about half an hour tracking down a bug in my .wav file reader (I had recently updated to the latest version of Audacity and it was adding an extra, unexpected, chunk to the .wav files it was generating).

Here’s the timelapse:

And the final product:

You can play it here: http://www.ludumdare.com/compo/ludum-dare-26/?action=preview&uid=20641

Tulip video

Posted by (twitter: @muclorty)
Wednesday, May 1st, 2013 4:57 am

A video of my entry Tulip:

The tulips along the bottom represent my previous deaths. As you can see I’ve been playing it a fair bit!

Tulip Linux update

Posted by (twitter: @muclorty)
Tuesday, April 30th, 2013 7:34 am

I’ve updated the Linux build of my entry Tulip, so that most dependencies (glew, glfw, openal) are statically linked.  I’ve also removed a dependency on glibc 2.14.  This means that more people should be able to play it on Linux without having to install extra libraries!  (You still need 64 bit Linux though.)

My interpretation of the rules is that such updates are allowed as there are no changes to the game itself – it just runs on more systems now.

P.S. my top score is 74.95s.  Anyone beaten that?


Posted by (twitter: @muclorty)
Sunday, April 28th, 2013 7:01 pm

My entry is called Tulip.

I’ve tried to make something easy to learn (only one button needed!), but hard to master.

The aim of the game is to avoid obstacles by alternating between two plains.  Alternatively you can also grown tulips!

This is my first LD and I’ve had immense fun making and playing my game.

I used my own engine (https://github.com/ianmaclarty/lotech) which worked out quite well.  I had to fix a bug in my .wav file reader, but luckily that didn’t take too long.

I used Figure for iPhone for the music, which is a really great app for generating catchy loops.

Looking forward to playing everyone else’s games!


I’m down

Posted by (twitter: @muclorty)
Sunday, April 21st, 2013 5:12 pm

This will be my first LD and I’m very much looking forward to it.

I spent the whole weekend fixing up my little Lua-based framework which I’ll be using for the compo.  I’ve made it available here: https://github.com/ianmaclarty/lotech.   It uses OpenGL (via glfw) and OpenAL for audio and has basic Box2D integration.  There’s no documentation, but there are a couple of sample apps (and hopefully there’ll be one more after next weekend :-)

I’ll be doing my development on Linux, but will generate Windows and Mac builds as well.

Other tools I might use: sfxr, Animoog (iPad app, for sound effects), Audacity, gimp, avconv (for generating a timelapse), vim.

[cache: storing page]