32

» WarCraft 3 / Показ юнита только для одного игрока

Game_Nikitav_1:
quq_CCCP:
Инвиз выдать никак?
Союзники будут видеть.
Им можно вырубить shared vision и врубить в любой момент, так что не проблема.
Так же можно сделать вижен всех героев дамми юнитами которые будут летать у них над головой.
32

» WarCraft 3 / Постройка через способность в спеллбуке в сферическом вакууме

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

» WarCraft 3 / Пассивная способность дотовского героя Silencer

Astra:
И что тогда получается даммика триггерно двигают по координатам с учетом траектории движения героя, он же летит не прямолинейно + периодик таймер на приближение даммика к герою?
Переодик триггер, это же фрог, + событие что цель подохла, чтобы уничтожить снаряд если сайленсер подох раньше чем до него долетел даммик.
32

» WarCraft 3 / Пассивная способность дотовского героя Silencer

Как вы определите что скилл пустышка попал в сайленсера?
Стандартные снаряды промазывают в юнита который применил скачок, был скрыт, поднят в ветра...
32

» WarCraft 3 / Скил на скорость анимации ускорение/замедление

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

» WarCraft 3 / Пассивная способность дотовского героя Silencer

Принятый ответ
На основе полностью триггерного снаряда, сделанного из работника (если вам так интересно).
Если сало выучит глейвы, то будет получать бонусы интелекта (если мне не изменяет память), сам снаряд тупо юнит которого двигают с сайленсером и проверяют жив ли он.
Могу выложить код сайленсера.
32

» WarCraft 3 / Как передать имя локального игрока всем игрокам?

biridius:
Глянул систему античита. ЯТП десинк вызывает создание юнита для локального игрока. Что мешает создавать юнита только для игрока номер N, а номер игрока для сообщения передавать (через синхрон данных) всем? И создавать юнита только после показа сообщения
Есть идеи как получить от читера только доставерные пакеты, да и самого читера?
Передача данных будет осуществятся локально с его машины.
32

» WarCraft 3 / Доставание war3map.j через mpq, изменение и вшивание обратно

ClotPh:
Если карта открывается 50 минут и надо менять только код, то редактировать war3map.j , очевидно, в разы быстрее, а уж в случае ошибок можно будет и в карту полезть (но как раз в блокноте писать уже и приятнее и ошибки маловероятны, это насчёт того, кто что знает и кто чего не знает).
Открывать интересно именно свою карту, чужие не особенно и вопрос не про это был.
Ну, ятп, неприятных побочных эффектов нет, спасибо.
Чувак, у тебя дело не в коде, а в объектных данных, сделай слк оптимизацию, распакуй слк таблицы из карты в папку с варом и редактируй на здоровье, открыватся будет почти мгновенно (даже опен дота открываеся быстрее, 1-2 мин) так что это бага...
32

» WarCraft 3 / Как передать имя локального игрока всем игрокам?

Игрок то видит что его кикает за мх. Для бана нужна работа с хост ботом, простите не верю что ваш уровень, у вас есть кодеры на с++ хост бот на сервере?
Тем более не советую афишировать наличие в карти античитов, антивзломов и так далее, будет меньше головной боли.
biridius:
синхронизация данных? где-то в середине
типо того
function SyncInt takes player p, integer val returns integer
	if (GetLocalPlayer() == p) then
		call StoreInteger(cache, "", "", val)
	endif
	call TriggerSyncStart()
	if (GetLocalPlayer() == p) then
		call SyncStoredInteger(cache, "", "")
	endif
	call TriggerSleepAction(2.)
	call TriggerSyncReady()
	return GetStoredInteger(cache, "", "")
endfunction

//...
if cheese then
	local player p = GetLocalPlayer()
	local integer local_val = GetPlayerId(p)
	local integer result_var = SyncInt(p, local_val)
	call BJDebugMsg("Player "+GetPlayerName(Player(result_var))+" is cheating")
else
endif
Во время дисинха, мы будем синхатся с читером?
Как бы не вылететь в след за ним, в момент обнаружения чита его уже нету в игре, что с ним синхать?
Без особых извращений данные в кеше очень легко правятся читерами, желаете чтобы в вашей карте был аналог ICCUP WINHACK?
32

» WarCraft 3 / Доставание war3map.j через mpq, изменение и вшивание обратно

DracoL1ch, лич тут гуи то не знают, какой jass...
Ладно бы жаскрафт, но там не идеально работает mpq explorer, так что новичкам его не советую.
32

» WarCraft 3 / Какая функция отвечает за получение дальности атаки?

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

» WarCraft 3 / Доставание war3map.j через mpq, изменение и вшивание обратно

Принятый ответ
Совместимость исключена, в картах с разным кодом.
При чем тут быстрее? Не чуть не быстрее, перепаковывать карту в ручную и проверять код на ошибки сударь собрался ручками? Когда для этого есть 1 кнопка...
Колупают код карты тогда, когда нету исходников. Так чаще всего делают читеры, которые вливают Читы в чужую карту, реже колупается в чужих картах люди которым интересна реализация тех или иных вещей..
Но лучше попросить исходники у автора, если вам интересно как там все устроено...
Очень редко встречаются карты с защитой от изменения кода, щяс снова доступен ретурн баг, будьте очень осторожны южные читеры если не хотите словить злобный вирус.
32

» WarCraft 3 / Какая функция отвечает за получение дальности атаки?

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

» WarCraft 3 / Использование сторонних архивов в карте

Принятый ответ
Штык:
TripleKor, тоесть если я допустим в этом архиве создам папку например Audio то в редакторе я её увижу???
Нет, не увидишь.Но когда ты запустишь карту и в папке с игрой будет этот архив, то в игре ты услышишь музыку.
Если тебе так проще, то сначала импортируй музыку в карту, используй её, проверь а все ли работает, ну а затем удали мпк редактором из карты и сунь в архив, подгрузи архив и радуйся что все работает.
Микс архив должен быть у всех игроков, как им подсунуть микс архив уже делали пример в теме с мемхаком.
32

» WarCraft 3 / Как передать имя локального игрока всем игрокам?

Зачем?
Мх = нефиг делать, те кто постоянно вылетают без причины, будут грешить на мх а не на античит, что наруку всем разумным картоделам...
32

» WarCraft 3 / Как передать имя локального игрока всем игрокам?

Никак, ненужно выводить никаких ников, мхашник может на своей машине выключать все это, десинх и все.
32

» WarCraft 3 / Посоветуйте save-load систему, пожалуйста.

Ретурн баг, геймкеш, прелоад в руки.
Слабо сделать автосейв в файл, а так же автозагрузку из файла?
32

» WarCraft 3 / Тип атаки)

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

» WarCraft 3 / Формулы высоты

Ну высота рельефа определяется с помощью GetLocationZ, переносим точку в нужнее координаты и берем её высоту, вот и все. Для определения высоты юнита есть GetUnitFlyHeight (только для летунов).
32

» WarCraft 3 / Мигалка у баффов перед исчезновением

EvilPenguin:
Я слышал что вроде в карты с мемхаком нельзя играть в iccup и battle.net
Ну ничего страшного, пусть сгнивают дальше...
Когда там останется полтора человека, начнут думать об этой проблеме...
32

» WarCraft 3 / Мигалка у баффов перед исчезновением

Как уже написал DracoL1ch, нужен мемхак, для работы с данными баффа.
Мигание начинается само, как только пройдет время указанное структуре баффа (т.е когда ему начать мигать), его можно выставить так что бафф начнет мигать при появлении.