Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/shresht7/vscode-bg3-modding
A VSCode extension with tools, snippets and helpers for modding Baldur's Gate 3
https://github.com/shresht7/vscode-bg3-modding
baldurs-gate-3 bg3 modding
Last synced: 4 days ago
JSON representation
A VSCode extension with tools, snippets and helpers for modding Baldur's Gate 3
- Host: GitHub
- URL: https://github.com/shresht7/vscode-bg3-modding
- Owner: Shresht7
- License: mit
- Created: 2023-12-23T07:40:29.000Z (almost 1 year ago)
- Default Branch: main
- Last Pushed: 2024-01-16T11:27:09.000Z (11 months ago)
- Last Synced: 2024-10-31T10:36:32.054Z (about 2 months ago)
- Topics: baldurs-gate-3, bg3, modding
- Language: TypeScript
- Homepage:
- Size: 235 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# `BG3 Modding` support for Visual Studio Code
This VS Code extension contains useful tools, snippets and helpers for creating mods for [**Baldur's Gate 3**](https://baldursgate3.game/).
Table of Contents
- [⚡ Activation Events](#-activation-events)
- [⭐ Features](#-features)
- [📄 Snippets](#-snippets)
- [⌨️ Commands](#️-commands)
- [`Generate UUID`](#generate-uuid)
- [`Generate Handle`](#generate-handle)
- [`Copy Mod UUID`](#copy-mod-uuid)
- [`Convert Version Number`](#convert-version-number)
- [`Bump Version Number`](#bump-version-number)
- [✅ JSON Validation](#-json-validation)
- [⚙️ Default Configurations](#️-default-configurations)
- [`files.associations`](#filesassociations)
- [`search.exclude`](#searchexclude)
- [⚙️ Extension Settings](#️-extension-settings)
- [📄 License](#-license)## ⚡ Activation Events
- `workspaceContains:/**/meta.lsx`
The extension activates for a workspace that contains the `meta.lsx` file.## ⭐ Features
- [📄 Snippets](#-snippets)
- [⌨️ Commands](#️-commands)
- [✅ JSON Validation](#-json-validation)
- [⚙️ Default Configurations](#️-default-configurations)### 📄 Snippets
The extension contributes the following snippets:
| Name | Activation | Description |
| ------------------------------- | -------------------: | --------------------------------------------------------- |
| BG3 UUID | `uuid` | Generate a random UUID |
| BG3 Handle | `handle` | Generates a random UUID handle used in localization files |
| `Ext.Utils.Print()` | `print`, `eup` | `Ext.Utils.Print()` |
| `Ext.Osiris.RegisterListener()` | `rl`, `orl`, `eorl` | `Ext.Osiris.RegisterListener()` |
| Override Stat Entry | `new`, `override` | Create an override for an existing Stat Entry |
| Script-Extender Config | `cfg`, `Config.json` | Generates the boilerplate Script-Extender `Config.json` |
| `meta.lsx` | `meta` | Generates the boilerplate template for `meta.lsx` |[Back to Top ⬆️](#bg3-modding-support-for-visual-studio-code)
### ⌨️ Commands
The extension contributes the following commands:
- [`Generate UUID`](#generate-uuid)
- [`Generate Handle`](#generate-handle)
- [`Copy Mod UUID`](#copy-mod-uuid)
- [`Convert Version Number`](#convert-version-number)
- [`Bump Version Number`](#bump-version-number)#### `Generate UUID`
Generate a random UUID and insert at the current selection.
```
b7b98e25-ff34-40dd-b019-ab25521ae5a0
```#### `Generate Handle`
Generate Handle and insert at the current selection.
```
hb7b98e25gff34g40ddgb019gab25521ae5a0
```#### `Copy Mod UUID`
Copies the Mod's UUID to the clipboard.
#### `Convert Version Number`
Convert between BG3 version numbers.
```
1.0.0.0 --> 36028797018963968
36028797018963968 --> 1.0.0.0
```##### Input: Version Number
Takes the version number as input in either the string format (e.g. `1.0.0.0`) or bigint format (e.g. `36028797018963968`).
#### `Bump Version Number`
Bumps the version number in the `meta.lsx` by the specified type.
```
1.0.0.0 --- Bump Minor Version --> 1.1.0.0
1.2.0.7 --- Bump Major Version --> 2.0.0.0
```##### Input: Kind
- `Major`
- `Minor`
- `Revision`
- `Build`[Back to Top ⬆️](#bg3-modding-support-for-visual-studio-code)
### ✅ JSON Validation
The extension contributes JSON validation schemas for:
- [`ScriptExtender/Config.json`](./schema/Config.schema.json)
- [`ScriptExtenderSettings.json`](./schema/ScriptExtenderSettings.schema.json)This will enable intellisense and provide validation for these files.
[Back to Top ⬆️](#bg3-modding-support-for-visual-studio-code)
### ⚙️ Default Configurations
The extension provides default configuration settings for:
#### `files.associations`
```json
"files.associations": {
"*.lsx": "xml",
"*.lsj": "json"
},
```#### `search.exclude`
```json
"search.exclude": {
"**/*.raw": true,
"**/Story/*.div": true,
"**/*.osi": true,
"**/*.dat": true
}
```[Back to Top ⬆️](#bg3-modding-support-for-visual-studio-code)
---
## ⚙️ Extension Settings
Include if your extension adds any VS Code settings through the `contributes.configuration` extension point.
For example:
This extension contributes the following settings:
* `myExtension.enable`: Enable/disable this extension.
* `myExtension.thing`: Set to `blah` to do something.[Back to Top ⬆️](#bg3-modding-support-for-visual-studio-code)
---
## 📄 License
This project is licensed under the [MIT License](./LICENSE).