Recommend Required Tools - BG3-Community-Library-Team/BG3-Community-Library GitHub Wiki
You may find it useful, if contributing, to have a development environment ready for making contributions. You can, of course, rough it with Notepad, but a few specific tools will make your life much, much easier.
Recommended/Required Tools
BG3 Modder's Multitool
This makes the process of mod-making significantly easier. It automatically builds your mods (known as paking), indexes your game files (making searching game files easier ), and will soon have a powerful Mod Editing GUI component. It can also generate GUIDs for you.
Export Tool v. 1.18.5 or higher
This is an important tool to have when modding Baldur's Gate 3. It performs various functions related to modding. One of its most important features is converting localization .xml files to .loca.
BG3 Mod Manager
This simplifies the mod installation process. You can drag the .zip file of a mod into this program, and it will install it automatically for you. All you have to do is drag it from the inactive load order to the active load order, click Save, and click Export. You can also adjust the load order of your mods, which prevents conflicts and ensures functionality between mods that depend on other mods to function.
Git
Because we're using Github, Git is the preferred version control system for this project. If you don't have Git, we highly recommend it as a way to handle versioning and manage your code. It's a lifesaver.
Visual Studio Code (or Notepad++)
Visual Studio Code(VSCode) is the preferred file editor for this project. Notepad++ works, as does Notepad (though you'd be doing yourself a disservice), but VSCode shines due to many different features:
- The UUID Generator add-on adds a keyboard shortcut (Alt+Shift+U) to generate a GUID. When working with .lsx files, this is a massive timesaver. You can make GUIDs while coding rather than shifting to another page or application to generate and copy one.
- The BG3 Text Support add-on automatically applies colorization for Data items (often stored in .txt files). This makes it easier to spot faulty data entries and just generally makes coding easier on the eyes. It includes syntax highlighting, auto-formatting, and customization capabilities.
- VSCode has a Project Folder Sidebar. You can designate which folder is your Project folder, and it will display a tree view of all folders and files within the Project folder. This makes it easier to get to or create the file you need. By selecting your main modding folder, you can view any unpaked data files from the game in the Multitool's folder.
- VSCode autofills commands across files. For example, if you've added a status entry in
CL_Status_BOOST.txt
, you can start typing it and select the full name from a list. It can also search every file in a project at once. This is especially useful if you need to find and replace every instance of a UUID. - VSCode can display multiple files at once in the same window. Notepad++ can display up to 2 files side-by-side. I'm not really sure if Atom has a limit, but it can display at least 8 files at once. I find a three file layout works best for me.
- VSCode has Github integration built in, letting you to fetch, change branches, and more, all from within the editor. This can be especially useful if you're not a fan of using git via the command line.