TeleCore Mod is a collection of tools and functions I’ve created over the years of developing mods for RimWorld. There are tons of utility functions as well as feature-sets for custom mechanics, like animations, pipe networks and more. A lot of these were made for personal use, but maybe it might be of use to fellow modders!
See the Wiki for the documentation (not guaranteed to be maintained) here.
TeleCore – A Modding Framework Mod features
FX Layers
Extend your rendering with additional layers! The CompFX ThingComp allows you to add as many new layers to render on top of anything, additionally, use the IFXObject interface to have full control over the properties of each layer via indexed Getters!
NOTE: I will add code reference for this soon!
Example:
Pipe Network
There’s been a lot of ways pipe systems have been handled in RW, my dream for a long time was a system that is more akin to actual fluid flow such as in Factorio based on pressure differences.
Basic behavior is fully configurable in XML, while more complex functionality can easily be extended with custom ThingComps.
The networks work with a custom container-based value system, with each structure in a network able to fulfill multiple roles.
Room Comps
The base game generally has no way to attach custom logic to rooms, so systems like temperature tend to be hardcoded. With RoomComponents you can easily create your own logic and attach it to any room in the game.
For example I used this to create the atmospheric framework, allowing gas-exchange between rooms!
Turrets+
This framework adds a custom Turret class, allowing you to have multiple turret guns on top of the same structure, all working independently!
Alongside adding turrets to anything via a ThingComp.
This also extends to turret rendering, allowing you to customize details like kickback and offsets for projectile spawns on your turrets barrel.
Verbs+
Alongside to extended turrets, this framework adds extended verbs, including beam attacks.
Timed Actions
This is specifically interesting for modders using C#.
With the help of the ActionComposition class, you can create custom execution flow based on timed events.
Examples include a multi-stage visual effects with specific timings.
TickManager
A more experimental feature is the custom TickManager, running alongside the base-game TickManager.
This is mainly used for the animation tool, but allows you to subscribe custom Tick Actions to not run on the main tick loop.
Be aware that this does not guarantee performance improvement and that the general use of this may be debatable.
Tools!
There is also lots and lots of tools and utility classes. From custom Widget extensions, to various helpful formatting extensions.
Some unique helper classes to wrap data exist as well!
Animation
This framework adds a custom animation system with a built-in animation tool accessible from the main menu.
It also provides a ‘ThingComp’ to play animations directly or it can be used to trigger animations with custom conditions.
This feature has been partially superseded by the new animation functionality of 1.5 and requires more maintenance later.
Note: All structures used in the showcases are from my main TiberiumRim mod, which is currently undergoing heavy development!
If you like what I’m doing support me on Patreon!