Understanding Mod Folder Structure

From Baldur's Gate 3 Wiki
Jump to navigation Jump to search

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.