Editions
Contracts comes in two editions, Lite and Full (sometimes referred to as “Premium”). Both are built from the same plugin, carry the same version, and read the same config and data files. They differ only in which features actually run.
If you run the Lite edition, turn on the highlight below: every premium feature across the docs gets a ⭐ Premium badge, so you can see at a glance what your edition excludes. It is off by default, and the lists on this page show the full split either way.
In the web editor, you can also turn on Lite highlighting in the settings menu (bottom left cog wheel icon). This is useful if you want to see what your edition excludes while editing contracts. You can still use Premium features with the Lite highlighting on.
Upgrading is one file
Section titled “Upgrading is one file”The Lite and Full editions share every config and data file, so upgrading takes no
reconfiguration. Overwrite your server’s Contracts.cs with the Full build and reload the
plugin: every premium feature already present in your config activates on the spot. Contracts you
authored on Lite, premium rewards, HUD settings, category caps, all of it comes to life with nothing
to redo.
You can get the Full edition here.
What the Lite edition includes
Section titled “What the Lite edition includes”Full transparency: The Lite edition isn’t designed to be used long term. It’s more of a demo than a free plugin, a way to get a feel for Contracts if you’re unsure about buying the Full edition. If you like it even a little, you’ll love the Full edition.
Here’s what Lite includes:
- Objectives: Kill, Gather, Loot, Turn In, Craft, Plant.
- Conditions: Weapon, Time of Day, and the logical conditions And, Or, and Not.
- Rewards: Item, Economics, ServerRewards, and Score, without reward permissions.
- Logging events: Contract Accepted, Contract Completed, and Contract Abandoned.
Other excluded features include:
- the HUD
- per-category permission caps
- reward permissions
What premium content does on Lite
Section titled “What premium content does on Lite”Nothing you author on Lite is lost or rejected. Premium content stays in your files untouched and simply sits inactive until you upgrade. A Lite server is indistinguishable to players from a Full server where no one holds a premium grant: there is no upsell, no locked-feature message, no sign that the edition is reduced.
- Contracts that use a premium objective or condition are locked. They are never drawn into a category’s rotation and can’t be accepted, so players never see them. The contract’s definition is preserved exactly.
- Command rewards and rewards with reward permissions are never granted. They appear through the normal ineligible-reward treatment, the same as a reward a player doesn’t qualify for. The rest of the contract stays fully playable.
- Per-category contract caps are not enforced. A category behaves as it does for a player who holds none of its listed permissions (uncapped at the category level; the global cap still binds).
- The HUD is absent. There is no on-screen tracker and no HUD-related commands or limits.
- Premium logging events are not written. Only Contract Accepted, Completed, and Abandoned are recorded.
Disclaimer: Empty version updates
Section titled “Disclaimer: Empty version updates”Because the Lite edition is a subset of Full, its version number always matches the Full edition’s. As a result, some updates you receive on Lite will contain effectively no changes for your edition. I’ll try my best to note when a release is Lite-relevant, but keep up to date with the plugin versions regardless: staying current limits your exposure to issues if you later upgrade to Full.
How premium features are gated
Section titled “How premium features are gated”You might be tempted to flip a few booleans in the plugin’s code to make premium features work on Lite. Don’t: it won’t work, and it may have unintended consequences.
When the plugin is compiled for release, premium code is literally stripped out of the Lite edition using C# preprocessor directives. The functionality isn’t hidden, it simply doesn’t exist.
Some code paths use explicit edition checks instead. These don’t gate premium code, they keep the Lite edition from executing or displaying premium code paths that lead to dead ends. Removing them won’t make premium features work, it will just make the Lite edition crash or misbehave.
Other code paths reference premium features, but the code that makes them work isn’t present in the Lite edition. For example, the C# classes that define premium objective types and conditions exist in the Lite edition, but the code that defines their behavior does not. This lets the Lite edition coexist with premium data files, so upgrading to Full is literally just swapping in the Full Contracts.cs and reloading the plugin. Without these class definitions, premium data files on Lite could crash the plugin or make it delete data files.
