Bulwark Update 2: New Artwork

Been really really busy over the last couple of days. I have finished up all of the artwork for the core enemies(have some variants to do etc.) and have started work on some of the buildings that will be scattered around the environment.

I have completed the pathing for around 4/20 levels and am hoping to have the core levels completed by July/August.

I sent off my character descriptions to my character artist and have started to write the story script. In doing this I came to realize that I have to rethink my save/load strategy and re-implement the way the game progresses and the players access to levels at different times.

Balance is also proving to be something of a challenge I have come to learn that the smallest of changes can make the game damn near unplayable and frustratingly difficult. I plan to do a longer post on this some time in the future.

Meant to post this when I wasn’t half asleep so don’t really have much to say as my mind is slowly shutting down. I leave you with the new artwork for Bulwark. Enjoy :).


ImageImage  drone










Goodnight :).



Bulwark Update 1:

Bulwark – Something serving as a defence or safeguard.

Whilst I have mentioned this project before under the oh so helpful title of ‘tower defence game’ I figured it was time I named it and started providing some more details :).

Update – Screenshots added.

I aim to post more regularly about the development of this game, along with reflecting on the experiences I have had throughout. For now though I want to share a little bit more information about the project.

2050AD. 15 years after the events of the Walker Incident; the planet Azur is ravaged by war. The Azur Defence Force(ADF) struggles to hold back the overwhelming forces of a fanatical group, the Norvus Resistance(NR). The ADF held a technological advantage and found themselves victorious in the majority of skirmishes. The NR resorted to underhand tactics, sending large strike teams to unprotected or civilian targets, whilst attempting to divert the main ADF forces elsewhere. Soon the ADFs infastructure was facing collapse, with battles raging on the front lines a new method of defence became necessary.

Thus the Bulwark initiative was created, a collective of high ranking military tasked with the defence of high priority targets. A large amount of funding was allocated to the development of stationary towers with extensive firepower.

This is the story of Commander Taylor James, a promising young man, the latest member of the Bulwark initiative.


A traditional tower defence game with visual novel elements. I have spent a great deal of time developing the core game to be familiar to anyone who has played a tower defence game. However I have tried to create a level of strategic depth through the variety of enemies present and the difference in tactics to beat them.

Technical Information/Software I use

I’m not going to go into some crazy amount of detail at this time. The game is being developed on the Unity engine and I am writing the code in C# (MonoDevelop). For artwork I am using Blender for the models and GIMP for textures, I am also making use of XNormal http://www.xnormal.net/1.aspx for ambient occlusion and normal mapping.

Also Notepad++ for an unreal amount of things ūüėõ


I am the sole developer on this game, I have produced the majority of assets and will continue to do so. I will of course attribute and thank anyone who’s work I have used WITH PERMISSION, but I try to avoid this except for some environment assets/shaders.

I am hoping for a release by the end of 2013 but we shall have to see things go and how much time I can devote to this project.


So far I have the core game working as intended. I am in the process of writing and implementing the story whilst designing characters and backgrounds for the visual novel aspect of this game.

I’m also hard at work on building the actual game levels. It’s all fun and games ;).

Screenshots(Will upload when I get home)

Screen (1) Screen (2) Screen (3) Screen (4) Boom! Screen (6) Ha

Unity Object Spacing Script – UPDATE(Fixed Broken Script)

This has saved me so much time lining up GUI elements for my TD game. It takes a user selection then allows them to define their order and the spacing between them. I used them for the level selection screen and am finding use for this in many of my projects.

Feel free to use this wherever you see fit.


*Place in Editor folder.
*Select object you wish to space.
*Goto Helper/Space Objects
*Select Axis
*Enter float value to define the gap between objects.
*Hit Apply!

using UnityEngine;
using UnityEditor;
using System.Collections;

public class SetSpacingOnSelection : EditorWindow 
    public enum Axis
    public Axis selectedAxis; 
    public float spaceAmount; 
    public static GameObject[] selectedObjects;
    [MenuItem("Helper/Space Objects")]
     static void Init()
        SetSpacingOnSelection window =
        selectedObjects = Selection.gameObjects;
    void GetSelection()
    void OnSelectionChange()
        selectedObjects = Selection.gameObjects;
    void OnGUI()
        if(selectedObjects != null)
                    GUILayout.Label("Space Items", EditorStyles.boldLabel);
        GUIContent axisLabel  = new GUIContent("Axis: ");
        selectedAxis = (Axis)EditorGUILayout.EnumPopup(axisLabel,selectedAxis);
        GUIContent spaceLabel = new GUIContent("Amount: ");
        spaceAmount = EditorGUILayout.FloatField(spaceLabel, spaceAmount); 

        for(int x = 0; x < selectedObjects.Length; x++)
                if(x >0)
                                    if(GUILayout.Button ("UP"))
                    GameObject temp = selectedObjects[x];
                    selectedObjects[x] = selectedObjects[x-1];
                    selectedObjects[x-1] = temp;

        if(x < selectedObjects.Length -1)
                if(GUILayout.Button ("DOWN"))
                    GameObject temp = selectedObjects[x];
                    selectedObjects[x] = selectedObjects[x+1];
                    selectedObjects[x+1] = temp;
        GameObject[] objects = selectedObjects;
            for(int i = 1; i < objects.Length; i++)
                Vector3 newPos = objects[i].transform.position; 
                case Axis.x:
                    newPos.x = objects[i-1].transform.position.x + spaceAmount;
                case Axis.y: 
                    newPos.y = objects[i-1].transform.position.y + spaceAmount; 
                case Axis.z:
                    newPos.z = objects[i-1].transform.position.z + spaceAmount;
                objects[i].transform.position = newPos; 

Created with this script:
Level Select

Visual Novel System

Just a quick look at a system I am working on at the moment to enable people to create visual novels quickly and easily.

Only have the output to show for now, am hoping for some feedback soon as to the functionality of the system.

Currently Implemented

  • XML parsing of custom scripts
  • Fully integrated character manager/editor.
  • Auto/Skip button functionality
  • Player character thought parsing.
  • Scene management.
  • Questions with answers leading to different paths.


  • Save/Load functionality.
  • Matching voice to lines.
  • Scene dependent music.
  • Conversation history.
  • Full custom conversation editor.
  • TBC



Scripts loaded from XML ūüôā


Character change on the fly!


Make your choice!

Webplayer Link

I do NOT claim ownership of any of the backgrounds/character artwork. These are just placeholders to demonstrate the system.
However the text-boxes/buttons etc. were designed and created by myself.