mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-05-06 00:53:52 +00:00
docs(editor): FORMAT_SPEC.md documenting all 5 novel open file formats
This commit is contained in:
parent
4148c890dc
commit
6acde0290d
1 changed files with 36 additions and 0 deletions
36
tools/editor/FORMAT_SPEC.md
Normal file
36
tools/editor/FORMAT_SPEC.md
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
# Wowee Open Format Specification v1.0
|
||||
|
||||
Novel file formats for custom WoW zone content. No Blizzard IP.
|
||||
|
||||
## WOT — Wowee Open Terrain (JSON metadata)
|
||||
- Extension: `.wot`
|
||||
- Contains: tile coords, texture list, per-chunk layers/holes, water data
|
||||
- Key: `"format": "wot-1.0"`
|
||||
|
||||
## WHM — Wowee HeightMap (binary)
|
||||
- Extension: `.whm`
|
||||
- Magic: `WHM1` (0x314D4857)
|
||||
- Layout: magic(4) + chunks(4) + vertsPerChunk(4) + [baseHeight(4) + heights[145](580)] × 256
|
||||
|
||||
## WOM — Wowee Open Model (binary)
|
||||
- Extension: `.wom`
|
||||
- Magic: `WOM1` (0x314D4F57)
|
||||
- Layout: magic(4) + vertCount(4) + indexCount(4) + texCount(4) + bounds(28) + name + vertices + indices + texPaths
|
||||
- Vertex: position(vec3) + normal(vec3) + texCoord(vec2) = 32 bytes
|
||||
|
||||
## WOB — Wowee Open Building (binary)
|
||||
- Extension: `.wob`
|
||||
- Magic: `WOB1` (0x31424F57)
|
||||
- Layout: magic(4) + groupCount(4) + portalCount(4) + doodadCount(4) + bounds(4) + name + groups + portals + doodads
|
||||
- Group: name + vertices(pos+normal+uv+color) + indices + texPaths + bounds + outdoor flag
|
||||
|
||||
## WCP — Wowee Content Pack (archive)
|
||||
- Extension: `.wcp`
|
||||
- Magic: `WCP1` (0x31504357)
|
||||
- Layout: magic(4) + fileCount(4) + infoJsonSize(4) + infoJSON + [pathLen(2) + path + dataSize(4) + data] × N
|
||||
|
||||
## zone.json — Map Definition
|
||||
- Replaces WDT
|
||||
- Contains: mapName, mapId, tiles, biome, file references
|
||||
|
||||
## All formats are novel, portable, and open for redistribution.
|
||||
Loading…
Add table
Add a link
Reference in a new issue