What problem does it solve?
Dota 2 modding projects often struggle to keep item configurations, code, and localization in sync across KV data, TypeScript item logic, and UI assets. This Skill provides a repeatable workflow to manage items by codifying configuration in KV files, supplying TSTL item logic templates, and centralizing localization.
Core Features & Use Cases
- Config-driven item definitions: place attributes and values in KV files (game/scripts/npc/items_list and Excel-generated files) and compile to JSON for both frontend and backend consumption.
- TSTL-based item logic: create TypeScript classes under game/scripts/src/abilities, extend BaseItem, and register with @registerAbility to implement item behavior.
- Localization workflow: update game resource strings (addon.csv) with DOTA_Tooltip_ability_item_<name> names, descriptions, and kv-style values.
- Build and synchronization: run npx gulp kv_2_js to refresh JSON so front-end and back-end share the same data.
Quick Start
Follow the workflow to add a new item: create KV entries under game/scripts/npc/items_list, compile with npx gulp kv_2_js, implement the TS logic under game/scripts/src/abilities, and update localization before testing in-game.