Ben's Website

Lost Space

April 2019
C
benedicthenshaw.com/lostspace

A persistent virtual space using simple stateless procedural generation, inhabited by spaceships that tell your their thoughts as you fly by.


Breakfast

February 2019
C
https://github.com/benhenshaw/breakfast

Serial communication library for UNIX (macOS, Linux, BSD) and Windows. I wanted a simple cross-platform way to communicate with my Arduino (though it also works with any standard serial device), so I wrote this.


Screen Play

January 2019
Go, JavaScript
https://github.com/benhenshaw/screenplay

A text-based (and web-based) multi-player improvisational real-time text adventure game (and “engine”). Each player is given a character profile and a set of goals which they have to try to fulfil. The initial demo was built with a single scenario, but the project was constructed with the goal of supporting many different stories, each with its own set of characters and verbs. I used the explicit goals to incentivise role-play by rewarding players for the use of a character’s catch-phrase or for employing their speech patterns.


Quick UDP

December 2018
C, WinSock, BSD Sockets
https://github.com/benhenshaw/quick_udp

A small and simple library that allows easy sending and receiving of UDP packets. It abstracts differences between WinSock and BSD sockets, and abstracts the socket model slightly further simplify their usage in the context of video games.


Labyrinth

Mid 2018 (Ongoing)
C, SDL2
https://github.com/benhenshaw/labyrinth

A software-rendered 2.5D FPS (in the style of Wolfenstein 3D) with network multi-player.


Rhythm

Early–Mid 2018
C, SDL2
https://github.com/benhenshaw/rhythm

Dissertation project for BSc Games Programming at Goldsmiths, University of London. It’s a simple rhythm game, implemented in C with the intent to build as many components of the software myself within the time constraints. In the end I wrote a memory allocator, software renderer, audio mixer, asset file reading and writing, and the game-play code for this project myself.


Landing Party

Early 2018
Escape Room (with additional software in C)
See the article.

An escape room built around the concept of limited communication. Players are split into two separate rooms and must use various limited communication channels to solve puzzles together. Built during my BSc in Games Programming.


Magic Hands

Mid 2017
Lua, Löve2D, LuaSocket
https://salty.itch.io/magichands


See my GitHub repositories for more.