Expressive Output Window - Phased Rollout

Are there any plans to integrate parts of the output window into the in-game console? I’m specifically looking at the table unrolling feature and the Search feature, but anything in the works?

6 Likes

That’s good that Roblox Staff has improved the output alot!
Thankss

1 Like

This output has been a LIFE SAVER for me. I have some application centers that use third-party storage options, I also have it make backups in the actual game itself, that way, if the third-party fails, the application can be restored. These backups are saved as a single, very big string. When the character count passes 16K, the Roblox TextBox (which I use in order to fetch a backup) cuts off the text. Same was happening with the old output. With this new output, I can finally see the ENTIRE string without having to separate it into smaller chunks.

Apart from that, the fact that you can print tables is just amazing. No longer do we have to make for loops just to print the contents of tables. The new output has also allowed for a more organized and easier debugging as I can filter out and hide output information and output sources that I do not need, and only keep the ones that are important.

After months of using this new output window, I don’t think I can ever roll back to the old one. This has truly been an amazing addition for the programmer community and I would love to see more stull like this in the future. Outstanding job to the people who worked on this.

3 Likes

I have this problem too.

Unrelated. Just wondering if there’s a list of error messages somewhere because as I grow as a developer, I will come across messages I don’t fully understand. Clicking the message takes me to the line with the error but sometimes that’s not enough. I would like one of the links that points to the error to jump out of studio toward an explanation or example of how to correct the issue. I don’t know if that makes sense but I get stuck and end up trying to rewrite whole scripts to fix problems. Perhaps there’s a better way.

I love being able to read tables in the output!.

Thanks!

4 Likes

The change to how print and warn handle non-primitive types is annoying, please revert it.

What I mean is the change from this:
image

to this:
image

While I understand the intent, it’s just outright less useful and impedes readability at times:

image

vs

image

9 Likes

Can second this, this is really inconsistent behavior, if you print multiple string types it does not use quotes, but as soon as you introduce e.g. an instance, every distinct string argument gets printed with quotes. It’s very awkward and totally changes behavior people have been developing against and expecting for many years.

e.g. print("player", playerVar, "joined") is a rather lazy way to define a log statement, but this style is very likely used in real games, and almost certainly used for quick debugging. Now it prints as "player" PeZsmistic "joined" which is awful to read.

8 Likes

I can second this. I’ve always been the type of person to type print(x, y, z) rather than print(x .. ' ' .. y .. ' ' .. z), since it’s way faster and also easier for my eyes to read. How the new output window handles this is really annoying behavior which you cannot disable.

3 Likes

when printing a string and an instance or table in the same print statement, it will put double quotes around the string. can there be an option to disable this, the inconsistency isnt good

image

1 Like

Good point @Dekkonot, @PeZsmistic, @avozzo, @gillern! We’ll fix this.

8 Likes

Are there any plans on introducing more ways of distinguishing types of output text between one another?
image
image

Stuff like allowing the user to customize the color or boldness of commands and results?

I prefer to skim through output when it comes to loops, so checking for arrows or context labels could take up more time in the long run if you compare it to something more visible like color or bold fonts.

Another UX issue which I’ve found:
image

these settings do not persist. It’s annoying that I need to toggle these things on/off every time I open studio.

5 Likes

I seem to have encountered an issue with the output window. If you scale your output window small enough, it will cut off some text instead of wrapping it.

the code currently does the following:

local color =  part.Color
warn("Current: ",color.R * 255, color.G * 255, color.B * 255)

This can give a lot of false alarms. After resizing my UI during testing, I’m unable to restore it back to its original size, but all of the text does appear now.

1 Like

Printing an exact message over and over really starts to lag the whole studio, in a way it wasn’t before. I’m running 30FPS on a nearly empty studio because I’m printing the same short string several times a second

1 Like

When printing a large number of items the counter will start to go down when it reaches 5000 items total. The counter should never go down it’s confusing UX, you cannot unprint things

It’s doing this because there is a maximum number of lines the output can display (configurable from File > Studio > Maximum Output Lines setting). As you print “Done” more times, the output is deleting the oldest lines from “UPD EDGE” to maintain this maximum, which looks to be set at 5000.

3 Likes

I understand why it happens, but im saying it should not happen because it can be confusing. There is no case where the counter should go partially down, it either rises or gets cleared completely. Making it impossible for the counter to go down would improve UX

1 Like

Can there be an option to automatically call tostring() on tables when printing? I’ve crashed studio dozens of times now by accidentally printing a table with references to itself and it’s very annoying

Do you have a repro for this? It should not crash Studio - the table will just indicate that it includes a self-reference in the appropriate location.

1 Like

I don’t have a specific use case. Sometimes when I’m trying to just see if a value exists and I print, if the value is a table its relatively slow when being called thousands of times. I have a loop that takes < 20ms when I dont print anything, but as soon as I start printing tables just to see if they exist, and forget to call tostring it will crash studio. There are thousands of tables being printed yes but the output should still support that

@GeneralRelish Are there any plans to allow us to integrate the command bar into the output rather than have it in a separate widget? A niche request, but I’m sure many would prefer it this way.

I have been REALLY enjoying this, until suddenly today its gone and I WANT IT BACK! :smiley:

Where did it go?

1 Like