Let Plugins tweak SurfaceAppearances

Right now on Roblox, plugins can’t change the colour/normal/roughness/metallic maps of SurfaceAppearance instances.

This is because they are LocalUserSecurity properties, which means they may only be changed by the command bar, not by scripts. I presume the rationale behind this is that these things are too expensive/infeasible to change at runtime, but this is unnecessarily restrictive for plugins which operate entirely within Studio.

Right now, the only way for a plugin to work around this is a disgusting and pretty embarrassing hack:

I don’t see any reason this should be restricted the way it is, so it would be quite appreciated if we could have this so we don’t normalise our users running arbitrary code in their command bar.

54 Likes

PluginLocalUserConnectionTool.rbxm (2.3 KB)

ok screw it im exposing this hack to the public, yes it uses shared. But we’re already trying to hackily get code to run in the command bar anyway

I created this to get into DebuggerManager but yea, I dont want to normalise hacks like this. I’ll probably bake it into Framework as a fallback or something.

11 Likes