About Carbon Compatibility Loader
ALL RIGHTS RESERVED (C) PATRETTE 2023
This open-source extension is designed to process, execute and make compatible with Carbon mass majority of currently public Oxide extensions and Harmony mods.
How It Works
The very high frequency extension's entirely self-contained and automatically updates whenever there is a new update released on the GitHub page.
Since the extension requires a few additional NuGet dependencies, they get automatically downloaded with the extension, when updates occur.
When a server starts, it'll create 3 folders;
- carbon/CCL: The contained folder of the extension.
- carbon/CCL/oxide: All Oxide extensions (*.dll) go here.
- carbon/CCL/harmony: All Harmony mods go here.
The further processing of the extensions are all made at runtime, in-memory. It does a variety of things, such as;
- It dynamically modifies MSIL assembly code of the extensions & Harmony mods.
- Remaps assembly type references so they are replaced with the ones from Carbon.
- Marks obsolete certain patches from Harmony mods that are not needed in a framework environment.
- Dynamically adds custom entry points that are used by CCL's extension loading system.
- Automatically adds plugin attributes to Oxide pre-compiled plugins.
- Basically magic.
How To Install
To get started, please follow the following instructions:
-
Download CCL from Codefling or from GitHub.
- If you use GitHub, unzip CCLBootstrap.dll into your carbon/extensions folder.
- Drag and drop the carbon folder from the zip file over your Rust server directory.
- Start up (or restart) your server.
Disclaimer
We've done extensive testing with various popular public Oxide extensions and Harmony mods,
although if there are any close-case issues where there might be unexpected behaviour, please submit a support request or an issue on GitHub.