Kelsidavis-WoWee/tools
Kelsi b31a2a66b6 tools: fix DBC string-column detection false positives in both dbc_to_csv and asset_extract
The string-column auto-detector in both tools had two gaps that caused small
integer fields (RaceID=1, SexID=0/1, BaseSection, ColorIndex) to be falsely
classified as string columns, corrupting the generated CSVs:

1. No boundary check: a value of N was accepted as a valid string offset even
   when N landed inside a longer string (e.g. offset 3 inside "Character\...").
   Fix: precompute valid string-start boundaries (offset 0 plus every position
   immediately after a null byte); reject offsets that are not boundaries.

2. No diversity check: a column whose only non-zero value is 1 would pass the
   boundary test because offset 1 is always a valid boundary (it follows the
   mandatory null at offset 0). Fix: require at least 2 distinct non-empty
   string values before marking a column as a string column. Columns like
   SexID (all values are 0 or 1, resolving to "" and the same path fragment)
   are integer fields, not string fields.

Both dbc_to_csv and asset_extract now produce correct column metadata,
e.g. CharSections.dbc yields "strings=6,7,8" instead of "strings=0,1,...,9".
2026-03-10 03:49:06 -07:00
..
asset_extract tools: fix DBC string-column detection false positives in both dbc_to_csv and asset_extract 2026-03-10 03:49:06 -07:00
auth_login_probe Auth: include CRC in legacy proof; extend Turtle integrity set 2026-02-13 01:41:59 -08:00
auth_probe Add authenticator opcode support + auth_probe tool 2026-02-13 00:55:36 -08:00
blp_convert Replace MPQ runtime with loose file asset system 2026-02-12 20:32:14 -08:00
dbc_to_csv tools: fix DBC string-column detection false positives in both dbc_to_csv and asset_extract 2026-03-10 03:49:06 -07:00
asset_pipeline_gui.py Fix audio playback not stopping when Stop button clicked 2026-02-23 22:26:17 -08:00
backup_assets.sh Fix macOS build process and make shell scripts cross-platform 2026-02-23 18:35:53 -08:00
gen_opcode_registry.py Opcode registry: move to generated canonical+alias pipeline 2026-02-20 03:02:31 -08:00
generate_ffx_sdk_vk_permutations.sh Fix FSR3 permutation script failures on arm64 Linux and Windows 2026-03-09 13:11:03 -07:00
m2_viewer.py Add M2/WMO 3D viewer with textured rendering, animation, and audio playback 2026-02-23 22:22:39 -08:00
validate_opcode_maps.py Opcode registry: move to generated canonical+alias pipeline 2026-02-20 03:02:31 -08:00