-
Notifications
You must be signed in to change notification settings - Fork 7
Home
kremnev8 edited this page Nov 22, 2021
·
6 revisions
Welcome to the CommonAPI documentation
- Stable means module is fully developed and its interface is unlikely to change.
- Untested means module is developed, but there were not real tests. As such, it might have game breaking bugs and interface might change
- Incomplete means module is currently is being developed. Such modules can easily change.
Modules:
| Module | Stability | Description |
|---|---|---|
| ProtoRegistrySystem | Stable | Easily register new items, recipes and more |
| Adding Protos | Stable | Adding new protos |
| Modifying Protos | Incomplete | Modifying existing protos |
| Assember Recipe Types | Untested | Add custom assembler types with unique recipes |
| TabSystem | Untested | Add new tabs to the replicator, assemblers and pickers |
| CustomKeyBindSystem | Stable | Register custom KeyBinds which can be rebound by user |
| PickerExtensionSystem | Stable | Extend behavior of Item and Recipe pickers |
| ItemPickerExtension | Stable | Filter displayed items using a function. Overtake picker behavior |
| RecipePickerExtension | Stable | Filter displayed recipes using a function |
| PlanetExtensionSystem | Untested | Add Extensions to planets to create custom behavior |
| EntityDataExtensions | Stable | Add custom data to EntityData class |
| CustomDescSystem | Untested | Define custom building descriptions, that can be bound to config files |
| PrefabDescExtensions | Stable | Add custom data to PrefabDesc class |
| ComponentSystem | Untested | Create buildings with custom behavior and custom UI |
| Copy and Paste settings | Untested | Allow players to copy and paste custom buildings settings |
| Custom Machine UI | Untested | Add custom UI to custom buildings |
| StarExtensionSystem | Untested | Add Extensions to stars to create custom behavior |
| UtilSystem | Stable | Other small utility features |
Where items in bold represent modules, while items not in bold represent respective module parts
Data structures:
| Structure | Stability | Description |
|---|---|---|
| Pool | Stable | Data structure that allows to store objects with persistent ID's |
| Registry | Stable | Data structure that allows to register objects with unique string ID's and then bind them to integer ID's |
| InstanceRegistry | Stable | Data structure that allows to register instances of objects with unique string ID's and then bind them to integer ID's |
| TypeRegistry | Stable | Data structure that allows to register types of objects with unique string ID's and then bind them to integer ID's |
Other:
| Name | Stability | Description |
|---|---|---|
| ConfigFileExtension | Stable | Migrate BepInEx config files |
| CopyPropertiesExtenstion | Stable | Copy any properties and fields from one object to another |
| HarmonyRegisterExtension | Stable | Group patches using an attribute and patch all of them using one call |
| PointsHelper | Stable | Utility class to help assigning positions and transforms to Desc classes, like BuildConditionConfig |
| UnityThread | Stable | Invoke code on the main Unity thread |
| Icon Generator | Stable | In-game utility that allows to create new icon for buildings. Disabled by default |