n i a l l m o o d y . c o m
open-source games and apps
I've just released a new game called OSCAvoid. It's a very simple thing, but the interesting part is that it's Open Sound Control-aware, meaning that you can play it in networked multiplayer. It also means you can easily connect other OSC-aware things to it and have it interact with them.
...which leads on to the really exciting part of this post:
Starting on Saturday, I'm running a game jam explicitly for OSC-aware games. I'm hoping it's going to lead to all sorts of unpredictable emergent interactions when we hook all the games up. It's going to be fun :)
See the TIGSource thread for details.
I've just uploaded v1.01 of So Many Jagged Shards. Barring any bug fixes, this will be the final version. I did have plans for a lot more (see ToDo.txt) but I came to the conclusion that adding more stuff was really just an attempt to distract from the fact that the central mechanic isn't quite strong enough to sustain the game.
So this is the final version. The game can feel a bit empty at times, and the narrower corridors can be frustrating if you haven't quite mastered the controls, but I think there's still a bunch of interesting things going on in it. There's a character editor which saves characters as svg files, together with an unlimited version of the editor which unlocks after you've completed the game once. I'm really proud of the sound, which incorporates a synth based on my Brush Strokes VST plugin, 2 granulators, a delay, a bank of 8 tuned comb filters, a tanh-based distortion and a simple polyphonic wavetable synth. There's 5 different final levels, chosen according to how you've played up to that point. There's also a special alternate level which happens when you do something (I did want to do more of those). And of course the whole game is rendered as flat-shaded triangles, which I still think is really cool :)
It feels like I've hit a really productive streak all of a sudden. Three things I've made in the past month or so (click the titles to go to their pages):
4 Goose 2 Feather
An audiovisual collage piece.
A looping music maker/dancing simulator.
This is my favourite of the three. Gorgeous spiralling colours and drones.
...and I should be releasing the (probably) final version of So Many Jagged Shards at the weekend too...
It was Ludum Dare again last weekend, and I made a game for it. The screenshot and description are deliberately deceptive. Here's a video that shows more but also includes MAJOR SPOILERS:
From John Mandeville's Book of Marvels and Travels:
In this country there's an old castle, on a crag, called Le Castel d'Épervier, between the cities of Ayas and Parcipia, of which the Lord of Korikos is the ruler and he's a rich man. In that castle a hawk can be found sitting on a finely wrought perch with a beautiful lady from Fairyland keeping it. Whoever keeps watch over this hawk for seven days and seven nights (some say three days and three nights) all alone will be visited by this pretty lady at the end of the seventh day (or the third day) and she'll grant him the first material thing he requests. This has been attempted many times.
So it happened one day that an Armenian king, a courageous man, kept watch over this hawk and after seven days, the lady came to him and asked him what he wanted, as he had performed his duty very well. So the King replied that he was a great enough lord and totally contented and wealthy, so he wanted nothing but the body of the pretty lady with which to do as he desired. She said that he was a fool, for he knew not what he was asking for; he could not have her because she was not an object, and she asked him to request a material thing. The King said he wished for nothing else. So she said to him, since he wouldn't ask, she would grant something to him and all his descendants, and she said, 'Your highness, you'll have war without peace for nine generations and you'll be in subjection to your enemies and you'll lack provisions and income'. And ever since that time all the kings of Armenia have been at war, in need of help, and under tribute to the Saracens.
Hey there! I've just uploaded a new version of the Pedalboard. This update's mostly about MIDI. Here's the main features:
- MIDI learn for application and plugin mappings.
- Per-plugin MIDI channel filtering.
- Optional Event Log for debugging MIDI and OSC issues.
When it was still active I would have posted the following on the Super Friendship Club Sources of inspiration thread, but I can't do that now, so instead I'll just post it here where no-one will ever read it :(
So I've been slowly working my way through the Carmina Gadelica, and I came across the following about the feast of St. Michael:
The people do not retire to rest on the Eve of St. Michael. The women are engaged all night baking struain, on household matters, and on matters personal to themselves and others, while the men are out and in watching their horses in the fields and stables. It is permissible on this night to appropriate a horse, wherever found and by whatever means, on which to make the pilgrimage and to perform the circuiting:
Theft of horse of the Feast of Michael,The people act upon this ancient privilege and steal horses without compunction, owners and stealers watching and outwitting and circumventing one another. It is obligatory to leave one horse with the owner to carry himself and his wife on the pilgrimage and make the circuiting, but this may be the worst horse in the townland. No apology is offered or expected for this appropriation provided the horse be returned uninjured; and even if it be injured, no adequate redress is obtained. The Eve of St. Michael is thus known as feasgar faire nan steud (the evening of watching the steeds); feasgar furachaidh nan each (the evening of guarding the horses); oidhche crothaidh nan capull (the night of penning the mares); oidhche glasadh nan each (the night of locking the horses) - hence also glasadh na Feill Micheil (the locking of the Feast of Michael).
Theft that was never condemned.
It's like an alternate version of The Castle Doctrine, only without all the unpleasant libertarian trappings :P
It's 2013 and I'm feeling pretty burned out with game development. This is partly down to my ongoing failure to settle on a big project I could conceivably make a living from. But it's also because even when I release small games that I'm genuinely proud of, it feels like a real struggle to get people to play them (obviously I haven't helped matters by focusing on local multiplayer games in recent months).
As much as anything, I think I'm really feeling the loss of Super Friendship Club. Being on Twitter has helped a bit, but it's no substitute for a good forum, and of the other forums I'm (slightly) active on, I've never really felt like part of the community the way I did with SFC.
Anyway, I've decided I'm going to take a step back from games for a while. To help me do that, I'm hereby publicly abandoning all the unfinished projects I've had hanging over my head. These are all things I've worked on during 2012, and they're all playable to a greater or lesser degree, just incomplete.
As usual, source code is released under the GPL v3; art, music, text under the Creative Commons Attribution-ShareAlike license. Meaning you're free to use anything here for your own purposes, but whatever you make with it has to be released under the same licenses.
This is my latest attempt at creating a kind of musical garden; a longstanding preoccupation of mine. It's very basic but I think there's a lot of potential in the way events cascade and create organic loops/patterns. I doubt I'm finished with this, though it will probably take an entirely different form when I do return to it.
This is the hardest one to let go. For a large part of 2012 I was convinced it was something really special, but I think ultimately it was too unfocused and that lack of focus had a deadly impact on my motivation. The most experimental, notgame-esque of all the things I worked on last year.
This started off really exciting, before it became clear the crazy combination of pickups didn't really make for a particularly fun game. TIGSource devlog here.
Tank You! 'n' Stuff
A modified version of Tank You! which fixes most of the gameplay issues with the original, by stealing wholesale from an old Amiga game.
The oldest game here. It's crying out to be played with a touchscreen, but I never got far enough with it to start on the iOS port. Things I had planned: puzzle sections with specific arrangements of tones to herd, graphics overhaul, different game modes, alternative tone generators etc.
I abandoned the following games earlier in the year, but it feels like they belong here all the same.
A space invaders game with procedurally-generated enemies, and the beginnings of a dynamic strategic overview. The combinatorial, procedural logic behind this was a direct inspiration for Tank You! SFC thread here.
The first of the games I made at TIGJam UK. A pretty basic music toy. I had plans to make each of the icon pellets alter the sound in some way, but I only implemented about 4 out of the 16.
The second of the games I made at TIGJam UK. Local multiplayer. Each player chooses a fish sat on a slippery flower, and the last fish on screen is the winner. When a fish falls it will be assigned a letter. Hit that key on the keyboard to jump it to another flower. Hold space to remove the letters from falling fish and prevent fish already on flowers from falling until it's released.
So mcc made a big list of the plots of her games over here and invited others to join in. Here's mine, organised roughly into shared categories:
- Die, You Stupid Hurdlers! Trip up hurdlers and crush them with a wall.
- Plort Descend a dungeon and kill something(? - I can't actually remember what happens on the last level).
- Tile Massacre SHMUP Build levels; kill all monsters.
- Neon Lights Kill everything.
- Step Sequencer Kart Various; mostly kill everything.
- Pastarena Kill everything.
Search for Things
- The Lost Hebrides Search for a lost archipelago.
- The Lair of Fungal Wonder Investigate a fungal cavern.
- The Divine is Hidden Behind the Noise of the World Gain understanding.
- No Longer Subject to Judicial Review Determine the killer by reading newspaper reports.
Make a Better World
- Stop Killing Each Other! Try to prevent 2 armies killing each other by building a wall and encouraging others to help you.
- Caverns of Light Bring light back to the world.
- The Future Will Only be Dystopian if Capitalism Remains Undefeated Foment a revolution.
- Luciente's War Kill nurses to protect the future.
- Explosive Transcendental Circulatory System Just play.
- A Song in the Void Give birth to a song.
- Pointillist Flow Play.
- Safari Park Escape Escape from safari park; evade re-capture.
- Rainbow Space Donkey Escape Return to your donkey herd.
- This is the Way Get to the exit.
- Labyrinth Find the exit.
- For Queen and Country Stake claim to an island.
- Wall Jump Time Sphincter Box Set Wall jump through time w/really awkward meta commentary.
- Screaming Snakeball Beat the other player.
- Dwindling Worlds Save a series of worlds which are dwindling away to nothing.
Looking back on my games like this, I'm a bit disappointed so many of them are about killing things, and that I've done so few that belong in the Only Play category. I really want to make more elaborate and satisfying games that are purely about play.
The category that's interesting to me is the Make a Better World one, because I think those are the games where I wear my heart on my sleeve the most (excepting Caverns of Light). And because I think I tend to approach that plot differently to the typical 'save the world' plot so many games have. Where most games task you alone with saving the world in a fairly standard hero's journey setup, that kind of individualism ("Only you can save the world!") has always left me uncomfortable. In the real world change is the result of people coming together and supporting each other. These games try and reflect that; you play a small part in the overall struggle, and if you want to succeed you need others to help you. I want to make more games like this.
As an aside, I re-played Wall Jump Time Sphincter while I was writing this, and it turns out that is one embarrassingly bad game. Expect it to disappear from this site as soon as I figure out how to delete things from the app engine database.
It's been quite a while since I last released a game, but I just released this local multiplayer game for the TIGSource Sports compo. I'm actually really proud of this one; I think it's one of the strongest games I've made and it's a lot of fun.
I'm hoping I can convince one of the UK games conferences/gatherings to put it on, because I'd dearly love to see it played with a decent-sized crowd cheering the players on. The original idea behind the game was to make explicit that connection between fans and athletes, where the fans' cheering gives the athlete a mental boost. In Screaming Snakeball that cheering gives the players a literal boost; they move faster, their snake tail grows longer, and when fully powered up, they can smash through their opponent's tail.