Over the last couple weeks I’ve talked a handful of people who’ve asked me questions akin to “Is S&Box even worth it?” “Why would you develop a game inside of S&Box” “Why not just use something like Unity or Unreal?”
I think these are great questions and I wanted to write down my thoughts on them in one place.
Is S&Box even worth it?
This is a mixed question around the value of S&Box.
S&Box right now is $20 to purchase, and then you get access to all the games inside of it. Beyond the monetary investment there’s also the time you need to invest to find and try games that you like, or to download the game files once you decide to try one.
Some S&Box games can be pretty large, for instance Shoothouse a game I made is 1.3GB of files. This is after I optimized it down from the original 3.5GB of files it was before.
On a 100Mbps connection it’ll take 2 minutes to download on Shoothouse. A Google search tells me the US average is 200-300Mbps so I think waiting ~1 minute to download Shoothouse isn’t too bad.
Okay so it’s really just a money investment.
$20 isn’t that much for a game. Call of Duty costs between $70-$100. There are a ton of AAA games that come out at the $60+ price range. Indie games seem to target $20.
What baffles me is game prices have stayed relatively the same over the years. Sure the AAA titles creep up by $10 every 5 or so years, but the price of bread in my town has gone up a lot more in the past 10 years than a price of a game.
But I digress.
I think a lot of people who are going to immediately go to S&Box are going to be Garry’s Mod players, or former GMod players. They probably also purchased that game for $20 back in 2010-something. How many hours of fun did they have with Garry’s Mod over the years? 10, 100, 1000? Break down the fun per hour and it’s an incredible deal.
S&Box is a platform with a ton of games. It just launched so there’s only a handful of gems right now. But in one, two, five years from now there’s going to be even more. The idea of S&Box not being worth it is absurd because there is potentially limitless fun to be had inside of it for a low price of $20. The bang for you buck is going to eclipse anything else.
Maybe you won’t find games you like in it now, but you will eventually.
So if you have a low risk tolerance and a low budget, no maybe it’s not worth it to you right now and that’s fair. But from a bigger picture view, a longer term view, it is very worth it.
Why would you develop games in S&Box
As a developer, I like it when people play my games. They tell me how fun it was, they tell me how it could be better.
As someone who wants people to play my games, I need them to find my game first. There are a number of ways I could do this, I could post about it online, I could ask my friends to tell their friends, I could shill my game over and over.
It’s the classic advertising problem. If people don’t know my game exists then they won’t know to play it. So where can I go where advertising is easy?
What about a new platform? Like S&Box. There’s fewer games on it than something like Steam or Itchio so I have less competition to get on the front page, or the popular page, and so more people will see my game.
This benefit doesn’t last forever, but there’s also other reasons.
Say someone sees my game but they don’t know if they want to play it or not. Playing it might mean buying it first (if it were on Steam) so they might be dissuaded by the price tag. And even if they buy it, they have to sit on their desktop, looking at Steam, waiting for the game to download.
Maybe they get bored and the just launch another game because the download is taking too long?
When a player is inside of S&Box and they choose to play a game, they’re quickly taken to a loading screen where they download all the game assets and then are immediately taken into the game.
There’s no waiting on your desktop, waiting for some 3rd party installers to run, waiting for the game to launch and maybe crash for some weird graphics card driver issue. You’re just in the game already.
The friction to play is low. A single button click, perhaps two, is all it takes to start playing a game in S&Box. Finding and playing a game on Steam takes like a dozen button clicks.
My first priority is to get people to play my game. I think reduced friction is important to this.
It’s also free to players to play, so you take away the price friction. You can hop on in and play the game. The worst thing that happens for a player is that they lose some storage space on their computer and the time it took to download the files.
Why not use Unity/Unreal/Godot/etc.
I’ve used Unity in the past, and I was decently competent with Unreal 3. I haven’t played around with Godot very much but it does seem to be getting very powerful.
I’m going to start with some specific reasons why I said no to each game engine and then i’ll go into the overall reasons.
Unity
I think Unity has become garbage over the years. I remember prototyping some cool stuff with it back in 2013-17 and it was by far my favorite game engine. C#, components, auto reload. It was cool, smooth, and easy. And then, I don’t know what happened.
I stopped working on games for a few years and then I come back and Unity is garbage. There’s 3 different ways to do everything, there’s no clear reason why you should do one or another. Everything is more clunky and takes longer (compiling) and where I would’ve expected years of forward progress it just seems like they stagnated after 2017 and haven’t developed a single meaningful thing since then.
Maybe that’s what happens when companies go public?
Oh and also the engine isn’t open source, so if there’s a bug you can go pound sand.
I don’t care about that licensing ordeal that happened a few years ago. It was stupid of them but stupid companies make stupid decisions sometimes. But it is clear to me, they just care about making money, not a good product.
Unreal
Unreal 3 was awesome. I only messed around with 4 and 5 a bit. The editor interface is slow as a snail and also pretty clunky. I think their blueprint system is stupid because visual scripting is always slower and less efficient.
Unreal people have some weird fetish with C++. They think everything needs to be compiled and they hate scripting languages except for the visual ones (blueprint.) I spent years of my life learning C++ and i’m well aware of how good it is but like come on, let me write my gameplay logic in a higher level language. It’s just asinine that Unreal doesn’t support something like C# or a half decent scripting language.
Unity always beat Unreal out when it came to quick iteration. C# or scripting will always beat C++ on iteration time. I think when you’re building a game you need to be able to iterate quickly. I want to write some code and test it as fast as possible. I want to change my code while the game is running and immediately see the changes without having to relaunch the game. These things should take seconds like less than 5 or 10 of them.
Unreal is also just super performance demanding. Yeah it looks pretty but unless you have a team that can spend a year optimizing the game then only 10% of people can play your game. There’s so many videos online of people complaining about Unreal’s performance out of the box, or how their rendering pipeline has become garbage.
They were the king at one point, not so much now.
Maybe that’s what happens when you make the most successful game / IP in history and you stop caring about making your original product (a game engine.)
Godot
If S&Box doesn’t work out I guess i’ll give this a look more closely.
Overall
If you haven’t figured it out, for game development; I love scripting languages, or more precisely higher level languages. I think you should use the tool that best fits the job. Yes games need to be performant, but we have powerful computers nowadays and not every game needs to be that performant.
If i’m building the latest Call of Duty or AAA, ultra fidelity graphics game, yeah maybe my player controller could be built in C++ because saving 0.5ms in my update loop matters.
But i’m not building that.
I spent years working in C++, then years in C#, then years in TypeScript. My favorite language is perhaps TypeScript or C#, sue me.
Faster iteration = better. This is what it comes down to. Imagine if when you painted you had to wait 10 seconds to see how your stroke looks on the canvas? Awful.
Another point about S&Box is contraints.
In all of these game engines the sky is the limit. So many things, and in the case of Unreal, everything is open for you to change. S&Box though has a lot of constraints. There is one way to do a graphics pipeline. There is one way to do networking. There is one way to do XXX.
I like constraints. They remove questions and ambiguity. I think the best art is made with constraints.
I also think there is great things to learn about why the constraints exist. And after butting up against them and finding no way around them to do what you want to do you’re left with two choices. Do something else, or break those constraints.
In S&Box you can in theory break those constraints. You’re allowed to fork the engine and just make a standalone game. But for 90% of the constraints that are in S&Box now, I think they’re there for good reason. That’s not so say there are some stupid ones right now, but some of those ones are unintentional or Facepunch knows about and is planning on changing.
Mod to Game Pipeline
I didn’t fully mention the angle of S&Box game to standalone game very much, but I think this is a very strong plus for S&box over any other game engine or platform. I believe that there are a lot of really amazing mods out there that never make it into being a full game because it’s too much work to port it to a real game engine.
S&Box removes so much of this friction. You don’t have to rebuild the entire game, just detach the existing game from the things that S&Box provides. As a developer this excites me. It means that if I have a great idea I can graduate from free to play in a smaller platform to pay to play on Steam.
I’ve always wanted to make games for a living, and I think the S&Box gives me the best chance of making this dream a reality.
Closing remarks
In summary, I think S&Box is great.
It lowers the barrier between players and games, gives developers a fast and practical way to build and grow those games, and it’s just going to keep getting better.
Nothing starts perfect, we are in the early days still and there’s only going to be more growth from here. Anyone who says S&Box is a dead game, or harps on “how hard it is to recover from a bad launch” doesn’t know what they’re talking about. They’re saying these things to sound sensational and get attention. It’s like Fox News. They aren’t looking at the big picture, they aren’t seeing the value proposition of S&Box.
Even if the platform side of S&Box disappeared, I would still probably use S&Box for game development. I like those constraints it gives, I like C#, and I also just kind of like the Source engine.
Anyways, thanks for reading. I hope you learned something and if you have questions or think I missed something then please let me know.
Leave a Reply