Bergi_Bear, ну я тоже много чего проверял с анрайзом, и давно писал - есть в мемхаке примитивный тестер на ресурсоемкость кода, и все можно самому проверить.
JackFastGame, просто создавать и удалять группу никчему, есть глобалки внезапно, вот и не будут утечки плодится, очистка происходит не сразу а спустя некоторое время.
ArhiMEN, а что за код, я чето не понял что это за триггер с переодическим таймером 100 раз в сек, чето делает. Каждый раз создается новая группа, зачем? Обьясни что собрался делать?
goodlyhero, ну ауры фаталят лишь когда им апгрейдят уровень или чето делают с их мертвых владельцев, при смерти юниту выключают ауры, но если он получит ауру или апгрейд уровня, игра схватится за событие - юнит получил источник ауры и вручит ему бафф без проверки, а юнит то мертв - сразу фатал. Второй случай явно не наш, связан с мемхаком.
goodlyhero, менеджер памяти, мне показалось многовато там подгружено, точно ниче такого нету вроде кеев или читов, они нагружают сам вар и еще и порой вызвают фаталы.
Nikolay36, он был "менеджер", его познания были +- на уровне ваших, очень сильно средних, на него трудились кодеры высшего уровня и англоязычное комьюнити (и нетолько), он же вводил идеи и балансил их, посмотрите код доты, как качестванные и продуманные системы, те же кастомные шипы неруба, сделаны в доте кодом 1 в 1 как оригинал, без неуязвимости в полете. Так и гуи с утечками и туповатый индусский код, явно jass начального уровня...
DESo3latorTro0pe, ну статью написать как можно управлять мобами?
У одного триггера может быть множество событий, причем разных, а юнитам можно поставить custom value (в гуях) и таким образом проверять какой чекпоинт он преодалел и в какой отправить его сейчас, ну и брать от областей GetCenterOfPos (или как там в гуях) тоже ненадо, делаем массив куда заносим все эти точки, и о чудо все в одном триггере, обьекты не создаются, и кода маньше в 10 раз.
Стоит только подумать или посмотреть как сделано у других.
DESo3latorTro0pe, ну для начла вот, еще вот
Тут ищем что конкретно интересует, ну есть статья про jass
Ибо полностью на гуи от утечек не избавится, да и будет масса неудобств, все твои пути крипов в 1 триггере можно было сделать. Потом нужно практиковатся, я и предложил для начала карту близардов конфетные войны.
хм, ntdll.dll - случаем никаких читов или прог не было включено?
Есть такая функция IsUnitVisibleToPlayer и аналог для детекции (типа инвизера спалили труесайтом или нет).
Но юнит виден игроку, юнит види юнита, это есть такое событие - юнит обнаружил цель в пределах досигаймости или как то так на гуях...
На мемхаке тоже куча функций, насчет видимости и детекции.
DESo3latorTro0pe, ну потому что я сразу сказал как надо, но намек раз не понятен, надо тыкать носом. Каждый триггер год разбирать будем, статей и примеров как делать надо и как избавится от утечек полно, про то что лучше не удалять юнитов (кроме редких исключений) и не пытатся ничего делать с мертвыми юнитами, никаких вручений абилок, изменений уровня. Вейты зло, после wait функция DyingUniy может вернуть уже и не того юнита который умер, ибо это разрыв потока выполнения, вовсе порой можно обойтись без вейтов, чтобы какой нить юнит умер не сразу а спустя мгновение - ему можно установить время жизни.
Нет нетак, нужна пассивка с кулдаун индикатором, их 2 - перерождение таурена и эксгумация труповозки, на одной можно запустить кд не убивая юнита лишь мемхаком, а вот вторая запускается в кд технической абилкой труповозки (смотри как устроена труповозка), тогда на ней пойдет кд. Ну там правда будет баг, это считается кастом и будет сбивать инвиз с героя если запустить таким образом кулдаун у эксгумации.
DESo3latorTro0pe, юнита лучше скрывать (HideUnit) и убивать. Так же советую не плодить по 10 триггеров на перемещение юнитов, это мало того что глупая и неоправданная реализация, так еще и утечек море. GetPosition все эти функции создают обьект location которые не удаляются, хотябы посмотри конфетные войны близзардов.
Daro, рексар - целиком выложен на хайве, модели апарата и его спеллов, модель энигмы, модель ульта акаши - на хайве 20 лет лежит как.
Вокер старый, новый вроде был просто самопис по оглядке на то что есть в карте, так же в титрах вы найдете векса, и других людей кто делал спеллы или системы. Все не вспомню уже, берешь и гуглишь - и о чудо, оно есть.
Ну вот подобный код может как раз вызывать подобные фаталы, + ну очень хреновый гуи код с тоннами утечек, так что приводим код в порядок, не мешало бы почитать статьи про оптимизацию, исключаем вейты и ремув юнитов. Так же не делаем никаких махинаций с абилками дохлых юнитов.
Потом все в доте, натырено с хайва - прочесываем хайв и о чудо, там вплоть до героев целиком с кодом, импортом есть. Фрог то не сам делал а тырил готовое и балансил, по репортам комьюнити.
А зачем неуязвомость? Если охото как в кампании альянса с обсерваториями, триггер на получение урон и хил здания, ровно на величину этого урона + делаем его за нейтрально пассивного пока не достроено.
Гуванч, он на мемхаке функции вращения модели юзает, но там надо думать, yaw, pith, roll надо задавать чтобы повернуть модель, и придумать формулу где по всей траектории полёта они будут высчитыватся.
ArhiMEN, там была отдельная функция, я забыл название в разделе юнита смотри:
function GetUnitCritterFlag takes unit u returns integer
local integer pData = ConvertHandle( u )
if pData > 0 then
// 0 - normal | 1 - critter
return ReadRealMemory( pData + 0x60 )
endif
return -1
endfunction
function SetUnitCritterFlag takes unit u, integer id returns nothing
// Acts similar to 'Amec', meaning if unit has flag equal to 1
// then he is considered a creep and will be ignored by autoattacks.
// However, an attack may still be forced with 'A' key or rightclick
local integer pData = ConvertHandle( u )
if pData > 0 then
if id >= 0 and id <= 1 then
call WriteRealMemory( pData + 0x60, id )
endif
endif
endfunction
» WarCraft 3 / Утечки в коде
» WarCraft 3 / Сменить Имя Юниту на МемХаке
» WarCraft 3 / Утечки в коде
» WarCraft 3 / Начала внезапно вылетать карта. (редактор 1.26а)
» WarCraft 3 / Начала внезапно вылетать карта. (редактор 1.26а)
» WarCraft 3 / Есть ли модели дота в открытом доступе?
» WarCraft 3 / Начала внезапно вылетать карта. (редактор 1.26а)
У одного триггера может быть множество событий, причем разных, а юнитам можно поставить custom value (в гуях) и таким образом проверять какой чекпоинт он преодалел и в какой отправить его сейчас, ну и брать от областей GetCenterOfPos (или как там в гуях) тоже ненадо, делаем массив куда заносим все эти точки, и о чудо все в одном триггере, обьекты не создаются, и кода маньше в 10 раз.
Стоит только подумать или посмотреть как сделано у других.
» WarCraft 3 / Начала внезапно вылетать карта. (редактор 1.26а)
Тут ищем что конкретно интересует, ну есть статья про jass
Ибо полностью на гуи от утечек не избавится, да и будет масса неудобств, все твои пути крипов в 1 триггере можно было сделать. Потом нужно практиковатся, я и предложил для начала карту близардов конфетные войны.
» WarCraft 3 / Видимость юнита
Но юнит виден игроку, юнит види юнита, это есть такое событие - юнит обнаружил цель в пределах досигаймости или как то так на гуях...
» WarCraft 3 / Перезарядка пассивного навыка
» WarCraft 3 / Начала внезапно вылетать карта. (редактор 1.26а)
» WarCraft 3 / Перезарядка пассивного навыка
» WarCraft 3 / Начала внезапно вылетать карта. (редактор 1.26а)
» WarCraft 3 / Есть ли модели дота в открытом доступе?
Вокер старый, новый вроде был просто самопис по оглядке на то что есть в карте, так же в титрах вы найдете векса, и других людей кто делал спеллы или системы. Все не вспомню уже, берешь и гуглишь - и о чудо, оно есть.
» WarCraft 3 / Телепортация через диалог
» WarCraft 3 / Начала внезапно вылетать карта. (редактор 1.26а)
» WarCraft 3 / Есть ли модели дота в открытом доступе?
» WarCraft 3 / Начала внезапно вылетать карта. (редактор 1.26а)
» WarCraft 3 / Есть ли модели дота в открытом доступе?
» WarCraft 3 / Массив с буквами в место чисел
» WarCraft 3 / Неуязвимое здание с отображением хп
» WarCraft 3 / Полёт клинка
» WarCraft 3 / Полёт клинка
» WarCraft 3 / Волна силы не пашет vJass
Ред. quq_CCCP
» WarCraft 3 / Стальной вихрь (whirlwind) и Заводной зверь