Features we don't need?


We’ve got a ton of features in HIgh Fidelity, and I’ve been going through and looking at them all with the goal of reducing code, docs, and design complexity by removing anything I can. Are there features you think we never use that might be good to remove so that we can simplify the system? Everything like this we can take out will likely reduce our crash rates, and A couple I am looking at right now:

  • Script Editor: Doesn’t work in the HMD, has inconsistent UI, duplicates some features with console. I’m going to take this one.

  • Mini-Mirror: Doesn’t work in HMD, full-screen mirror can be used to look at your avatar, and until we re-introduce facial tracking there seems to be no benefit to it. Possibly needs to be re-coded as a general-purpose ability to render multiple views. But for now I think it should come out.

Discussion on others you think could go?


I dont use the mirror, I do use the full screen mirror mode . It would be nice if that had a mirror mirror mode to allow us to take photos without the text in the image being mirrored, if that makes any sense.Its usefull for photos and Machinima.

The script editor, I know a few people use, but I dont know enought about it to be constructive. Could it go on the tablet some how? Maybe the tablet can have buttons on one side and web entity stuff on the other.

All the menus in desktop mode, I feel we should have one kind or the other but not both?


I wish I had some more in-depth experience with the system to provide some better input. I personally never used the mini mirror. Mainly because I thought it was just to see your expressions with face tracking, but I don’t use face tracking.

As for the Script Editor… I think an in-world editor could be useful if it were very useful to use. Is an in-world Editor going away for good or is there the chance that there may be plans to rethink how editing scripts are done in-world?


Is anybody using this ?

Mini mirror can go, i have turned that of from almost day one. useless screen space waste.


OK, great, so I am leaning toward removing the mini-mirror.


Please consider derezzing the ScriptEditor in two phases:

  1. For some next release:
    a) Remove the keyboard binding for bringing it up.
    b) Relocate the menu item from Edit into a halfway home called Developer > Deprecated.
  2. Wait one release cycle – and see what happens.

If nobody notices the virtual removal… maybe nobody will notice complete removal later. But if many people notice… well, thank goodness the feature wasn’t actually removed yet.


Tim - there is what seems to be a more powerful QT editor that can be magically brought up by adding “debugger;” to the beginning of the file and pressing shift while reloading the script (from within interface). It looks to be better than the existing script editor. Do you think so?

I think you are saying ‘yes we should have this feature’ - if so, can you give me more thoughts on what we need from it? Perhaps we could commission you to do that work? I don’t want something that doesn’t work in the HMD and has an inconsistent UI in the product. I’d be excited about making it actually work.


Qt Script Debugger offers some useful debugging and inspection features, but feels more like a low-level Qt engineering tool than a high-level script debugger.

But either way, we have to rule it out for reasons of not working in the HMD and having an inconsistent UI. In my local builds I usually disable it completely because of perceived security risks.

Regarding ScriptEditor – the dropdown menu provides easy access to view the source of running Client scripts, the start/stop buttons make it easy to iterate on a local script, and the debug console shows just that script’s print statements (while also allowing REPL access to global variables).

There are some other directions we could discuss going in. For example, ways to leverage Chrome’s built-in development tools for working with Entity and Client scripts by proxy.


I’ve had some issues with loading local scripts where when it asks for a filename and I save it, it would turn up a blank script. This is on Windows 10 by the way. I found a past post regarding this suggesting that it’s something to do with security/permissions. Running as Administrator would probably resolve that, but it’s annoying issue to deal with. Having scripts in some folder other than my user folder is probably the culprit. I somehow managed to get it working in the process of running the official versus PR build. Anyways, it’s something to consider when reducing user issues that could turn up.

It’s interesting that you brought up the Chrome tools. I was talking with someone days ago about the issue where non-HMD owners have no way to test a creation, in High Fidelity, in an HMD environment. I brought up the example of how Chrome tools is used to emulate devices in a such a way that you can, for the most part, test how something works in a Responsive Web Design world. With a cross-device Web these days, it’s an essential tool. I wonder if Chrome tools could emulate HMD setups.

EDIT: FYI - There is an inexpensive HMD option like Google Cardboard, but my phone (Moto G4) has had reports of some odd results working with Cardboard. So, not everyone has a fully capable phone for even running Cardboard. I certainly don’t want to invest any more than that for something I really don’t want to invest in.


I used Side by Side :sunglasses:


Mirror used only sometime:sunglasses:


Also the view->independent mode … does this do anything? (Don’t remove the view->entity mode!!!)

  • Script Editor: Most of the time I simply do my scripts out of High Fidelity. the Syntax High-Lighlighting, Lint, color schemes on Atom for-example save me alot more trouble while most of my work simply has to work on multiple scripts at the same time / looking up references which is hard to do in an in-engine editor.
  • Mini-Mirror: Has been bugged for quite some time especially after Subsurface scattering and enabling shadows and ao, and its also been quite distracting. It used to be great back when we had face tracking but since we dont have that, it seems abit of a unnessary thing. If we ever get facetracking re-implemented, then this is a must feature, but i think it would be good idea to drop it and then reimplement it once tracking is somehow returned

Other points

  • While working on the Parent mod to the edit script, I noticed there were some major issues with Hotkey conflict: We have both Hotkeys defined in the client, and hotkeys defined in scripts. There needs to be some grouping of these so that users can change them via scripts or adjust them in the client.

@whyroc the Independent mode from the menu could be removed. independent mode is basically camera mode where its not connected to any object and is manipulate-able through the Camera Script interface. Not sure why it needs to moved to through the menu system when you would have to manipulate it via script.


Same for me.
I never used it because bad color combinations (not readable) tiny font. and far from use full. Same problem btw with the console.


You can have these features in an editor in-world, if it were done well to be useful enough. Usually what happens is that because there are already really good third-party options, the thought of “reinventing the wheel” seems unnecessary. Maybe it’s possible to integrate the Atom editor into HF? Also, from the bits I’ve seen, it’s suggested that Atom uses ACE? I believe that’s the same editor engine Cloud Party used.


I think the script editor where soem required need in the begin days that someone made. It never got imnproved or much updated. Low on priority list i think.

Also i think the hope soemone makes a better editor for high fidelity as worklist.


If I recall correctly yes, you can look it up your self if you want
Atom Editor is basically just a web-tech based text editor

Most of the time though I spend with high Fidelity in one screen and the editor on another, so I dont see much benefit of having an inworld one, when all the scripts are still uploaded to the server, so not sure there is even a need for integrating.

Ofcourse getting the debug tools probably would be awesome.


I totally understand the benefits of having two monitors since I have two at work. Although, I only own a single monitor at home.


The discussion is about the mini-mirror though, not the actual mirror mode which exists and works, to a degree.


How about getting rid of QT?