Doo/w3e To Jass (by Raichu)

Добавлен , опубликован
Предназначение:
Написал свой конвертор war3map.doo( и war3map.w3e) в JASS-код, в другую версию war3map.doo и создание пустого war3map.doo.


(В архиве exe файл, пример doo файла, результат работы, и исxoдный код )


Обновил, теперь устанавливает начальный процент "здоровья" декорациям .
Обновление 29.03.13 17:40: Удалил из кода все левое, (добавил конвертацию из w3e в JASS пока только в исходник, т.к не очень работает :)
Ну и теперь размер JASS файла будет намного меньше.
Обновление 29.03.13 18:14: Убрал лишние нули, теперь JASS-файл стал еще меньше.
!Обновление 29.03.13 18:33: Добавил поддержку старой версии war3map.doo
!!Обновление 29.03.13 21:00: теперь создается пустой и конвертированный doo файл.(если версия 7.11 то создается 8.11 и наоборот)
!!!Обновление 30.03.13 18.30: теперь можно засунуть список декораций в функцию выбрав ей имя , выглядит так:
!!!!Обновление 31.02.13: конвертирует w3e в JASS код. (текстуры, возвышенности, и криво уклоны , но все проходимо)
!!!!!Обновление 31.02.13 18:10: Можно выбрать сохранение только типа почв(текстур), и выбрать какой тип почвы сохранить.
!!!!!Обновление 31.02.13 21:45: Исправил несколько ошибок...



Инструкция: скопировать war3map.doo(и war3map.w3e) в папку с прогой, запустить, в консоли выбрать все что нужно, скопировать результат в код карты и удалить с карты декорации.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
38
raichu, это не моё, я просто разместил объяву я просто ответил про цвет и нули
7
аааа :) я просто не нашел тут этого поста, думал твоё :)
в доте war3map.doo не поломанный , просто другой версии, сейчас добавлю "поддержку" 7 версии war3map.doo файлов.
8
хмм, откуда у него другая "версия" и что там другого?
из 4к строк создания декора были 2 такого вида:
call CD( 'YOks', -7040, 832, 128, 4.76837e-007, 0.956, 0 )
call CD( 'YOks', -7040, 128, 128, 4.76837e-007, 0.956, 0 )
соответственно парсер "e-007" моя не панимат. вручную убрал. мёртвые декорации создаются действительно такими как нужно. правда присутствует сей эффект - при таком создании в тумане войны видно живую декорацию, подходишь - а она мёртвая. в принципе это легко пофиксить временным микропросветом всей карты
для фикса достаточно:
FogEnable(false)
FogEnable(true)
после создания всего декора. видимо не для всех карт это будет отличным вариантом (если кто-то что-то прячет с начала игры), но для меня годится вполне.
миникарта, видимо, из-за отсутствия декора окрашивается не так как обычно. просвет тут не помог, но изменения не категоричные абсолютно.
в вжассе/сжасс надо вырубать оптимизатор синтаксиса - иначе пропадает "оборачивание" функции. быстрота создания декора от оптимизации никак не окупается (эффект незаметен), а вес заметен. сами эффекты оптимизаторов восстанавливаются тем же векс оптимизатором, так что проигрыша тут никакого не будет (оптимизатор векса "оборачивание" не убирает без доп. вмешательства в опции).
новые тесты: благодаря новому состава кода, экономия веса карты 9 Кб, это конечно не 1 Мб, но теперь это ощутимо.
экономия скорости загрузки составила 0.5 секунд. всё тестировалось вместе с виджитайзером + оптимизатором векса. 0.5 сек на их фоне это очень неплохое дополнение. строго рекомендую использовать это для релизных версий.
я бы даже сказал это лучшее что сделано за всё последнее время, которое прошло после того как был сделан видж с оптимизатором векса. если сюда ещё и создание ланда подцепить - будет очень круто.
38
на чем писал ? инженерные строки фиксятся заменой %f на %g или наоборот
7
c++ , код в архиве.
но я не заметил проблем со строками
Карточка:
создание ланда подцепить
это уже будет как защита карты, ведь war3map.w3e никуда нельзя убрать? а значит вес карты увеличится.
8
где-то писалось, что не всё можно воспроизвести через джасс (склоны уровни - что-то из этого). так что я не знаю как там может получиться, пригодится ли это. довесок к защите будет не хилый, даже если не удастся оптимизировать загрузку/выиграть с весом
7
хмм, откуда у него другая "версия" и что там другого?
старая версия, которая в w3m файлах. Там просто некоторые данные не сохраняются. Весит на 1-2 кбайт меньше.
Добавить конвертацию из 8.11 в 7.11 версию?
Карточка:
не всё можно воспроизвести через джасс (склоны уровни - что-то из этого)
кажется только возвышенности нормально будут создаваться, можно какой-нибудь генератор рельефа написать :)
Новое обновление, теперь создается пустой и конвертированный doo файл.(если версия 7.11 то создается 8.11 и наоборот)(, файл war3map.doo из доты весил бы на 40 кбайт больше если бы был 8.11 версии)
FogEnable(false)
FogEnable(true)
это тоже добавил, если не нужно будет то просто не копировать последнюю строку из скрипта.
7
Вот думаю, нужна или нет обратная конвертация из jass кода в doo файл? :)
8
с одной стороны это будет как депротект, но в принципе, когда ломают мапы, правят вовсе не декор =). поэтому при депротекте это использовать и не нужно.
но есть и положительная сторона - при пересохранении карты редактор перетыкает все декорации и собирает ду файл, 3-5 секунд. можно сделать обработку не предрелизной, а постоянной, тогда и пересохранение и тестзапуск будет быстрее. а если понадобится декор - восстановить ду файл, залить в редактор и вырубить триг на создание. в принципе, это малоюзабельно (т.е. проще просто хранить оригинальный ду файл), но если не трудно - то можно и сделать в придачу ко всему =).
7
подключил boost для создания парсера , размер exe файла стал 30 кбайт :)
думаю в следующем обновлении сделаю восстановление doo файла, но не все данные получится сохранить.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.