Advanced Modding
So you have been modding for some time and think you are ready for creating complicated and sophisticated parts? Then you are at the right place.
At this point you are expected to know all parameters and components in vanilla, and proficient enough to understand their workings to some detail.
And of course you should already have sprited your own work. For details and reminders consult the wiki.
UI buttons
User Interface- or UI-buttons provide the player and you the ability to control a part's function. There are two types: Type = UIToggle
or Type = UITrigger
.
UIToggles are just switches which can have many states, each representing a mode of operation or state. UITriggers are just triggers.
By combining their states with logic glue any kind of logic based function could be made.
A more in depth tutorial.
Note: UIToggles and UITrigger must be registered: either added to mod.txt or a collective file. They also require several tool tip registration in en.txt.
Logic Glue
Logic Glue is a term reffering to logic afforded by using triggers and toggles. These components allow the use of boolean logic to create functions.
Triggers and toggles
By using and combining various types of triggers and toggles you can realize a logical construct for a function. They, however, can not work all by themselves and require an actor.
The actor being either an UI-button or a storage or a component using the storage like a weapon. This is necessary because only a progress can change a state, hence, allow further processing.
No progress no advancement.
So basically, what they do is act on a state to trigger the next step or event. And keep track of the progress by checking the states. And act on any changes.
Although, the logic is very simple it is because it's simply that the logical construc can grow very fast for more than just casual functions.
Buffs
Buffs are basically messages. By using buffs a part's stats related function can be manipulated. Buff simply provide a percentage number which is can computed based on the settings.
By checking for the existence of a buff a part's mode or function can be set or triggered.
A more in depth tutorial.
Note: Buffs must be registered: either added to mod.txt or a collective file.
Note: A part can only be buffed if it's set to receive it.
Proxies
Other parts can be manipulated via a proxy or stand-in component. A proxy component can only access one part. In order to register a proxy its location, its category, and its target component must be precisely defined.
As such the complexity increases the number of related components dramatically. The main manipulation methodes as of Cosmoteer 0.14.1-3 is based on storages, converters, PartTrigger and buffs.
Further leading guides
Master Modding
Appendix
Modding Guideline for Quality Control, "Do's and don'ts for modding"
Extreme Modding only for those perfectionists