mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-05-06 00:53:52 +00:00
docs: CHANGELOG, README editor section, fix dbc_to_csv build
- CHANGELOG: add World Editor section (12.5k+ lines, 6 modes, 30+ tools) and Novel Open Formats section (6/6 replacements, 309 test assertions) - README: add World Editor section with build/run/CLI examples, format summary, and reference to FORMAT_SPEC.md - Fix dbc_to_csv build: add extern/ to include path for nlohmann/json (broke when dbc_loader.cpp gained JSON DBC loading support)
This commit is contained in:
parent
22fb509416
commit
90142cb0df
3 changed files with 54 additions and 0 deletions
31
CHANGELOG.md
31
CHANGELOG.md
|
|
@ -13,6 +13,37 @@
|
|||
- Extract reusable CatmullRomSpline module to `src/math/` with O(log n) binary search and fused position+tangent evaluation (PR #60)
|
||||
- Decompose TransportManager (1,200→500 LOC): extract TransportPathRepository, TransportClockSync, TransportAnimator; consolidate 7 duplicated spline parsers into `spline_packet.cpp` (PR #60)
|
||||
|
||||
### World Editor (tools/editor/)
|
||||
- Standalone world editor for creating custom WoW zones (12.5k+ lines, 55 files)
|
||||
- 6 editing modes: Sculpt, Paint, Objects, Water, NPCs, Quests
|
||||
- 30+ terrain tools: procedural generators (hill, mesa, crater, canyon, island, ridge, dunes), thermal erosion, noise, mirror/rotate, stamp copy/paste with file persistence
|
||||
- Multi-select objects (Ctrl+Shift+Click), Select All (Ctrl+A), Select by Type (M2/WMO)
|
||||
- Time-of-day lighting with dawn/dusk/night transitions and color pickers
|
||||
- Texture eyedropper (Alt+Click), brush size presets + bracket keys
|
||||
- Object tools: snap to ground, align to slope, flatten terrain around buildings, scatter with auto-align
|
||||
- River/road path tool with click-to-set points and translucent preview ribbon
|
||||
- Quest chains with circular reference detection, inline editing, load/save
|
||||
- 631 creature presets across 8 categories with patrol path editing
|
||||
- Full undo/redo for ALL terrain operations (generators, transforms, paint)
|
||||
- Auto-save with configurable interval, unsaved changes quit confirmation
|
||||
- Zone rename, recent zones menu, adjacent tile export with edge stitching
|
||||
- Live open format validation (0-6 score) in File menu
|
||||
|
||||
### Novel Open Formats (6/6 Blizzard format replacements)
|
||||
- ADT → WOT/WHM: terrain metadata + binary heightmap with alpha maps and doodad/WMO placements
|
||||
- WDT → zone.json: map definition with full placement arrays
|
||||
- BLP → PNG: texture override system
|
||||
- DBC → JSON: data tables via DBCFile::loadJSON()
|
||||
- M2 → WOM (WOM1): models with render batches, textures, materials
|
||||
- WMO → WOB (WOB1): buildings with material flags/shader/blendMode, doodad rotation
|
||||
- WCP (WCP1): content pack archive with categorized file list
|
||||
- Terrain stamps: portable terrain features saved as JSON
|
||||
- All formats documented in FORMAT_SPEC.md v1.1
|
||||
- Client auto-loads open formats from custom_zones/ and output/ directories
|
||||
- Batch convert: M2→WOM and WMO→WOB from filesystem or asset manifest
|
||||
- WCP Import & Load: one-click unpack + auto-open for editing
|
||||
- 309 test assertions across 81 test cases (DBC binary+JSON, WOB, WHM, WOT)
|
||||
|
||||
### Features
|
||||
- Spell visual effects system with bone-tracked ribbons and particles (PR #58)
|
||||
- GM command support: 190-command data table with dot-prefix interception, tab-completion, `/gmhelp` with category filter (PR #62)
|
||||
|
|
|
|||
|
|
@ -1213,6 +1213,7 @@ add_executable(dbc_to_csv
|
|||
)
|
||||
target_include_directories(dbc_to_csv PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/extern
|
||||
)
|
||||
target_link_libraries(dbc_to_csv PRIVATE Threads::Threads)
|
||||
set_target_properties(dbc_to_csv PROPERTIES
|
||||
|
|
|
|||
22
README.md
22
README.md
|
|
@ -29,6 +29,28 @@ Protocol Compatible with **Vanilla (Classic) 1.12 + TBC 2.4.3 + WotLK 3.3.5a**.
|
|||
- **Container builds**: Multi-platform Docker build system for Linux, macOS (arm64/x86_64 via osxcross), and Windows (LLVM-MinGW) cross-compilation.
|
||||
- **Release**: v1.8.9-preview — 530+ WoW API functions, 140+ events, 664 opcode handlers.
|
||||
|
||||
## World Editor
|
||||
|
||||
Standalone tool for creating custom WoW zones with novel open format exports.
|
||||
|
||||
```bash
|
||||
# Build
|
||||
cmake --build build --target wowee_editor
|
||||
|
||||
# Run
|
||||
./build/bin/wowee_editor --data Data
|
||||
|
||||
# Batch convert assets
|
||||
./build/bin/wowee_editor --convert-m2 Creature/Bear/Bear.m2 --data Data
|
||||
./build/bin/wowee_editor --convert-wmo World/WMO/Stormwind/Stormwind.wmo --data Data
|
||||
```
|
||||
|
||||
**6 editing modes** (Sculpt, Paint, Objects, Water, NPCs, Quests) with 30+ terrain tools, multi-select, time-of-day lighting, quest chains, and full undo/redo.
|
||||
|
||||
**6 novel open format replacements** for all Blizzard proprietary formats: WOT/WHM (terrain), WOM (models), WOB (buildings), zone.json (map def), PNG (textures), JSON (data tables). See `tools/editor/FORMAT_SPEC.md` for full specifications.
|
||||
|
||||
Exported zones auto-load in the wowee client from `custom_zones/` or `output/` directories.
|
||||
|
||||
## Features
|
||||
|
||||
### Rendering Engine
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue