21

» WarCraft 3 / И снова о GetAbilityCD и многострадальной Психопомпе

Bubsy, с Психопомпой иногда фаталит.
Пока все фаталы объединяет то, что в процессе игры за нее она доходила до прокачки ульты.
Но и тогда фатал может быть, а может и не быть. Вот в чем прикол.
Но обговоренных с тобой изменений еще не вносилось, если речь об этом. Потому что ради этого опять часами колупать все карты и оптимизаторы - гемор. Да и лич сказал, что он и в текущем коде криминала не видит...
21

» WarCraft 3 / И снова о GetAbilityCD и многострадальной Психопомпе

DracoL1ch, на.
Все из папки Errors + там еще реплей на всякий случай, хотя понимаю, что скорее всего не понадобится, но вдруг всё же решишь скачать все целиком.
Загруженные файлы
21

» WarCraft 3 / Нужна модель? - Вам сюда!

Кстати, судя по комментам на хайве, проблемы с действием той текстуры не только у меня.
В общем, она не рабочая в текущем виде - тчк, или видос мне, как вы по пунктам ее и только ее скачиваете с хайва и именно ее без изменений заставляете действовать на модели.
21

» WarCraft 3 / Нужна модель? - Вам сюда!

CaZaNoVa, так, ладно, принципиально ради интереса щас с твоей моделью помучаюсь немного, надоест или время прижмет - брошу.
Оригинал действует. Ок.
Так. Похоже, это текстура какая-то косая! Потому что она у меня по дефолтному даже пути ничего не показывает.
ДА.
Все. Косая текстура.
Человека с хайва сам ищи, или пусть внятно объясняется, или сажать его на кол.
Текстура его НЕ действует, даже если просто заменить ее дефолтной модели. То есть вообще в принципе его текстура не рабочая.
Вот тебе в доказательство моя действующая модель с другой текстурой (отфотошопленный оригинал) - может, понравится.
А с той текстурой уже помочь не могу. С нуля текстурами не занимаюсь.
Файл.
Загруженные файлы
21

» WarCraft 3 / Нужна модель? - Вам сюда!

CaZaNoVa, так-то мной как раз по 5 мин. и было затрачено.
Тут просто модель какая-то странная или я хз.
Столько других так менялось - проблем не было.
А если сделали за 5 минут там, что там же и не закажешь?
21

» WarCraft 3 / Нужна модель? - Вам сюда!

CaZaNoVa, да тут тебе хотя бы без щита бы разобраться. Щит-то просто можно скопировать из той текстуры в другую.
Вот 2 варианта у меня, которые лично я не понимаю, почему не действуют. Может, Nosferoh знает.
21

» WarCraft 3 / Нужна модель? - Вам сюда!

CaZaNoVa, действительно.
Nosferoh, но ему нужно, чтобы можно было использовать 2 модели с разными текстурами. А эта модель реально какая-то странная. Вот еще один мой вариант - исходная модель была выделена в мдлвисе, через F2 перейдено на редактор текстур и все пути переименованы на новую.
Я так, наверное, с той вовской слизью сделаю. А эта модель даже так не действует!!!
Вот сам посмотри, что не так? Мдлвис открывает модель с текстурой нормально, в игре и редакторе пустота.
Файл.
Загруженные файлы
21

» WarCraft 3 / Нужна модель? - Вам сюда!

CaZaNoVa,
"В редакторе убрать всем текстурам путь импорта war3mapImported\"
Открываешь Менеджер импорта и убираешь:
вместо
war3mapImported\Cazanova.blp
war3mapImported\Cazanova1.blp
т. е. должно получиться так:
Cazanova.blp
Cazanova1.blp
и так далее для ВСЕХ .blp файлов Cazanova!!!
Cazanova.mdx можно не менять, хотя можно и тоже поменять
Сделай это, сохрани карту, закрой редактор, а потом снова открой редактор и карту и попробуй использовать модель.
21

» WarCraft 3 / Нужна модель? - Вам сюда!

CaZaNoVa, точно не работает? То есть теоретически это возможно, но модел едитор у меня нормально показал модель.
Что именно ты с архивом сделал?
21

» WarCraft 3 / Нужна модель? - Вам сюда!

CaZaNoVa, на.
  1. Из одной текстуры получилось пять, т. к. одна текстура там в модел едиторе используется пять раз, в таком случае я делаю пять разных текстур, по-другому не умею.
  2. Файлы названы Cazanova.mdx и текстурные Cazanova.blp (дополнительные текстуры с цифрами), потому что мне так хочется. В редакторе убрать всем текстурам путь импорта war3mapImported\
Зато быстро, бесплатно и за три минуты и в принципе должно действовать.
Лови.
Загруженные файлы
21

» WarCraft 3 / Нужна модель? - Вам сюда!

CaZaNoVa, переименуй файлы модели и скина, открой новую модель и через модел едитор удали старую текстуру скина и вставь новую. Получится другая модель. Так ты сможешь использовать обе модели сразу.
Постоянно так делаю, в 98% случаев проблем нет (иногда только некоторые как-то особо изощренно сделанные модели бодаются после замены скина в модел едиторе или вообще в нём сразу не открываются, но и с ними теоретически должно работать, просто текстуру по-другому надо поменять).
21

» WarCraft 3 / И снова о GetAbilityCD и многострадальной Психопомпе

Как будут, кину, а то каждый раз удаляю папку Errors, она меня бесит.
Скорее всего максимум завтра-послезавтра кину.
21

» WarCraft 3 / И снова о GetAbilityCD и многострадальной Психопомпе

.j достаточно? Да пожалуйста, сейчас будет.
Только так ты и .j можешь посмотреть, и сам поиграть, и карту открыть любую.
Но выложить .j офк не помешает тебе это и в будущем сделать, сейчас... знаю, что там страх, какая-то часть вообще осталась гуишная, но суть-то в конкретной функции, ну или... в общем, вот.
Лол. 6 метров.
Файл.
P. S. В коде это все-таки чуть удобоваримее выглядит - по папочкам разбито и т. д., хотя офк еще причесывать можно очень долго.
Загруженные файлы
21

» WarCraft 3 / И снова о GetAbilityCD и многострадальной Психопомпе

quq_CCCP, я запишу кд абилки, это правильно, и уровень сразу запишу, и проверку на мертвость добавлю, а все остальное не считаю, что у тебя оптимальнее, хз.
DracoL1ch, кинуть всю карту просто так не получится, там наркомания, многие данные в MPQ, карта отдельно просто не работает. Бтв, карты с Психопомпой отдельно просто уже не существует (хотя сделать займёт макс. несколько часов, один из которых займет открытие основной карты).
Если не проблема и не влом качать > 2.5 гб, то пожалста, сорс давно не скрывается, вот весь перекромсанный саморедактируемый вар с сорсами, мемхаком, дллкой на безлим размер по сети и еще дохрена с чем (аудасити прямо в папке вара, баттон менеджер, JNGP и т. д.), который называется BFS, отдельно от него отстегнуть что-нибудь уже затруднительно, это саморазвивающийся уже организм:
Опенсорсы в папке BFS Open Maps.
В кастом коде все функции легко отыщутся.
Уж ты разберешься, доту явно хакать тяжелее. Можешь war3map.j открыть, можешь просто прогрузить карту (что она грузится XX минут, это нормально, в итоге загружается. Можно английскую опен открыть, отличий в коде мало, а грузится минимум втрое быстрее)
Можешь и сам в оптимизированной (т. е. нормально-игровой) карте за Психопомпу поиграть и увидеть, что после выхода из игры бывает фатал.
21

» WarCraft 3 / И снова о GetAbilityCD и многострадальной Психопомпе

quq_CCCP, у меня шаблон.
У тебя как минимум подсказок нет, а без них не могу.
Некоторые проблемы именно у Психопомпы, так что у нее и буду решать.
Замечания справедливые, соответственно им отредактирую, но свой шаблон.
У тебя куча функций и еще и глобалки используются...
21

» WarCraft 3 / Конкурс карт WC3 на 50 000 рублей!

Ну дота проста по идее и развилась до нынешнего состояния потому, что Фрог правильно в нужное время в нужное место вложил нужное количество энтузиазма...
ЖнА тоже популярна потому, что до смешного проста по основной идее. Если бы там был свой Фрог, она могла бы подняться не меньше доты...
21

» WarCraft 3 / И снова о GetAbilityCD и многострадальной Психопомпе

quq_CCCP, спс, насчёт переменных самый толковый совет, мб в "возврате не того значения" собака и зарыта
Короче, пока поставлю доп. реалки на лвлы и кд абилы (это как минимум уменьшение обфускации кода) и фильтр на мертвеца, там видно будет. Если что, тема продолжит развитие.
Если совсем надоест, я просто поменяю ульту, т. к. 90%, что дело в ней.
21

» WarCraft 3 / Нужна модель? - Вам сюда!

Доброго здоровьичка! Закажи Эльрату и не парься. Хоть ты пока закажи, раз уж я пока экономлю, т. к. важнее другое.
Практика показывает, что бесплатно если и выходит, то втрое дороже...
21

» WarCraft 3 / Battle for Souls 3.2b

***
Чисто для очистки совести выпущено, но если кто хочет и ему не трудно качать гигабайты, может забрать. Принципиально важных изменений нет, только фиксы.
Битва за Души 1.48b
  • Психопомпа: вторая способность теперь действует более правильно
  • Гордыня: теперь если под эффектом способности "Припадок Самолюбия" герой перемещается НЕпостепенно, больше не происходит его мгновенной телепортации в центр игровой карты
  • Трюкач: изменена его модель на модель настоящего Шако из Лиги Легенд. Модель альт-аватара Психопат-Трюкач изменена на ту модельку, которая раньше была в обычном варианте героя, и иконка этого альт-аватара изменена на более подходящую к модели тролля иконку. Бывшая модель альт-аватара Психопат-Трюкач больше не используется, ее качество признано ниже удовлетворительного
  • Браслет Заклятий: исправлен текст подсказки о том, что удвоение заклинания сработало (текст побился только в русской карте)
***
Battle for Souls 1.48b
  • Psychopomp: second ability now works more correctly
  • Vain: fixed some part of Seizure Fate spell
  • Trickster: changed hero model; changed model and icon of alternate avatar Psychopath Trickster
  • Bracer of Spells: fixed double spell message (rus map only)
21

» WarCraft 3 / Эмпатия для врагов

Proshel_Doty, да не, тогда уж имхо проще все триггерно целиком, а баффы торнадные какие-нибудь...
21

» WarCraft 3 / Эмпатия для врагов

Extremator, зачем нужен даммик за врага, это я прекрасно понимаю. Потому что у эмпатии не настроить вражеские цели.
А минусовые значения в редакторе у эмпатии тоже не работают, чтобы она стала действовать как бонды?
21

» WarCraft 3 / Нужна модель? - Вам сюда!

FrigatPlay, Хроми немного на ребенка похожа, мб подойдет, но я хз, действует ли она, если что, архив выше.
21

» WarCraft 3 / Задание абилке перезарядки через SetAbilityCD

ТЬФУ! Никто, начиная с меня, JASS читать не умеет!
call SetAbilityCD (GetSpellAbilityId(), i, GetAbilityCD(GetSpellAbilityId(), GetUnitAbilityLevelSwapped(GetSpellAbilityId(), GetTriggerUnit())) * percent)
на русский переводится как:
  • Задать перезарядку способности (Кастуемая способность, уровень i, получить перезарядку способности юнита на ТЕКУЩЕМ УРОВНЕ СПОСОБНОСТИ ЮНИТА и умножить на нашу переменную)
Какого хрена тут ТЕКУЩИЙ УРОВЕНЬ, когда должен тоже быть уровень i?! Оно в цикле везде берет текущий уровень абилки вмеcто i. Т. е. если перезарядка на разных уровнях разная, это уже ппц ошибка.
Сейчас как раз фикшу эту абилу, она один хрен не до конца правильно действует, и уже тут самые разные извращения с ней получались, после выхода из вара фаталило, крч, 90% вероятности, что другие абилы Психопомпы в поряде, а фатал здесь.
Короче, вот, вроде теперь действует нормально.
Извините уж, что не под катом, мозги уже не имеют сил кат вставлять.
function BendingEffect takes nothing returns nothing
local real percent = 1.00
local real percent2 = 0.00
local integer i = 11
local integer percentchange = 0
if ( GetUnitAbilityLevelSwapped(GetSpellAbilityId(), GetTriggerUnit()) >= 1 ) and (GetAbilityCD(GetSpellAbilityId(), GetUnitAbilityLevelSwapped(GetSpellAbilityId(), GetTriggerUnit())) >= 1) then
УВЕЛИЧЕНИЕ НА 1%
if UnitHasBuffBJ(GetTriggerUnit(),'B0H8') == true then
set percent = 1.01
endif
НА 1% - ЗАКРЫТО.
УВЕЛИЧЕНИЕ НА 2%
if UnitHasBuffBJ(GetTriggerUnit(),'B0H9') == true then
set percent = 1.02
endif
НА 2% - ЗАКРЫТО.
УВЕЛИЧЕНИЕ НА 3%
if UnitHasBuffBJ(GetTriggerUnit(),'B0HA') == true then
set percent = 1.03
endif
НА 3% - ЗАКРЫТО.
УВЕЛИЧЕНИЕ НА 4%
if UnitHasBuffBJ(GetTriggerUnit(),'B0HB') == true then
set percent = 1.04
endif
НА 4% - ЗАКРЫТО.
УВЕЛИЧЕНИЕ НА 5%
if UnitHasBuffBJ(GetTriggerUnit(),'B0HC') == true then
set percent = 1.05
endif
НА 5% - ЗАКРЫТО.
ТАЛАНТ СИЛЬНОЕ ИСКРИВЛЕНИЕ
set i = 0
set percent = percent - 1
loop
set i = i + 1
exitwhen i > 12
if ( GetUnitAbilityLevelSwapped('A281', udg_Circle[i]) == 2 ) then
set percent = percent * 2
set i = 12
endif
endloop
set percent = percent + 1
ТАЛАНТ СИЛЬНОЕ ИСКРИВЛЕНИЕ - ЗАКРЫТО.
if (percent > 1.00) then
call AddSpecialEffectTargetUnitBJ( "chest", GetTriggerUnit(), "Psychopomp2.mdl" )
call ConditionalTriggerExecute( gg_trg_destroyspeceffect )
loop
exitwhen i < 1
set i = i-1
ОКРУГЛЕНИЕ ДО СОТЫХ (ИНАЧЕ МОГУТ ЗАПИСАТЬСЯ ДОП. ЦИФРЫ НЕ В ТЕ ЯЧЕЙКИ)
loop
exitwhen i < 1
set i=i - 1
set percent2 = GetAbilityCD(GetSpellAbilityId(), i) * percent
set percent2 = percent2 * 100
set percentchange = R2I(percent2)
set percent2 = I2R(percentchange)
set percent2 = percent2 * 0.01
call SetAbilityCD(GetSpellAbilityId() , i , percent2)
endloop
ОКРУГЛЕНИЕ ДО СОТЫХ - ЗАКРЫТО.
endloop
else
endif
else
endif
endfunction
//////////////
Ну, короче, действует-то однозначно она уже лучше, раньше цифры высчитывались с избытком, теперь явно правильнее. Насчет фаталов время покажет... Но все равно стало лучше.