I don’t know if this is intentional so im reporting it anyways
If the sandboxed script has access to Players capability but doesn’t have Consequences capability you can still workaround it by just destroying the Player instance or just calling ClearAllChildren on Players service
same thing works if you just do Player:ResetPropertyToDefault(“Parent”) and the player will be removed from the game regardless of not having Consequences capability
however the behavior changes if you disable Players capability everything is blocked but you cannot access PlayerGui and stuff like that so disabling Players capability will break innocent scripts that aren’t trying to bypass the sandbox and legitmately use the player instance
once again i do not know if this is intentional but i thought reporting it would be worth it since it does count as a capability bypass
Old rbxl repro
consequences protection failure.rbxl (61.0 KB)
Latest rbxl repro
Expected behavior
all attempts to destroy, clearallchildren, resetproperytodefault(“parent”) calls on Player instances and Players service should be disabled if the calling script doesn’t have the Consequences capability