Trains & Things - OUT NOW!

Trains & Things - It's out now! Go get it! Buy it, play it, love it. Invite your friends to play! On Steam or Itch

Also for those who have been wanting to try the demo recently but haven't been able to as the recent builds got uploaded without executables, this is now fixed!

0.2 - Warehousing Now that 0.1 is done and dusted whats next? Version 0.2 of course, which we have named "Warehousing" as this is the primary feature which I will talk about more in a second.

To see a complete list of what to expect in 0.2 you can head over to our GitLab page: GitLab Issue Tracking. Do note that this is more a "wishlist" than a "it shall be so" list. Things might get pushed in or moved to a future update.

In preparing this blog I have been a bit hesitant to talk about what I am working on and fixing for the next release as I have found some exploits that currently exist in 0.1 but will be fixed in 0.2. I would encourage you NOT to use them to your advanta…

Early Access Trailer

MarketingAs we are only a 2 man team, the game development has halted for a bit so that my brother can work on the trailer while I handle marketing. Marketing is basically my worst nightmare as there is no sense of achievement. No way to grasp if I am making progress. Something my brother won't even acknowledge exists (so he doesn't have to do it). It is such a dreaded task I always defer it as long as possible. 
With our last game - Dog Fight - I basically gave up on any marketing shortly after release. The game was complete on release so only needed 1 or 2 quick patches so we found it hard to keep trying to stick our neck out to bring people to our steam page, and so after 1 or 2 hits with an axe to the neck one kind of retreats.
This time around we are following the Early Access model, aka games-as-a-service model, we will be continuing to develop going forwards and so will have stuff to show off and remind you all how cool Trains & Things is.
To that end, if you are a st…

Release date inside!

Getting through Steam As I mentioned in the last blog, we submitted our game to steam to get an early approval so we can release without a last second rush.
This initial attempt was rejected for a number of reasons, primarily because our Linux build did not run on SteamOS.
This has turned out to be quite a problem for us because SteamOS uses some very old software, where we are running Manajro, which is bleeding edge software (more bleeding than not!).

In short, we need to build Trains & Things using old libraries (that software which our game depends on) but using bleeding edge tools (that software which which builds our game).

As you might imagine, it is potentially quite a problem as that fancy new tools might depend on some other fancy software which is in direct conflict with that old software we need to build our game against!

My first attempt at getting a build machine up and running, which took about 2 days, was Ubuntu 14 LTS. On this machine (virtual machine in my case) …

Tis' the season

I'm starting this dev blob with a bit about the importance of Christmas, before we jump into game dev.

It is the season to remember what Jesus Christ has done for us - He reconcilled us to God through His death on the cross and his resurrection 3 days later (which we remember at Easter). At Christmas we are reminded that He came to be with humanity. Jesus Christ, God come as a man, to come and be with us, his creation, and to save us from our sins!
“For this is how God loved the world: He gave his one and only Son, so that everyone who believes in him will not perish but have eternal life.
John 3:16 What a great God we have!
We at bitshift wish you the best over this Christmas season.
A new (old) master server The circle of "master server" goes full circle! Let me explain.
My first master server was written in GDScript using IRC. This worked but was slow to connect - in the order of 20 seconds.
So I eventually decided to try using the Matrix protocol as my brother found a …

Waiting for Godot

Let's take a look over what has been happening (or not happening) over the past month(s)...
Context menu
A picture paints a thousand words, so need I say more?
Okay, a few more. Activated with right click, you can now view some options that were previously only available via keyboard shortcuts.

Updated build pipeline A large portion of time has been spent working on the build pipeline. These are the build scripts that basically automate builds, testing, uploading to steam/itch and finally post a message to our matrix channel ( when a new build has been uploaded. So those who are already in this room will have seen some of these messages flying around.
Part of this script has been automating the build version number which at the moment looks something like this:
0.1.1501.af64ef3 this version number is made up of 4 parts:
{major version}.{minor version}.{patch}.{git hash} you as the user are likely only interested in the first 3 numbers, where 0 indicates early …

A coop session

Development A rather lengthy blog this month, so lets start with a set of points on what we have been working on since last time:
Loading improvements. Loading the small map like Hawaii loaded in a suitable time that clients would not disconnect in multiplayer games. For our super large test map, Grand Canyon, this was not the case! To combat this I've added in threaded loading, which allows the network players to not disconnect when loading takes a long time.
Screenshot support - All images in this blog are now taken using this new feature!
Initial unit test support. Our first unit test *attempts* to go through and check all maps load and takes a screenshot once loaded to verify against. It's not full functional yet.
New camera code + polished input handling have been implemented in an attempting to get rid of some camera "sticky keys" we ported from Windows. The problem turns out to actually be a Godot bug caused by low frame rates. Our changes have helped it seems…

All aboard the Hype Train!!

Welcome back to this months blog! Now that E3 is over and done for, we can have a break from the hype train! There have been many little bugs vanquished this month. The programming has focused on fixes covering the following areas:
RSS is working againThread pool causing the game lock up on quitPerformance - level of detail for terrain and shaders Backend scripts - an on going integration for mods Mapping on the frontier On the mapping front, we decided we should take the plunge and work on a new giant sized map. Our decision for this was to push the engine and tools to the limit of what we want to be able to do in the game. And from there we can easily scale down the map, test the tool pipeline, and test for areas that need performance improvement.

What did we find?! Well, we found a few issues. First our new terrain pipline is working very smooth and is much quicker. Next we found performance lacking, so have started implementing a LOD (Level of Detail) system for the te…