The Case of the Jade Swan and the Haskell Wizard
Best Fancy Dress

26 October 2024, HackNotts '24

Devpost submission

Back at HackNotts, and hacking again this time! The organisers did an amazing job with HN this year, and there were something like 190 hackers. It’s always very convenient being so near to home at HackNotts, but despite that I still didn’t sleep at all. But it was worth it! Because we got our project done, we polished it to what I would call a pretty high degree, and I’m very happy with what we made.

Jacob and Lisa came over from Sweden, and George, Sol, Caleb, and Artemis from elsewhere in England. Hackathons are a good chance for meeting up with people, clearly: but of course, the team limit was four. So it was me, Jacob, Lisa, Caleb in a team, and we wanted something that would let us wander around the city and ideally go to the pub at some point.

So we made an adventure game! A point-and-click adventure game set in Nottingham, and starting out in my office. I was conveniently dressed up as a Haskell Wizard, since it was just before Halloween, so I took the titular role of The Haskell Wizard.

I’ve lost my jade swan! Somebody has stolen it, and your task the detective is to find it! Click around the University and Nottingham, take a trip to Ye Olde Trip, and have a fight with JavaScript himself.

You can play our game online, at Jacob’s website! There is an ending, and it is pretty cool.

On the tech side of things: we wrote essentially a static-site adventure game generator in Python, and then wrote a big config file for this for our specific game. The nice thing about that is that it can be super easily hosted on any website.

HackNotts ‘24 was great for so many other reasons, though! I gave a Haskell Workshop here, where I taught people (way more than I expected!) about the diagrams library. I also sponsored the Haskell prize, which was an extremely tough call but went to Mark Williams for a really cool Haskell project where he calculated crochet patterns from object files.

This project—the Jade Swan—was supposed to be a nice, chill project. It was supposed to leave me time to hang around and chat to people, and to run my workshop, and to go to some of the other events. As is always the case with these things, though, we way overestimated the work required, and really did spend almost the whole twenty-four hours programming. Good fun though, of course.