Showing posts with label black road sky. Show all posts
Showing posts with label black road sky. Show all posts

Friday, October 9, 2026

The Train Remains on the Tracks

Well, as expected, very little development progress this month. Just had other shit going on. I did manage to do a little work here & there, so I haven't lost track of what I was doing, and life-things are calming back down to normalish. I handled all my bizniss without burning out or losing BRS motivation, so that's better than most years. This is usually the sharp bend that derails me, then the winter dark sets in & the beers start tasting better than usual, and then FUCK it's spring.

I mean, that still might happen, but I feel pretty good & am the good kind of anxious to get back to work properly, hopefully next week. I'm still working on this coms system sidequest, which I should be done with & ready to talk more about next month. Until then!

Wednesday, September 9, 2026

System Scale & Building Out Nav/Com

Kind of a slow month due to my actual job & spending most of my free time performatively reading Gravity's Rainbow. Still, decent progress!

System Scale

I have once again, and hopefully for the last time, reimplemented the system-scale architecture. More detail than you probably want incoming:

Basically, it's not possible to accurately simulate small-scale actions (e.g. cockpit button presses, or even the ship moving in space from frame to frame) in a world that spans billions of kilometers because the numbers get too big and you run out of decimal places. The solution is a floating-origin, which just means constantly moving the player back to 0,0,0 where all the decimal places live, while moving the rest of the universe in the opposite direction. So in Black Road Sky, and probably any other similarly scaled game, you don't really move the ship in the direction you want to go, you're actually moving the universe in the opposite direction while you stay put. Maybe that's how conscious reality works, too? Trippy, man. There's some additional voodoo required to make everything work (camera tricks that I haven't got around to worrying about yet, implementing double precision math in the places where Unity doesn't support it, etc.), but that's the gist.

This was fairly simple to implement, mostly because I already figured it all out in the previous version, so it was just a matter of getting it working with the current improved game architecture. The end result is that the BRS universe now includes 2 cubes spaced a few billion kilometers apart, and you can travel between them without reality exploding.

Building Out Nav/Com

Now that we have distant objects to visit, I wanted to spend some more time on the new navigation & communication system. Previously, sensors worked magically and were completely divorced from the coms system, which was literally just a big red button that asked the nearest station "cool if I dock?" or "cool if I undock?" depending on context. So lots of room for improvement, and I'm excited about how it's shaping up.

My first task here was to implement a "Transmitter" class, which I can add to any object in the game. The transmitter defines signal type and power (more on that next time!) and constantly blasts out basic info like ID, position, and velocity, on a particular frequency, propagating at the speed of light. Nothing is actually being blasted around at the speed of light (simulating a universe of elementary particles is a bit out of scope), but a clockwork of timers and message queues provide sufficient illusion. Data is passed from communication to navigation for calculating useful values like relative velocities and, eventually, for drawing a new & improved sensor display. Not quite there yet, though.

Communication frequencies in BRS are hidden under a layer of abstraction and are presented in a sort of IP address-like format. I took a silly detour to formally define that format (part of the Solis Unified Transceiver Standard), so even though no one will ever notice, these frequency identifiers represent not only a unique ID, but also indicate the signal source type (ship, station, nav beacon, etc.), province of origin and other context-specific information. Maybe got a little carried away, but if I wasn't the type of dude who gets a little carried away I wouldn't be making this game at all, you know?

Coming Up Next

I've still got a lot of nav/com work that I'd like to get done, but if I feel myself getting too far into the weeds then I may put some of it off until later. After that I'll be working on close-range physics, which was a major weak point of the previous version and is in serious need of an overhaul.

I expect development to continue a bit sluggishly for the next month or two due to the labor that I must sacrifice to Capitalism in return for the right to live (can we get this class war started already? Counterforce unite!) and, less depressingly, end-of-summer honey harvesting. Work tends to derail me around this time of year, so wish me luck as I hold on tight and try to keep the torch above water.

Sunday, August 9, 2026

Propulsion Hardware & The Road Ahead

With the internal propulsion hardware complete, I've FINALLY ticked off the last to-do item on the first official (also, as it were, internal) version of the new Black Road Sky. I'm fucking stoked.

There's not enough game here to warrant a public release, but check out the tentative roadmap at the end of this post to get an idea of where we stand in the bigger picture.

Refueling, Coms & Utility Dock

An initial refueling implementation is in place, and I don't expect it to change much as development continues. Instead of docking internally, walking through the station to a terminal, and pushing the magic instantaneous refuel button, there is now an actual refueling procedure!

Refueling requires a connection to the new utility dock located on the nose of the ship. This will eventually be achieved either by docking externally, or by manually connecting a pump mechanism from the station if docked internally. Refueling requests are made from the cockpit via the newly (& very sparsely) implemented Coms System. This will probably be some sort computer terminal accessible from the pilot seat. Once fuel is flowing from the station to the ship, there's a refuel valve in the engine room that you'll have to open in order to actually accept the fuel, which arrives at a rate of less than infinity, unlike before.

A cool consequence of all this new complexity is that you can also open the refuel valve when undocked to vent fuel. I don't expect this to be very useful, but because the utility dock is right on the nose of the ship, this can provide weak but usable aftward propulsion in a hypothetical MacGyver-like emergency.

For now, most of this happening virtually, but it's ready to be hooked up to gamespace controls in the near future (see roadmap below).

Propellant Control

In other engine room news, the propellant manifold & pump functions are now complete.

We have manifold valves to adjust the flow of fuel to each booster as well as to individual RCS thrusters. The main purpose of these is to compensate for uneven thrust due to hardware damage. Limited booster valve control is also available via a yaw trim slider which will live in the cockpit, within easy reach of the pilot seat. On the RCS-side, there is an additional valve for dialing in the 'docking power' mode to your preference.

The pumps, which will eventually use electricity, adjust the response rates of the boosters & thrusters. Again, this can be used to compensate for uneven wear, but it can also be used to improve the response of a cheap piece of equipment at the expense of increased wear damage and, eventually, power draw.

This hardware (as well as the utility dock itself) is all implemented by the same system as the rest of the ship hardware, meaning that I can easily make it all breakable, repairable & upgradable if that ends up feeling like a good idea. For now, I'm just leaving them as stock parts baked in to the ship, for fear of making shit too complicated.

Tentative Roadmap

Of course this will change, but here's the roadmap as it stands today. We've got a long way to go, but I don't think there's anything standing in my way now except myself, and that guy basically does whatever I say.

Thursday, July 9, 2026

Newtonian Flight Systems In Place

I'm back in the groove, as the pendulum swings, and more or less caught up to where I left off last summer. Which isn't terribly far, and it took longer than expected, because it always does, although 'caught up' isn't really accurate with all the improvements made along the way. Systems that I felt were too shallow are a bit deeper, while overcomplicated aspects of the codebase have been simplified.

Everything is more stable and better optimized. I'm fixing problems as they occur rather than adding them to a to-do list and focusing on blasting through to the next feature. Feels good, man.

Main Flight Systems

The RCS, booster, and gyro systems are all in place now, rounding out the basic flight controls. I still have a lot of features that I'd like to add to those systems, but the foundation is built in a way that should be conducive to adding new components with minimal pain-in-the-ass.

Those additional features will be things like startup procedures and system-related engine room equipment, as well as power & heat management, two things I kept putting off in the previous project once I realized what a mess it was going to be to implement anything beyond the absolute basics. This time around, I've kept all of those future problems in mind while building the initial system implementations. It won't go as smoothly as I'm expecting it to, I've learned to distrust that instinct, but it should be a hell of a lot easier now.

Interior Fuel System Components

Fuel System Diagram

I'm currently working on the first bits of engine room hardware for the RCS & boost systems. These pump & manifold systems can be adjusted to compensate for asymmetric wear as well as to generally tune your engines, either by pulling back on power to conserve fuel and protect the hardware from wear damage, or to hot rod yr shit with abandon.

The controls for these pieces of equipment will be mostly located in the engine room, associated physically with the equipment itself, but some functions may be available in the cockpit for convenience; most likely, at least, some sort of yaw trim for keeping your boosters from pulling in one direction. This is a problem that can also be corrected with the new auto-stabilization options, or of course by dealing with it manually like a heathen.

I'm just getting started on all of this, so I may have more to say about it next month. In the meantime ...

Check out Sylph!

I've been getting my sci-fi flight sim kicks from Sylph for the past couple of weeks. It's a small-ish game (I think?), but if you're into the genre enough to be reading this then you'll probably dig it.

I made this long-winded (as is my wont) tutorial video if you get stuck at the beginning, but I encourage you to give it a good try on your own first. You don't get many opportunities in life to figure out how a spaceship works, after all.

Tuesday, June 9, 2026

Easy Does It

The work continues, but alas, nothing exciting to report this month. A busy-as-usual spring beekeeping season, a weeklong camping trip, and Dave the Diver all conspired to slow my progress. So it goes.

I haven't even got to the booster system yet, to be honest, but I also put a bit more effort than expected into finishing the damage, repair and upgrade systems. Since they'll be shared by probably all of the remaining systems, I want to get them as right as possible the first time, and I think they're there now.

So all good in a no news is good news kind of way, and I think I should be able to buckle down and get back to it properly this month, now that the bees are done acting swarmy and Dave's done diving.

Saturday, May 9, 2026

Item Skin Maniac

Nothing too exciting this month, still reimplementing systems and catching back up to where I left off back in August.

The systems architecture that I wrote about last time is in place, although it took longer than expected to finish up because I, like, forgot how programming works. Been a minute since I finished that CS degree. But it feels good to get back into a software engineering mindset, and I'm very happy with the result.

Fuel, RCS & Gyro Systems

The development of this new version has been pretty abstract up to this point, so I figured what this spaceship flying game could really use is the ability to fly a spaceship. To that end, I got to work on reimplementing the RCS system. I talked about this back in June & July, so you can scroll down for more info, but basically the thrusters now work in a more realistic (and satisfying!) way, they can break and wear down, you can fix them and upgrade them, and I've added a few new in-cockpit features. I mean, the cockpit doesn't exist yet, I haven't got to the 1st person stuff, but it's all working with default keyboard controls.

Getting the RCS system back up & running required that I reimplement the fuel tank, which is also now upgradable. The tank & it's fuel have mass, so it'll be up to you whether you prefer a smaller tank for a more maneuverable ship at the cost of more frequent refueling, or a big-ass long haul tank for the full lonely space bastard experience.

The RCS thrusters can now provide auto-stabilization c/o the gyro system, which means that I also had to reimplement the gyro system. Again, I wrote about this in more detail last summer if you want to dig deeper, but basically everything is cooler than it was before.

I should be clear here that shops don't exist in the game yet, so you can't actually upgrade anything, but the systems are in place & ready to be eventually hooked up to a shop UI of some sort.

Coming Up Next

I've still got work to do on all the systems mentioned above, but they're just about done. Next up is the booster system, which should go pretty quickly. With a flyable ship back in the game, I can move on to system-scale simulation which should catch me up to where I left off last summer.

Epilogue That Nobody Asked For

numbers unknown to science


Thursday, April 9, 2026

Systems Architecture Revamp

As indicated in the previous drunken devlog that I barely remember writing, Black Road Sky is finally back on track. Still have one Nubby achievement left to grind, though.

As you'll know if you've been following along, I started the BRS project over last year, but didn't make a whole lot of progress before needing a longer break, so I've just started over again. I know what I'm doing this time, I know what I want the game to be, and I've solved all the major technical difficulties. Now it's just a matter of getting over the terrifying realization that I have years of near-daily work to do. But, like, what else have I got going on?

The work, and therefore the devlogs, will be fairly boring for at least a few months, maybe more like a year. How boring? This boring:

Ship Systems Backend Architecture

Ship systems, and the interplay between them, got very complicated in my last attempt even though I was nowhere close to the final vision. The code wasn't quite spaghetti-bad, but maybe like a nice bucatini. Confusing, anyway. Basically it wasn't vamped good enough, so by god I'm revamping it.

IT'S DIAGRAM TIME BITCHES

Ok, so the diagram kind of makes it look like I'm just making things more complicated, but hear me out.

First of all, the systems themselves are, by design, never calling per-update events (Update() or FixedUpdate() in Unity), instead everything is called by referencing each systems' handler function from a single point, the player ship controller class. So it's trivial to see, at a glance, what order shit is happening in, which is kind of the thing that makes programming hard. This goes a long way towards untangling the bucatini.

Second, system logic and hardware functions are handled separately, which again just helps in managing the logic & order of events. Both system and hardware classes derive from base classes which hold all the common stuff like general health stats, repair functions, cockpit button interaction handlers, and so on. Nice & clean.

Finally, the actual hardware stats (thruster power, response time, durability, and eventually things like cost) are held in logic-free stat blocks, glorified plain text files that Unity calls scriptable objects. That means that I can quickly & easily create new hardware components with just a few lines of text, and maybe even open it up to modding. Not sure about that, though, probably shouldn't even have said it.

I'm also doing a better job of commenting code for future me, who as it turns out is kind of a dunce, and following best practices for Unity-specific things. When I started making this game it was my first Unity project (I mean, I guess it still is), and I couldn't have given half a fuck about whether a variable was initialized in Awake() or Start(). But here I am now, giving a bunch of fucks.

Coming Up Next

More exciting diagrams and shit, probably! And I'll let you know if I 100% Nubby's Number Factory, but I've been pretty distracted lately by My Summer Car. Got a lot going on over here.

Monday, March 9, 2026

All Nubbs Must Come to an End

Yo yo yo, had to take a break to play Nubby's Number Factory but baby, WE ARE BACK.

Well, we are back. Putting it all in caps was a bit disingenuous. Performative. I mean, I am back. Never really went anywhere. But I am getting back to work now.

On Black Road Sky. Not on Nubby's Number Factory. I mean, both. All things, all of the time, in every possible configuration. One of these times I'll nail it.

Thursday, October 9, 2025

Still Chillin'

Nothing to report, but life-things have chilled out and I think I'll get back to work soon.

I've been prototyping a few other game ideas, just in my downtime at work, including a fantasy small plane sim that I might keep working on alongside Black Road Sky, but this remains my main project and I have no intentions of abandoning it.

In other news, Apollo is taking a lot longer to learn than Gemini, holy moly.

Tuesday, September 9, 2025

Didn't Do Shit

As expected, development this month took a back seat to shit getting hectic at work. A bountiful (read: pain in the ass) honey harvest and my recent discovery of Reentry didn't help. Honestly, I don't think I even opened Unity once.

So it goes. I'm getting pretty good with the Gemini capsule, and the old school NASA cockpits are probably flavoring Black Road Sky in a way that I won't regret, but if I can claim to have made any progress, that's about it.

If you're enough of a nerd to be upset about this, then you should be enough of a nerd to accept my custom Gemini mission pad as an apology.

Back at it soon, hopefully!

Saturday, August 9, 2025

Boldly Going Where I've Already Gone Before

As (sort of) promised, I did manage to work on system scale & close range physics this month, but just barely. System scale is working, but the close range physics was honestly wonky as hell before and I'll need to take my time getting it right this time around.

Lots of other shit to talk about this month as well, but the TL;DR is that everything's going pretty damn smoothly.

Attitude Stabilizers

The gyroscopic stabilizer system is pretty much complete & in final form. It mostly works the same way as before, with the main difference being that the system is now breakable, fixable, and upgradable.

I've added an auto-stabilization feature which will be available from the cockpit, with independent toggles for all 3 axes. I think this could be useful for docking, and some pilots might find it convenient to use full-time.

The ship can only be stabilized in this way on any given axis if it's angular velocity is less than that of the flywheel's saturation velocity, which will vary depending on the installed model of stabilizer, but overall it means that attitude stabilization has been significantly nerfed. You can no longer just hold tab to bleed off arbitrary amounts of rotation. To make up for this, I've added an RCS-based auto-stabilizer as well. Of course, this will use fuel, but it should be helpful for managing wild post-collision spins and the like.

Propellent System Hardware

Prop System Diagram

Virtual implementations of the various bits of prop system hardware are in place, with the exception of the utility dock & refuel valve. The rest of the engine room equipment that you can see in the diagram above is all working, and will have player-interactable entities after I reimplement the first-person scale.

The manifold can be used to choke or open fuel flow on individual outputs, pump power can be adjusted to balance thruster power against efficiency and wear damage, and injectors can be adjusted to similarly affect thruster response. All of this only half makes sense, of course, and is geared more toward gameplay than accurate simulation.

Some of these adjustments will only be available from the engine room, but a few important ones will have cockpit controls as well. For instance, there will be an overall RCS pump power selector as well as an RCS injector on/off switch in lieu of the old docking mode button for fine maneuvering control.

System Scale & Related Sidequests

There is once again a vast solar system to explore, so that's cool, but it's just 2 different colored cubes a few billion kilometers apart from each other, so that part could use some work still. There's somewhere to boldly go, anyway.

This was a pretty simple task that boils down to implementing a floating origin, but I took a couple of detours along the way. In order to test the system I needed a way to find distant objects & a way to keep the camera on the ship for the journey, and instead of throwing together quick temporary solutions I decided to build out the base of the sensor system and implement a new & improved chase camera.

The chase camera has a bunch of new functions, nothing fancy but you can actually zoom & pan now. You can also pause the game, and I added an in-game screenshot capability which is just perfect now that the game looks worse than ever. Pausing the game, which seems like a pretty simple thing, is actually a pain in the ass for a game like this, so that was it's own sub-sidequest, but it needed to be done sooner than later, anyway.

As far as the sensors go, I'm waiting until I reintroduce space stations & docking before I really flesh things out, but the base architecture is in place. The biggest change from the old system is that sensor pings are now modeled as radio waves propagating at light speed, rather than being magically instantaneous. This will introduce some weirdness once I reimplement the warp drive; I haven't quite decided how I'm going to deal with that, but the warp bubble will probably just block outgoing radio waves, which might make for an interesting mechanic.

Coming Up Next

As I said up top, I'm still working on close range physics, AKA running into shit. I've got a busy couple of months coming up, so development will be taking a bit of a backseat. My only plan is to keep plunking away at physics range & collisions until I'm happy with it.

Wednesday, July 9, 2025

Main Boosters & Attitude Stabilizers

Steady progress this month as I continue rebuilding the main flight systems. Things are going a bit slower than I'd originally intended, but as I mentioned last month, the goals have shifted. I'm not worried so much about 'catching back up' to where I was before. Instead, I'm focusing on building robust systems that work, more or less, the way I imagine the final version to work, right off the bat.

I'm also just being smarter in the way I structure the code, taking refactoring detours as needed. Whenever I find myself about to write a comment like "Dear future me," I ask myself if I'd be better off taking a little sidequest rather than adding another point to the future todo list. So far, future me has appreciated the effort.

Booster System

Wooosh

The boosters work basically the same way as before, but there are some important changes. First, just like with the RCS thrusters, the port & starboard boosters are modeled independently, and accumulate damage asymmetrically, requiring occasional adjustments & repairs. They're also upgradable, with a few different booster options already added to the game.

As before, there are 3 boost modes: reverse, normal (formerly 'maneuvering'), and overdrive (formerly 'boost'). Once I get around to putting the cockpit together, there will be a shift lever to change modes, rather than console buttons, because that feels more badass space trucky to me. Boost is now separate from RCS, so you'll still have access to RCS regardless of boost mode. There's no longer a docking mode. Instead, you'll have more control over RCS power to facilitate high precision docking maneuvers.

Unlike the previous 'boost mode', overdrive is intended for emergency situations only. It provides a lot of extra thrust, but burns through fuel prohibitively quickly. Speaking of fuel, it actually has mass now, as does the fuel tank itself, which is also upgradable.

Finally, you'll no longer have to throttle down completely in order to change booster modes, but it will still be best practice to do so in order to avoid unnecessary damage to the boosters. There's now a 'throttle lock' toggle that will prevent accidentally shifting while throttled up, but whether or not you use it is up to you.

Attitude Stabilizers

I'm currently finishing up the new & improved attitude stabilizers, which I'm calling gyroscopic because it sounds cool, but they're modeled as reaction wheels. I say 'they' because rotational velocity is now considered on all 3 axes independently. Each axis has a wheel with a maximum 'saturation' velocity, above which they need to be desaturated manually by applying rotation in the opposite direction via RCS. This makes the system slightly less magical, and brings it more into line with it's intended gameplay use, which is just to bleed off that last little bit of angular velocity as you steady the ship. It also means that I can give the stabilizers meaningful stats and add them to the repair/replace/upgrade system along with the boosters & RCS thrusters.

I'm still working on these, so I'll have a little more to say about them next month. But, like, they're cooler than before is what I'm trying to say here.

Coming Up Next

Once work on the stabilizers is complete I need to spend some time modeling the internals of the fuel system. That shouldn't take too long, I don't think, so I'll finally be able to move on to system scale & close range physics, I MEAN IT THIS TIME PROBABLY!

Monday, June 9, 2025

Kicking off v1 REDUX

Despite a slow start this month due to a nice long camping trip, a busy-as-always start to beekeeping season, and a weekend lost to getting drunk and watching Tetris (CTWC 2025!), I'm pretty stoked about how much I'm getting done. A more robust Newtonian motion implementation is neatly in place, ship flight controls are being rebuilt from the ground up, and new gameplay elements are already starting to stack up. I'm building a MUCH more robust codebase and generally feeling good!

Evolving Development Strategy

Last time, my general strat was to implement the minimum viable placeholder version of a feature or system with the plan to basically replace it later. This made sense at the time; I had never used Unity, didn't know exactly what I wanted Black Road Sky to be, and had never worked on a large programming project by myself before. Why waste a bunch of time perfecting, for example, the RCS system, when I didn't even know if I'd be able to add planets, much less orbital mechanics, to the game?

This time it's different. While I still believe deeply in the philosophy of never really knowing what the fuck one is doing, I think that I never know what the fuck I'm doing in a much more refined way these days. Honing the fucking art. So even though I still plan on returning to the initial implementations with an eventual refinement pass, I'm striving for a much more robust baseline version, matching the final gameplay vision more closely.

New Shitty Ship Design

TRUST ME GUYS IT'S CALLED PROGRESS

On the one hand, yeah, this looks like a bit of a step backwards, but on the other, you know, the ship never looked that good. This design is purely utilitarian, and will remain so until I have all the moving parts in place. I worried too much about aesthetics before, with little to show for it, so I'm letting graphics take even more of a backseat this time around. Now that I actually know a little bit about modeling, materials, lighting and all that, I'm more comfortable just waiting to deal with the visual style later, while letting things progress naturally in the meantime with a focus on simulation & core gameplay.

I backed myself into some corners with the previous design, so now I'm lasering in on function with the plan to eventually design around it. The model looks shitty, but it includes a fore utility dock for external docking in addition to the aft cargo dock, a portside airlock to accommodate EVA gameplay, warp rings, main boosters, room for deployable radiators and comms hardware, and functional (rather than cosmetic) RCS thrusters, which I have a lot of say about!

Saying a Lot About RCS Thrusters

The RCS system has been completely overhauled, and is already in a state pretty close to the final vision. Before, I was simply looking for player input and applying an according rotation to the entire ship- adding torque to the rigidbody, in Unity terms. Now, each of the 4 RCS thrusters are modeled independently with their own base stats and health, and force is actually applied from the thruster positions. This means that ship mass and center of mass now matter, which will be important once we start hauling cargo. It also means that thrusters can incur individual collision & wear damage, affecting their function asymmetrically.

Obviously this has a huge impact on how the ship flies over time. Pilots can compensate by tweaking the settings of internal hardware (fuel pumps & manifold, which currently exist only virtually since I haven't reimplemented the 1st person scale yet), and by paying for periodic repairs or upgrades. I'll add that functionality once I reintroduce space stations, but the bones of the upgrade system is already in place. I can easily create new thruster types and swap between them. Different thruster models have their own min & max thrust powers, responsiveness (time taken to ramp up & down after player input), durability, and so on. I even invented multiple in-universe manufacturing companies to make the parts, because it just wouldn't be Potato Clock Games if I remained focused for too long.

All of this supports the kind of gameplay I'd always imagined for Black Road Sky: a meaningful damage/repair system, upgradable hardware components, optional pre-flight checks and in-flight tweaks, and an overall more refined space trucking experience.

Coming Up Next

The main boosters and gyroscopic attitude stabilizers are now getting similar treatments to the RCS system, so far so good.

Then I'll move on to overhauling the game's close-range physics (ship-space station interactions, basically) and getting that playing nicely with solar system-scale interactions. Easier said than done, but these are problems that I've already more or less solved in the previous version.

Hopefully I don't get any farther than that, because then I'll have to deal with orbital mechanics, which I'm kind of dreading, even though it was MOSTLY solved in the previous version. Anyway, that's a future-me problem! For now, it's back to work on flight controls.

Friday, May 9, 2025

The Next Stitch - Repeating the Mantra

One stitch. Tiny stitch. When you think how many yards you will sew, chanting the Buddha’s name with every stitch, if you count all the stitches, you say, ‘I cannot do it!’ But, if you do this stitch: one stitch. One stitch. One stitch continuously, you will finish. If you stop, if you quit, even if you are very good at stitching, you will never finish. Just continue! When you continue with the stitching you will have many problems. Experience. Yes. That is your life.

-Tomoe Katagiri, Soto Zen Sewing Teacher

"Aw, Here it Goes!"

Alright, ya'll, it's fucking happening! I'm starting over. This might sound dramatic, but I'm pretty sure it's the right call, and it's not unprecedented. This will be the 3rd time that I've started over with Black Road Sky; each time I've learned a ton of important skills & lessons, and each time the game has turned out better as a result.

I'll be sticking with Unity, which means that I'll be able to reuse a lot of code, and I'm starting off more or less knowing what the fuck I'm doing. I know what problems are going to arise in the future, and I can prepare for them. I know what features to concentrate on, and what to save for later. I think I can catch back up relatively quickly, with a much stronger code base and a better game all around.

I spent some time this past month in planning & getting organized, but I'm just now getting back to work in earnest. I needed that break, and mostly spent it playing other people's blue collar space games (Hardspace: Shipbreaker and Star Trucker, both recommended) instead of making my own.

Coming Up Next

I'm truly starting over, and first thing on the agenda is to rebuild the Newtonian motion simulation. Even at this most basic level, I have some ideas for improvements. Then it's on to revisiting the orbital mechanics, system/first-person scale interactions, all that. I don't want to say too much, because maybe I'll just run out of steam, but I'm feeling pretty inspired at the moment. Next few months should be interesting!

v1 REDUX


Sunday, March 9, 2025

BRS Development on Hiatus

Well, fuck.

Putting Shit On Pause

I haven't worked on Black Road Sky at all for the past few weeks. I ran into way more bugs than expected, and will probably have to roll back some of the new features as a result. Which is a bummer, because this was already going to be a pretty lackluster update. It just got to a point where I dreaded getting out of bed in the morning, knowing that I would have to work on this game. Dumb, I know.

Black Road Sky isn't the problem, really, but it's one of the few time sinks & sources of stress in my life that I can choose to just, like, not do. I've been feeling generally overwhelmed and I can't just quit going to work (or can I?) and I can't just quit being dragged along in an unrelenting social, economic and political nightmare (or can I?) and I can't just quit perceiving reality as a bewildered speck of consciousness awash in a staggering deluge of universal suffering (OR CAN I?) but ... I can definitely just quit making my little video game for a while.

I feel shitty stepping back so close to version release, and I feel especially shitty for having suggested that it would be finished before this year. And I feel extra especially shitty because this was just supposed to be a little catchup release before moving on to ship systems, which I am still, even in my current state of minor existential distress, really, really looking forward to working on. But I've moved past the stage of beating myself up over it and am pretty comfortably into the ah, fuck it, this is just the way it is stage.

The Future of Black Road Sky

I have every intention of getting back to work in the not-too-distant future. I'm feeling a lot like I did around the start of 2022, and I've been considering the same 'give up' / 'start over' / 'muscle through it' options that I did back then. I've decided that it's definitely not time to give up, and although starting over does sound hella refreshing, I'll probably just keep muscling through. That's kinda my jam. Just need to gulp down a few lungfuls of air before diving back into the thriving madhouse of bugs that I've managed to foster.

Hopefully the world doesn't end between now & then, but if it does, you know, that's one less thing.

Coming Up Next

I won't pretend to know. But today is the first warm, sunny day we've had in months. I think I'll go for a walk.

o7


Sunday, February 9, 2025

Welcome to Gagarin Station

The updated station interiors are all done and I've moved on to working through an intimidating pile of bugs. I'm quite fond of bugs IRL, so I've stopped thinking of it as bug squashing and more like I just have to shoo them out of the kitchen, help them find a nicer habitat. Give 'em a little sugar water, find a nice leaf to set them on. Anyway.

New Station Interiors Complete!

Brand new interiors are in place for depot, outpost and city class stations. The lighting issues introduced in the last update have been fixed, but I'm still not super happy with the lighting. Lighting is hard. But you know my motto, better than before is good enough for now.

Welcome to Gagarin Station!

Outpost hangar exit

Commercial Services

"You are here"

In addition to less janky lighting, the interiors are now more visually interesting and slightly more believable, with equipment for refueling and air handling, maintenance hatches, and, you know, pipes & shit. Purely cosmetic. I've also given each province their own interior color scheme, so while stations of the same class are still quite samey, at least there's some variation now between provinces.

The landing pads are now much smaller, upping the difficulty a bit by requiring more accurate landings. There's still quite a margin for error, but it's more like 1 meter rather than 10. This allowed me to place the hangar exit closer to the ship, and I put the terminals for refueling and managing contracts closer to the hangar itself, so the whole "get out of the ship / turn in contract / pick up contract / refuel / get back to the ship" routine is less tedious than it was.

I hadn't intended on working on the space stations at all for this update, and it's been a huge detour, but it's one that I'm glad I took. The old placeholder designs were getting pretty stale, and I think it would have been a mistake to let them stick around until the province updates, as was the original plan. I'll continue to work on these interiors in future updates, but I'm quite happy with where they're at for now.

Fixin' Bugz

I am now faced with a list of over 50 bugs, both major & minor. Play testing will reveal more. Fixing some will create others. We've got game breaking bugs, we've got bugs that can probably wait for a future update to be dealt with and bugs that definitely cannot wait, we've got bugs that bug me but might not bug you, the most tremendous bugs, bugs like you've never seen, big strong bugs with tears in their eyes. One bug, two bug, red bug, blue bug. Fucking bugs.

Coming Up Next

I have no idea how long all this bug fixing is going to take, it's just so hard to estimate. And I'm always wrong even when I think it's going to be easy to estimate, so let's just say that I'll probably be done someday. But after that, BOOYA BABY, we'll get this thing out in the wild.

I haven't decided yet, but I'm also kind of thinking about putting together a new tutorial series. I think I made the right call by making a video series instead of an in-game tutorial (for now), but MAN is that thing long & boring. I've already written the outline for a much more concise series. We'll see. Is it worth it? I don't know. Is anything worth it? Not healthy to think too hard about it. OK SEE YA!

Thursday, January 9, 2025

"v5 in '25" ... Sure, Still Has a Nice Ring to it ¯\_(ツ)_/¯

As expected, I've missed the mark for a 2024 release of BRS v5, but you know, ob-la-de ob-la-da. I've been spending a lot of time getting better at making my shit look less shit, and I feel like it's been well worth the extra time.

Updated Planets & Moons

Aphro, N'gila (FKA Gila/Gimghoul/Yupityr), and the terraformed moon of Zaoth all have a whole new vibe which can fairly be described as 'Not a public domain NASA image plopped on a sphere primitive'. Aphro now uses the same planet generation technique as Tyra and FuShen but with a significantly less habitable appearance, and Zaoth has become sort of a quaint mini-Tyra. The gas giant now named N'gila for reasons beyond logic has a new texture c/o the wonderful, free, and pragmatically named Textures For Planets.

I spent too much time trying to get a flow map shader working for N'gila but could not for the life of me figure it out. In a last ditch attempt to help, my bud ChatGPT gave me this diagram, which made it really easy for me to say "yeah yeah, fuck this":

<3 U, never change

As I mentioned last month, I've also been modeling a handful of bodies by hand. I don't want to spoil the thrill of exploration, but here are some before & after shots of Lua to give you an idea of the direction I'm heading in:

Lua (far), before & after

Lua (near), before & after

This is my first (arguably) successful attempt at shader work, and while there's obviously a lot of room for improvement, I think the result is a significant upgrade over 'billiard ball slapped with a NASA photo'. Better than before & good enough for now, that's kinda my whole thing.

The ice moon Memphis (FKA Graceland) and cutie patootie Mirchick got similar (but weirder!) treatments.

Dwarf Vibes

I've added a new dwarf planet called Svartalheim, nestled between the orbits of FuShen & N'gila. It was originally sort of based on Ceres, but I got a bit carried away and it turned into something much funkier. I have some thoughts on implementing an actual asteroid belt someday, but for now the inner belt is defined by this single dwarf planet, as the outer belt is defined by Mictlan. Things could change, of course, but this is the last planet that I'm planning on adding to the game.

Lore-wise, the belts are dominated by the Kingdom of Midgard, and Svartalheim is the only known natural source of Ichor, which is refined at Mekka into the Black TEA that fuels the warp drive.

New Station Interiors: Depot Complete!

I'm currently working on an overhaul of the space station interiors, which is going pretty well. The depot interiors are all done, since it's basically just a ship hangar, but it looks a lot better than before.

Everything You Need

New Welcome Sign

I'm now working on the outpost interiors. Most of the station will remain unimplemented at this time (elevator out of order), but here's a little sneak peek at the floorplan of the one deck that you can expect to explore in v5:

Coffee Stains Not To Scale

Coming Up Next

I've still got a lot left to do with the station interiors, but once I've wrapped that up I'll be on to bug fixing as I finally round the corner into the home stretch for v5.

That racecar metaphor reminds me of an Old Earth folk song, so as I approach a full year of working on this version update, feeling an increasingly tired mix of shame and pride, sometimes wondering why I'm doing this, but always determined to go the distance, I'll leave you with this couplet:

    No trophy, no flowers, no flashbulbs, no wine
    He's haunted by something he cannot define

Until next time! o7

Monday, December 9, 2024

Big City Trucking

As ever, progress this month was slower than expected (I choose to blame cheery optimism rather than a crippling lack of self-awareness), but I am stoked with how the city stations turned out. I'm giving up on my arbitrary "v5 before '25" deadline, but I shouldn't be TOO far off.

City Stations Complete!

The new city stations are considerably larger than the old ones, measuring 10 km across and presenting a whole new docking vibe. My goal was to make city arrivals feel a bit like pulling off a highway exit after a long roadtrip. NPC ship traffic will eventually drive this point home (scheduled for the eventual 'province updates'), but I'm really happy with how it feels for now.

New City Model
Approaching the Canada City arrivals gate

Navigating Canada City

I really underestimated how much modeling work there was to do here, and I'll admit that I phoned some of it in. The city interior is kind of a mess and I'm still working through some lighting & optimization issues, but I'm calling it good enough for now; it's a huge improvement over the old city stations and I think it was time well spent.

A Nicer Looking Solis System

I'm now getting to work on finishing the planetary makeovers that I started on in the last update. The major problem was that the planet generator that I implemented (c/o Sebastian Lague) doesn't support craters. Sebastian did end up revising his generator to do just that, but rather than trying to integrate that into my existing code I just said 'fuck it' and decided to model the cratered bodies by hand in Blender.

It's going well so far! I think? I only have 4 cratered bodies to make, including the Ceres-inspired dwarf planet that I'll be adding this month, tentatively named Svartalheim. Get it, DWARF planet? Anyway, Mirchick is almost done, check it out:

Mirchick model WIP

Mirchick Shader WIP

Coming Up Next

I feel like I've written the same damn thing under this heading for the past half a year, but at least the station exteriors are finally done. Anyway, the roadmap hasn't changed: finish these planets & moons, redo the station interiors, fix a bunch of bugs, release this bad boy.

Like I said, I'm not going to stress about finishing v5 this year. I can feel myself easing into a burnout phase but I've got a bunch of time off from work in December & January. The trick will be finding the right balance between getting shit done & chilling the fuck out. I'll do my best! See you on the other side.

Saturday, November 9, 2024

The Great Space Station Redesign Continues

The new station exteriors are coming along nicely, and I'm having a surprisingly good time working on them. Graphics have always been a headache for me, as you probably know because I bitch about it all the time, but it's pretty exciting seeing things come together as I slowly dial in a visual style for Black Road Sky.

Improving Upon The Cube

The small space stations, which I am now calling 'depot class', are complete. These are replacing the cube stations such as Laika Orbital. Nothing against the cube (I still like it, and some version of it will probably return eventually), but I think this brings more visual interest and feels a bit more believable as a space station. I gave it a modular design, so I can add more shit later: cargo drop off, external refueling dock, who knows. I had a lot of fun making it, and maybe I'm deceiving myself here, but I like to think that it shows.

Laika Orbital

Outpost Class Stations

The medium sized stations (e.g. Gagarin), now called 'outpost class', are also complete! While the new depots are significantly smaller than the old cubes, these outposts are pretty comparable in size to the old designs. But I think they look a hell of a lot cooler.

Gagarin Station

Looking sick as hell from the dark side

The hangar is smaller than before, and the terminals for refueling and managing contracts will be closer to the hangar exit, reducing the tedious running back & forth. Eventually there will be more to do in the stations, but for now access will be limited to this dock & commercial services area. Here's a little map of how I imagine these stations to eventually flesh out:

Outpost Map

Coming Up Next

I was really hoping to have the city stations done by now, but I've just barely started on them. These are going to be massive, and provide a different docking challenge than the other stations. Now that I'm in the groove, I'm confident that they should be ready in about a week.

After that, it's finally back to working on the visuals for the planets & moons. Some of them are starting to look pretty stale in comparison to the new space stations, and I'm looking forward to giving them a bit of a make over. The next step after that will be the new station interiors (which will be fairly limited for now), then it's on to bug fixing and polishing for a version release!