# MoonWell DBC Editor A VS Code Custom Editor for World of Warcraft 3.3.5a `WDBC` files, targeting client build `12340`. ## Features - Opens `.dbc` files as a paged table instead of loading the whole grid into the Webview. - Includes 246 build-specific schemas with named and typed columns. - Edits signed/unsigned integers, floats, UTF-8 strings, arrays and localized strings. - Supports add, duplicate and delete row operations. - Integrates with VS Code undo/redo, Save, Save As, Revert and hot-exit backups. - Rebuilds and deduplicates the WDBC string block when saving. - Creates `.dbc.bak` before an in-place save by default. - Falls back to raw 32-bit columns when a schema is missing or its record size differs. The editor intentionally supports `WDBC` only. Later `DB2`, `WDB` and cache formats are outside the current build-12340 scope. ## Development ```powershell cd vscode-dbc-editor npm install npm run check ``` Open this directory in VS Code and press `F5` to launch an Extension Development Host. Open any `.dbc` file there; the custom editor is registered as the default editor. To produce an installable VSIX: ```powershell npm run package code --install-extension .\moonwell-dbc-editor-0.1.0.vsix ``` ## Editing notes - Click a row number to select it for duplicate/delete operations. - Cell values can be edited inline. The lower text area is useful for long strings; press `Ctrl+Enter` or click **Apply cell**. - Search is performed on the ID plus ordinary, `enUS`, and `ruRU` string columns. - An unknown or structurally different table opens in raw mode to avoid applying the wrong string offsets or field types. - ID edits are rejected when they would create a duplicate key. ## Schema provenance The schema bundle is derived from WoWDBDefs under CC BY-SA 4.0. See `THIRD_PARTY_NOTICES.md` and `schemas/README.md`. WDBXEditor was used as a behavioral reference only. Its source and XML definitions are not redistributed here.