SSD может повлиять разве что только на скорость холодного запуска редактора
а далее никакой i7/i9 не поможет, редактор и варкрафт по сути не умеют нормально юзать ресурсы процессора
TeX13, могу немного сказать насчет jass
в jass по сути нету прямого ООП, но работа с юнитами, триггерами и т.д - это абстракция того же ООП (варкрафт на C++ писали)
например
unit u = GetTriggerUnit()
SetUnitUserData(u, 123)
SetUnitUserData можно представить как u->data = 123
+ в jass переменные грубо говоря разделяются на указатели и на базовые типы
указатели это всё что работает с объектами (юниты, предметы, триггеры и т.д) переменные unit, item, trigger, timer и т.д
базовые типы это integer, real (float), boolean и т.д
локальные указатели при выходе из функции обязательно нужно обнулять
а работы с char как таковой - просто нету, в jass только один тип для работы с целочисленными - это integer со знаком 4 байта
вся работа с текстом осуществляется с помощью string, это указатель на таблицу строк (его обнулять не обязательно)
всё остальное по сути достаточно похоже на "не ООП" языки
советую сразу использовать cjass который в jngp (cjass парсер добавляет поддержку С-синтаксиса) сразу cjass это чтобы не путаться в синтаксисе
самое главное - это не относиться к этому скрипту серьёзно, надо думать очень легко чтобы понять его, т.к упрощающая абстракция просто зашкаливает
Вообще, сама сложность будет в том - чтобы запомнить все нужные функции, в первое время надо будет пользоваться подсказками из JNGP и конвертировать гуи
даже дополню, кол-во переменных и т.д теоретически может только отразиться на скорости отрывания карты когда кликаешь на неё в списке или заходишь в лобби
Razor_dex, проблемные места тут - это триггеры с событием "Инициализация карты"
поищи на свой взгляд самый "тяжелый" и опиши что в нем происходит или можно скрин т.к такие нагрузки в основном из за большого создания объектов (триггер как объект намного легче обычных юнитов и т.д) поэтому кол-во триггеров не считается тут
В моей карте 899 переменных, включая массивы, причём массивов триггеров 46, а просто триггеров 16, карта шустро загружается в игре.
это ещё фигня)
я видел гуи-монстров с 1000+ триггерами и бездонной функцией инициализации переменных
при этом карта грузилась очень быстро на моменте main потока
с помощью define перехватывал CreateTrigger() на аналогичный, но со счетчиком
гуи инициализация вообще почти никак не увеличивает время загрузки, будь там хоть 500 триггеров
сама нагрузка именно от размера карты и загруженности редактора объектов
и уточни на каком моменте это "долго загружается"
когда полоска загрузки в начале или в середине-конце?
-Скорость атаки уменьшена с 1.1 до 1.15 сек.
-Урон уменьшен с 99 до 95 ед.
-Дальность атаки уменьшена с 325 до 315 ед.
-Радиус сплеш-атаки уменьшен с 125 до 115 ед.
-Скорость снаряда уменьшена с 1200 до 1000 ед.
Гоблинский бур:
-Урон уменьшен с 19 до 17 ед.
-Здоровье уменьшено с 1000 до 925 ед.
Дирижабль:
-Скорость уменьшена с 100 до 75 ед.
-Здоровье уменьшено с 965 до 875 ед.
Еретик:
-Скорость атаки уменьшена с 1.45 до 1.65 сек.
-Урон увеличен с 155 до 160 ед.
Осадный голем:
-Здоровье увеличено с 2900 до 3200 ед.
-Скорость уменьшена с 95 до 90 ед.
-Скорость атаки уменьшена с 1.7 до 1.95 ед.
-Урон увеличен с 214 до 240 ед.
Ревенант:
-Время ухода в невидимость снижено с 2 до 1 сек.
Новые карты
Клирик
Способность: Каждые 1.15 сек. лечит цель с наименьшим количеством
здоровья в радиусе 300 на 80 ед. здоровья
Здоровье: 450 ед.
Легкая броня
Скорость: 85 ед.
Количество: 1 ед.
Тотем ослабления
Способность: Уменьшает атаку вражеских
войск на 35% в радиусе 450 ед.
Время жизни: 5 сек.
Цепь молний
Способность: Электрический разряд, последовательно
поражающий 6 противников. Первому из них
наносится 220 ед. урона, каждому последующему
на 15% меньше.
Открой карту через ladik mpq, укажи этот .txt в качестве листфайла и вытащи всю папку Units
Далее каким нибудь другим редактором возьми засунь эту папку в пустую карту и попробуй через silk object прогнать карту Можешь ещё на всякий случай вытащить и засунуть в карту вот это:
Haron, защита не защита, за 5 минут в hex редакторе правится и хештаблица и заголовок любой "сложности"
забыл предупредить, чтобы silk object 3 смог читать из карты - она должна открываться в mpq редакторах без режима "Только для чтения" но это не точно обычно из за этого и могут быть проблемы с восстановлением
Haron, о каких абилках речь?
Я юзал SilkObject3 когда восстанавливал героев из доты, всё там прекрасно восстанавливается под героями я имел в виду и их абилки
У w3map restorer ошибка - потому что он не все "объекты" восстанавливает, каким образом из за этого фаталит - не знаю
Silk Object3 прекрасно восстанавливает
Надо включить в конфиге режим восстановления
А потом закинуть файлы в карту через mpq редактор:
war3map.w3u
war3map.w3t
war3map.w3a
war3map.w3b
war3map.w3d
war3map.w3q
war3map.w3h
короче говоря - в конструкциях нельзя мешать си-синтаксис и jass синтаксис
Вот образец условного ветвления, ни в коем случае нельзя ставить всякие then/endif и т.д
if( i == 1 )
{
////
} elseif( i == 2 )
{
////
} else
{
////
}
if ( tw == 0 ) and ( GetUnitAbilityLevel(u, 'A00V') >= 1 ) {
SetUnitAbilityLevel( u, 'A00S', 1 )
SetUnitAbilityLevel( u, 'A00U', 1 )
SetUnitAbilityLevel( u, 'A00V', 1 )
UnitRemoveAbility( u, 'A00V')
UnitRemoveAbility( u, 'A00S')
UnitRemoveAbility( u, 'A00U')
UnitRemoveAbility( u, 'B004')
elseif ( tw >= i ) and ( GetUnitAbilityLevel(u, 'A00V') == 0 ) then
После:
if ( tw == 0 ) and ( GetUnitAbilityLevel(u, 'A00V') >= 1 ) {
SetUnitAbilityLevel( u, 'A00S', 1 )
SetUnitAbilityLevel( u, 'A00U', 1 )
SetUnitAbilityLevel( u, 'A00V', 1 )
UnitRemoveAbility( u, 'A00V')
UnitRemoveAbility( u, 'A00S')
UnitRemoveAbility( u, 'A00U')
UnitRemoveAbility( u, 'B004')
}elseif ( tw >= i ) and ( GetUnitAbilityLevel(u, 'A00V') == 0 )
{
ну а вообще, есть один трюк
Можно создать две версии war3mapMap
я где то читал что варкрафт читает всегда первую версию файла, а всякие карто-открыватели - последнюю но это не точно
не знаю о чем, но я имел в виду на сайте хуз хотел че то сделать, чтобы отображалось название карты и её превьюшка, но мы это обсуждали почти неделю назад
И уничтожать простейший способ из за одного эпиквара - это глупо
Карты там давно уже никто не заливает, т.к на хостботах карты как пирожки горячие (ну ты понял) просто раньше до хостботов - карту качали по очереди и с ограничением 15-20 кб/c и поэтому такие сайты как эпиквар был популярны
» WarCraft 3 / Локальные переменне при нескольких "вейтах"
в своем комментарии я описал особенности jass'a
часть особенностей*
» WarCraft 3 / Производительность WE на SSD
а далее никакой i7/i9 не поможет, редактор и варкрафт по сути не умеют нормально юзать ресурсы процессора
Ред. Hodor
» WarCraft 3 / Локальные переменне при нескольких "вейтах"
в jass по сути нету прямого ООП, но работа с юнитами, триггерами и т.д - это абстракция того же ООП (варкрафт на C++ писали)
например
+ в jass переменные грубо говоря разделяются на указатели и на базовые типы
указатели это всё что работает с объектами (юниты, предметы, триггеры и т.д) переменные unit, item, trigger, timer и т.д
базовые типы это integer, real (float), boolean и т.д
локальные указатели при выходе из функции обязательно нужно обнулять
а работы с char как таковой - просто нету, в jass только один тип для работы с целочисленными - это integer со знаком 4 байта
вся работа с текстом осуществляется с помощью string, это указатель на таблицу строк (его обнулять не обязательно)
всё остальное по сути достаточно похоже на "не ООП" языки
советую сразу использовать cjass который в jngp (cjass парсер добавляет поддержку С-синтаксиса)
сразу cjass это чтобы не путаться в синтаксисе
самое главное - это не относиться к этому скрипту серьёзно, надо думать очень легко чтобы понять его, т.к упрощающая абстракция просто зашкаливает
Вообще, сама сложность будет в том - чтобы запомнить все нужные функции, в первое время надо будет пользоваться подсказками из JNGP и конвертировать гуи
» WarCraft 3 / Оптимизация GUI перменных в массивы
» WarCraft 3 / Оптимизация GUI перменных в массивы
поищи на свой взгляд самый "тяжелый" и опиши что в нем происходит или можно скрин
т.к такие нагрузки в основном из за большого создания объектов (триггер как объект намного легче обычных юнитов и т.д)
поэтому кол-во триггеров не считается тут
» WarCraft 3 / Оптимизация GUI перменных в массивы
я видел гуи-монстров с 1000+ триггерами и бездонной функцией инициализации переменных
при этом карта грузилась очень быстро на моменте main потока
с помощью define перехватывал CreateTrigger() на аналогичный, но со счетчиком
Ред. Hodor
» WarCraft 3 / Оптимизация GUI перменных в массивы
сама нагрузка именно от размера карты и загруженности редактора объектов
и уточни на каком моменте это "долго загружается"
когда полоска загрузки в начале или в середине-конце?
» WarCraft 3 / Siege Strategy
Обновление v1.0.1
Банши:
-Урон уменьшен с 99 до 95 ед.
-Дальность атаки уменьшена с 325 до 315 ед.
-Радиус сплеш-атаки уменьшен с 125 до 115 ед.
-Скорость снаряда уменьшена с 1200 до 1000 ед.
Гоблинский бур:
-Здоровье уменьшено с 1000 до 925 ед.
Дирижабль:
-Здоровье уменьшено с 965 до 875 ед.
Еретик:
-Урон увеличен с 155 до 160 ед.
Осадный голем:
-Скорость уменьшена с 95 до 90 ед.
-Скорость атаки уменьшена с 1.7 до 1.95 ед.
-Урон увеличен с 214 до 240 ед.
Ревенант:
здоровья в радиусе 300 на 80 ед. здоровья
Здоровье: 450 ед.
Легкая броня
Скорость: 85 ед.
Количество: 1 ед.
войск на 35% в радиусе 450 ед.
Время жизни: 5 сек.
поражающий 6 противников. Первому из них
наносится 220 ед. урона, каждому последующему
на 15% меньше.
» WarCraft 3 / Реплей
» WarCraft 3 / ZinC: Похищение жизни
последний комментарий
» WarCraft 3 / SLK, возможно, невозможно?
Далее каким нибудь другим редактором возьми засунь эту папку в пустую карту и попробуй через silk object прогнать карту
Можешь ещё на всякий случай вытащить и засунуть в карту вот это:
» WarCraft 3 / SLK, возможно, невозможно?
забыл предупредить, чтобы silk object 3 смог читать из карты - она должна открываться в mpq редакторах без режима "Только для чтения"
но это не точно
обычно из за этого и могут быть проблемы с восстановлением
» WarCraft 3 / SLK, возможно, невозможно?
абилки, предметы и т.д
» WarCraft 3 / SLK, возможно, невозможно?
Я юзал SilkObject3 когда восстанавливал героев из доты, всё там прекрасно восстанавливается
под героями я имел в виду и их абилки
» WarCraft 3 / Siege Strategy
Ред. Hodor
» WarCraft 3 / SLK, возможно, невозможно?
Silk Object3 прекрасно восстанавливает
Надо включить в конфиге режим восстановления
А потом закинуть файлы в карту через mpq редактор:
war3map.w3u
war3map.w3t
war3map.w3a
war3map.w3b
war3map.w3d
war3map.w3q
war3map.w3h
» WarCraft 3 / Ошибка Missing endblock, cJass
))
:D
» WarCraft 3 / Ошибка Missing endblock, cJass
ну а так, самое то:
KaneThaumaturge, попробуй вместо library endlibrary написать library{ }
» WarCraft 3 / Ошибка Missing endblock, cJass
закинь вот это куда нибудь в карту и юзай (так быстрее пишется код)
» WarCraft 3 / Ошибка Missing endblock, cJass
Вот образец условного ветвления, ни в коем случае нельзя ставить всякие then/endif и т.д
» WarCraft 3 / Ошибка Missing endblock, cJass
» WarCraft 3 / Мемхак - смена миникарты во время игры
ну а вообще, есть один трюк
Можно создать две версии war3mapMap
я где то читал что варкрафт читает всегда первую версию файла, а всякие карто-открыватели - последнюю
но это не точно
» WarCraft 3 / Мемхак - смена миникарты во время игры
И уничтожать простейший способ из за одного эпиквара - это глупо
Карты там давно уже никто не заливает, т.к на хостботах карты как пирожки горячие (ну ты понял)
просто раньше до хостботов - карту качали по очереди и с ограничением 15-20 кб/c
и поэтому такие сайты как эпиквар был популярны
» WarCraft 3 / Мемхак - смена миникарты во время игры
Даже ирина юзает превьюшку
» WarCraft 3 / Мемхак - смена миникарты во время игры
war3mapPreview.tga