World Implementation

I stumbled across a great resource awhile back at You can find a large assortment of assets for game development including art and even music, and as the name implies, you are free to use most of it in your projects. This coupled with the enjoyment I had with the random world creator I made in the last post and I have decided to move away from the purely text based RPG. It will be easier than I thought to add some graphics, so in this post, I will show how you could extend the Procedural World Visualizer into a sprite based equivalent. Continue reading

Procedural World Visualizer

As a single developer without a team of artists to create hand craft level content for me, I am considering creating my RPG’s world from Math. In this tutorial, I will create a means of visualizing such a world to show just how flexible and easy to use it can be. We will be making heavy use of Perlin noise, but don’t worry, this post will actually be light on math. Continue reading

Social Scripting Part 3

Welcome to the final post of Social Scripting. As a quick recap, Part 1 discussed several “Social” architectures offered by Unity, such as their Messaging system (both the legacy version and new version) and their new EventSystem. Part 2 discussed purely C# options including delegates and events.

The goal of this post is to create a custom Notification Center, which combines several features I like from across the board while adding a few new possibilities to boot. Continue reading

Social Scripting Part 2

In Part 1 of this series we discussed several means by which Unity allows you to get your scripts talking back and forth between each other. That included direct references, their legacy and new message system, and their new event system as well.

In this post we will examine the options available to you as a language feature of C#, just in case you don’t want to rely on the options Unity provided. Although their event system is quite powerful and easy to use, keeping your events native will allow your code to be more easily reused in other projects or ported to other engines. I consider this part of the series intermediate level, and will expect you to have a working knowledge of C#. Continue reading

Social Scripting Part 1

It doesn’t take long before even the most basic of programmers realize there is only so much that can be done in a single script.  You really need to craft a system where different objects know about each other and disconnected scripts can talk to each other.  The goal of Part 1 is to introduce several options which Unity has built in to the engine to facilitate these needs. Continue reading

Random Encounters and Polymorphism

I was looking through Final Fantasy guides to get ideas for architecture.  In particular I looked at a Final Fantasy 1 handbook by Ben Siron.  I was intrigued by his simple presentation of the Enemy Domain Mapping system – showing what monsters appear in random encounters at each location of a map.  Put simply, there were several “recipes”, each referred to by a single letter, and those letters were arrayed in a grid according to the layout of a map.  It was a simple way to store a complex amount of information in an efficient way.  Here is an example recipe: Continue reading


Hello World!  Sorry I know that’s a pretty lame programmer joke, but seriously, this is my first ever blog post, so hello.  My plan at the moment is to write a series of posts that serve as mini tutorials on programming.  We use Unity and C# at work so that is what I will focus on here as well.  Initially I feel inspired to architect some sort of Final Fantasy style RPG, so all of the first posts will use that as a theme.  Given a lack of time and resources, I suppose my initial efforts will be a sort of turn-based text game, not quite Zork, but along the same idea.  With enough interest I may add graphics later.