Anti-Piracy Placeholders
Download protection lets you hide invisible, per-user placeholders inside your product files. Each time someone downloads your product, free or paid, PixelEast quietly swaps those placeholders for values that are unique to that account. If your product later turns up somewhere it should not, you can take the leaked file, read the hidden values, and trace it back to the exact account that downloaded it.
This is a tracing tool, not copy protection. Placeholders help you find out who leaked a file. They do not stop the file from being shared or cracked. More on that below.
What are placeholders
A placeholder is a short piece of text such as %%__NONCE__%% that you
write into your own files. Your master file is never changed while it sits on our servers. Only at the moment
someone downloads the product does PixelEast build them a personal copy and replace every placeholder with a
value tied to their account and that download.
Because every account receives a slightly different copy, a leaked file carries a hidden fingerprint that points back to whoever downloaded it.
Where to find placeholders
Everything lives in your creator dashboard. Open the product you want to protect and select the Placeholders tab.
-
1
On the Setup & detection sub-tab, turn on Enable download protection.
-
2
Add the placeholders you want into your files (see the list below). You can place the same placeholder in as many spots as you like.
-
3
Upload a new version. PixelEast scans it, and the placeholders are filled in on every download from then on.
Placeholders you can use
These are the placeholders you can use in your files. Copy each one exactly, since they are case sensitive. When someone downloads your product, each one is replaced with the value shown next to it. In the Placeholders tab you can also create your own name (an alias) for any of these and use that in your files instead.
| Placeholder | Replaced with |
|---|---|
%%__NONCE__%%
|
A hidden, encrypted code that is different in every single download. This is the main anti-piracy placeholder and the one we recommend using the most. |
%%__USER__%%
|
The unique ID (UUID) of the account that downloaded the file. |
%%__USERNAME__%%
|
The username of the account that downloaded the file. |
%%__RESOURCE__%%
|
The numeric ID of the product the file came from. |
%%__TITLE__%%
|
The name of the product the file came from. |
%%__VERSION__%%
|
The version of the product that was downloaded. |
%%__TIMESTAMP__%%
|
The date and time of the download in UTC, for example 2026-06-19 14:30:00. |
%%__PIXELEAST__%%
|
Always replaced with the word "true". A quick way to confirm that the file was downloaded from PixelEast. |
Use %%__NONCE__%% as your main placeholder.
It is your best option: it is encrypted, every copy of it is different, and it cannot be used to frame
another user the way a visible username or user ID could. Scatter several nonce placeholders across
several files. A leaker would have to find and remove every one of them, while just one survivor is enough
to trace the leak.
Where placeholder injection works
Placeholders are replaced in the following places:
Text files
YAML, .properties, JSON and other plain-text files, including the text resources inside an archive (plugin.yml, config.yml and similar).
.jar and .zip archives
Text entries inside the archive are rewritten. A nested archive (a jar inside a jar) is scanned one level deep.
Java .class files
String constants compiled into the bytecode. Strings that are built at runtime cannot be touched.
Two limits to keep in mind.
.rar archives are copied as they are and never touched, so wrap any
file you do not want changed in a .rar instead. And because
%%__NONCE__%% is a long value, it cannot be written into raw binary
files. Use it in text or in .class strings instead.
Older versions are not covered
Protection only applies to versions you upload after you turn it on. Any version that already existed stays exactly as it was and will never receive placeholders. In the Versions list those older uploads are labelled Before protection. Older versions simply cannot use this feature, and it will not be available for them.
To protect an existing product, add placeholders to your files and upload a fresh version. Turning the feature off later does not remove the protection from versions that already have it.
Check where your placeholders are used
Open the Versions sub-tab to see the result for each version: Protected (with the number of placeholders found), No placeholders found, Scanning, or Scan failed.
For a protected version you can expand the file list to see exactly which files inside your upload received placeholders and how many each one got. You can also use Download test copy to pull a real personalized copy with the placeholders already filled in, so you can open it yourself, confirm the values landed where you expect, and check that the file still works.
You can only view this information for your own files. You never see another creator's files, and you never see the hidden values generated for other users.
If you find your product somewhere else
On the Setup & detection sub-tab there is a Detect a leak box. Upload the leaked file, or paste a placeholder code you found inside it.
PixelEast reads the hidden placeholders, matches them against everyone who downloaded your product, and shows you which account it traces to, along with how confident the result is.
From there you can file a report so our team can take action, such as banning the account, and use the result to support a takedown or DMCA request.
Obfuscation and placeholders
If you obfuscate your code, the obfuscator can rename or strip string constants. That would destroy your placeholders before we ever get to fill them in.
To prevent this, add the placeholder strings to your obfuscator's keep list or string-exclusion list so they survive as literal constants. Also remember that injection changes the file's bytes, so allow for that in any checksum or integrity check you run on your own files.
A protection measure, not a guarantee
We want to be honest about what this does. Placeholders are about attribution, finding who leaked a file, not prevention. No client-side protection is uncrackable, and this one is no exception.
Someone who fully rebuilds your file from decompiled source, or repacks it, can strip the placeholders out. Someone who downloads twice from two accounts can compare the copies to spot where the placeholders sit. The file itself can still be cracked and shared.
What you get is a strong chance of identifying the account responsible, especially against a careless leaker. That is exactly why nonce placeholders matter and why spreading many of them across many files is worth the small effort.
Need a hand?
If a scan fails, a placeholder does not apply, or a trace result does not look right, our team is happy to help. Open a support ticket and we will take a look.