It’s been quite a long time since we’ve put out a devlog for Socially Distant. But, it’s a new year, and it’s time for things to kick back into gear. A few weeks ago, we put out an informal roadmap for 2025 [that you can read here. What have we been working on since then? Get ready, because it’s quite a lot.
Meet the Dev Team!
Toward the end of 2024, we welcomed AshesOfEther as a community moderator for the acidic lighthouse Discord server. We also brought on FeTetra as a second programmer, writer, and soundtrack composer
While we are still adjusting to Socially Distant being a team effort, we have also brought on two new team members this month: Toru the Red Fox, and Arcadius.
If you decide to pop by the acidic lighthouse Discord server, feel free to say hello!
Improving productivity with Nextcloud
Nextcloud is an open-source collaboration platform. If that’s the sort of thing you’re interested in, then you probably already know about it.
Nextcloud has made it easier for us to work together on planning the game’s development, keep track of who’s working on what, manage our current private playtests on Steam, and much more. In fact, this article was written inside it.
While it definitely has the occasional bug here and there, it has the ability to do absolutely everything we could possibly need to work on a large game project like Socially Distant, short of hosting the source code (which is what GitLab is for, anyway.)
Onto the fun stuff: New Terminal
It may not look like it, but the in-game Terminal was rewritten from scratch.
As part of merge request !18 “New Console Renderer” and !17 “The Shell Update”, we are rethinking the way the in-game Terminal works. While the old Terminal worked fine, it was solving a made-up problem. We originally wanted the Terminal to be able to do things that real-life terminals do, and that still holds true. What changes is how the game does those things.
Under-the-hood, the console renderer is completely different. You can delve into the source code if you want to see the nerdy details, but what matters most is it is far-less resource-intensive and easier to work with as a programmer.
Alongside the console renderer changes, we are massively improving accessibility of the in-game terminal and shell. Commands now have in-game syntax help, we will be working on an enhanced completion API soon, there is proper Unicode support for future internationalization, and high contrast colors and in-game text-to-speech will soon be added.
The command-line is an important gameplay element, as it is something all future investigative hackers should be capable of using. It is extremely important to us that it be as easy to use as possible, since this is still a video game and fun trumps all.
Better In-Game Accessibility
Socially Distant is a text-heavy game. What if you struggle to read it?
While we can’t solve every possible accessibility problem that the game could have, we can try. That’s why, as part of merge request !19 “In-game TTS”, we added an in-game screen reader.
Currently, only text labels, toggle switches, and selected text in the Terminal can be read by the in-game screen reader. If the reader is enabled, you can middle-click a widget in the game’s UI to have it read to you by your operating system’s offline speech synthesizer. That’s right, we explicitly do not support cloud-based synthesizers, nor does it use an AI voice model. This keeps it fast, simple, not reliant on the Internet, and less annoying to troubleshoot. All so more people can play the game.
On Windows, no setup is required by the player. On Linux, users will need to install and configure Speech-Dispatcher. Most modern distributions of Linux have already done this for you.
The Vulnerability Scanner
As the game’s Career Mode begins development, two merge requests were submitted that add the game’s new Vulnerability Scanner.
The Vulnerability Scanner is used to find possible security vulnerabilities in a remote device, so you can try to hack into it.
In Socially Distant, different types of servers are vulnerable to different kinds of vulnerabilities. Each kind of vulnerability can be exploited by different tools, offering different levels of access to the breached computer. Basically, one exploit might only work on a webserver and offer access to private info on the website itself, while another exploit might work on an SSH server and gain you shell access.
The biggest challenge in the game will be making sure you can actually gain access to what you need to. You will not always be able to gain root access to something. But Vulnerability Scanner will try to help.
Defining the Game’s Story
After some slight soulsearching, we decided to focus some time on the game’s story. Particularly how you, the player, are involved in it.
Unfortunately, that’s too secret to share in these devlogs. You’ll just have to wait and see. Suffice to say, however, that it should be exciting.
Unclogging the Pipelines
While you cannot currently buy Socially Distant on Steam, because the game isn’t finished yet, that doesn’t mean the game isn’t capable of being played via Steam.
Some early playtesters have access to the game already. Thanks to the game’s GitLab CI/CD pipelines, we are able to immediately rebuild the game from source and ship to Steam the moment one of us runs git push
. But…something went wrong.
For the past few weeks, our Steampipe Deploy job was failing. There’s really no elaborate story here, but this is your friendly GitLab administrator telling you to periodically run this command on your CI/CD runners:
docker image prune -af
It frees up disk space. This is reallly helpful when said disk is too full to complete a build.
Pruning 23 GB worth of cached Docker images and re-running the latest failed Steampipe job resulted in Socially Distant coming back to Steam once more.
General bug fixes and improvements
Here is a list of bugs you will hopefully not need to see in the final game, because they were fixed.
- Fixed
neofetch
stat wrapping. Stats will no longer break the logo art - Changed window title of Terminal from “TerminalProgramController” to “Terminal”
- Enabled Wayland support by default
- Fixed dropdowns closing when clicking a dropdown item with right or middle mouse
- Fixed dropdowns closing when the dropdown item container receives focus but an item inside it doesn’t receive focus
- Added support for action buttons in System Settings
- Bloom effect now downsamples the screen proportionally to the strength of the bloom, leading to a slight GPU performance improvement
- Widgets can now provide accessibility descriptors
- Copying a text selection in the Terminal to your clipboard will now trim whitespace
- The in-game shell now supports file globbing
Lastly, administrative stuff
Here’s some info you might want to know about.
- If you signed up to become a playtester last year, expect an email soon as hacking gameplay continues to be worked on. We’re not there yet, but it’s coming.
- A cookie issue has been resolved in regards to session expiration of acidic light community accounts. If you use our GitLab or Nextcloud servers, this means you won’t be logged out as often.
- Devlogs will transition to bi-monthly now that CareerMode is starting development. This is to allow us to focus more on tasks that take longer than a month to complete.
- Eventually, the Socially Distant Community Forum is going to move and will be rebranded to the acidic lighthouse forum. This puts it more in line with the branding of the acidic lighthouse Discord server, abd allows for more than Socially Distant to be discussed there.
And that’s about it!
Not a bad start to the year. Nothing too visual to show this time around, since most of the game’s work has been behind-the-scenes, but that stuff is important too. We definitely hope to show you more progress next month!
Support Socially Distant’s development
This devlog was originally posted to Patreon as early-access content on January 30th, 2025. If you’d like to get early access to future devlogs and other exclusive content, while helping support Socially Distant’s development, consider buying Ritchie a coffee!