Take on the role of a detective in the near future. Track down a serial killer, make friends in high places, burn bridges, and solve crimes along the way in this tech noire RPG game.

  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
Post article RSS Articles

Blackbay Blues: Dev Log 1

News

Greetings!

Welcome to the first official developer log for Blackbay Blues, Lyrium Software's first project. First, a little about myself: My name is Schalk (pronounced Skulk), and I'm an independent game developer from Cape Town, South Africa. My background lies in bespoke software development (C#, C++, Python, Swift, Java) and web development (mainly ASP.NET and ASPX, HTML, JavaScript, PHP, CSS, SQL), but game development has always been a passion of mine. I quit my job as a software developer in June of 2018 to pursue game development fulltime.

The Blackbay Blues logo

Now, on to Blackbay Blues!

Story

Blackbay Blues is a tech noire role playing game set in the near future, where you take up the role of a private investigator in the crime-riddled city of Riverbay City, nicknamed Blackbay. Years of funding, personnel, and corruption issues within the Riverbay City Police Department, coupled with organised crime, gang violence, and squalor plaguing the city has resulted in an extremely unstable situation for the city's residents.

Some, however, see opportunity in the chaos - enterprising individuals (such as yourself) has seen the dire need for private investigators within the city, resulting in P.I. firms becoming one of the most sought-after and profitable industries in the city. Luckily, the danger (and short life expectancy) of the profession has prevented the field from becoming oversaturated.

Police regularly refuse to investigate or pursue petty crimes, theft, disappearances, grand theft auto, and any other non-life-threatening crime, leaving these to the private investigators and choosing to focus on murders, organised crime, kidnappings, and high-profile cases.

Gameplay

The game is a role-playing game, which means you have full control over your character and their choices. You will also be allowed to customise your character at the start of the game. The game is played from a top-down point of view, similar to games like Shadowrun or the original Fallout games (although the game is fully 3D, not isometric).

Combat in the game takes a lesson from games such as Star Wars: Knights of the Old Republic and Dragon Age - meaning that it is pausable real-time, with attacks and actions happening in a pseudo-turned-based manner.

Story-wise, there is less focus on a "main" plot and more focus on the world. The main plot revolves around a mysterious serial killer, with a large amount of side-quests in the form of cases for your detective to solve. It is entirely possible to completely fail the main plot (i.e. the serial killer escapes their fate), or arrest the wrong person for it (which the player might not even realise is the wrong person).

While not all side-quests are necessarily mysteries, a lot of them are still open-ended. Side quests that are mysteries can also be failed by letting the suspect escape, or simply by arresting the wrong person for it (again, sometimes the player or the person who hired the player might not even realise that they got the wrong person).

Progress

Currently, the game is sitting at Alpha 1.0.0 - the earliest possible build. The foundation for the game has been completed, along with some engine tools and basic user interface functionality. Art is currently being "greyboxed" with placeholder assets, and the sound is non-existent.

The total lines of code (excluding engine tools) is currently sitting at a healthy 4500 lines, and includes (but is not limited to) the following systems:

  • Quest System
  • Inventory System
  • Dialogue System
  • Interactions with world objects
  • Basic character creation
  • Basic combat
  • Basic pathfinding
  • Probably some more I'm forgetting here

Below are some early versions of the user interface. While I consider these windows somewhat complete, I am planning to replace the static 2D book and papers with dynamic 3D versions in the future - however that will likely only be close to the final release of the game.

Case Notes/Quest Log

The player's quest journal


The player's Case Notes window, which acts as the quest log. There will be no quest indicators in the game, instead the players are required to rely heavily on themselves, their gut, and their instincts in order to find the objective. This is to keep with the theme of the player taking the role of a detective.

Inventory

Inventory


The player's inventory window - not actually where the player equips items, but where the player can consume items and keep track of their items. Still some elements to be added here (such as an indicator for the player's current health and wealth).

Equipment

Equipment


The equipment window, where the player can equip themselves. There are still quite a few elements that needs to be added here, like making use of all the wasted space on the left-hand page and adding the player's current stats (dodge, accuracy, damage resistance, damage, etc) on the bottom-right piece of paper. You can see this window isn't as polished as the others.

Technical Information

For those interested in the technical side of the game, it is currently being developed in C# in Unity 2018.1.7f1. The game's data (characters, items, quests, dialogue, etc) is completely stored in JSON files, which means the game is very easily moddable and extendable. It also makes development very easy, as it allows for the creation of powerful in-house engine tools to rapidly add new content to the game.

Whether the game will natively support mods is still to be decided - while it will certainly increase the game's replayability, it will affect development time as I will need to integrate scripting (likely either lua or Python) into the project to allow modders to easily communicate with the game. It will also require me to work "around" the fact that the game has modders in mind, forcing me to migrate some currently hard-coded logic to scripts or json files (such as triggers or quest progression).

As for assets, I'm currently storing textures as .png files and models as .fbx files. Models are dynamically loaded on runtime, and which models are loaded are stored in the json files, so modders could easily add, alter, or remove characters or items.

Programs currently being used for development:

  • Unity
  • Blender
  • GIMP
  • Paint.NET
  • Substance Painter
  • Substance Designer
  • MakeHuman (will likely be phased out at a later date in favour of custom assets)

I am strongly considering releasing the source code of some aspects of the game in the future, as I am a strong proponent of open source. However, I will only release as much as I can without harming my product, or hurting my chances with publishers. Failing making the code open source, I will in the future instead provide tutorials that cover the methods I used for certain things - like combat, dialogue parsing, or user interface management.

Wrapping up

That's about all for this developer log! The game is making steady progress towards a playable version. With the basic foundation in place, and the core game nearly finished, actual production of the game (i.e. the integration of quests, dialogue, characters, items, etc, and polished art) can start soon™.

The first playable tech demo (which will include the opening character creation and first 10 - 15 minutes of the game) will be freely available for anybody to download on IndieDB upon completion, but subsequent releases will only be available to alpha testers. And open alpha will take place when the game is considered nearly feature complete.

Cheers,
Schalk (Chalk)

Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account:

X

Posts will appear soon from @lyriumsoftware