State of the Game, #1

In this first edition of State of the Game, we go over what's already in Bus Game, what has yet to be implemented, and what's actively being worked on.

State of the Game, #1
Early screenshot from Bus Game Prototype 9
📅
Week 25, 2024

Introduction

Starting new things is weird. Anyways, for this first edition of the State of the Game, we'll be going over not just the most recent changes to Bus Game, but also the overall state of things at this point. For reference, all of the current work being completed is for Prototype 9, AKA v0.1.9. The goal is to leave the prototyping stage, into a public alpha, by the end of this year with v0.2.

What's in the game now?

These are features that are implemented, in some way, in the game as of now. Most of them are considered functionally complete, others still have a ways to go before being ready for the limelight.

  • Singleplayer game sessions
  • Multiplayer game sessions, with lobby
  • Runtime loading of Epochs and Levels from disk
  • User interfaces - both in menus and in game
  • Vehicle driving - buses can be driven (feels terrible though)
  • Modular Vehicle Parts System - functional, but being further modified
  • Survival mechanics - limited to health for now
  • Radio system - including world radios and player comms
  • Voice chat - both proximity, and integration with radios
  • Player features:
    • Movement, with server-side authority and client-side prediction
    • Interaction & Inventory
    • Basic animations, including inverse kinematics

In addition to those in-game features, an early version of the Bus Game SDK is being worked on that already supports Level authoring, custom scripting, and some other boring, hidden functions.

In terms of the Epochs that are meant to ship with the game: Roadtrip is functionally complete, Bustle Royale is actively being worked on, and the foundations are being set for Story.

What's still missing?

These are features that are meant to be in the game for a public release, but that either haven't been implemented yet, or that are severely lacking in functionality.

  • Virtual Reality support - technically functional, but a terrible experience
  • Scavenger (loot & crafting) - needs drastic overhauls
  • Survival mechanics - only basic health is implemented
  • Level design & assets - lots of 3D modelling still needs to be done

With all that said, we can go over the most recent changes and additions to the project.

What's been done lately?

Most of the work being done at this point in the project is to cleanup technical debt - updating and expanding upon existing systems to bring them up to a higher standard so that more stuff can be built upon them.

Major Changes

  • An overhaul of Bus Game's session and lobby management, and changes to some networking code
  • An update to player inventory handling, mainly to breakdown giant monolithic scripts (that are hard to understand and work with) into smaller, more focused components
  • An update to interaction, allowing for more flexibility regarding how players interact with objects in the world
  • Updates to the game's user interface logic, utilizing the new binding system introduced to UI Toolkit in Unity 6
  • Implementation of the Modular Vehicle Parts System in Bus Game, which involves adding server-authoritative networking and synchronization
  • Some changes to how Epochs and Levels are loaded, including the ability to include custom C# scripts in content created in the Bus Game SDK
  • General cleaning up of scripts and the folder structure of the project, to follow an actual style guide instead of making stuff up as we go

New Assets

With most of my focus being on improving the game's functionality and implementing planned features, I haven't had much time (or desire if we're being honest) to work on asset creation. That being said, here's a quick preview of a modular log cabin I've been working on in Blender occasionally.

Obviously, the model still needs a lot of work before it's production ready, but you get the idea. Trying to model things to be as modular as possible takes a lot of effort, but it makes it easier to create a wider variety of structures in the game world with less 3D modelling overall.

Conclusion

Well, that's all for the first ever State of the Game. Given that much of this one was focused on catching up on the overall state of the project (which won't be necessary in subsequent posts), I expect that next week's post will be more detailed regarding the big changes of the week and how they were done from a more technical perspective.

Thanks for reading this far. If you have any feedback for this post, feel free to leave a comment or hit us up on whatever platforms we're on.

-RB