Understanding Mod Folder Structure: Difference between revisions

From Baldur's Gate 3 Wiki
Jump to navigation Jump to search
No edit summary
(Moved general case to before example and reworded it)
 
Line 1: Line 1:
Here is an example of the structure of a BG3 mod.
== Folder Structure for a General Mod==
The following is how the folder structure of a typical mod might appear. It's purpose is not to be exhaustive, but rather showcase the folder structure of what are generally the most essential parts of a typical mod. Text contained within braces <code>{}</code> are meant to be filled in by the author of the mod.
 
*{Mod Name} (root/workspace folder)
**Generated
***Public
****{Mod Name}
***** [PAK]_{Mod_Name} (contains models and textures)
**Localization
*** {Language} (usually called just ''English'')
****<code>{Mod_Name}.loca.xml</code> (contains the text to display for items and spells)
**Mods
***{Mod Name}
****<code>meta.lsx</code> (see [[Modding:Creating meta.lsx|Creating meta.lsx]] for more information)
**Public (use one of the [https://bg3.wiki/wiki/Modding:Sample_Templates Sample Mods] as a template for this folder)
***Game (icons and other UI elements)
***{Mod Name} (mod files in plain-text or XML)
**ScriptExtender (this folder and its contents are only present if using [[Norbyte's Script Extender|Norbyte's Script Extender]])
***Config.json


You may wish to compare and contrast to one of the [https://bg3.wiki/wiki/Modding:Sample_Templates Sample Mods].




== Folder Structure for an armour mod with new meshes and textures==
== Folder Structure for an armour mod with new meshes and textures==
Here is an example of the structure of a BG3 mod. You may wish to compare and contrast to one of the [https://bg3.wiki/wiki/Modding:Sample_Templates Sample Mods].
Your mod is '''MySweetMod'''
Your mod is '''MySweetMod'''


Line 42: Line 61:
*******Generated <--- TreasureTable.txt - This tells the game where the item will spawn.
*******Generated <--- TreasureTable.txt - This tells the game where the item will spawn.
********Data <--- Armor.txt, Object.txt, Passive.txt, Weapon.txt and other TXT files. These contain stats.
********Data <--- Armor.txt, Object.txt, Passive.txt, Weapon.txt and other TXT files. These contain stats.
== Folder Structure for a General Mod==
*Mod Name (root/workspace folder)
**Generated
***Public
****Mod Name
***** [PAK]_Mod_Name <- models and textures
**Localization
*** Language <- usually ''English''
****<code>Mod_Name.loca.xml</code> <- text for items and spells
**Mods
***Mod Name
****<code>meta.lsx</code> <- See [[Modding:Creating meta.lsx|Creating meta.lsx]]
**Public <- use one of the [https://bg3.wiki/wiki/Modding:Sample_Templates Sample Mods] as a template for this folder
***Game <- icons and other UI elements
***Mod Name <- mod files in plain-text or XML

Latest revision as of 15:50, 4 January 2024

Folder Structure for a General Mod[edit | edit source]

The following is how the folder structure of a typical mod might appear. It's purpose is not to be exhaustive, but rather showcase the folder structure of what are generally the most essential parts of a typical mod. Text contained within braces {} are meant to be filled in by the author of the mod.

  • {Mod Name} (root/workspace folder)
    • Generated
      • Public
        • {Mod Name}
          • [PAK]_{Mod_Name} (contains models and textures)
    • Localization
      • {Language} (usually called just English)
        • {Mod_Name}.loca.xml (contains the text to display for items and spells)
    • Mods
    • Public (use one of the Sample Mods as a template for this folder)
      • Game (icons and other UI elements)
      • {Mod Name} (mod files in plain-text or XML)
    • ScriptExtender (this folder and its contents are only present if using Norbyte's Script Extender)
      • Config.json


Folder Structure for an armour mod with new meshes and textures[edit | edit source]

Here is an example of the structure of a BG3 mod. You may wish to compare and contrast to one of the Sample Mods.

Your mod is MySweetMod

  • MySweetMod
    • Generated
      • Public
        • MySweetMod
          • Assets <- models and textures
    • Localization
      • Language <- usually English
        • MySweetMod.loca <- text for items and spells
    • Mods
    • Public
      • Game
        • Assets
          • ControllerItems
            • items_png <--- 144 x 144 .DDS icon files for outfits and weapons
            • skills_png <--- 144 x 144 .DDS icon files for spells and passives
          • Tooltips
            • ItemIcons <--- 380 x 380 .DDS icon files for outfits and weapons
            • Icons <--- 380 x 380 .DDS icon files for spells and passives
      • MySweetMod
        • Assets
          • Textures
            • Icons <--- .dds Texture Atlas for Icons
        • Content
            • Assets
              • Characters
                • [PAK]_Armor <-- material and mesh LSX for custom outfits and weapons.
          • UI
            • [PAK]_UI <--- Contains '_merged.lsx'. This tells the game what the texture atlas dds is called and where it is.
        • GUI <--- Icons_Items.lsx. This sets the positions for the icon texture atlas.
          • RootTemplates <--- Your Roottemplate lsx goes here. MySweetMod.Lsx
          • Stats
              • Generated <--- TreasureTable.txt - This tells the game where the item will spawn.
                • Data <--- Armor.txt, Object.txt, Passive.txt, Weapon.txt and other TXT files. These contain stats.