Risor

What the delivery mark does

Every file downloaded from a Risor pack is marked for the person who downloaded it. This is what the mark covers, and what it does not.

Each buyer gets a different mark, and the same buyer always gets the same one. The mark is random: it holds no name, email or account id, and only Risor can look up whose download it came from.

The original file is never changed. Every download is a new copy, marked for its buyer. A mark does not stop anybody copying a file; it tells us whose copy it was.

There are two marks. The first sits in the file, outside anything Roblox builds from it: the binary file's metadata, an XML comment, or a ZIP archive comment. It identifies a copy passed on exactly as it was downloaded, and it is lost as soon as the file is opened and saved again.

The second is an attribute named RisorDelivery on the top-level instances: every root of a model, and every item directly inside a service in a place. We opened marked files with rbx-dom, the file library Rojo and Lune use, and saved them again twice, as binary and as XML. The attribute was still there every time. Roblox Studio's own save has not been measured, so we do not promise it.

It does not cover: a part copied out from deeper inside a model or a place; an attribute somebody deletes by hand (it is visible in the Properties panel); the files inside a ZIP, where only the archive itself is marked; and files over 64 MB, which are delivered unmarked.

It changes nothing the asset does. An attribute moves, renders and runs nothing, and a script only sees it if it asks for that exact name. If any script in a file lists every attribute (GetAttributes) or listens to every change (AttributeChanged), the attribute is left out of that file and only the first mark goes in.

All policies and help