23

» Grand Theft Auto / Ford Escape XLT (2001)

Ваш ресурс не прошёл автомодерацию. Пожалуйста, внесите исправления или ожидайте проверки модератором.
Причина
Длина текста: 263, а требуется не менее 500
Your resource has not passed automoderation. Please make corrections or wait for the moderator to check.
Reason
Text length is: 263, but required not less than 500
// CID4
23

» WarCraft 3 / Война за природу

Ваш ресурс не прошёл автомодерацию. Пожалуйста, внесите исправления или ожидайте проверки модератором.
Причина
Число вставленных изображений: 0, а требуется не менее 3
Your resource has not passed automoderation. Please make corrections or wait for the moderator to check.
Reason
Count of inserted images is: 0, but required not less than 3
// CID3
23

» WarCraft 3 / Столкновение юнитов

Похожие вопросы:

ответ
K0META, ты прав. проверил. короче еще с этим нужно карту пути скопировать у портала и вставить в поле вашего здания.
через триггеры это раздел "Боевая единица" - Set Unit Collosion Off
ответ
~8gabriel8:
Попробуй дать юнитам способность "Дух (видимый)".
ответ
Kind Ram:
Если у юнита тип перемещения включён на "нет", но есть скорость перемещения, он будет перемещаться сквозь любые объекты. Если же у него перемещение стоит "летающий", то его могут заблочить только воздушные юниты и воздушные блокираторы пути. Но в случае с летающим типом, это станет заметно как он "плавно" взбирается на вертикальные стены рельефа.
ответ
Razor_dex:
Мне кажется проблема в этом, он не просто передвигает, он перемещает с одной дистанции на другую, т.е рывками
Криво реализовано движение. У тебя смещение происходит сразу на 300 единиц, поэтому пролетаешь декорации, и потому, что функция SetUnitXY перемещает в точку беспрепятственно, игнорируя занимаемое юнитом пространство. Попробуй сделать так:
поменяй это
call SetUnitX(b,GetUnitX(b) + 300 * Cos(GetUnitFacing(a) * bj_DEGTORAD))
call SetUnitY(b,GetUnitY(b) + 300 * Sin(GetUnitFacing(a) * bj_DEGTORAD))
на это
call SetUnitPosition(b,GetUnitX(b) + 40 * Cos(GetUnitFacing(a) * bj_DEGTORAD),GetUnitY(b) + 40* Sin(GetUnitFacing(a) * bj_DEGTORAD))
ну и установи таймеру период срабатывания в 0.05 где-то.
call TimerStart(t,0.20,true,function Hakke_Act)
Вообще, по-хорошему, надо бы переделать весь спел.
ответ
По сути это скелет системы физики, написан на Jass, в карте сразу есть рабочее демо.
В 3D.

23

» WarCraft 3 / Анимация выпадение предмета

Похожие вопросы:

ответ
Так мне помогли, когда я спрашивал, тут все понятно.
ответ
Нужно чтобы они НЕ выпадали.
А, в таком случае только триггерно.
ответ
А вообще, с чего такой вывод?
Этот эксперимент очень легко повторить, если для выпадения выставить "любой случайный предмет - разное" или "любой случайный предмет - для кампании". И ничего выпадать не будет.
У всех этих предметов в РО в параметре "Включить как случайный выбор" установлено значение "нет". Если сменить это значение на "да", то предмет будет выпадать.
ответ
  • Событие: юнит умирает
  • Условие: Владелец умершершего юнита равен игрок враг
  • Условие: Случайное число (0,100) < шанс
  • Действие: Создать предмет на месте умершего юнита.
ответ
Выпадающие при смерти предметы - это тоже jass скрипт, он генеруется при сохранении карты. И там есть триггеры. Потому в любом случае без триггеров не обойтись

23

» WarCraft 3 / Ошибка при загрузке карты

Похожие вопросы:

ответ
Крашлог и карту желательно, мб где то пропустили скобку?
ответ
В мпк редакторе открой карту да удали модель, вот и все.
ответ
~8gabriel8:
Надо было бы карту приложить, чтобы другие с патчем 1.31 могли проверить, будет ли у них запускаться.

23

» WarCraft 3 / Некорректно работает спелл - [Jass]

Похожие вопросы:

ответ
Вобщем озарение как всегда пришло внезапно - понял что GetSpellAbilityUnit срабатывает на дамми и записывает в массив его, а не цель щита. Просто передвинул махинации с дамми в конец функции Actions. Всё отменно работает. Всем спасибо все свободны
ответ
XGM Bot:
Похожие вопросы:

ответ
а вопрос закрыть?
ответ
~8gabriel8:
В РО у способности есть есть строка Графика - Анимации, там указываешь ту, что хочешь видеть при её использовании. Например, для Огненных стрел Жрицы Луны используется анимация attack, для Молота бурь Горного Короля анимация spell throw, а для Покоя Хранителя Рощи анимация spell channel. Для двух последних способностей в РО указывается два слова, оба слова через пробел не работают, например, указывай отдельно spell и throw или spell и channel. Если у модели нет анимаций с таким названием, но есть анимации, которые содержат одно из этих слов, то будут проигрываться они. Там ещё есть тонкости, о которых долго печатать надо, да и они тебе могут не понадобиться. Пробуй.
ответ
quq_CCCP, Ну я на хайве видел полуджассовый вампиризм. Так мне и нужно вручать при замахе, чтоб если героя диспелят он вампиризм при атаке вернул. А утечку показывает, как я атакую, сразу хендл на один повышается. Может руна не удаляется?
ClotPh, Вообще не понял о чём ты.
Решил проблему, утечка возникала из -за не удаления руны, она почему-то не удаляется изнутри триггера, создал отдельный для удаления и нет утечки.
ответ
ALL_Remove = false
чтотооченьважное
ALL_Remove = true
как сложно то было


23

» WarCraft 3 / триггер задания

Похожие вопросы:

ответ
Вы хотя бы пробуете перед тем, как задать вопрос сделать что-то самостоятельно?
При создании Задания выбирается его тип: Основной/Дополнительный и т.д.
ответ
желательно без Jass
Что вам jass плохого сделал? Ну и ладно, вот вам lua:
---@param texFile string
---@return boolean
function BlzChangeMinimapTerrainTex(texFile) end
ответ
Кеш, все через кеш.
ответ
Unit - Order (Last created unit) to Attack-Move To (Rally-Point of (Random unit from (Units owned by (Owner of (Last created unit)) of type Barracks)) as a point)
Last created unit будет идти убивая все на пути в точку сбора Барраков
ответ
Вариант 1
Можно сделать в одном триггере 5 событий
Боевая единица - умирает "Здание 1"
Боевая единица - умирает "Здание 2"
Боевая единица - умирает "Здание 3"
Боевая единица - умирает "Здание 4"
Боевая единица - умирает "Здание 5"
А дальше добавить условие через И:
Юнит "Здание 1" мёртв == ДА
Юнит "Здание 2" мёртв == ДА
Юнит "Здание 3" мёртв == ДА
Юнит "Здание 4" мёртв == ДА
Юнит "Здание 5" мёртв == ДА
В итоге твой триггер сработает тогда когда умрёт одно из зданий, и в этот момент мертвы будут все 5 (т.е. в момент разрушения последнего из них).
Вариант 2
Общее событие смерти для всех юнитов.
В условии проверяешь ТИП юнита, если он равен твоему зданию (напр. Ферма), тогда проверяешь через И что все здания мертвы, как в предыдущем варианте.
Это подходит если у тебя все 5 зданий одного типа, а не разные, и нет иных условий.

23

» WarCraft 3 / как поменять размер кода

Похожие вопросы:

ответ
Поробовал поменять на хеш-таблицы и карта запустилась на рефордже (не знаю про 1.26, но скорее всего тоже будет работать). Менял все чере мпк редактор, ибо если менять редактор мира, в из карты выидывает с поражением, не стал с этим заморачиваться, да и через блокнот редактировать код в данном случае удобней. Кстати эта защита видимо забытые технологии древних. По крайней мере я ничего подобного не видел. Да и то что в карте есть такая защита и саму карту не прогоняли через оптимизаторы, говорит о том что она мега древняя. Ну это так отступление.

23

» WarCraft 3 / Как проверить, что юнит кастует?

Похожие вопросы:

ответ
Нашёл систему, где звук передаётся в таймер, который истекает через 0 секунд. В результате один и тот же звук может проигрываться несколько раз без всяких проблем. В инетике пишут мол это такой баг движка.
ответ
глобальный массив не нужен. сохраняй группу в хэш-таблицу на хэндл героя, потом загружай ее когда надо. у каждого героя будет своя группа
вот пример, молот бурь съедает юнита а удар грома ставит всех юнитов обратно
ответ
Можно просто пикать всех юнитов в регионе, или ещё красивее
GetEnumRange('Лечилка')
ответ
наброски
скидывал тебе это, что не помогло?
и проверяй дебагом, работает = не работает.
ответ
Причина: причин было много, а я искал лишь одну
Самыми распространёнными оказались элементарные ошибки в коде, отсутствие параметров, параметры не того типа данных (привет динамическая типизация) или лишние параметры, из за чего происходили "рандомные рассинхроны при обрыве потока"
Огромное спасибо пользователю prog, что откликнулся и смог найти ошибки, а нашёл он их при помощи языкового сервера sumneko lua для VScode

23

» WarCraft 3 / Точки крепления

Похожие вопросы:

ответ
Писать отдельно
Первая строка Hand
Вторая строка Left
ответ
Я пару лет назад брал форму ворона и крепил к ее крыльям дефолтный эффект "снаряд башни нежети". Все работало прекрасно.
ответ
В редакторе скелета

23

» WarCraft 3 / Помогите исправить триггер

Похожие вопросы:

ответ
не стоит использовать ждать
создаём для юнита целочисленную переменную time
1 триггер
 Событие 
 	периодическое событие - каждые 0.1 сек.-
 Условие 
	time > 0
Действие  
	set time = time - 1
	если time == 0 то понизить уровень способности "незаметность" для "герой" до 1
	
2 триггер
 Событие
	боевая единица - юнит атакован
 Условие
	Атакующий юнит=герой или Атакованный юнит=герой
 Действие
	set time=30
	боевая единица - повысить уровень способности "незаметность" для "герой" до 2
не забудь закрыть вопрос (для этого выбери лучший ответ)
ответ
Перенеси условия в блоки "Иначе", как на картинке и тогда попробуй.
Должно создаваться по одному предмету за раз.
алсо - "Модернизация"
ответ
~8gabriel8:
Мапхак работает, наверное. Но это не точно, так как не ползуюсь им, только много читал об этой утилите.
ответ
Нестандартных героев нужно указать в константах:
Тимколор настраивается в свойствах юнита.

23

» WarCraft 3 / дирижабль

Похожие вопросы:

ответ
Dimari93, во первых
для того чтобы написать комментарий не надо цитировать предыдущий
во вторых
ai файл это файл с джасс кодом
не знаешь джасс - ничего не поймёшь в ai и следовательно не сможешь модифицировать
в общем все возможные ответы даны и разжёвано так что любой знающий основы джасс поймёт
вопрос закрыт
ответ
Diaboliko:
Сразу паузить и анпаузить юнита, если приказ цель-объект и Id приказа = 852047 (вероятно, "unload"). Отменяет текущий приказ.
Работает. Но в явном случае нужен таймер, потому что без него работать не будет, он сразу стопит и не выгружает.
ответ
Когда юнит погружается в транспорт, используют событие - юнит погружен в транспорт. Пассажира обязательно надо пометить чем-то, например, в группу добавить. А когда выгружают пассажиров, то пассажир перед погрузкой получает приказ "стоп" с условием юнит в группе.

Дирижабль достаточно уничтожить, и все пассажиры должны будут автоматом выгружены. Или удалить попробовать.

23

» WarCraft 3 / Юниты стакаются

Похожие вопросы:

ответ
скорее всего, он говорит о SetUnitMovespeed ()
ответ
~16GB:
JackFastGame,
оно не работает, придётся делать много уровневую абилку во всеми вариантами скорости, и самом у подсчитывать её
ответ
Прежде всего, зачем по таймеру для каждого игрока, а тем более на каждого кастера, если можно обойтись одним таймером на всех?
Группы я бы тоже не хранил для каждого игрока, а вместо этого хранил бы по хендлу цели сколько осталось тактов кровотечения и от чьего имени наносить урон, а всех юнитов с кровотечением складывал бы в одну группу для всех.
Постоянное создание-удаление групп, в принципе, тоже не лучшая идея, лучше их чистить и повторно использовать.
Ну и я бы не стал использовать анонимную функцию в таймере - она тут не нужна, все отлично передается глобалками.
ответ
Qulore, такое было, были вопросы по СФу в доте, конфетные войны я указал не зря, там есть примеры счетчиков для способностей.

А примеру как сделано переключение аур паладина, или как реген маны от атак.
ответ
Ты в цикле даешь каждому отдельный приказ. Потому в разнобой.
Отдавай приказ отряду: отряд - приказать отряду идти/атаковать и тд

23

» WarCraft 3 / Помогите доделать триггер

Похожие вопросы:

ответ
Думаю, что можно сделать через группу. В твоём триггере просто перебираешь всех юнитов и двигаешь куда тебе нужно. Тогда тебе нужно будет только добавлять в группу новых юнитов, которые должны так двигаться. А если не хочешь, чтобы юнит двигался - удаляешь его из группы.
Например, создаешь триггер, который регистрирует новых юнитов, вошедших в карту. В условии проверяешь тип юнита. Если подходит, то добавляешь его в ту группу, что я описал выше.

23

» WarCraft 3 / помощь с англ триггерами

Похожие вопросы:

ответ
это не отключение индексирования, это отключения ресайкла индексов
т.е. если юнит умрет и ремувнется с мапы, его индекс достанется другому юниту
а наработка с цифрами есть на гуи без всяких индексов и там всего три триггера
ответ
Что такое джасс - xgm.guru/p/wc3/jassintroduction
Мануал по сjass - cjass.xgm.guru/manual-ru
Мануал по vjass - xgm.guru/p/wc3/vjassmanual
Большой пак наработок - xgm.guru/p/wc3/bpe
MM Engine (Прога для создания кастомных модов) - xgm.guru/p/mmengine
Фреймы для рефорджед (Щас очень модно) - xgm.guru/p/wc3/interface-bases
Продвинутый редактор на 1.26 - xgm.guru/p/wc3/jassnewgenpack-r

23

» WarCraft 3 / Герой в алтаре

Похожие вопросы:

ответ
юнит завершает подготовку боевой единицы
условие trained unit is герой
герой- создать предмет - ..
ответ
~8gabriel8:
Поставить изначально лимит производства 1 у Игрока. В триггерных действиях Игрок - Limit training что-то там)
ответ
XGM Bot:
Похожие вопросы:

ответ
RotceV Hero - Revive
ответ
Редактор не причём, дело в самой игре.
Можно сделать воскрешение, не используя стандартные механики.
ответ
~8gabriel8:
Поставить изначально лимит производства 1 у Игрока. В триггерных действиях Игрок - Limit training что-то там)
ответ
ты не единственный, кто задает такие вопросы.когда хорошо, что скрины ранее делал, и ссылки сохранил.
ответ
вбиваем поиск: "бесплатный герой" ответ: в триггерах, в разделе игрок, там выбираем параметр "доступные герои"


23

» WarCraft 3 / AutoLoad RPG Maps

Ваш ресурс не прошёл автомодерацию. Пожалуйста, внесите исправления или ожидайте проверки модератором.
Причина
Длина текста: 989, а требуется не менее 1000
Your resource has not passed automoderation. Please make corrections or wait for the moderator to check.
Reason
Text length is: 989, but required not less than 1000
// CID4
23

» WarCraft 3 / Не понимаю, почему не работает ИИ

Похожие вопросы:

ответ
Опен мап должно открыть вот такое меню
Возможно у тебя реально проблема в последней, например он сканирует список всех карт, находит какое-то непотребство и падает в ошибку, надо проследить и почистить этот путь

Я не понимаю как работать без него, особенно без ро
В идее выбираешь режим редактор, а не игры, и работаешь в редакторе как обычно
ответ
Уже дошел методом тыка, нужно было использовать triggering unit. Мда.
ответ
Я условия проверил, и они работают. ну она работает от случая к случаю. Что-то изменяю, и пашет. Вношу изменения снова, не работает. вернее, часть условия работает верно.
Пример, есть 4 игрока:
  1. красный (собственно я) => несколько юнитов могут не двигаться, а остальные разбегаются
  2. синий (подконтрольный союзник) => несколько юнитов могут не двигаться, а остальные разбегаются
  3. голубой враг
  4. фиолетовый нейтральный
все войска кроме подвижных подконтрольных являются как бы препятствием

пример, я сделал все работало. кроме синего неподвижных юнитов, решил в условиях похимичить, и сломал, короче, перестали работать: теперь, на голубого не работает. иногда не пашет на друкгих.

забавно но факт: тут бывает где то в условиях обрывается поток, и поэтому не работает что то. что делать то? условие как бы нужное, ну раз не пашет, надо понять причину
--если этот юниты подконтрольны частично
local flag1=GetPlayerAlliance(PlaYer, pp, ALLIANCE_SHARED_CONTROL)
 --если этот юниты подконтрольны полностью
local flag2=GetPlayerAlliance(PlaYer, pp, bj_ALLIANCE_ALLIED_ADVUNITS)
--если игрок нейтральный
--local flag3=GetPlayerAlliance(PlaYer, pp, ALLIANCE_PASSIVE)

продвинутый контроль не нужен, только обычного достаточно. В редакторе его не включить, нужно частичный и только потом открывается полный. Также и через триггеры. Думаю, что достаточно проверять частичное, иначе продвинутый обрывает поток
flag2=GetPlayerAlliance(PlaYer, pp, bj_ALLIANCE_ALLIED_ADVUNITS)
короче, еле еле решил проблему
ответ
У тебя выключается жар приесподней, наверное в канала - откючить прочие способности не убрал...