Expanding Assistant to Modify Place Content [Beta]

Hey Creators,

Today, we are excited to announce we’re expanding Assistant’s capabilities to perform a broad range of actions in Studio. Assistant can now help you modify the DataModel in order to automate some of the repetitive parts of your work. For example, it can modify properties in bulk, swap items, or restructure your DataModel. This is our first step towards building a smart Assistant that can be a virtual collaborator in your building process.

How it works

Assistant can now modify the DataModel by generating Luau scripts and executing them in Studio. This is very similar to the command-bar and enables Assistant to perform a wide range of actions. This capability is particularly effective for performing simple DataModel modifications in bulk, automating some repetitive parts of experience development so you can focus more on the creative aspects.

Essentially, anything that can be done through the command-bar can now potentially be done using Assistant, from simple actions like selecting all “PineTree”s to complex actions like making smoke come out of every chimney in a place. One thing to note is that this Assistant capability consists of two parts: an LLM that generates the code and a run-command module that runs the code (similar to command-bar). The run-command module can modify the DataModel, but the large language model that generates the code cannot access your Data Model. As a result, it is important to provide context such as the name of the object (e.g. “PineTree”) or properties of the object (“e.g. all objects made of plastic”).

Examples

We’ll walk through a few examples of how you can use this new capability in Assistant to modify your places. These are just some ways you can use Assistant, so try it out and let us know what you find it helpful for. However, also note that this is the first iteration of this feature and there is some effort required in prompting to perform the actions. We have some tips on how to prompt this feature in the Known limitations and tips for using section.

Select specific items

Let’s start with a very simple example in the Suburban Template: Assistant selects all of the objects in your DataModel named “PineTree”. You can also do something more complex like selecting all items in the workspace that have a certain property.

Randomize the size of items

Assistant will run a script to randomize the pine trees’ size in your scene, making your forest more realistic.

Place all items on the ground

Assistant will run a script to move the position of all your parts to being on top of the baseplate.

Replacing assets and Greyboxing

In this example, we greybox a suburban scene and then populate it with an asset pack that I created. Each box has a name that is the same as a target asset that we have in the place and Assistant swaps boxes with copies of those assets. You can also ask Assistant to insert from the Creator Store instead of using your assets.

Clone an object and putting the new instances at the same distance

Here we select two instances of an object, in this case a lamp post, and ask Assistant to follow this pattern and insert multiple copies of that object. You can re-use this on any object to speed up filling a scene. In fact, the green boxes in the previous example were populated with this method.

Something more complex: Make smoke come out of every chimney

There are endless possibilities with what you can ask this feature to perform. Here is an example that a Roblox developer tried in one of our feedback sessions to make smoke come out of every chimney in a place. Note that they wrote very specific instructions about how this should be done. A simple prompt of “add smoke to every chimney” most likely will not work.

Features

Expanding code

You can click on the expand icon to see the code that Assistant is executing to perform your action. You can also copy this code and run it in the command-bar.

Actions are reversible

Almost all Assistant actions are undoable. If Assistant is trying to perform an action that is not reversible, it will give you a warning and ask you to manually click “Run”. (In the example below, we are intentionally asking it to delete an item using Destroy() which is not undo-able, and as a result, assistant gives a warning about the irreversibility)

Running commands

By default, Assistant automatically performs actions when you ask it to do something . However, you can change this setting from the “…” at the bottom right of the Assistant chat window so that it would ask for your permission every time it wants to run a command.

image7

You can also use the run button to run a command multiple times. For example you can ask Assistant to change the color of your selected item to green. Then select different items and click Run to also change their color to green as well.

|772.5110132158591x365

How to try this feature

This feature is a part of the Assistant beta. To Enable Assistant in Studio:

  1. Go to File → Beta Features and check the Assistant box.
  2. Restart Studio.
  3. Click Assistant in the top right corner of Studio.

Known limitations and tips for using

  • As mentioned above, currently, the Assistant does not have direct access to your DataModel. Therefore, it’s essential to provide it with the necessary context. Assistant does not know the contents and hierarchy of your workspace, but it can perform tasks if you give it clear instructions. For example, if you want to modify an object or a set of objects, it’s important to specify how to find those objects. This could be by their name (e.g., “Randomize the size of every ‘PineTree’”), a specific property (e.g., “Select all objects made of plastic”), or your selection (e.g., “Make the object I selected bigger”). We are working on fixing this limitation and will have an update soon.

  • The more precise you are about the steps you want Assistant to take, the better its performance will be. For instance, in the earlier example of putting street lights along a street, we prompted Assistant to place more lamps at the same distance as the current ones and it worked. However, if you just prompt it to “place lights along the street” it might not work.

  • You can see the script Assistant is running in the chat. If it’s making a mistake (like using a deprecated function) you can tell it to use the function you prefer. We recommend re-writing your original prompt and including the extra guidance instead of having a follow up comment.

We are very early in our AI journey and this is a very early version of what Assistant can look like in Roblox. Over time, Assistant will improve and will be able to perform better with fewer instructions, but in the current state we recommend being detailed about what you want.

Please use the thumbs up and thumbs down buttons when you receive responses from the Assistant. We use that feedback to help us build this capability by identifying which common requests Assistant has trouble fulfilling.

Also we would love to see what you do with this feature! Feel free to reply with any interesting results you get.

Thanks to everyone who made this happen @cthulwho, @NotANumeral, @Urukeli, @Slim_Fandango, @Rusi_002, @montximontxi, @Photoguy82, @Regal_Corgi, @ignotuscaligo, @rblx23lnkd11, @MoonRocketApollo

Thank you!

213 Likes

This topic was automatically opened after 12 minutes.

This is actually amazing, I havent really use the Assistant before, but this is a cool feature for beginner developers or to make some work faster. Thank you!

31 Likes

Whats the problem?? This actually seems pretty useful.

58 Likes

resources are better spent adding useful features many people will use rather than an ai tool which is gonna be dead in a couple of years anyways

23 Likes

Hope the AI is ready to do some of the dirty work I constantly do with the command bar :imp:

32 Likes

This is actually cool to make things we do with the command bar in a faster way tbh

20 Likes

This is awesome! I’m glad that AI is getting more features.

21 Likes

I personally don’t see the use of this, we can already do all of this stuff pretty easily. :thinking:

14 Likes

This looks extremely useful! We will definitely be taking advantage of the selection features.

15 Likes

yes, chatgpt will be dead in 2 years

17 Likes

This is such a generic, like-farming response and so disrespectful to the team here that tirelessly work on these features to make it easier for newer developers. They’re living, breathing humans too, you know?

I think this feature is super awesome and it’s something I hoped would eventually come to Roblox when Assistant was first announced. I’m glad the team is going beyond a simple chat-bot that most tech platforms have implemented by now, and actually integrating it deeply within Studio. Aforementioned, will be very helpful to beginners and to get tedious tasks done in much faster time :smile:

35 Likes

We programmers take for granted how easily we can automate simple repetitive tasks. Giving non programmers that capacity is awesome! I for one got into game development because I like making games, not because I like going through 500 assets and switching all the first letters in the names to be capitalized. Those of you that are scared of automation and better tooling should perhaps contemplate why you’re here.

23 Likes

Finally, now I don’t have to write scripts to randomise stuff! Thanks!

18 Likes

This is so useful if u have to select a lot of objects that you need to delete!

12 Likes

There are different teams making different features, I dont think its that big of a deal.

13 Likes

Couldn’t you just press the delete button?

9 Likes

i didnt say that… roblox is probably going to realize nobody really cares eventually and its not worth it to burn money on anymore and it won’t be a thing. assistant/code assist has never really been useful (refer to: Code Assist Beta: AI powered code completion - #5 by pyxfluff) and i doubt that’ll change any time soon

12 Likes

I’ve already used this five dozen times in the last week to automate a ton of accessory setup for creature customization. Stuff like bulk renaming, aligning attachments, putting things into a specific folder structure, setting up metadata, etc. This is an uber powerful feature and an outstanding application of AI in our context. Love this!

19 Likes

The AI coding assistant had a buggy release, yeah, but if you’ve tried it recently, it’s come a long way and has improved a lot since a year ago. Using it nowadays, it’s actually somewhat useful

10 Likes