Message archives and Help:Resolving mod conflicts: Difference between pages

From ZeldaMods (Breath of the Wild)
(Difference between pages)
Jump to navigation Jump to search
imported>Leoetlino
(clarify that EventFlowMsg is only used for non-Demo event flows and add some links)
 
imported>NiceneNerd
 
Line 1: Line 1:
<onlyinclude>
Because of the way ''Breath of the Wild'' game content is structured, multiple mods often have to make incompatible changes to the same files or groups of files. Not all of this can be helped—some mods will always conflict—but many of the most common mod conflicts can be resolved. There are seven major areas of concern in resolving mod conflicts: the [[Resource_system#Resource_size_table|RSTB]], [[SARC|SARC packs]], [[Message archives|game texts]], [[gamedata.ssarc|game data]], [[SaveMgr|save data]], [[ActorInfo.product.sbyml|actor info]], and the contents generally of [[BYML]] and [[AAMP]] files.
'''Message archives''' (named with the format '''Msg_XXxx.product.ssarc''') are [[Yaz0]]-compressed [[SARC|SARC archives]] which contain the game's text files. Multiple different archives exist, one for each language. All of the contents are [[msbt]] files.
 
</onlyinclude>
== RSTB Conflicts ==
== Msg_XXxx.product.ssarc ==
RSTB conflicts occur when two or more mods modify [[ResourceSizeTable.product.rsizetable]]. Unless the changes are merged, you may experience the general symptoms of RSTB problems when trying to use such mods together, which may include crashes, invisible models, missing actors, or hanging on the loading screen. Note especially that crashes which come immediately on loading the game often involve the RSTB entry for [[Bootup.pack]] or one of the message archives [[Help:Resolving_mod_conflicts#Game_text_conflicts|described below]].
=== ActorType ===
 
Contains the names, and other related text, of various [[Actor|actors]], including inventory items, NPCs and enemies.
To resolve RSTB conflicts, you must identify the RSTB changes made by each mod, which can be compared using [[Help:Tools/rstb|rstbtool]] or [[Help:Tools/Wild_Bits|Wild Bits]]. For help with this, see [[Help:Updating the RSTB]].
=== DemoMsg ===
 
Contains text used in cutscenes.
== SARC Conflicts ==
=== EventFlowMsg ===
SARC conflicts occur when two or more mods modify the same [[SARC]] file, most frequently [[TitleBG.pack]], [[Bootup.pack]], or an [[Sbactorpack|actor pack]]. For example, if one mod changes Link's appearance and one mod changes the texture of the paraglider, each mod will contain an entire TitleBG.pack file, and they will not cooperate. Or mods that affect armour visuals (e.g. the Linkle mod) and armour behaviors (e.g. Hyrule Rebalance) will also need to be merged since they will affect the same actor packs for the armours.
Contains text used in [[event flow]]s, such as NPC dialogue. Text for [[Demo]]s (cutscenes) is however located in DemoMsg rather than EventFlowMsg.
 
=== LayoutMsg ===
To resolve SARC conflicts, you must identify the changed files in each SARC and manually copy the changed files in each to a single SARC. You can extract and modify SARC archives using [[Help:Tools/sarc|sarc]] or [[Help:Tools/Wild_Bits|Wild Bits]].
Contains standard text used in the game's [[UI]], HUD, and menus.
 
=== QuestMsg ===
== Game Text Conflicts ==
Contains quest-related text, including quest logs and NPC dialogue.
Game text conflicts occur when two or more mods modify the same [[Message archives]], which contain the game text files, and which are in turn contained in the [[Regional_Bootup_packs|regional Bootup packs]]. All game texts, whether dialogue or armour descriptions or anything else, are stored in single message archive files, so all text mods for the same language will conflict unless manually merged.
=== ShoutMsg ===
 
Contains subtitles for voice-acted dialogue spoken by allied NPCs during gameplay.
To resolve game text conflicts, you must open the message archives using [[Help:Tools/sarc|sarc]] or [[Help:Tools/Wild_Bits|Wild Bits]] and then edit the [[MSBT]] files inside using a tool like [[Help:Tools/msyt|msyt]]. You will probably also need to edit the RSTB entry for the message archive.
=== Tips ===
 
Contains hint messages displayed on loading screens.
== Game Data and Save Data Conflicts ==
=== StaticMsg ===
Game data and save data conflicts occur when two or more mods modify [[gamedata.ssarc]] or [[savedataformat.ssarc]]. Unless these changes are merged, the game will not be able to reliably record things like new actors, map data, or save flags. For example, a new treasure chest on the overworld will always respawn and refill if its game data and save data flag doesn't exist or is overwritten by a mod conflict.
Contains various miscellaneous text, in particular all location names and dungeon names.
 
To resolve game data and save data conflicts, you will need to use a SARC tool to extract gamedata.ssarc or savedataformat.ssarc from [[Bootup.pack]]. Then you can use the tool to extract the [[Bgdata|.bgdata]] or [[Bgsvdata|.bgsvdata]] files within. These are [[BYML]] files and can be edited using [[Help:Tools/byml-v2|byml]] or [[Help:Tools/Wild_Bits|Wild Bits]]. Note for merging save data files that save data entries must be sorted by the <code>HashValue</code> field.
 
== Actor Info Conflicts ==
Actor info conflicts occur when two or more mods modify [[ActorInfo.product.sbyml]], which contains information about all of the actors in the game. Mods which change items stats, add new items, or otherwise create or modify actors will often use this file (e.g. Hyrule Rebalance and Crafting Project). Such mods will not work together without merging, and the result may include missing actors, crashes, or incorrect item information in the game menu.
 
To resolve actor info conflicts, you will need to use [[Help:Tools/byml-v2|byml]] or [[Help:Tools/Wild_Bits|Wild Bits]] to convert it to YAML. Then you can copy the modified data between the two copies.
 
== BYML and AAMP Conflicts ==
Many files in BotW store data in BYML or AAMP format. If two mods change the same file, their changes will not work together even if they affect different parameters (e.g. a change to Link's climing speed and a change to Link's swimming speed). Any such changes must be merged to both work.
 
To resolve conflicts within BYML or AAMP files, you will need to convert the copies of the file to YAML using [[Help:Tools/byml-v2|byml]] or [[Help:Tools/aamp|aamp]] respectively, or using [[Help:Tools/Wild_Bits|Wild Bits]]. Then in YAML you can easily compare the files for changes and combine them. For more information on using these tools, follow the links to their respective pages.
 
[[Category:Guides]]

Revision as of 02:29, 27 July 2019

Because of the way Breath of the Wild game content is structured, multiple mods often have to make incompatible changes to the same files or groups of files. Not all of this can be helped—some mods will always conflict—but many of the most common mod conflicts can be resolved. There are seven major areas of concern in resolving mod conflicts: the RSTB, SARC packs, game texts, game data, save data, actor info, and the contents generally of BYML and AAMP files.

RSTB Conflicts

RSTB conflicts occur when two or more mods modify ResourceSizeTable.product.rsizetable. Unless the changes are merged, you may experience the general symptoms of RSTB problems when trying to use such mods together, which may include crashes, invisible models, missing actors, or hanging on the loading screen. Note especially that crashes which come immediately on loading the game often involve the RSTB entry for Bootup.pack or one of the message archives described below.

To resolve RSTB conflicts, you must identify the RSTB changes made by each mod, which can be compared using rstbtool or Wild Bits. For help with this, see Help:Updating the RSTB.

SARC Conflicts

SARC conflicts occur when two or more mods modify the same SARC file, most frequently TitleBG.pack, Bootup.pack, or an actor pack. For example, if one mod changes Link's appearance and one mod changes the texture of the paraglider, each mod will contain an entire TitleBG.pack file, and they will not cooperate. Or mods that affect armour visuals (e.g. the Linkle mod) and armour behaviors (e.g. Hyrule Rebalance) will also need to be merged since they will affect the same actor packs for the armours.

To resolve SARC conflicts, you must identify the changed files in each SARC and manually copy the changed files in each to a single SARC. You can extract and modify SARC archives using sarc or Wild Bits.

Game Text Conflicts

Game text conflicts occur when two or more mods modify the same Message archives, which contain the game text files, and which are in turn contained in the regional Bootup packs. All game texts, whether dialogue or armour descriptions or anything else, are stored in single message archive files, so all text mods for the same language will conflict unless manually merged.

To resolve game text conflicts, you must open the message archives using sarc or Wild Bits and then edit the msbt files inside using a tool like msyt. You will probably also need to edit the RSTB entry for the message archive.

Game Data and Save Data Conflicts

Game data and save data conflicts occur when two or more mods modify gamedata.ssarc or savedataformat.ssarc. Unless these changes are merged, the game will not be able to reliably record things like new actors, map data, or save flags. For example, a new treasure chest on the overworld will always respawn and refill if its game data and save data flag doesn't exist or is overwritten by a mod conflict.

To resolve game data and save data conflicts, you will need to use a SARC tool to extract gamedata.ssarc or savedataformat.ssarc from Bootup.pack. Then you can use the tool to extract the .bgdata or .bgsvdata files within. These are BYML files and can be edited using byml or Wild Bits. Note for merging save data files that save data entries must be sorted by the HashValue field.

Actor Info Conflicts

Actor info conflicts occur when two or more mods modify ActorInfo.product.sbyml, which contains information about all of the actors in the game. Mods which change items stats, add new items, or otherwise create or modify actors will often use this file (e.g. Hyrule Rebalance and Crafting Project). Such mods will not work together without merging, and the result may include missing actors, crashes, or incorrect item information in the game menu.

To resolve actor info conflicts, you will need to use byml or Wild Bits to convert it to YAML. Then you can copy the modified data between the two copies.

BYML and AAMP Conflicts

Many files in BotW store data in BYML or AAMP format. If two mods change the same file, their changes will not work together even if they affect different parameters (e.g. a change to Link's climing speed and a change to Link's swimming speed). Any such changes must be merged to both work.

To resolve conflicts within BYML or AAMP files, you will need to convert the copies of the file to YAML using byml or aamp respectively, or using Wild Bits. Then in YAML you can easily compare the files for changes and combine them. For more information on using these tools, follow the links to their respective pages.