Kelsidavis-WoWee/tools/editor/dbc_exporter.hpp
Kelsi 176115f279 feat(editor): DBC→JSON export for open format zone data tables
- DBCExporter: converts Blizzard DBC binary data tables to JSON
- Exports zone-relevant DBCs: AreaTable, Map, Light, LightParams,
  ZoneMusic, SoundAmbience, GroundEffectTexture/Doodad, LiquidType
- Auto-detects string vs numeric vs float fields
- Zone export now includes data/ directory with JSON DBCs
- Client can load these via existing CSV/JSON fallback paths

Format replacement progress:
- DONE: ADT → WOT/WHM (terrain)
- DONE: WDT → zone.json (map definition)
- DONE: BLP → PNG (textures)
- DONE: DBC → JSON (data tables)
- TODO: M2 → open model format
- TODO: WMO → open building format
2026-05-05 10:21:14 -07:00

25 lines
648 B
C++

#pragma once
#include "pipeline/dbc_loader.hpp"
#include <string>
#include <vector>
namespace wowee {
namespace pipeline { class AssetManager; }
namespace editor {
class DBCExporter {
public:
// Export a DBC file as JSON with field names from layout
static bool exportAsJson(pipeline::AssetManager* am,
const std::string& dbcName,
const std::string& outputPath);
// Export all zone-relevant DBCs to JSON
static int exportZoneDBCs(pipeline::AssetManager* am,
const std::string& outputDir);
};
} // namespace editor
} // namespace wowee