Source Protection
Protect your plugin's source code with built-in obfuscation. Choose between per-buyer and shared protection modes.
Source protection is currently available for Rust/Oxide plugins (.cs files) only.
Minecraft and Hytale (.jar) obfuscation is coming soon.
Overview
Source protection lets you upload your raw .cs source file and have PulsePlugin automatically obfuscate it before delivery to buyers. Buyers receive a compiled, obfuscated build — never your original source.
Enable protection in the wizard on step 5 (Protection) when creating a new product, or at any time via Products → Edit → Protection.
Protection Modes
No Protection (Open)
Buyers download the file as-is. Suitable for plugins where you are comfortable sharing the source, or for compiled JARs where decompilation is the buyer's concern.
Per-Buyer Obfuscation
A unique obfuscated build is generated for each buyer. Identifier names, string literals, and control flow are randomised per-build, making it practically impossible to share a leak back to a specific buyer. The build is encrypted with an AES key unique to that buyer.
Shared Obfuscation
One obfuscated build is created per version and shared across all buyers. Each buyer still receives a personalised delivery zip with their license config, but the obfuscated binary is the same for everyone. Faster than per-buyer for large catalogs but provides less forensic traceability.
Uploading Your Source File
When source protection is enabled, the version upload form accepts .cs files in addition to the standard compiled formats. Upload your raw .cs source file — the platform stores it securely and uses it as the input to the obfuscator.
File requirements
- Single
.csfile (not a project folder or solution) - Maximum 50 MB
- Must be valid C# that compiles against the target Oxide version
Changing Protection Mode
You can change the protection mode from a product's Edit → Protection tab at any time. The new setting applies to future downloads only — buyers who have already downloaded the current version are not affected. Any cached builds for the old mode are invalidated.
What Buyers Receive
Obfuscated plugins (Per-buyer or Shared build)
Buyers download a zip containing both Oxide and Carbon folder structures, pre-filled with their license key. They extract it into their server root — done. No manual editing required.
Nick-v1.0.0.zip
├── oxide/
│ ├── plugins/
│ │ └── Nick.cs ← obfuscated plugin file
│ └── config/
│ └── Nick.license.json ← pre-filled license key
└── carbon/
├── plugins/
│ └── Nick.cs ← obfuscated plugin file
└── configs/
└── Nick.license.json ← pre-filled license keyNote: Oxide uses config/ (singular) and Carbon uses configs/ (plural). Both folders are always included so buyers only need to extract once regardless of their framework.
Non-obfuscated plugins
Buyers receive a plain .cs file with no license config. No activation required. Suitable for free or open-source plugins.
Nick-v1.0.0.zip
└── Nick.cs ← plain .cs source, no license required