I opened one of my game scripts today to make some changes and it appears completely color-less, autocomplete doesn’t work, and I was given a message that says “We have disabled certain language features because the script is too long and it’s affecting system performance”.
The script in question is 800 lines.
This is unacceptable, not only is this feature undesired, it’s entirely unnecessary as the same script had performed just fine in studio just 24 hours prior.
This is less of a bug report and more of a feature revert request. Not only is it deciding some really short scripts are too long, but this feature is entirely unwanted even when it works correctly. I’ve had scripts that are 14k+ lines in my old projects, and studio might stutter a bit when editing certain sections. However that stuttering is much more preferable than completely removing all formatting and autocomplete features entirely.
FWIW: This was introduced in Release 582. It looks like on the actual linked page they removed the numbers but they arbitrarily decided on some baseline numbers against the number of characters total for a script and across each line, not the number of lines a script has. Language features could be disabled for scripts with a low line count but large number of characters in use.
I would rather this feature be on a settings toggle. It’s quite presumptuous to just turn everything off based on an arbitrary limit, or even one based on the performance of my device. Laggy is better than being unable to work.
We understand and acknowledge your concerns regarding the change in the script editor’s behavior in relation to long scripts. It’s clear from your feedback and others that this modification has significantly impacted your development workflow.
Given this feedback, we have decided to revert this change temporarily while we reassess our approach. We realize that while our intentions were to optimize performance, the solution has inadvertently hindered some developers’ productivity, which is contrary to our objective.
Call me surprised. Guess what wasn’t here this morning and cropped up suddenly today on only one of my smallest scripts… this old bug, er… I mean “feature”. I do see the Settings for both the line count (makes sense, my file is way under), and character count. Yup, I’m 367 characters over with a long array we reference for backwards compatibility.
I always check the announcements, but no mention of this “feature”. It would have been nice to not have to search for this occurrence given it was obviously an issue the first time around. Especially since the Studio update is now giving options to manage settings to optimize performance from potentially excessive-sized files.
I totally get the defaults aren’t going to be a one-size-fits-all, but I think we can do better than to just disable language formatting and declare it a performance impact. I can tell you my small script that’s less than 1/10th the max lines with only a single line having 367 characters over a lines character count is not doing anything to performance.
I know I can’t be too picky on the messaging since I’m a corner-case. So perhaps when you disable language settings for exceeding the line counts, also highlight the offending lines since Studio should obviously already know those line numbers. It would have saved me from moving the script to another IDE just to get that info.
I seem to be unable to locate the setting to even disable/scale this, but I agree. Rolling this out without any form of announcement is rather jarring.
It is in File->Studio Settings (ALT+S). You can see them in the Script Editor section near top. It’s the Large File Line Count and Character Thresholds:
they should just replace that banner with:
“Automatic loading of language features disabled as they may affect performance. |Configure| |Load anyway| |Discard|”
Bump &&& this just jump-scared me tonight out of nowhere, where’s the setting??? It would have been nice to at-least add a hyperlink to the text- or at-least a pop-up dialogue to have the option immediately disable this unwanted feature.