Looking Forward in 2020: This Year's Developer Roadmap

I almost forgot: Large Object Stores is also on my list. Would be quite useful for a feature I am working on in my game (as well as other games like tycoons and building games)

1 Like

are videoframes cancelled or for next year?

6 Likes

Vouch. What happened to it… One of the most limiting parts of the roblox engine. Please don’t tell me its canceled.

2 Likes

Basically the meshes can deform i.e bend, stretch etc

credits to @Tybearic

16 Likes

atmospheric fog already sounds beautiful.

2 Likes

I can’t wait for so many of these. These features won’t just morph how Roblox looks, it will massively improve performance too (which I desperately need since I’m a high-detail builder!). Hopefully this might allow those with bigger games to open their doors to the mobile world as well.

image

This will bring animations to a whole new level. When this was first released as a test version on github, I saw someone made a moving fire hydrant. It blew my mind at the time and gave me endless ideas.

image

Having custom materials will really open up so many doors for builders and designers. @Yourius has already made quite some impressive designs with this.

image

Fog desperately needed a rework and this, along with…

image

…is very welcome.

image

Lastly, this really excited me as proper lighting really can bring a scene, or even an entire world together.

9 Likes

Very excited for all of this.

I’m exceptionally excited to see support for 200 player servers. I don’t want to be a downer though, but will this come with better, (or at least more understandable in laymans terms) developer tools to solve lag problems?

Also exceptionally excited for facial animation, though I’m not sure if it will be as good as using a spritesheet yet.

Super excited anyway! Maybe 2020 isn’t cancelled I guess…? Yet?

2 Likes

I think the new features look really cool, like custom materials and I can’t wait for PBR v3.
Does Faster CSG mean that I’ll be able to do more complex unions which I couldn’t have done before because of my pc specs?
Facial animations sound cool as well

1 Like

I am so excited for the new audio searching feature! This will make it so much easier to find sound effects and such!

1 Like

Facial animations gonna be helpful when I work on my roblox animations.

1 Like

is it just me or does anyone else think of the dev roadmap as the highlight of the year?

for real though, this year’s looks really promising and i can’t wait for all these neat sounding features!

5 Likes

Wooow i was not expecting this at all, this roadmap came outta

I’m really excited for Custom Textures
And the Fog Update

And Meesh Deeeformation

5 Likes


I honestly have no idea what to say about this, but this is AMAZING, this year seems like a very promising year for roblox development!

6 Likes

4th Quarter seems to be very interesting, I’m curious to see how facial animation will work out with other faces.

3 Likes

I’m thinking:

  • Ephemeral DataStores have been replaced by MessagingService: a service which handles temporary data at universe level; great for matchmaking.
  • Phased Game Updates is version control; Save to Roblox vs. Publish to Roblox.
  • Universe Scripts & Game Services will be Cloud Scripts.
2 Likes

Ah brilliant. I always look forward to the roadmap, this year’s is looking brilliant! Excited to see these upcoming features roll out. :+1:

2 Likes

Ephemeral DataStores have been renamed to image

This roadmap is incredibly exciting! It’s probably equally ambitious in all honesty, given the unplanned crisis, so maybe plan an extra quarter here.

There is so much goodness in the roadmap. I like the overall balance of investments across so many important areas. It would be hard to pick something to defer on this list.

Given recent work I’ve been doing, I’m excited about the Custom Materials, Procedural Skies, Atmospheric Fog, and Enhanced Vegetation. These all will benefit from Dynamic Texture Resolution and Improved Terrain LOD too.

I’ve already benefited from the LUA Type Checking Beta – it’s saved me tons of time and improved coding efficiency. It’s hard to say what my favorite roadmap items are because they are all so important, depending on your perspective and needs. The recent LUA perf improvements are great, and I am really looking forward to Parallel LUA.

The Cloud Scripts are very exciting if we get it right. There are many lessons to learn from things like AWS Lambda. (Disclaimer: I was formerly a Sr. Dev Manager on the AWS Lambda team.) There are important considerations such as cold-start time, pre-warming, accounting/quotas, security model, multi-tenancy, sync and async, reserved capacity, and developer experience. Lambda did a great job on some of these, but definitely missed on some really important ones. I’d love to get an early architecture review and share feedback on that.

So I love the Roadmap. But I also recommend considering a few other areas for investment:

New Global Config System
I think we need to move towards a standardized config system for Roblox developers to use. This could easily be based on the current Configuration object with their typed values (NumberValue, StringValue, etc.), but with some expanded capabilities like the option for runtime Readonly, richer value constraints (ranges, enums), and expanded type coverage, perf optimizations, and client/server designations. For example, a config entry might be marked as server-only, client-only, server-to-client replicated, or client-to-server replicated (indexed by player).

Importantly, I think we should have a new top-level singleton service for this called Configuration with super-easy access to these config values. This API should also support hierarchies automatically, where named children of a script/module have correspondingly named child nodes in the config tree. Children could normally query their parent, and vice versa, but with visibility restrictions available such as (Private, Protected, or Public) along with permissions (Read, Write, ReadWrite).

New Component Model
(Credits to @RetroGalacticGamer for helping on this idea.)
Packages and Assets are a great start, but we need a new Roblox Component Framework which greatly enhances discovery, access, usage, and management for packages and assets. This framework should support a more advanced policy-based, hierarchical licensing/revenue sharing approach so that a component marketplace can truly take hold for Roblox.

This system needs package management (perhaps similar to Node’s NPM) to define and manage dependencies better. Also, we need lifecycle management for these Components with hooks for install/uninstall for each Game/Place at design-time with support for configuration and code-generation (think Yeoman) with optional Install/Config screens. These components should also support a common Initialize/Uninitialize hooks at runtime with access to configuration (see above), dependency-based load ordering, etc.

Roblox Components should have a common Manifest with their dependencies (other components, images, sounds, etc), and have a common Policy with required permissions, usage details, revenue sharing policies, etc. Components which meet some core requirements should be able to achieve certification to become Certified Roblox Components where they are highly trusted and potentially usable in all games.

Virtual Workspaces
It would be awesome to create Virtual Workspaces, each with their own voxel-space but which can be spatially embedded or co-located to allow separate Workspace objects. This would ideally allow for different Physics settings, Lighting, etc. in each Workspace. For example, imagine a large Workspace in a city with an “embedded Workspace” inside it. The embedded workspace might have very low gravity, it might have tons of unanchored parts, or it might have very distinct lighting effects.

Such Virtual Workspaces could effectively sandbox parts, forces, Rays, etc., but there would be a few new APIs for bridging between these separate Workspaces. This might enable more scalable servers.

10 Likes

This roadmap is looking to be one of the most exciting roadmaps yet! :smile:

Here are my favorites, and some guesses as to how some of these things may work:
Large Object Stores: Based on the description, this sounds like it could only be compact instance storage. If that’s the case, I’m so so so so so hyped because it could create so many incredible possibilities! Linked with messaging service it could be possible to transmit sections of a game back to a lobby server. If this is the case, and restrictions allow for it, this is the #1 solution to my live spectate system.

Currently I use a custom compression algorithm which guarantees a ratio in 8ths, or 7ths for transmission, and can only ever add roughly 3-4 bytes to a payload. The downsides are that, despite some great ratios, MessagingService quickly hits its limits since I have to often times send up to 20 frames of physics data for even just 10 or so parts. This leads to ~200 velocities, positions, and scale changes being sent, and its a miracle data is even able to be sent at all

Shared Memory: Like said above, if this is the new name for Ephemeral Datastores, I’m hyped. This sounds like it will be amazing for my game as my server sync system is super slow and bulky. Currently I use MessagingService to transmit a lot of server info, however I can only do this so fast, and it leads to very unnecessary, wasteful MessagingService requests being made when I need the server to update. This server info often goes unused in lobby servers until a later point, and its sole purpose is synchronization, so often times extra code is always running. This would allow me to do so much more with my servers and it sounds like this is exactly what I need to expand.

Faster CSG: Depending on how fast faster CSG will exactly be, this may be the solution to my server-killing, no good, but super epic live CSG mining code that had the unfortunate side effect of randomly relocating unanchored parts with Automatic/player network ownership to the origin (??? Don’t ask me why this happens, all I know is its related to poor server performance, and only happens in some cases but not others). Also a fun side effect of my server-killing, no good, but super epic live CSG mining code is that it can cause the server to hang permanently because CSG can never finish processing because there are too many CSG operations queued.

Cloud Scripts: This opens up so many amazing possibilities. My assumption is that cloud scripts will run in their own servers, simply without players, and will have access to some unique APIs. Cloud Scripts + HttpService = Interactions between web hosts and Roblox that would previously be impossible. If we are able to use things such as physics within these “Cloud servers” we could merge their capabilities with the Large Object Stores feature and essentially run user creations “offline.” All of this is speculation though, we’ll have to see what Cloud Scripts have to offer when they are released.

Parallel lua: Faster, more epic code. Nothing else to say.

Transactions: If this means Robux, or uploaded accessories made by the developer, this is awesome, and would allow for some amazing content that could extend not just to your game, but partially to other games as well. Even if it doesn’t, this will still be super useful for a lot of games and will offer something to rely on for beginner scripters.

Conclusion: Overall, I think Roblox is bound to become one of the most powerful game engines to exist. Some of these features are absolutely unthinkable even for Unity, Unreal, etc, and Roblox’s outstanding ease of use could potentially make it an industry standard for game development, not to mention Roblox’s ability to make all of this available to individuals. Previously a majority of this stuff is out of reach to anyone but huge game studios and people with hours upon hours of time on their hands.

9 Likes

Lot’s like, mesh deformation, in game screenshots and a lot more!

2 Likes