Last updated on

Braxnet Online 2


From the ashes of the first Braxnet Online, a new one rises. Using s&box on Source 2 instead of Garry’s Mod on Source 1, this new iteration will be a lot more stable, fast, easier to develop for, and support a lot more features. It’s also a fun way to learn C# and the Source 2 SDK.

Newcity
Cozy apartments in Newcity, the main map for Braxnet Online 2

Work began in July 2021, with very little knowledge about C#. I mostly did mapping, racking up about 500 hours in Hammer 5.

I got apartments semi-working around September, along other various features like furniture and a rudimentary inventory system. It was very rough, having to use a lot of workarounds to get things working and copy-pasting a lot of code from the s&box wiki and C# tutorials. Even though I had a lot of experience with other languages and Visual C#, the very strict nature of C# was a bit of a challenge to get used to.

Garage
A garage underneath the car dealer, with place for suspicious activities

After drama in the s&box Discord, I took a break from October 2021 to January 2023. I came back with a fresh mind and a lot more knowledge about C#, having used TypeScript a lot in the meantime, which has similarities to C#. s&box now using newer versions of C# also helped, as it allowed me to use newer features like JSON polymorphism for the inventory and prop persistence system.

Gnome
The apartment system, where furniture and other props will stay when you leave

Development picked up, and I started to implement a lot of new features. Everything from unique mailboxes to cash registers to a completely refactored inventory system.

Towards September-October 2023 I had the business system up and running for the most part, with the addition of customer NPCs and a cash register with barcode scanner.

Adding buyable items to the business and welcoming an NPC

Then the news came from Garry that s&box would be getting a new scene system, and that all old code would be incompatible. Since then, I’ve been slowing down development, waiting for the new scene system to be released. I hope it’s not that bad to port everything over. Having followed the development for a while, it looks really interesting. I’ve never used a visual editor like Unity/Godot before, so it’ll be a new experience for me. Using scenes instead of hardcoding vendors and other entities might make it easier to make seasonal updates perhaps?

A physics simulation of boxes, from the s&box devblog

Braxen