Комментарии проекта Fly Data Processor
Голосов:
0
MegaBlax
- 9 years ago
Голосов:
0
(равкоды полей можно посмотреть в РО, если JNGP настроен соответствующим образом)
Как правильно настроить WE, чтоб показывало ?
Как правильно настроить WE, чтоб показывало ?
Голосов:
0
Голосов:
0
Без твоей тулзы нет смысла делать сборку. А та версия еще даже не бета
Голосов:
0
prog
- 10 years ago
Голосов:
0
Ну так делай, не жди меня. У меня сейчас туго с временем. Или можешь включить в сборку ту версию что есть сейчас, она довольно стабильная, поддерживает альтернативный синтаксис для выражений в РО и менюшки есть - можно отключить.
Голосов:
0
Голосов:
0
Ну че там?
Вон чувак уже мой мод апдейтил xgm.ru/forum/showthread.php?t=30967
думаю делать новую сборку
Вон чувак уже мой мод апдейтил xgm.ru/forum/showthread.php?t=30967
думаю делать новую сборку
Голосов:
0
prog
- 10 years ago
Голосов:
0
Залил ту версию, о которой говорил, только допилил еще меню в ней для JNGP.
Голосов:
0
Голосов:
0
Я думаю, это будет дальше. Надо изменить данные до обращения к файлу.
Голосов:
0
prog
- 10 years ago
Голосов:
0
У меня сейчас на машине ни средств отладки ни нормального компилятора нет для C/C++.
Есть вероятность что нужная нам функция окажется в storm.dll т.к. карта это по сути mpq архив и, соответственно, работать с ней вар будет как с mpq архивом.
Голосов:
0
Голосов:
0
prog, дебажить можно с вызова msdn.microsoft.com/en-us/library/ms646927%28VS.85%29.aspx
Голосов:
0
prog
- 10 years ago
Голосов:
0
Для этого нужно для начала разобраться в том как оно работает, потом найти адрес в памяти WE, на который вешать хук и только после этого все возможно начнет крутиться, если только не окажется что повесить хук на момент перед открытием карты невозможно. У тебя есть на это время?
Да, кстати, на кампах исходников гриморы нет, а те что я когда-то нашел в сети могут быть сильно устаревшими и нифига не работать.
Вру, есть ссылка на svn
Могу даже сказать что интересует нас скорее всего wehack.cpp, функция DllMain, а именно та часть где объявляются хуки на функции. Ну и, конечно, нужно продебажить ВЕ чтобы выяснить на какую функцию вешать хук.
Вру, есть ссылка на svn
Могу даже сказать что интересует нас скорее всего wehack.cpp, функция DllMain, а именно та часть где объявляются хуки на функции. Ну и, конечно, нужно продебажить ВЕ чтобы выяснить на какую функцию вешать хук.
Голосов:
0
Голосов:
0
можно попробовать перекомпилять grimoire - добавить туда эвент
и выложить новый jngp...
и выложить новый jngp...
Голосов:
0
prog
- 10 years ago
Голосов:
0
Может потому что я не знаю как событие на открытие карты привязать?
Если бы я нашел как это сделать, то все было бы реализовано именно так еще в первой версии утилиты, вот только ничего применимого кроме открытия редактора, сохранения карты и работы с меню я пока не нашел, даже в коде гриморы копался, нет там такого события.
Если бы я нашел как это сделать, то все было бы реализовано именно так еще в первой версии утилиты, вот только ничего применимого кроме открытия редактора, сохранения карты и работы с меню я пока не нашел, даже в коде гриморы копался, нет там такого события.
Голосов:
0
Голосов:
0
Я не понимаю, на кой черт ты паришься с копированием карты, если можно хранить сурс код wts в другом файле? например, war3mapSource.wts
При открытии карты в редакторе, wehack.lua запустит твою прогу, которая заменит war3map.wts на war3mapSource.wts.
При сохранении карты, твоя прога копирует war3map.wts в сурс, а сам файл компиляет в готовый результат.
Никаких карт не надо.
При открытии карты в редакторе, wehack.lua запустит твою прогу, которая заменит war3map.wts на war3mapSource.wts.
При сохранении карты, твоя прога копирует war3map.wts в сурс, а сам файл компиляет в готовый результат.
Никаких карт не надо.
Голосов:
0
prog
- 10 years ago
Голосов:
0
Были бы у меня эти два дня)
Голосов:
0
Голосов:
0
Дело в том, что этот софт пишется за 2 дня =\
Голосов:
0
prog
- 10 years ago
Голосов:
0
Когда физически не остается времени или сил что-то делать после основной работы и личной жизни, то но удивительно что изменений никаких нет, не находишь?
Голосов:
0
Голосов:
0
Это всё треш какой-то, ты уже почти полгода делаешь проект =)
Голосов:
0
prog
- 10 years ago
Голосов:
0
Да занят я по уши, вон выложил в статьи пару мелких примеров, которые приготовил еще месяц назад и все, времени кодить нет. Бета пока есть только та что с jass кодом работает. В принципе есть еще рабочий вариант, позволяющий использовать вместо конструкции ${x} конструкцию #[x#] или #[x]# чтобы обойти неприятие редактором символа } в описаниях, могу выложить. Только файл war3map.wts надо будет вручную импортировать в карту чтобы увидеть изменения (предварительно сделав копию со старым wts чтобы не потерять шаблоны).
Голосов:
0
Голосов:
0
Ну что там с первоначальной идеей?) когда бета будет? охото пособирать всякие сеты)
Голосов:
0
prog
- 10 years ago
Голосов:
0
ScorpioT1000, теперь понял. Не полостью - проблему синтаксиса я решил, хотя и не самым красивым способом, а вот затирание шаблона при сохранении пока не позволяет считать что эта составляющая работает.
Голосов:
0
Голосов:
0
Причем тут папка, я об основной задаче:
собирает данные по всем объектам в РО и использует их для заполнения шаблонов в текстовых описаниях
Это уже работает?
Голосов:
0
prog
- 10 years ago
Голосов:
0
ScorpioT1000, не совсем тебя понял. Если ты о том, что папку с данными надо было чистить вручную, то как это решить я уже придумал, осталось найти время и реализовать. Утилита получит параметр командной строки, определяющий режим работы и будет вызываться два раза, первый раз перед извлечением данных с параметром clear и второй раз после извлечения данных, на этот раз с параметром compile.
Голосов:
0
Голосов:
0
Ну как там с доставанием в одно описание данные из другого объекта?
Голосов:
0
Голосов:
0
Absol
- 10 years ago
Голосов:
0
а есть проги на подобии xdep? что бы данные из slk конвертировало
Голосов:
0
prog
- 10 years ago
Голосов:
0
Beta 0.2 доступна для скачивания. Также был обновлен раздел "руководство пользователя" - добавлена статья, посвященная созданию учебного примера по применению утилиты.
Голосов:
0
prog
- 10 years ago
Голосов:
0
А вот фиг там, не делает он этого, у меня по крайней мере, но это не критично, так что я даже не включил эту директиву в спецификацию - с ней слишком много проблем. Проблема с переносами строк в том, что их генерируется слишком много практически для любого шаблона - библиотека изначально на html рассчитана.
В результате работы этого шаблона будет сгенерировано много функций, отличающихся друг от друга только индексом в имени.
Например, если в качестве тела для этого шаблона вместо комментария поставить ${i}; и ничего больше не менять, то получится несколько функций, в каждой из которых в столбик записаны равкоды не больше чем десяти юнитов (конечно это не валидный jass-код, но зато просто для понимания). На практике, естественно, тело шаблона будет более сложным.
Например, если в качестве тела для этого шаблона вместо комментария поставить ${i}; и ничего больше не менять, то получится несколько функций, в каждой из которых в столбик записаны равкоды не больше чем десяти юнитов (конечно это не валидный jass-код, но зато просто для понимания). На практике, естественно, тело шаблона будет более сложным.
Голосов:
0
Голосов:
0
Это не надо - это сделает vJass/cJass оптимизатор.В данном примере используется директива <compress>, устраняющая все переносы строк и скопления пробелов.
И выложи что в результате получится ) я немного не понимаю
Голосов:
0
prog
- 10 years ago
Голосов:
0
конечно не работает
надо <list units as unit>
я вроде эту опечатку в описании уже давно исправил, если нет - скажи где ты такую конструкцию увидел
Ну и как-бы ${ushx} вообще работать не будет - надо ${unit.ushx}, не говоря уже о том что оно не будет работать если поле ushx не было изменено в РО.
надо <list units as unit>
я вроде эту опечатку в описании уже давно исправил, если нет - скажи где ты такую конструкцию увидел
Ну и как-бы ${ushx} вообще работать не будет - надо ${unit.ushx}, не говоря уже о том что оно не будет работать если поле ushx не было изменено в РО.
Голосов:
0
Темак
- 10 years ago
Голосов:
0
Не работает:
<list units>
call RegisterUnitShadow('${unit}', ${ushx}, ${ushy}, ${ushh}, ${wshw}, "${ushu}")
</list>
<list units>
call RegisterUnitShadow('${unit}', ${ushx}, ${ushy}, ${ushh}, ${wshw}, "${ushu}")
</list>
Голосов:
0
prog
- 10 years ago
Голосов:
0
ScorpioT1000, так и сделаю, надо только придумать чем заменить } для текстовых описаний (именно на этот символ плохо реагирует WE при загрузке файла - он просто игнорирует все что идет после него)
Но этот подход чреват неудобствами, связанными с неоднородностью синтаксиса.
Голосов:
0
Голосов:
0
Ну сделай фильтр, который сначала переводит описания в другой формат =\
Голосов:
0
prog
- 10 years ago
Голосов:
0
Ввиду несовместимости формата хранения данных в файле wts и шаблонов библиотеки FreeMarker из утилиты временно убирается поддержка текстовых описаний объектов, остаются только шаблоны в коде.
Возможен переход на другую библиотеку компиляции шаблонов или изменение синтаксиса для шаблонов в текстовых описаниях.
Голосов:
0
prog
- 10 years ago
Голосов:
0
обнаружен баг, убираю ссылку на скачивание до его исправления
Голосов:
0
Темак
- 10 years ago
Голосов:
0
а как передать рав-код юнита?
эта программа по прежнему позволяет передавать только измененные поля?
эта программа по прежнему позволяет передавать только измененные поля?
Голосов:
0
prog
- 10 years ago
Голосов:
0
Разработка несколько замедлена в связи с большим количеством дел и выходом третьего диабло, но не остановлена. На данный момент идет написание парсера SYLK таблиц для получения данных по стандартным боевым единицам и стандартных значений полей. Также в очередной раз может быть пересмотрена структура хранения данных в памяти и передачи их компилятору шаблонов- существующая не поддерживает ленивую загрузку данных, а загружать данные по всем стандартным юнитам просто на всякий случай не очень эффективно.
Скорее всего не будут поддерживаться стандартные значения текстовых полей или эта возможность будет добавлена позже.
Скорее всего не будут поддерживаться стандартные значения текстовых полей или эта возможность будет добавлена позже.
Голосов:
0
prog
- 10 years ago
Голосов:
0
Введена в тестовом режиме приятная возможность получить доступ к объекту по его строковому равкоду, полученному из поля другого объекта.
Для начала объявим шаблонную переменную
<assign somethg = "A000">
Как видите, это строковая переменная. Ее поведение полностью соответствует ожиданиям - при использовании в выражениях будет возвращено строковое значение со всеми вытекающими последствиями.
Для начала объявим шаблонную переменную
<assign somethg = "A000">
Как видите, это строковая переменная. Ее поведение полностью соответствует ожиданиям - при использовании в выражениях будет возвращено строковое значение со всеми вытекающими последствиями.
До сегодняшнего дня попытка обратиться к полям такой переменной приводила к возникновению ошибки библиотеки FreeMarker, но с недавних пор есть возможность превратить такую строковую переменную в ссылку на соответствующий объект, что позволит обращаться к полям этого объекта. На данный момент такое преобразование происходит при использовании конструкции "категория.переменная" и выполняется успешно только при условии принадлежности объекта к категории.
Обращение к полям объекта можно производить как сразу в конструкции категория.переменная, так и записав ссылку на объект в переменную.
<assign x = "A000">
${abilities.x.name}
равнозначно
<assign x = "A000">
<assign x = abilities.x>
${x}
Обращение к полям объекта можно производить как сразу в конструкции категория.переменная, так и записав ссылку на объект в переменную.
<assign x = "A000">
${abilities.x.name}
равнозначно
<assign x = "A000">
<assign x = abilities.x>
${x}
prog
prog
Блог
Проекты :
Fly Data Processor
Edited by prog
nazarpunk
nazarpunk
Блог
prog
prog
Блог
Проекты :
Fly Data Processor
Drulia_san
Drulia_san
prog
prog
Блог
Проекты :
Fly Data Processor
Будет что-то пригодное к использованию широкой аудиторией - сообщу.
GetLocalPlayer
GetLocalPlayer
Блог
Drulia_san
Drulia_san
prog
prog
Блог
Проекты :
Fly Data Processor
Drulia_san
Drulia_san
Edited by Drulia_san
Но в любом случае интегрированный редактор мне ближе к душе, потому что под рукой всегда хочется иметь РО со всеми юнитами, абилками и бафами.
prog
prog
Блог
Проекты :
Fly Data Processor
Drulia_san
Drulia_san
Edited by Drulia_san