Portfolio

A portfolio page for the game features and tools that I have created whilst developing Soul Invictus. More detail can be provided upon request. If you want to get hold of me, you can find more information on my about page.

  • Feature 01: The Voxel World

    I have a confession: my current implementation of the voxel terrain system uses a Unity Plugin called VoxelPlay. It is a great piece of work by the team at Kronnect and has saved me hours of development work on the base terrain engine. I managed to pick it up in a winter sale for half-price…

    Read more

  • Feature 02: Integrated SQL Storage

    Early on in development, I moved from what was originally Unity’s PlayerPrefs storage to create a framework around a SQLLite database. Integrating the correct DLLs for both Windows and Mac versions of my game, I added an extensible set of classes for records, tables and storage controllers. I have included a caching system that works…

    Read more

  • Feature 03: Steam Integration

    I am a big fan of the steam store. I love the whole interface, discovery experience and integration with games, especially when playing multiplayer with friends. It was a bit of a no-brainer then that my first game would integrate well with steam. Luckily in being close to games and game development I was familiar…

    Read more

  • Feature 04: Inventory System

    One of the main features of most survival games these days is the ability to gather, craft and upgrade loot. In order to do any of this, the player needs a robust framework to manage their belongings and collect useful gear. I put together an inventory system with two main things in mind: to make…

    Read more

  • Feature 05: Multiplayer

    I have implemented multiplayer in Soul Invictus using Unity Netcode for GameObjects and a transport layer which uses Facepunch Steamworks API. This reflects my lobby system and although has a few integration foibles around when you login and out to steam, seems to work well and has a symmetry which I like. Obviously this means…

    Read more

  • Feature 06: UI Cleanup

    I am a big fan of minimal, flat UIs with good use of whitespace and decluttered from the visual noise and unnecessary trim you build up with more integrated or skeuomorphic design layouts. When I put together my multiplayer lobby for Soul Invictus I set out to move closer to this minimalist design taking inspiration from…

    Read more

  • Feature 07: Azure DevOps Pipeline

    This feature is a little bit of a strange one as it is covering work I did on the background deployment infrastructure rather than my Soul Invictus itself. There were three main goals to this feature: Provide a consistent means to build the system across windows and mac, with as little human input as possible…

    Read more

  • Feature 08: Dialogue System

    Introduction A feature I wanted to put in place early on was a fully fledged RPG-like dialogue system. I felt that although Soul Invictus is based on some of the basic survival game principles, I didn’t want it to cultivate the feel of a lonely survivor who has to piece together what has happened to…

    Read more