Oliver Faircliff

GitHub Twitter


About Me

I am one half of Dvbris Web Design, we build JavaScript and Node.js web apps as well as building cool terminal games in C or Python. Currently an undergraduate in Computer Science at the University of Nottingham.

Contact me: mail@oliverfaircliff.com or visit Dvbris.com for our portfolio.


This is a collaborative project I worked on with Grit. It's a 2D Minecraft-inspired game for the terminal.

Climbing a hill in-game.

Some features it sports:

Building this was the first time I used terminal colours to their full potential, we also made a lot of progress on getting useful (game) input in the terminal, including using arrow keys! I will hopefully be adding these features to my graphics module at some point.

Try out the game by downloading it from GitHub, it runs best on Unix with Python3 but it is playable in windows CMD(!).

Maze Language

Maze is an esoteric programming language designed by an unnamed author on the Esolangs wiki. It uses a maze to define a program, you write a program by creating an ASCII art maze which 'cars' (variables) will then follow, driving over functions and other controls. You can find out more about the language and its rules on its Esolangs page. This language is a lot of fun to play around with and come up with crazy mazes, and actually functional programs (it is Turing complete!).

I initially wrote quite a bad interpreter for this language after first discovering it, which was a quite a mess and was very bad at parsing the language. However, more recently I wanted to have another go at it, so I wrote version 2! A much better, more robust version completely written from the ground up, with robust parsing and much more error catching!

A Maze program to add two numbers together.

It is written in Python, and can be downloaded from it's GitHub repo along with some example programs.

Python Text Games Engine

When I started learning Python I built lots of small text based games, and I always had a large amount of code I reused / improved each time I made one. After lots of improvement and learning I built this text based graphics engine for building small python terminal games. It uses sprites to display objects and handles all the collision detection and rendering. It also has a few classes included to make things like colours and input a bit less painful.

You can get the module and see some examples on the GitHub page.

Example output from a program using the module.


You can find some of my paintings on my DeviantArt account.

Canal Boat by Oliver Faircliff