Status
SteamPeaks
ChartsSalesUpcomingPatchesNewsCalculator
New on SteamEvery app, DLC and depot the minute Steam creates itAppsEvery app on Steam, newest change firstPackagesSubs and bundles, and what each containsDepotsDepots, manifests and install sizesTagsSteam's user tags and the games under themDevelopers & publishersCompanies and their cataloguesTechnologiesEngines, SDKs and anti-cheat found in the filesChange historyEvery PICS changelist as it lands
SignalsNineteen readings of the whole catalogueCompareAny games side by sideRecordsAll-time peaks and the days they were setReportsWeekly and monthly write-upsAlerts & newsroomWatch a game, get told when it movesSteam statusIs Steam up, right nowWeb API explorerTry the endpoints in the browser
NewsSteam's own announcements and the sales calendarCalculatorWhat a Steam account is worth, and its pile of shame
/
Sign in
/
SteamPeaks
The ultimate resource for Steam data.
ExploreChartsSalesSales and festsUpcomingPatchesNewsRecordsTrendingSignals
DatabaseAppsPackagesDepotsTagsDevelopersTechnologiesChange history
ToolsCalculatorCompareSearchAlertsSteam statusAPI
SiteMethodologyFAQDiscordSupportSign in via Steam
Not affiliated with Valve or Steam. Game names and artwork belong to their owners. All times UTC.
PrivacyCookiesFair useStatus
Rock HoppersNewsApril 2023 Development Update
Community

April 2023 Development Update

Rock Hoppers · published 2 May 2023, 02:50 UTC

All newsPlayers around this dateRead on Steam

Welcome, Rock Hoppers, to the 1st of May edition of our devlog. I've been working on adding some core and core-adjacent functionality and I've started a concerted effort to optimize the multiplayer experience.

Steam Workshop Integration


We were always planning on implementing the Steam Workshop, but to be honest, I didn't expect it to happen before early access. I decided it would be a good use of my time after realizing I had dozens of prefabs and maps with dubious names scattered all over several development machines. So now, players can upload their prefabs, including complexes with multiple elements, and entire maps to the workshop right from the menu.


When you want to release a complex, which can consist of any number of prefabs, all you have to do is publish the root prefab. The game will find all connected prefabs (corridors, rooms, and adjacent structures, for example) into a single bundle and publish it as one workshop item. Once subscribed, any world you generate will include all of your subscribed prefabs. It's like magic, if magic consisted of several thousand lines of indecipherable code.

Worlds are similar. You can publish your generated worlds just as easily as a prefab, but there's an added benefit: You can launch a dedicated server with nothing more than the Steam ID of a published world, and the server will download the world on first launch. More importantly, any player connecting to your server who doesn't already have the world it's running will automatically and transparently download it from Steam, saving bandwidth on the server, and -hopefully- a lot of frustration.

World Map & Rock LODs


This one's straight up smexy. you can pan and rotate, highlight your desired waypoint and active mission, and add new waypoints, all from the map menu. And see those adorable little asteroids? They're lowres versions of the actual asteroids which, it turns out, can be used as a reduced level of detail model when you view an asteroid from a distance. They may look low-poly, but the triangle count on these big asteroid models is pretty high, so having a lowres alternative allows me to show all asteroids all the time, instead of popping in the full detail asteroid when you get (too) close. I feel like this makes a big difference in conveying a sense of scale. And, of course, being able to see your destination makes navigating a lot easier.

Visual Improvements


I've upped the default graphics fidelity with sharper shadows and more shadow casting lights. This will be configurable eventually, but the performance hit between reasonably well defined shadows and what amounts to shady blobs turned out to be far smaller than I expected.

Multiplayer Improvements


The least exciting thing I did this month is probably the most important. I finally installed some tools to let me analyze the network traffic generated in multiplayer and, well, hoo boy.

It turns out I was, among other things, sending about 300 bytes of information every second for every humanoid mob in the game, even while they're standing still doing nothing. How did I manage that? Well, let me tell you about a little thing called a dirty bit. You see, when you change a variable on the server that the clients also need, the networking middleware (Mirror for Unity, for those interested), sets a bit that tells the server the variable has changed and it needs to inform the clients. Only if the new value is different, of course. Otherwise the server would waste massive amounts of bandwidth telling the clients something it already knew.

But what happens when you clear a variable and set it, say thirty times a second? Well, because you cleared it, the dirty bit gets set, and setting it back to it's original value doesn't clear the dirty bit, so every NPC in the game was telling every connected client, 30 times a second, that yes it was still wearing its boots, thanks for asking.

There was a lot more hidden shame out there. Sending generator power levels to every player no matter how little they changed from one tick to the next and no matter how far away the player is. Sending every player's hunger and power levels to every other player 30 times a second. Players can't even see each other's hunger level!

Suffice it to say that, after about a week of tweaking, bandwidth usage is down by something like 90%. It doesn't show on screenshots, and it's not glamorous, but boy does it make a difference!

Okay, that was April. As of right now I'm still working on smoothing out the multiplayer experience. The provisional plan for May is to start working on procedural quest chains and maybe even branching quests with a bit of story behind them as part of the larger effort to make the human NPCs feel more, well, human.

If you want to learn more about Rock Hoppers, join us on discord and follow us on twitter .

More from Rock Hoppers

Other announcements

All news
Community15 Aug 2026Let's Dev Some More!Oye, Hoppers! It's time for another "Let's Dev" video. Today we talk about new NPC interact options, including hiring NPCs to do your bidding. I also managed some significant load time improvements. watch the video to find out all you need to know.Community2 Aug 2026New Dev Video!We just published our first 'Let's Dev' video, in which I explain what I've been up to these last five years and show off what the game looks like today. Join us, won't you?Community11 Nov 2025Fresh Dev Stream Highlights!Every other week or so we do a live stream on our multiplayer server to show off how things are coming along. This week we invite some new players on and things get a little hectic. Check out the highlights!