15

» WarCraft 3 / Судейство конкурса 2020

Конкурс сам по себе имел абсурдные правила, для меня в принципе было удивлением, когда я узнал что определяющим фактором были судьи. Есть ли хоть в каком либо жанре, или под жанре искусства определение лучшей работы судьями?
Представьте себе ролик на Youtube с популярным муз. клипом, где 20 млн лайков, на 500к дизов. Но тут придут 2 музыковеда и скажут: "Не ребят средненько, на пятёрочку и сведение звука такое себе, убрать из трендов"
Или в театре, актёр выполнил свою роль, зал встал и начал хлопать. И тут где-то с балкона встаёт киновед, берёт граммофон и кричит "Не хлопаем ребята, не хлопаем, он выполнил ошибку в каскадёром трюке, тишина, ваша восхищённость не лицензированна профессионалом"
Человек достал зеркалку, чтобы сфотографировать величественную статую, во круг которой собралось много туристов. И тут из кустов выбегает скульптуровед, и прыгает в кадр. "Уф, успел, там у статуи трещина сзади оно не стоит вашего внимания, проходите дальше"
В любом виде искусства конечный судья только зритель, в данном случае интерактивный зритель (игрок). Даже культуризме, Арнольд Шварценеггер говорил, что в современном виде судейство измеряет только ширину бицепсов, трицепсов, и других частей мускулатуры, но забыли про гармоничность. И в итоге победителями в современности становятся синтоловые монстры.
А то, что обычные люди не смотрели в карты исключительно ошибка организаторов конкурса. Вы должны были сделать всё, чтобы работы людей добрались до конечного потребителя искусства - з р и т е л я.
И ещё один случай, когда судьи не зрители.
Загруженные файлы
15

» WarCraft 3 / Судейство конкурса 2020

Суть в том, что судейство в принципе имеет очень слабое значение в отношении этого конкурса. Вы знали, что если вы закажете себе дизайн у какой-либо студии и вам нарисуют не так, как вы хотели бы, то ни один суд в мире не сможет доказать, что работа была выполнена неправильно. Художник просто скажет "я так вижу". Потому что в отличии от какой-нибудь научной работы, как многие из вас заметили - это искусство и не важно что там под капотом, GUI, Jass, Lua, РО главное это подать. А искусство как музыка, картины, игры... всё это из области эмоций. Вы увидели картину в галерее и не смогли пройти мимо, вы не судите, вы чувствуете что это что-то особенное. Вы краем уха услышали музыку, вы не судили, но вознамерились во что бы то не стало, найти её на Apple Music. А однажды вам попалась игра и вы пытались судить, но что бы вы там не придумали, ваши эмоции от игры оставят последнее слово за собой.
15

» WarCraft 3 / Актуальность версии Warcraft III

1.32 онли, лично я просто не вижу никакой причины не использовать Reforged. А Lua это просто кайф, вот сейчас сижу в InteliJ Idea и пишу код в своё удовольствие. Новые функции.
И ещё одна причина использовать новый патч:
"Псс, эй парень, немного кастомного интерфейса не желаешь?"
Загруженные файлы
15

» WarCraft 3 / Изменение стойки

Arhonus:
Правды ради там добавить ещё нужно будет определённые вещи, это чисто каркас. Сохранить прокаченные уровни скиллов и передать их юниту на которого будет переключение, ну и сделать выбор заменённого героя...
Если зайдёшь в тупик, напиши мне в личку обещаю помочь.
15

» WarCraft 3 / Основы работы с Retera Model Studio

Vulfar:
Инструментарий команды Lemon Sky Studios точно может создавать все эти компоненты сложных материалов. Ведь именно они делали "перековку" варика. Поискать бы кого-то из них и допросить ) Ещё одной интересной штукой этих моделей является лицевая анимация, я точно знаю что её делали в FaceFX, и слышал о том что FaceFX включён в Unreal Engine 4. Вот у меня сразу возникает идея перекинуть тем скриптом модель в Max, а там в UE4 и попытаться поработать с лицевой анимацией.
15

» WarCraft 3 / Основы работы с Retera Model Studio

Vulfar:
Понимаю, чтож надеюсь ретера доведёт дело если не до конца, то хотя бы по основному функционалу до рабочего состаяния.
15

» WarCraft 3 / Основы работы с Retera Model Studio

Araders:
DarkLigthing, значит новую текстуру подлючить можно? А редактировать геометрию на уровне UV?
На счёт UV не знаю,но стороннюю текстуру можно подключить. Вот например, я вытащил из Mu Online посох и дал его архимагу (:
Загруженные файлы
15

» WarCraft 3 / Основы работы с Retera Model Studio

У меня тимколор не работает тоже. А ещё иногда текстуры из сторонних obj не хотят применяться, хотя я их пытался и в dds и в tif конвертировать :/
15

» WarCraft 3 / Основы работы с Retera Model Studio

Bergi_Bear:
Подкину идею для фикса. Запустил мониторинг, вижу что Retera работает на OpenGL
Попробуй найти OpenGL to DirectX wrapper, обёртку OGL в DirectX. Или найти opengl32.dll от opengl версий старше, чем твоя.

Или выполнить чистую установку драйвера nVidia
15

» WarCraft 3 / Изменение стойки

Принятый ответ
Это точно не тот случай, когда стоит избегать триггеров. Ты ведь не какую-то сложную систему собираешься сделать... Ты можешь создать в РО 2 героя, ближнего боя и дальнего боя со своим набором скиллов и типом атаки. И создать отдельный скилл-пустышку в РО для переключения между персонажами.
В триггерах будет элементарная логика не требующая сколь угодно углубленных знаний. В школьном паскале были задачи и то сложней.
Событие:
Юнит использует заклинание
Условие:
Заклинание = " Заклинание-пустышка"
Действие:
Если(множественный тип если) триггерный юнит = герой ближнего боя то:
Юнит - Заменить (триггерный юнит) на Герой дальнего боя
Или
Юнит - Заменить (триггерный юнит) на Герой ближнего боя
15

» WarCraft 3 / Основы работы с Retera Model Studio

bOrissko:
DarkLigthing
А что со скриптом не так, по подробнее? модели из Reforged он переносит вместе с анимациями.
Когда я его использовал мне выбивало ошибку и выкидывало на строку кода где было понятно, что идёт проверка на версию файла MDX. Вот кстати эта строка:

bOrissko:
Вот оно как, и начиная с какой версии, если не секрет?
Загруженные файлы
15

» WarCraft 3 / Основы работы с Retera Model Studio

Araders:
Я не видел у ретеры на канале, или где-то ещё, что-то про кастом анимации. Разве что редактирование уже существующих и то, с ограничениями...
Но как-то я наткнулся на тему, где умельцы с хайва разбирали новый формат MDX. И кто-то из них написал скрипт, который вроде как даже конвертирует MDX в 3D Max. Я сам пытался его использовать но современный формат MDX версии 1000+, а скрипт работает только с 900.
Скрипт
А obj не поддерживает анимации, ну такое )
Был бы кто в компетенции разобраться, адаптировать, улучшить этот скрипт.
15

» WarCraft 3 / Основы работы с Retera Model Studio

Bergi_Bear:
и у меня ретера вообще на 10 fps работает, хотя ресурсы пк не напрягаются, а у тебя смотрю гладенько всё
Если дело не в железе, то попробуй установить отдельно Java_RE и запускать не .exe а .jar
Не могу быть уверенным что это поможет, но на этапе беты Reforged, когда с редактором были множественные проблемы с запуском, всякими ошибками такой способ помогал некоторым людями и мне тоже.
Ещё вариант могу предположить, что ретера у тебя запускается на встроенной видеокарте в процессор, стоит проверить. У меня так вообще нет встройки ибо Xeon.
ThatGuyFromBar:
Только бы голову уменьшить )
15

» WarCraft 3 / Основы работы с Retera Model Studio

Bergi_Bear:
Проделал первую часть "пересадка анимаций", да конечно при условии, что модели практически одинаковые, некоторые анимации смотрятся забавно, то харакири то меч не в руке
Всё правильно, для этого и нужна вторая часть. Чтобы научиться двигать элементы, менять их и как следствие фиксить такие "самоубийства" )

Как-то сделал вариант Капитана смерти...
Загруженные файлы
15

» WarCraft 3 / Основы работы с Retera Model Studio

Araders:
Эх опередил меня, ну и ладно главное контент полезный. Вот бы еще пролить свет на работу с текстурами.
О, там ещё много чего можно писать про Ретеру. Это ведь вершина айсберга, контента хватает. А про текстуры я бы сам хотел знать больше...
Bergi_Bear:
Годный контент пошёл, сегодня буду изучать!
Уверен это будет интересно, вариантов пересобрать разные модели масса (:
15

» 3D Арт и VR / Нуб воврвался впервые ворвался в моделирование

ustinas:
Посмотри если такой вариант устроит. Я убрал вторую атаку, щитом он через атаку не бьёт. Анимация удара щитом "Bash"
То есть он бьёт только молотом через обычную атаку
Загруженные файлы
15

» 3D Арт и VR / Нуб воврвался впервые ворвался в моделирование

Araders:
DarkLigthing, кстати раз на то пошло можешь скинуть туториал по которому ты освоил редактор. Сам пытался разобраться в редакторе но без знания функций сложно, а на канале разработчика только видео из рубрики "смотри как умею".
Соглашусь, что у Ретеры нет хоршего обучающего видео, лишь пара видео описывающая те или иные аспекты редактора. Но всё таки из них можно что-то узнать.
Самые полезные видео у него
Ну а остальное всё методом научного тыка (:
Может я напишу блог о том, как делать какие-либо базовые вещи и те что умею сам. Так как я не владею этим редактором на уровне Ретеры.
15

» WarCraft 3 / Проблема с эффектом

easypeasy, ты можешь избежать многих подобных проблем в будущем если начнёшь плавно переходить к коду. Важная вещь которую ты можешь легко изучить и успешно приминять уже сейчас это локальные переменные. Локалки могут открыть перед тобой новый пласт возможностей, о которых ты и не подозревал (:
Если ты поменяешь редактор на JNGP
Ты сможешь удачно смешивать GUI и код. Объявлять локальные переменные, а потом использовать их в GUI.
15

» WarCraft 3 / Проблема с эффектом

easypeasy:
DarkLigthing, хорошо, проверю ещё раз все триггеры. А у тебя прерывание эффекта до того как переписал триггер было?
Было, так же как у тебя на видео. Теперь так:
Загруженные файлы
15

» WarCraft 3 / Проблема с эффектом

easypeasy:
DarkLigthing, я тут обнаружил что при создании любого эффекта на любой боевой единице, при атаке эффект может прерваться или пропасть, а может ли такое быть что у меня в карте есть код, (который я когда то ипортировал через другие редакторы, создающий этот баг) и который я сейчас не вижу через стандартный редактор варика?
Возможно дело вот в чём, значит, при создании эффекта через триггеры ты наверняка знаешь, что он записывается во внутриигровую глобальную переменную bj_lastCreatedEffect именно к ней ты обращается, когда в триггерах выбираешь вариант (Last Created Special Effect). Проверь если эта переменная перезаписывается где-то в коде периодический или при атаке юнита.
15

» WarCraft 3 / Проблема с эффектом

easypeasy:
Вместо wait я пробовал запускать таймер, и через событие когда этот таймер закончится - совершал остальные действия триггера(анпаузил босса, удалял эффект, и кастовал Удар грома) но при этом всё равно эффект прерывался. Я может что то не так делаю, можно ли на гуи через обычный таймер этот пофиксить?
Если ты всё сделал правильно с таймером, то возможно это не wait. Единственное отличие моего кода от того что в GUI это отсутствие BJ функций, таймер точно такой же. Может это BJ конфликтует с чем-то в другой части триггеров. А такое пофиксить без вмешательства Jass... проблематично. Пока что идей нет, но ты можешь убедиться что мой код работает если конвертируешь свой триггер Paladin04 в текст и заменишь его содержимое, тем что я дал выше.
15

» 3D Арт и VR / Нуб воврвался впервые ворвался в моделирование

Это легко сделать с помощью Retera Model Studio. Этим редактором можно даже прицепить щит любого другого юнита из WC3, ну или подгрузить ещё какую-то модель.
Я таким образом пересаживал пушку стрелку

Если в целом описывать концепцию, то. Открываешь модель, удаляешь если нужно геометрию во вкладке Edit, на месте щита. Прицепляешь щит просто аккуратно вырезав его на нужное место, копировав его из другой модели. Когда щит на месте, выделаешь его геометрию (она будет в списке мешей), правой кнопкой мыши - Re-assign Matrix и выбираешь кость, на которую будет насаживаться щит. Wc3 Model Studio может и тоже такое может, я не работал с ним, не знаю.
Ещё вариант это использовать отдельно модельку щита и использовать её через триггеры, как спеэффект цепляющийся, например к левой руке.
Загруженные файлы
15

» WarCraft 3 / Проблема с эффектом

Переписал триггер без Wait, спецэффект перестал сбиваться.
function EndEffect takes nothing returns nothing
    call DestroyEffect(udg_FirePalladinEffect01)
    call PauseUnit(gg_unit_E000_0043, false)
    call IssueImmediateOrder( gg_unit_E000_0043, "thunderclap" )
    call PauseTimer(GetExpiredTimer())
    call DestroyTimer(GetExpiredTimer())
endfunction

function Trig_FirePalladin04_Actions takes nothing returns nothing
    local timer t = CreateTimer()
    if GetRandomInt(1,2) == 1 then
     else
     set udg_FirePalladinEffect01 = AddSpecialEffectTarget("war3mapImported\\File00802.mdx", gg_unit_E000_0043, "origin")
     call PauseUnit(gg_unit_E000_0043,true)
     call SetUnitAnimation( gg_unit_E000_0043, "Stand Channel" )
     call TimerStart(t,3.00,false,function EndEffect)
     endif
     set t = null
endfunction

//===========================================================================
function InitTrig_FirePalladin04 takes nothing returns nothing
    set gg_trg_FirePalladin04 = CreateTrigger(  )
    call TriggerRegisterTimerEventPeriodic( gg_trg_FirePalladin04, 13.00 )
    call TriggerAddAction( gg_trg_FirePalladin04, function Trig_FirePalladin04_Actions )
endfunction

Нужно избавляться от wait. Вместо wait тебе нужно будет запустить таймер, который по окончанию вызовет функцию, продолжающую необходимые действия. В эту функцию значения локально не передать, только через хэш-таболицу, либо через глобалки. И вообще надо взять за правило всегда избегать wait если это возможно.
15

» WarCraft 3 / Определение типа данных FourCC

ScorpioT1000:
Можешь проверять через IsItemIdSellable, юнит точно не вернет true, а предметы все продаваемы, ведь это как раз магазин.
Но оно пожрет цпу слегка.
Точно! То что нужно, спасибо.

Bergi_Bear:
А что если делать ItemId-I000= число около 1 до числа предметов... а если же сделать UnitID-I000=Большое число
Как вариант, но IsItemIdSellable в моих реалиях более подходящий вариант
15

» WarCraft 3 / Определение типа данных FourCC

Ну итемы же с i начинаются, можно от этого исходить. Или попробовать создать юнита, если удасться, значит юнит, нет - значит предмет, или наоборот.
Если ты про равкод итемов, то да, было бы проще если бы они с i начинались. Но увы это не так (: Видимо, на прямую никак не получить тип данных сокрытый в равкоде. Просто из-за этого мне придётся вместо одной функции с перегрузкой делать две, и на вход подавать 2 списка...
Пока что моё решение такое:
Загруженные файлы