Update 26.05.06
A new update has been released, you can view the full changes on our blog post.https://sbox.game/news/update-26-05-06ReviewsThe review system has been updated with tags. This will allow users to select specific elements of a game that they like, or don't like.These tags are aggregated so you can see exactly what everyone thinks at a glance.The intention is to use these reviews to punish and reward games in terms of discovery. We'll also be able to create new discovery categories, like most original, most polish and biggest ai slop.ReportsYou can now file reports in game. The reports system has a similar tag system, which allows us to categorize and group the reports on the backend. This should help us tweak discovery too.Performance MetricsWe've updated the performance metrics page to be even more transparent, not only showing medians but also first (P25) and third quartiles (P75) showing the worst and better experiences.There's now a breakdown of the best and worst performing popular games on the platform.As well as a breakdown of the best and worst performing popular hardware - as you can see we have a lot of work to do with the Steam Deck still.Ditching CloudflareWe've moved away from Cloudflare for both our API and CDN, replacing them with Azure Front Door and https://Bunny.net. There's advantages and disadvantages of course, but they've left a bad taste with obscure pricing that we'd rather not support over all.This isn't really a drastic change for us, our tech stack is flexible enough that we can try out different places easily.Most people shouldn't even notice a difference, downloads should be just as fast.For Russians it should be great since Cloudflare is mostly blocked there, so now you should be able to play the game without a VPN.Faster Load TimesWe've optimized the loading process, especially when joining servers and lobbies. Joining should be up to two times faster now.Turns out, that for years, we were loading and compiling packages twice on connect, that's fixed now.Main Menu StutteringWhen we released we got a shit load of lobbies - querying 1000 of them on the main menu was causing big stutters for some people.Whilst querying lobbies is async it wasn't always being done on the thread pool, and if it ran on the main thread it would stall the game for 2.5 seconds each time it queried lobbies every 10 seconds.We've fixed this by both: optimizing the actual query removing heap allocations and locks, and enforcing the work to be done on the thread pool.Steam Trading CardsSteam trading cards are now avaliable along with emoticons, badges and profile backgrounds.These won't drop if you got the game for free unless you've purchased cosmetics, that's just how Steam works.You can also get these items in the Steam Points Shop.Polish PricingThe price in Poland was bullshit, it was set from Steam's pricing tool but didn't properly reflect the current economy. So last week we changed it from 91,99zl to 69,99zl.If you got it whilst it was more expensive feel free to refund and rebuy.SummaryOur first weekly patch after release! ????While there has been a lot of negativity, both deserved and undeserved, it has been really great to see people enjoying everyone's game. I love seeing developers see their games get played. It's exactly what we have been missing during the developer preview, where people only really played their own games. Now we're seeing real world usage and we're reacting directly to it.We always release as early as possible and iterate. We did it with Garry's Mod, we did it with Rust, and we're going to do it with s&box. We know what our challenges are right now. We know what sucks, and we're iterating to fix it all. Cya next week for another one ????garry???? AddedProject templates including Player Controller, Sandbox Map, and Sandbox Game AddonMapping components: door & button with Doo supportContent reporting systemReviews now let you select various positive and negative tagsProp explosion damage now includes an "explosion" tag so games can react to it`Connection.OwnerSteamId` shows the owner of a family sharing account`Sound.Play(SoundEvent, Mixer)` overload for playing sounds with a specific mixerSeparate mesh components added to object selection mode (Alt+N)Drag models, maps, sounds directly into the Hierarchy panel instead of just Scene ViewTools context menu showing per-tool keyboard shortcuts`version` console command to display engine version infoAllow multiple `\[Doo.ArgumentHint]` attributes on a single propertyPhysics simulation on proxy rigidbodies when transform sync is disabled???? ImprovedLoading screens now show meaningful progress with the main thread unblocked during loadScene objects now render off the main thread by default, improving rendering parallelismPreJIT moved off main thread, eliminating 4+ second stalls when joining serversClients no longer download redundant code archives when joining servers, cutting load time by ~33%Lobby queries are significantly faster w
A new update has been released, you can view the full changes on our blog post.
https://sbox.game/news/update-26-05-06
The review system has been updated with tags. This will allow users to select specific elements of a game that they like, or don't like.

These tags are aggregated so you can see exactly what everyone thinks at a glance.

The intention is to use these reviews to punish and reward games in terms of discovery. We'll also be able to create new discovery categories, like most original, most polish and biggest ai slop.
You can now file reports in game. The reports system has a similar tag system, which allows us to categorize and group the reports on the backend. This should help us tweak discovery too.

We've updated the performance metrics page to be even more transparent, not only showing medians but also first (P25) and third quartiles (P75) showing the worst and better experiences.

There's now a breakdown of the best and worst performing popular games on the platform.

As well as a breakdown of the best and worst performing popular hardware - as you can see we have a lot of work to do with the Steam Deck still.

We've moved away from Cloudflare for both our API and CDN, replacing them with Azure Front Door and https://Bunny.net. There's advantages and disadvantages of course, but they've left a bad taste with obscure pricing that we'd rather not support over all.
This isn't really a drastic change for us, our tech stack is flexible enough that we can try out different places easily.
Most people shouldn't even notice a difference, downloads should be just as fast.
For Russians it should be great since Cloudflare is mostly blocked there, so now you should be able to play the game without a VPN.
We've optimized the loading process, especially when joining servers and lobbies. Joining should be up to two times faster now.

Turns out, that for years, we were loading and compiling packages twice on connect, that's fixed now.
When we released we got a shit load of lobbies - querying 1000 of them on the main menu was causing big stutters for some people.

Whilst querying lobbies is async it wasn't always being done on the thread pool, and if it ran on the main thread it would stall the game for 2.5 seconds each time it queried lobbies every 10 seconds.
We've fixed this by both: optimizing the actual query removing heap allocations and locks, and enforcing the work to be done on the thread pool.
Steam trading cards are now avaliable along with emoticons, badges and profile backgrounds.
These won't drop if you got the game for free unless you've purchased cosmetics, that's just how Steam works.

You can also get these items in the Steam Points Shop.

The price in Poland was bullshit, it was set from Steam's pricing tool but didn't properly reflect the current economy. So last week we changed it from 91,99zl to 69,99zl.
If you got it whilst it was more expensive feel free to refund and rebuy.
Our first weekly patch after release! ????
While there has been a lot of negativity, both deserved and undeserved, it has been really great to see people enjoying everyone's game. I love seeing developers see their games get played. It's exactly what we have been missing during the developer preview, where people only really played their own games. Now we're seeing real world usage and we're reacting directly to it.
We always release as early as possible and iterate. We did it with Garry's Mod, we did it with Rust, and we're going to do it with s&box. We know what our challenges are right now. We know what sucks, and we're iterating to fix it all.
Cya next week for another one ????
garry
???? Added
Project templates including Player Controller, Sandbox Map, and Sandbox Game Addon
Mapping components: door & button with Doo support
Content reporting system
Reviews now let you select various positive and negative tags
Prop explosion damage now includes an "explosion" tag so games can react to it
`Connection.OwnerSteamId` shows the owner of a family sharing account
`Sound.Play(SoundEvent, Mixer)` overload for playing sounds with a specific mixer
Separate mesh components added to object selection mode (Alt+N)
Drag models, maps, sounds directly into the Hierarchy panel instead of just Scene View
Tools context menu showing per-tool keyboard shortcuts
`version` console command to display engine version info
Allow multiple `\[Doo.ArgumentHint]` attributes on a single property
Physics simulation on proxy rigidbodies when transform sync is disabled
???? Improved
Loading screens now show meaningful progress with the main thread unblocked during load
Scene objects now render off the main thread by default, improving rendering parallelism
PreJIT moved off main thread, eliminating 4+ second stalls when joining servers
Clients no longer download redundant code archives when joining servers, cutting load time by ~33%
Lobby queries are significantly faster with async processing and reduced allocations
UI panels with backdrop blurs can now be batched, reducing draw calls
Matchmaking silently retries the next best lobby on connection failure
Particle system performance improved with object pooling
PolygonMesh.Rebuild optimized — menu scene mesh build time reduced from 1s to 300ms
Eliminated per-field boxing allocations in network message serialization
Reduced sound cache memory usage from 512MB to 256MB
Sprite batch rendering uses zero-copy approach for better performance
Deep-copy of embedded resources only performed in editor, not at runtime
"Waited 500 ms for jobs to complete" no longer gets stuck on main thread jobs
???? Fixed
Collision contact point calculation using best separation from manifolds
Potential crash with material overrides when copy source handle is invalid
Managed callbacks firing before BuildDependencyData completes
Vulkan swapchain destruction handling
Material load reentrancy crash in terrain tool
Animated textures (GIFs, animated Steam avatars) not playing through the lazy load path
`GameObject.GetBounds` incorrectly including origin when components have bounds
Box/lasso selection picking hidden objects in the editor
Unfinished mapping primitives lingering when entering Play mode
Death ragdolls spawning in T-pose on explosion
Vertex paint tool undo/redo sync, selection tracking, and vertex count display
Duplicating GameObjects sharing ResourceGenerators between original and copy
Lobby privacy settings not being applied immediately on creation
Other players appearing with no clothing due to inventory verification on clients
Unowned avatar items not being removed when first loading
Esc Key now closes modals, dropdowns, and cancels text entry
Footer friends list debounce
Missing Steam auth ticket validation
3D text bounds not recalculating when text properties change - Thanks @Infiland
All-white material thumbnail lighting on blend and reflective materials - Thanks @frotstar
What's Your Reaction?