kw представляет из себя консольную утилиту для проверки, модификации и компиляции карт.
С помощью нее вы можете редактировать карту в любом редакторе, подключать сторонние модули, использовать git, да и вообще это просто удобно.
Особенности
Преимущества:
- Легкость использования
- Открытый исходный код
- Поддержка модулей
- Автозагрузка необходимых компонентов (jasshelper, w3x2lni, etc...)
- Создание карты с нуля без использования редактора
- Кроссплатформенная разработка (Работает под Linux, нужен wine для запуска экзешников)
- Распаковка уже сделанной вами карты в проект (нет нужды начинать с нуля)
- Легкое манипулирование зависимостями
- Работа в нормальных редакторах кода
- Удобная система локализации и форматирования
Недостатки:
- Не все карты получится распаковать (вероятно временно)
- Не будет корректно работать с защищенными картами (скорее всего временно)
- Не поддерживает Reforged (возможно временно? а надо ли вообще...)
- Отсутствует поддержка MacOS (наверное, у меня его нет)
- Мб чет еще, не знаю
Установка
В конце ресурса вы можете скачать архив с проектом, распаковать его в отдельную папку, открыть в VSCode и приступить к сборке.
Версии на XGM обновляются не так оперативно, так что самую последнюю версию проекта вы можете получить либо по ссылке, либо используя продвинутую инструкцию.
Сборка проекта
После открытия папки вам необходимо будет собрать проект и установить его. Для этого в терминале запустите следующие команды:
$ uv build
$ uv tool install . -e
Дальше могут понадобится дополнительные настройки для вашей системы, но основной путь завершен и у вас в терминале уже может появится команда kw.
Важно: в систему устанавливается лишь ссылка на утилиту, так что перемещение или удаление папки может повлиять на работоспособность.
Как этим пользоваться?
Поскольку функционал достаточно обширный, да и XGM не основная моя площадка, я решил вынести документацию на отдельный сайт, сделанный при помощи mkdocs. Ознакомиться со всем этим вы нажав сюда.
Также важно отметить, что это еще далеко не финальная версия, утилита постепенно дорабатывается, могут встречаться ошибки и проблемы с некоторыми картами.
В первую очередь проект разрабатывался под Linux, однако на Windows тоже проводились различные тесты и утилита работала вполне нормально.
Все пожелания, баги, выпендрежь и тому подобное можно оставлять либо в коментариях, либо в разделе issues на странице проекта.
Видеогайды
Скриншоты
Зачем это ваще надо?
Я начал делать этот проект в начале месяца, поскольку хотел сделать удобный для себя инструмент создания карт на Линуксе. Да и в принципе, как-будто бы нехватает нормальных инструментов для варкрафта. Проект вдохновлен командой uv, которая часто используется для схожих процессов в Python.

WC3










Я уже пользуюсь, лучшая прога что есть.
Ред. kulebyaka
Ред. ScorpioT1000
По идее может получиться офигенный стек, где твоя тулза пересобирает варкрафт форматы, а imp гоняет их по сети/локально и строит деревья зависимостей.
Поизучаю в ближайшие дни)
Ред. ScorpioT1000
-
image_copy4.png
Полный список