Bucky Roberts from thenewboston taught me to program. As a kid I would watch Bucky's Java tutorials, make command-line programs, and use them to show-off to or prank my brother. I remember one particularly great program I made. It asked my brother a series of questions, including asking for his name. Then, it would print "Liam is a fart". A work of art.
I have made Java calculators, Scratch games, Minecraft mods, my own RuneScape botting client, JSON parsers, and a misinformation research tool. Now I'm working on the Royal Game of Ur. I have started hundreds of projects, and RoyalUr.net is my latest one. It's going pretty well!
What am I doing now?
I recently moved out of London, and into the small town of Canberra, Australia, where I can fulfil my dreams of a hermit existence. I spend half my time working for DUG, and half my time following my interests and working on projects like solving the Royal Game of Ur.
(Last updated on 8th May 2025)
Articles
-
May 2025: How we solved the Royal Game of Ur
If you've ever wondered how someone might solve an ancient board game, this article runs through the entire process of solving the Royal Game of Ur.
Projects
-
I created RoyalUr.net, a website where you can play one of the oldest board games in the world, the Royal Game of Ur. I also wrote a paper on the game, and have recently managed to solve the game. The Royal Game of Ur is an ancient Mesopotamian racing board game that dates back to 2500BC. It is considered to be a predecessor to Backgammon.
-
I was a part of creating, and I continue to maintain,
The Misinformation Game,
a social media simulator built to study people's behaviour when they
interact with social media. A paper
about this tool has been published in the Behavior Research Methods journal.
This project is also
open-source.
-
I built Tyche,
a Python library for building belief models and reasoning
logically about them. Belief models are represented as
knowledge bases of entities, with probabilistic beliefs
about the entities, and probabilistic relationships between them.
The probability of beliefs holding can then be queried using
aleatoric description logic.
The library also contains a novel approach to learning the
probabilities within belief models based upon observations,
which has showed promise. It's a bit technical, but I really
like it.
-
I have made hundreds of Minecraft server plugins and mods. Some of them are even
still used.
I made everything from flying carpets to minigames for big servers to npc plugins
and hack clients. One plugin I am particularly proud of was for a hundred lines of
code or less challenge. It allowed you to ride any mob in the game
by modifying the bytecode of the server during runtime - and it only needed
85 lines of code!