GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - wowdev/DBCD: C# library for reading DBC/DB2 database files from World of Warcraft

BranchesTags
Open more actions menu

Latest commit

 

History

249 Commits
249 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
DBCD.Benchmark
DBCD.Benchmark
 
 
DBCD.IO
DBCD.IO
 
 
DBCD.Tests
DBCD.Tests
 
 
DBCD
DBCD
 
 
.gitignore
.gitignore
 
 
DBCD.sln
DBCD.sln
 
 
Directory.Build.props
Directory.Build.props
 
 
Directory.Build.targets
Directory.Build.targets
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
nuget-icon.png
nuget-icon.png
 
 

Repository files navigation

DBCD

C# library for reading and writing DBC/DB2 database files from World of Warcraft with built-in support for WoWDBDefs definitions.

Features

  • Reading of WDBC (.dbc) and WDB2-WDB6, WDC1-WDC5 (.db2).
  • Experimental writing (WDC3 works, the others likely will too but are largely untested with actual WoW clients).
  • Applying of hotfixes (DBCache.bin).

Projects

DBCD

Contains the glue between DBCD.IO, DBDefsLib and the providers.

DBCD.IO

Contains the actual reading and writing of DBC/DB2 files.

Limitations

  • (Reading/Writing) Relies on WoWDBDefs (DBDs) for table structures, can not load tables without DBDs (yet).
  • (Writing) Does not support writing out DB2s with multiple sections.

Example Usage

// A FilesystemDBCProvider to load DBCs/DB2s from a directory on disk. 
var localDBCProvider = new FilesystemDBCProvider("D:/DBC");

// A FilesystemDBDProvider to load DBDs from a folder, you can also use GithubDBDProvider to download them directly from GitHub.
var localDBDProvider = new FilesystemDBDProvider("D:/WoWDBDefs/definitions");

// A new DBCD instance with the specified DBC/DBD provider.
var dbcd = new DBCD(localDBCProvider, localDBDProvider);

// Loads Map.db2 (note the table name without extension) for build 11.0.2.56044 (build might be needed to load correct definition).
var storage = dbcd.Load("Map", "11.0.2.56044");

// Get the row with ID 2552.
var row = storage[2552];

// Outputs "Khaz Algar (Surface)".
Console.WriteLine((string)row["MapName_lang"]);

About

C# library for reading DBC/DB2 database files from World of Warcraft

Resources

Readme
MIT license
Activity
Custom properties

Stars

57 stars

Watchers

10 watching

Forks

39 forks
Report repository

Releases

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.