Kelsidavis-WoWee/tools/editor/zone_manifest.hpp
Kelsi e0d14de5d2 feat(editor): zone manifest for client loading, export workflow complete
- Zone manifest (zone.json): generated on export with map name, map ID,
  tile list, biome, creature flag, and file paths. This is what the
  wowee client will read to discover and load custom zones.
- Export workflow now produces a complete loadable zone package:
  zone.json + MapName.wdt + MapName_X_Y.adt + creatures.json
- ZoneManifest class with save/load (JSON format)
- Custom map IDs start at 9000+ to avoid conflicting with retail maps
- New Terrain dialog shows helper text for map name format
2026-05-05 05:06:41 -07:00

25 lines
575 B
C++

#pragma once
#include <string>
#include <vector>
#include <cstdint>
namespace wowee {
namespace editor {
struct ZoneManifest {
std::string mapName;
std::string displayName;
uint32_t mapId = 9000; // Custom map IDs start high to avoid conflicts
std::vector<std::pair<int, int>> tiles; // (tileX, tileY) pairs
std::string biome;
float baseHeight = 100.0f;
bool hasCreatures = false;
std::string description;
bool save(const std::string& path) const;
bool load(const std::string& path);
};
} // namespace editor
} // namespace wowee