First of all, I want to start off by saying that I really was not sure what the correct section for this forum post is, so if you think this post would do better in another category, just let me know I’ll be happy to move it.
I was talking with some of my game’s audience today about my game, Midnight Racing Tokyo. Basing my assumptions on the results of the Steam Hardware Survey, I was under the impression that many if not most of my pc platform gamers would be using GTX 1060’s, as that graphics card appears to take up roughly 10% of the market for graphics cards on steam. However, after doing a survey on my own in my community discord, I learned that this was not the case and much of the game’s audience was using a significantly weaker graphics card, and dealing with low framerates because we decided to detail the game a little bit more.
This got me thinking about an official Roblox Hardware Survey that would be posted on the forums every year or so. It would be fully opt-in, same as steam, and post results in an analyzed and aggregated mannor, same as steam. Basically, I realize that Steam and Roblox cater to very different player groups, and I think it would be a fantastic and useful touch for Roblox developers to know exactly what sort of devices their potential audience tends to use as a next step towards engineering their games for maximum gameplay enjoyability.
Some things in the Steam survey are irrelevant to Roblox, such as the free disk storage space analysis, but having some insight into exactly what pc’s and what mobile devices are dominating the Roblox market right now would be incredibly useful information for games that continue to push the boundaries of the Roblox engine.
I’m gonna add on and say that while I’d love to see this happen, I don’t actually believe this would have as much of an impact on Roblox games. The Steam hardware survey makes sense, because that’s for game creators who have a much wider range of things they can do when developing games (eg you could be making games for high end gaming rigs, or you could make stuff that supports the widest range of computers possible, or even just know what a good minimum requirements baseline should be based on average performance across everyone)
On Roblox, there isn’t too much room to work with performance wise. Maybe if you were seeing if it’s worth catering to mobile or console users, however that information can already be gathered on the game stats pages.
It’s only very very niche cases where having this information would be useful, the main one being is if you have a very unoptimised game (eg MR:T as you mentioned) and want to see if a lot of your players are able to properly run it or not. Nobody should ever be reaching that point, but if they do, it’s really more worth considering reworking a majority of the game to make it run better overall.
It’s more of like a demographics thing. Kids who get second hand pc’s from family members are going to have significantly less capable specs when compared to someone who is playing games on Steam. As someone who is myself constantly pushing the boundaries of the platform, it would be really useful to know what sort of things are mostly being throttled on games (i,e. what is the typical ram specs and network speeds, would it be better to cache things or better to just send them over the network to accommodate low ram space).
I disagree with you here because really, Roblox has a lot of different options for performance. It might not be optimizing low-level algorithms but when designing a new map and deciding to turn StreamingEnabled on / off or creating lua scripts that run every heartbeat instead of every 1/30th of a second, hardware specs can play an important decision in the choices made as a developer.
In an ideal world (and one Roblox is increasingly moving towards), you shouldn’t need to care about target device at all, and Roblox should automatically scale down the game to run properly on each target device (by e.g. LOD meshes, texture down-scaling, streaming, etc). So the idea of building a game with a specific set of target devices in mind doesn’t really make sense to me.
You can find general statistics about player demographics (e.g. what platform they play on) from Roblox’s SEC reports and from the developer stats.
Also this shouldn’t be in Forum Features, move it to a #feature-requests category. Forum users are power users with high technical/internet literacy so they naturally have a more supreme hardware setup. Players are probably playing mostly on mobile devices and second-hand/shared/older computers/laptops.
It’s a bit ridiculous to suggest this is possible. No matter how much roblox optimizes the engine side of things, without optimization being done by the developer and choosing a certain minimum spec to play their game, big games will never run properly. I get that you’re trying to tie in the Roblox perspective of “Write once, play anywhere” but the truth is, no matter how much you’d like your atari to run Cyberpunk 2077, it’s just not gonna happen. Clearly, Steam and other game developers outside of Roblox saw this as a necessary step in gaining an understanding of their audience’s limitations. Hardware is a legitimate limitation in game development and it would be delusional to go and try to make a game with a massive, detailed 1:1 planet earth in Roblox. There are limitations that exist because of technological limitations and knowing those limitations can be critical for developers who need to do their side of the optimization properly. For simulators and money grab games, there wouldn’t be a whole lot of demand for this because they were never intended to be demanding or immersive in the first place, but now with Roblox releasing skinned meshes, FIB lighting, and other new tools and features that are only increasingly demanding higher-spec hardware, developer choices are more crucial than ever to give the players an experience that is worthwhile. There is no sense in allowing developers to put in long hours of work when nobody will have the means to play their game properly, so therefore I think exposing this sort of information to developers would be extremely beneficial in evaluating the trade-offs in their decision to optimize one part of the game vs another and to further cater the game to the devices they think it makes sense to support.
I’m pretty sure that most game developers operate within a defined range of specs so that the game can maintain the quality and design it was intended to be. There’s a specific reason why Steam and others have minimum and maximum requirements to play or launch a game. From a much more graphical standpoint, GPUs and the rendering / processing capability plays a massive factor as to how games perform and look. This is a fundamental concept in the gaming industry & one that shouldn’t be automatically assumed. Most companies do a variety of tests on hardware and the weakest in those tests that represent something playable at its most basic state is treated as the minimum requirement.
It sounds good in theory but, in actual practice it doesn’t really hold up. In addition, it limits the engine quite a bit considering that Roblox wants to maintain the same graphics across all hardware a user may use. Certain graphical things aren’t as heavy on a desktop with decent specs but, might be on a phone. Limitations by power and thermals are typically an issue as to why mobile can’t have the same rendering power as a desktop computer.
From a more literal standpoint, it’s mainly the bare minimum that developer’s consider “representative of their work”. You could technically get away with lower but, it wouldn’t be what the developer intended you to play considering that it runs and you don’t run into poor visuals. Most modern launchers will only run based on specific hardware requirements. For example, Origin.
On Roblox, developers (currently) typically focus on playability and accessibility, assuming they are commercially focused. Over time as the engine gets better at the property I describe above, it’ll be easier for people to build large/detailed worlds while not losing the mobile audience in the process or needing to do a lot of work building compatibility features.
Roblox vision is always that developers should focus on making experiences and the engine/platform should take away the heavy lifting needed to release your game or making sure your game is accessible to all devices.