This automated system flags any content that may obscure engine features, such as getfenv and setfenv, script execution, including Custom Lua Virtual Machines, and the requirement of remote assets. The solution Roblox used was to moderate require(assetId), loadstring, InsertService:LoadAsset(), and ModuleScript.LinkedSource.
According to the Roblox Community Standards and the Creator Store requirements, one of the restrictions in scripts that are allowed to be distributed on the Creator Store is that you cannot have in a script require(assetId).
However, this is now different. If I uploaded a script to the Creator Store and made it public with this content:
print("require")
it should pass the content moderation system; however, it does NOT anymore.
Reproduction
- Open Roblox Studio
- Create a Script or ModuleScript in the Explorer (it can be anywhere, Workspace for example)
- Enter these contents into the script:
print("require")
- Right click the script in the Explorer
- Mouse over “Save / Export”
- Click on “Save to Roblox…”
- Select the Asset Category as “Model”
- Click “Save”
- Go to the creation Configuration page on the Creator Hub website
- Go to Distribution and enable “Distribute on Creator Store”
- Watch as it gets taken down for a violation
Expected behavior
If I uploaded a script to the Creator Store and made it public with this content:
print("require")
it would pass the automated asset moderation.
If I uploaded a script to the Creator Store and made it public with this content:
require(1125125952)("hello world")
it would NOT pass the automated asset moderation.
Page URL: https://create.roblox.com/dashboard/creations/store/*/configure