32

» WarCraft 3 / Хак на память Warcraft3

Функция установки видимости модели юнита в тумане войны
function SetAlwaysVisibleFlag takes unit u, boolean flag returns nothing
    local integer a = ConvertHandle( u )
    if a > 0 then
        if flag and not IsFlagBitSet( ReadMemory( a + 0x20 ), 0x10 )  then
            call WriteMemory( a + 0x20, ReadMemory( a + 0x20 ) + 0x10 )
        elseif IsFlagBitSet( ReadMemory( a + 0x20 ), 0x10 ) then
            call WriteMemory( a + 0x20, ReadMemory( a + 0x20 ) - 0x10 )
        endif
    endif
endfunction
При значении true модель юнита будет видна в тумане войны всегда, при false только если он будет обнаружен.
Не дает возможность выделить юнита, навести целевой навык и тому подобное.
Анимации юнита видны.
32

» WarCraft 3 / (Memory hack) Visible effect'a в тумане войны

Вот полностью рабочий вариант для копипаста, увы только для юнитов:
function SetAlwaysVisibleFlag takes unit u, boolean flag returns nothing
    local integer a = ConvertHandle( u )
    if a > 0 then
        if flag and IsFlagBitSet( RMem( a + 0x20 ), 0x10 ) == false then
            call WriteMemory( a + 0x20, ReadMemory( a + 0x20 ) + 0x10 )
        elseif IsFlagBitSet( RMem( a + 0x20 ), 0x10 ) then
            call WriteMemory( a + 0x20, ReadMemory( a + 0x20 ) - 0x10 )
        endif
    endif
endfunction
Скрин
Загруженные файлы
32

» WarCraft 3 / (Memory hack) Visible effect'a в тумане войны

С эффектами не работает, с юнитами идеально, видно как стоят трясутся, но выделить низя, вокруг ничего не видно.
32

» WarCraft 3 / (Memory hack) Visible effect'a в тумане войны

Lenivex, нет терпение и ты умеешь колупать защищенные карты?
P.S по секрету, у лича это юзается для прыжка войда, смекаешь? Там все прекрасно работает!
32

» WarCraft 3 / Интерфейс игрока

Думаю можно, нужно будет Cheat Engine анализировать что изменяется в момент нажатия Enter или открытия меню (это само по себе не сильно то просто), а потом пытать пролезть туда с уровня jass при помощи мемхака.
32

» WarCraft 3 / (Memory hack) Visible effect'a в тумане войны

Lenivex, это немного не та функция, она способна спрятать эффект совсем, если поставить false... Подождите...
32

» WarCraft 3 / Массив

Что вы подразумеваете под "Массив в массиве"? Многомерные массивы? Или вам нужно записать в одну ячейку массива другой массив?
Первое реализуемо вот так:
integer array a
integer array b
integer array c
...
local integer i = 1
set a[i] = 10
set b[I] = 10
set c[i] = 10
Второе напрямую возможно только с юнитами да игроками, т.к для них существует отдельный тип массив, а именно group и force, ну а так же обходными путями с помощь vJass, сJass. Я никогда не буду оставлять обходные ссылки на сторонние ресурсы, если нужный документ есть на сайте
есть он вот тут аттачем к первому посту
32

» WarCraft 3 / как редактировать варкрафт в прямом эфире?

Принятый ответ
Лич по тихому сидел правило баги, 1 карту запустил а вторую правил....
32

» WarCraft 3 / Зачем два файла после оптимизации карты?

Принятый ответ
ClotPh:
Кстати да, тоже интересно. Всегда просто удаляю второй. Я понимаю, что там скорее всего что-то несет информационную ценность, но оно бы тогда хотя бы настраивалось как-то в оптимизаторе, создавать его или не создавать и/или удалить после выполнения оптимизации, а то немного раздражает мусор руками чистить. Если такие настройки есть - подскажите плз.
Это скрип карты, для анализа на ошибки.
32

» WarCraft 3 / как можно убрать стандартных юнитов с редактора?

ClotPh:
quq_CCCP, в каких файлах хранятся данные РО? В тех, которые экспорт-импорт всех данных по объекту? Т. е. если я их распакую в папку, они по дефолту стоять будут? А если в карте другие данные РО, то она будет со своими?
Данные о всех обьектах в кате в виде слк таблиц распаковываешь в папку с варом, такой же структурой как в мпк архивах игры, запускаешь редактор и видишь свои нестандартные данные. Работай с ними на здоровье.
Подробнее можешь смотреть инструкцию к опен доте, там есть инфа как че делать и как редактировать в редакторе.
32

» WarCraft 3 / Постепенный урон

ClotPh:
quq_CCCP, ну это та же бд
Короче, ятп, текста выше кроме меня никто не понял, ну я и самостоятельно не оч понимаю сейчас с первого взгляда =) , но в код его, попотев, превратить смогу (если моя идея верна, то и триггерный периодик урон, и не триггерный отследит, в принципе любой).
Это не база данных, это список. Базу данных ты заполняешь сам руками, что сколько, как, а список он просто есть, в него попадает все что нужно, от тебя больше ничего не требуется.
Тебе же нужно обнаружить любой переодический урон от способностей, а их может быть много, разных при разных. Дефольт отслеживать оч. геморно, нужно все делать кастом.
32

» WarCraft 3 / Постепенный урон

ClotPh, Ну проще всего реализовать ежесекундный урон триггерно, ну а когда нужно сделать увеличение мы находим ссылки на переодические триггеры или таймеры из структруры приаттаченной к юниту, ну и изменяем данные урона.
Так же некоторые баффы можно патчить мемхаком, но это слишком не универсально и геморно.
32

» WarCraft 3 / как можно убрать стандартных юнитов с редактора?

ClotPh:
^ Просто уже было написано, что у меня карта в редакторе из-за сверхгигантского (дота отдыхает, где в доте > 200 героев с в среднем по 4 аватара уже примерно минимум на каждого) РО уже почти час открывается.
Вот РО пока через MPQ редактить не могу, только ради того, чтобы в РО все впихнуть новое, ее и открываю, а код пишу в блокноте.
Распаковываешь данные из карты в папку с игрой -и улыбаешься, ну а затем удаляешь.
32

» WarCraft 3 / как можно убрать стандартных юнитов с редактора?

ClotPh:
"jass код уже лет 10 все пишут в JNGP или JASS CRAFT" - я уже все активнее напрямую через блокнот в war3map.j пишу, побочных эффектов не замечено
Зачем отказываться от тех фишек которые дает софт? В дефолтном редакторе никто кроме близзардов 8 шрифтом код никто и не писал, я конкретно про это. Блокнот с поиском функций, с готовымы конструкциями для копипаста, с надстройками и так далее, не понимаю зачем от этого отказываться, сделано же для удобства?
32

» WarCraft 3 / Постепенный урон

Ghostly, собственно в чем проблема, вы не знаете как узнать сколько у героя каких статов? Вы не можите построить формулу расчета урона? Или же у вас проблемы с периодическими действиями на таймерах\триггерах?
Триггерные способности с переодическим уроном очень легко и быстро делаются с помощью таймера\триггера и хештаблицы но не на гуи.
Суть проста, при применении мы сохраняем в некий буффер все нужные нам данные, а именно кто кастовал (источник урона) кто цель (жертва) каков урон, все это мы крепим на таймер и запускаем его, всякий раз когда он будет истекать он будет вызывать функцию где мы будем проверять а жива ли жертва, прошло ли достаточно времени или нет чтобы остановить и удалить таймер (конец время действия) а так же действия связанные с нанесением урона.
Прошу написать что конкретно вам непонятно? настоятельно рекомендую слезть с гуи и читать статьи по jass, на jass больше примеров и наработок, на jass проще и быстрее реализовать такие вещи про которые сейчас идет речь
32

» WarCraft 3 / как можно убрать стандартных юнитов с редактора?

Николай Матвеев:
GetLocalPlayer, я знаю что таблица находится внутри архивы игры, мог бы и не говорить лол
quq_CCCP, Ты не в курсе что настоящие профи jass и программисты не пользуются редактором? Без редактора создаются настоящие шедевры типа доты, например РПГ карту ты ни как не создашь в редакторе на ограниченных параметрах, и еще редактор тормозит всегда, к примеру как ты собираешься создать 1000 объектов способностей для РПГ карты на we?
  1. Нет, не в курсе, какие такие шедевры? Пруфы. Почему лич не использует редактор я уже написал., jass код уже лет 10 все пишут в JNGP или JASS CRAFT.
  2. Создам, тут вопрос не в софте а в руках, просто данные распаковываются в папку с игрой и с ними ведется работа в обычном редакторе, после упаковывается снова, но это лишнее, список кистей отключите и ненужные окна, тогда редактор не будет лагать и работать станет быстрее и удобнее.
  3. Есть Зефир мап эдитор, альтернатива.
  4. Какие такие ограничения вас не устраивают, абилки по миллиону уровней? Много уровней зло, это не раз было доказано, все можно решить проще.
Что у вас за карта, что за "шедевр" - которому нужно 100000 обьектов, импорта на 10 гигабайт и блекджек с сами знаете кем?
Делай в редакторе и не пори горячку, когда карта будет готова, тогда и проведешь слк оптимизацию.
32

» WarCraft 3 / как можно убрать стандартных юнитов с редактора?

Николай Матвеев:
Astra, я в гоогле видел много карт которые создавались без редактора вообще, еще я видел еще одну карту которая в редакторе ве создавалось в прямую и карта не имело объекты стандартные вообще были объекты только его созданные нестандартные, тоесть парень в youtube рассказывал то что он оптимизировал slk таблицы каким то чудом я не понял о чем он говорил еще, он английским языком говорил и его карта летало в загрузке и сохранении we как ты на это ответишь
Лол, где ты что видел? В карте старндартных объектов и не было ни-когда, они хранятся в архивах игры, да и часть из них нужны просто потому что, и наплевать что ты там хочешь...
Слк таблицы в карте это нестандартные данные о боевых единицах, спеллах и прочих обьектах, редактировать данные можно и без редактора но зачем?, Просто потому что ты увидел? Драколич так делает потому что у него особо выбора то нету, да и ему ненужно делать карту с нуля и изменять имеющуюся, а востанавливать в формат редактора а потом снова в слк такую кучу обьектов как в доте долго и геморно, вот и правит ручками.
Зачем тебе делать карту не в редакторе? Что тебе это такого даст? Да ничего, все что нельзя сделать в РО, можно будет сделать ручками в готовой к релизу и вылизанной карте после SLK оптимизации.
32

» WarCraft 3 / ГКД

Принятый ответ
У банок кд не общее, там просто один и тот же скилл, кд предмета никуда не пропадает, даже если предмет может закончится или будет выложен, но у предметов мнимый кулдаун индикатор, он связан не с реальной абилкой предмета, а той что указано в поле "Характеристики - название" (cooldownId).
У способностей кулдаун связан с самой способностью и если способность будет удалена а потом добавлена, то пропадет и кулдаун. Если у юнита больше чем 1 способность с тем же id приказа, то кулдаун индикатор одной способности будет отображатся на иконках других таких способностей.
32

» WarCraft 3 / Близзардские ИИ

Принятый ответ
Это кастом функции, по формированию отряда, смотри подробнее в самой функции кого она формирует, гулей, некромантов и так далее, а самое главное для чего? Гули могут еще и рубить лес и участвовать в обороне базы.
32

» WarCraft 3 / группы предметов

Принятый ответ
Все предметы поделены на классы, которые уже определены и нельзя сделать новые, но предметам можно выставлять уровни, потом проверять на то какой уровень у предмета.
32

» WarCraft 3 / как уменшьить функцию одинаковых действий?

AntiMage, код в студию, просадки фпс могут быть из за 100500 причин, мы должны сидеть гадать?
32

» WarCraft 3 / Добавление типов рельефа в редакторе

Тимур:
Но воду насколько помню так просто не заменить.
Воду как раз заменить легче всего. И её можно сделать разной для разных ландшафтов. В Water.slk за 5 минут всё настраивается.
А вот создать новый тип ландшафта гораздо труднее, и я не помню, чтобы были примеры, когда кто-то кроме близзов добавил бы в WarCraft новый тайлсет. Заменить можно, сделать новый - вряд ли. Там же не только текстуры земли, но и текстуры склонов, которые хранятся в архивах с названиями Z.mpq, F.mpq, L.mpq и. т. д.
Помнится карта на тематику верхамера, там земля была из железных плиток (как будто обшивка корабля), думаю все возможно, но только рисовать придется оч. много, еще и хорошо рисовать. А меняются да изи, или делаются нестандартные ландшавты.