XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > StarCraft (только чтение)> Галактическая академия
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

 
Epselot

offline
Опыт: 3,592
Активность:
Вероятность попадания
События
Единица - Любая боевая единица начинает атаку
Действия
Общее - Если (условия), то выполнить (действия), иначе выполнить (действия)
Если
(Тип единицы (Атакующая боевая единица)) == Агрессор
(Случайное целое число от 0 до 100) >= 50
то
Единица - (Атакующая боевая единица) Взять Нет урона
иначе
Хочу сделать чтоб с вероятностью 50% юнит промахивался.
Агрессор - это переменная (Переменная - Установить Агрессор = Морпех)
Люди почему не работает? И как сделать чтоб работала?=)
Да и мне обязательно это надо сделать через триггеры=)

Отредактировано Epselot, 01.12.2011 в 07:05.
Старый 01.12.2011, 06:58
Zolden

offline
Опыт: 1,588
Активность:
Это в дате надо выставить, там есть параметр - вероятность попадания.
А в твоём случае "единица начинает атаку" ещё не значит, что она выстреливает, а если выстрелит, то поздно будет вероятность урона высчитывать.
Старый 01.12.2011, 13:52
yellyex

offline
Опыт: 4,667
Активность:
Epselot, Я тут недавно про это тему создавал :) В дате в параметрах оружия есть вертоятность ппадания. Там стоит 1 и её уменьшать нужно как 0.5. Это 50% шанс попасть по цели. А в триггерах это очень просто: (Если тебе надо именно, чтобы юнита атаковал, а не был атакован, а ещё точнее, получил урон)
Юнит атакует, то выбрасывается случайное число от 1 до 100 (так точнее тебе не кажется? :))
Если выброшенное число больше или равно 50, то ты наносишь урон цели (тоже триггерно)
Вот пример:
yellyex добавил:
Если что не так, то скажи :)

Отредактировано yellyex, 01.12.2011 в 17:58.
Старый 01.12.2011, 15:16
Epselot

offline
Опыт: 3,592
Активность:
yellyex мне не подойдёт, потому что при твоём способе не дуют убийство... мне бы триггер где можно либо наносит урон с помощью обычной атаки, либо урон не наносится. Да и сразу крит тогда как сделать? Чтоб с некоторой вероятностью вражеского юнита убивало но важно чтоб кил засчитывался=)
Zolden "Это в дате надо выставить, там есть параметр - вероятность попадания." По подробней я в триггерах нечего подобного не нашёл... да и вообще негде не нашёл=)
Старый 01.12.2011, 16:48
yellyex

offline
Опыт: 4,667
Активность:
Если твой урон это переменная, то и крит тоже будет переменной. Например Урон равен 5. Тогда создай переменную Крит равную: Крит = Урон*2. А в триггерах можно каждую атаку проверять прошел ли крит или нет. Вобщем для меня возможности данной системы не проблема. Прблема в тм, как сделать все переменные типа Урон уникальными для каждого юнита в принципе. Не будет же одни и те же переменные у всех юнитов. Вобщем ты понимаешь. Засчитывать убийство тоже можно с помощью триггеров.

Отредактировано yellyex, 01.12.2011 в 17:45.
Старый 01.12.2011, 17:38
Epselot

offline
Опыт: 3,592
Активность:
да знаю у меня есть разработка вообще невиданного триггера который норм работал=) чтоб урон был персональным для каждого юнита нужно вводить массив, каждому юниту присваивается своё число массива, то есть есть массив А[х] первому юниту присваивается А[1]="его атака, можно сделать случайно или через другую переменную", потом следующему юнита А[х+1]="его атака" и т.д. потом просто вызываешь нужный массив=)
А вот мне нужно чтоб промах именно был через переменную как и крит а вот попадание было обычное. А как это сделать до меня не доходит...
Старый 01.12.2011, 17:46
yellyex

offline
Опыт: 4,667
Активность:
А если юнит реаспуниться, то есть создаётся новый, то тоже через массив? Да и вообще как это будет выглядеть в редакторе триггеров? И если например в игре вешать бафф, например на точность попадания, то есть нужно выбросить не больше 50, а уже больше 30, то как это отлавливать и изменять? Причём для каждого юнита в отдельности.
yellyex добавил:
Epselot:
А вот мне нужно чтоб промах именно был через переменную как и крит а вот попадание было обычное. А как это сделать до меня не доходит...
Сейчас попробую сделать.
yellyex добавил:
Я думаю что никак, кроме как через алгоритмы. Потому что данные урона идут в разрез с промахом триггера. Тут либо всё через триггеры, либо всё через данные.
Старый 01.12.2011, 17:57
Epselot

offline
Опыт: 3,592
Активность:
Смотри мы присваиваем каждому юниту несколько массивов значение этих массивов используем, изменяем по мере надобности, в случае бафф точности мы масив х=20 А[5]=50-х вот и всё. А если респается то вроде не должно значение массива потеряться, даже если после воскрешения создастся новый массив то просто мы присваиваем ему значение массива юнита умершего на месте респа=)
А как через данные промах сделать?
Старый 01.12.2011, 18:01
yellyex

offline
Опыт: 4,667
Активность:
Epselot:
А как через данные промах сделать?
В эффектах оружия есть поле "Вероятность" равное 1. 1 это 100%.
yellyex добавил:
yellyex:
Смотри мы присваиваем каждому юниту несколько массивов значение этих массивов используем, изменяем по мере надобности, в случае бафф точности мы масив х=20 А[5]=50-х вот и всё. А если респается то вроде не должно значение массива потеряться, даже если после воскрешения создастся новый массив то просто мы присваиваем ему значение массива юнита умершего на месте респа=)
А как мы найдем этот А[5], как мы с ним свяжемся в игре?
Старый 01.12.2011, 18:14
Epselot

offline
Опыт: 3,592
Активность:
А как мы найдем этот А[5], как мы с ним свяжемся в игре?
ААААААА забыл... я же делал это уже, вот только в варике=) Щас вспомню=)
сейчас гляну что я там творил=)
я делал массив в варике на количество убийств каждым юнитом=) так что это более чем возможно но это было давно и чтоб вспомнить как надо посмотреть=)

Отредактировано Epselot, 01.12.2011 в 18:35.
Старый 01.12.2011, 18:27
yellyex

offline
Опыт: 4,667
Активность:
Epselot:
ААААААА забыл... я же делал это уже, вот только в варике=) Щас вспомню=)
Если сможешь сделать уникальный набор переменных для каждого юнита, то ты решишь мою проблему. И я скорее всего смогу вернуться к старой своей теме :) Ну и буду тебе БЛАГОДАРЕН ВЕЧНО!
Старый 01.12.2011, 18:30
Epselot

offline
Опыт: 3,592
Активность:
Вот моя карта варика, попробуй разобраться первее меня=) У тебя есть скайп? если есть найди меня epselot ник=)
Прикрепленные файлы
Тип файла: w3x 000.w3x (356.3 Кбайт, 1 просмотров )
Старый 01.12.2011, 18:38
yellyex

offline
Опыт: 4,667
Активность:
Epselot:
Вот моя карта варика, попробуй разобраться первее меня=) У тебя есть скайп? если есть найди меня epselot ник=)
У меня варкрафт не установлен :) Сейчас установлю. Скайпа тоже нет, но сейчас могу установить. И ещё не оплатил интернет, так что в любую минуту могут отлючить :) Оплачу потом. :)
yellyex добавил:
А ещё и микрофон сломался :)))
Старый 01.12.2011, 18:42
Epselot

offline
Опыт: 3,592
Активность:
вот фото триггера, там всё просто мы присваиваем единице массив=)
Миниатюры
Кликните на картинку для увеличения
Название:  Триггер.png
Просмотров: 12
Размер:  158.0 Кбайт  
Старый 01.12.2011, 18:48
yellyex

offline
Опыт: 4,667
Активность:
А давай лучше я в ск2 сделаю, то что мне надо и покажу тебе свою проблему. Так легче будет?
yellyex добавил:
Я тебя добавил в скайпе... Но тебя нет.
Старый 01.12.2011, 18:59
inoto
я буду крутым!
offline
Опыт: 6,891
Активность:
Epselot, причём тут вц3? Тебе триггеры нафиг не нужны. Ковыряй и тыкай РО.
Старый 02.12.2011, 11:47
Epselot

offline
Опыт: 3,592
Активность:
inoto, это yellyex уже спросил маня как сделать как с помощью триггеров сделать чтоб каждому юниту присваивалось уникальное значение переменных и массивов триггера, а я такое в варике делал=)
Старый 02.12.2011, 12:29
inoto
я буду крутым!
offline
Опыт: 6,891
Активность:
Epselot, просто это ск2 раздел, в личку уж тогда пишитесь
Старый 02.12.2011, 12:41

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 03:15.