Skip to main content

Project: RVWP

The cover of "Ruben's Virtual World Project"

Ruben's Virtual World Project

Ruben’s Virtual World Project was a multiplayer top-down shooter with base-building elements that was in development for five years, from 2015 to 2020. It was a hybrid between a top-down shooter and a base-builder, allowing the player to switch between Hero and Architect modes at any time.

Whilst I started the project to learn about multiplayer networking at a low level - including latency mitigation, reliability, and prevention of cheating - it quickly turned into a project to make a game and game engine.

Read more of "Ruben's Virtual World Project"

The cover of "Make games not engines: why I'll be using Godot engine"

Make games not engines: why I'll be using Godot engine

One of the reasons I learned how to program was to make games. Games are a unique form of creative medium, combining art, interactive storytelling, and vibrant worlds. But as a software engineer, it’s easy to lose sight of my goals and get trapped by the technical details. It’s common for software engineers in game dev to roll their own engine, which I believe reduces productivity and is ultimately a distraction to making a game.

Note that I’m not just referring to making reusable or generic game engines; for this article, I consider using low-level technology like OpenGL, SFML, or SDL to make games to include the act of rolling your own game engine, even if the focus is specific. It’s more manageable, but you still end up reinventing the wheel and having to solve many of the same problems.

There are plenty of other articles about whether or not to make your own game engine. This article is personal to me; it’s an exploration of my journey in game dev, a discussion of what motivates me, and a promise for the future.

Read more of "Make games not engines: why I'll be using Godot engine"

The cover of "Creating worker NPCs using behavior trees"

Creating worker NPCs using behavior trees

I’m a huge fan of RimWorld, a base building game where you manage a group of colonists. Rather than directly controlling the colonists, you place blueprints for buildings, mark trees for cutting, and animals for hunting. NPCs will then decide what to do automatically, based on their skills and priorities.

I’ve made two games recently with similar mechanics. The first was Ruben’s Virtual World Project (RVWP), a hybrid basebuilder/topdown shooter. The second was Tin Mining, a mining sim created as an entry to Ludum Dare 48. Both of these games allowed placing building plans that NPC workers would then build out.

In this article, I will explain how I implemented the NPC AIs, and the problems I faced.

Read more of "Creating worker NPCs using behavior trees"

The cover of "RVWP: Multiplayer Topdown Sandbox Game in C++"

RVWP: Multiplayer Topdown Sandbox Game in C++

For the last two years, I have been working on a very ambitious game. The game is a top-down sandbox with multiplayer support. I’m aiming towards a city-based game, where players can wander around a procedurally generated city. One of the main reasons I started creating this game is to learn about multiplayer networking at a low level - client-side prediction, server-side reconcilliation, cheat preventation, and reducing the visual effect of latency.

Read more of "RVWP: Multiplayer Topdown Sandbox Game in C++"