# Mod Compatibility Tips?

**URL:** <https://discourse.cataclysmdda.org/t/mod-compatibility-tips/23301>\
**Category:** The Toolbox\
**Created:** [April 17, 2020, 10:55pm UTC](https://discourse.cataclysmdda.org/t/mod-compatibility-tips/23301 "2020-04-17T22:55:04Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![CreeperWatcher23](https://avatars.discourse-cdn.com/v4/letter/c/b5e925/32.png) [@CreeperWatcher23](https://discourse.cataclysmdda.org/u/CreeperWatcher23)\
**Post date:** [April 17, 2020, 10:55pm UTC](https://discourse.cataclysmdda.org/t/mod-compatibility-tips/23301/1 "2020-04-17T22:55:04Z")

</div>

So I’ve been slowly designing a mutation heavy mod recently, and was wondering what would be the best way to make it combatable with other mods that may poke the mutation aspect of the game.  
The main issue I come across is having to edit a mutation to include a new mutation category/branch, and another mod will do the same.  
I’ve just recently learned how to use the “copy-from” line to modify instead of replacing a trait, but if someone else’s mod is prioritized and they don’t use this, its useless.  
I’ve also recently discovered that Aftershock had created a trait with the same ID, so would having a separate compatibility mod that relies on aftershock and edit the trait there be the best way to fix this or is there be a smoother alternative?

hopefully that’s understandable

---

<div class="post-metadata">

**Author:** ![Firebrand](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.cataclysmdda.org/firebrand/32/6020_2.png) [@Firebrand](https://discourse.cataclysmdda.org/u/Firebrand)\
**Post date:** [April 18, 2020, 10:33am UTC](https://discourse.cataclysmdda.org/t/mod-compatibility-tips/23301/2 "2020-04-18T10:33:43Z")

</div>

One thing I find useful in modding is using mod tag prefixes for every entity (item, trait, bionic, creature etc.) you create if it’s only limited to your mod. For example, [Project APEX](https://github.com/FirebrandCoding/ProjectAPEX) prefixes everything with `apex_` simply as a matter of good practice. I don’t expect anyone to every experience ID collision with my mods, but – you never know. That’s the point.

By contrast, [Homestead](https://github.com/FirebrandCoding/HomesteadInstrumentsInc) doesn’t add any prefixes because its intent is to be used by other mods, in as wide a way as is possible. Prefixing here would be detrimental to the modding of dependent mods: it’d be saying that this or that feature is _supposed to be_ Homestead-exclusive, regardless of what my intent would’ve been.

Ideally, _Cataclysm_ would feature what I call mod bridges: optional compatibility sections of the mod that only active if a mod of certain ID (for your example, `aftershock`) is present in the world’s mod queue. When it is (or when it isn’t, depending on how you define it), a folder loads (or specifically doesn’t load) in addition to what you’ve already embedded into the base structure of your mod.

Alas, for now you’d have to manually produce compatibility submods in order to ensure your mod working smoothly with others.

---

<div class="post-metadata">

**Author:** ![CreeperWatcher23](https://avatars.discourse-cdn.com/v4/letter/c/b5e925/32.png) [@CreeperWatcher23](https://discourse.cataclysmdda.org/u/CreeperWatcher23)\
**Post date:** [April 20, 2020, 2:12am UTC](https://discourse.cataclysmdda.org/t/mod-compatibility-tips/23301/3 "2020-04-20T02:12:17Z")

</div>

Thank you, now how game breaking would it be if the player could make recipe books?  
Like the player has gained access to multiple lab journals, but they still want a better mutagen than were designed during the cataclysm, and making the book would stimulate the player researching how to make new mutagens.  
or would it be better just to add the new recipies that need a higher skill to old books?

I want to spitball some ideas like this for my mod but i’m unsure where to do so without making a post for the little questions i have, just the thread for noob questions or?

---

<div class="post-metadata">

**Author:** ![Firebrand](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.cataclysmdda.org/firebrand/32/6020_2.png) [@Firebrand](https://discourse.cataclysmdda.org/u/Firebrand)\
**Post date:** [April 20, 2020, 8:09am UTC](https://discourse.cataclysmdda.org/t/mod-compatibility-tips/23301/4 "2020-04-20T08:09:57Z")

</div>

I’d say a separate topic warrants a separate thread. If you have a handful of smaller questions, it may be better to create their own dedicated thread and edit it as more questions appear.

Using an old thread for new questions can be confusing: you end up burying the new questions under the guise of an old thread.
