Sidebar

Генератор случайности by -=DrTressi=-

  • Рекомендуется задавать вопросы только относительно темы с уроком. Для остальных вопросов существует раздел [url=http://cs-mapping.com.ua/forum/forumdisplay.php?f=12]«Помощь»[/url].

    Темы с просьбами помощи будут удаляться без предупреждения и без объяснения причины.

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

FuN94

New member
30.10.2010
7
25
1
0
Генератор случайности by -=DrTressi=-

Добрый вечер! Я делаю мод для ХЛ1 и придумываю для него разные технические фишки. Об одной из них я решил вам сегодня поведать.


В современных играх часто бывает так:
Сохраняешься, убивают, загружаешься и проходишь снова, и на второй раз всё по другому: По другому стоят все, по другому отвечают.
Где валялся автомат - ловушка.

Чтобы реализовать это на ХЛ1 я придумал такую штуку, как Генератор Случайности. Ибо таковой энтити, которая будет выбирать случайные варианты в ХЛ нет.
Раз так... - пусть Игрок сам выберает один из вариантов!> )

Переходим у делу. Для начала сделаем заготовочку. Я решил использовать 7 лифтов(можно и больше) и один баттон. Игрок на него нажмёт и откроется один из лифтов. Какой - не знаю даже я> )
Всё это выглядит так:



Каждая дверь лифта имеет соответственно название door1, door2, door3....
Батон я назвал "but". И в поле Target указал door1. Типа по умолчанию > )




Далее создаём 7 trigger_changetarget. Проперти указываем такие:

[Name] - [1], [2], [3], [4] и т.д.

[Target] - [but] (Все "смотрят" на Баттон)

[New Target] - [door1], [door2], [door3]... и т.д.

Что у нас получается?

Если мы активируем 1ый триггер, то Баттон откроет 1 дверь.

Если мы активируем 2ой триггер, то Баттон откроет 2 дверь.

И т.д.

Теперь нуно сделать так чтобы они как-то сами.. активировались... При чём неупорядоченно... А как это сдееелать?> )


Переходим к самой интересной части!

Рождаем multi_manager. Нажимаем кнопочку для длинноруких (SmartEdit) и проставляем такие проперти:

[targetname]-[manager]
[1]-[0.01]
[2]-[0.02]
[3]-[0.03]
[4]-[0.04]
[5]-[0.05]
[6]-[0.06]
[7]-[0.07]
[manager1]-[0.07]

Далее создаём где нибудь триггер_мультипл БЕЗ ЗАДЕРЖКИ с такими пропертями:
[name] - [manager1]
[target] - [manager]

Мэнэнжэр будет запускать по очередни триггеры через каждые 0,01 сек. А в конце запустит сам себя. Таким образом получается Вечный двигатель> )
Остаётся поставить info_player_start, light и trigger_once с [target]-[manager].



Всё. Генератор Случайностей готов! Наслаждайтесь! Вместо дверей можно ставить лампочки, скрипты, окна, брейки, монстр_маркеры, трэйны и т.д. В общем чё хотите! А вместо Баттона можно поставить обычный триггер_once. Тогда игрок ваще ничего не поймёт. -_-








Удачи!> )
 

Psycho-A

 
Команда форума
Модератор
29.08.2009
3 968
32
75
48
Блин, человек для вас же старался, а вы его забанили... :roll: Блат рулит, я знаю, но нельзя же всегда так...
 

TwisteR

VIP
VIP
24.07.2006
4 043
  • Серебряная медаль 311
  • Золотая медаль 115
  • Серебряная медаль 215
Человеку нужно следить за лексиконом и спокойно отсидеть в бане положенный срок, а не плодить клонов, грубо нарушая правила форума.
 

Slux

Administrator
Команда форума
Администратор
20.06.2006
5 910
33
  • Золотая медаль 311
  • Tux
  • Серебряная медаль 311
2 TwisteR:
И всё-таки это жестоко... И вообще надо вики оживлять для туторов.
 

^RamZe$^

Half-Life
10.05.2010
2 049
24
16
38
Москва
Полезный тутор можно будет как-нибудь на карте сделать.
Да,надо оживить wiki.
:umnik:
 

DrTressi

Хрустик
06.03.2010
6 421
26
  • Журналист
2 Aspik: Не знаю, попробуй - расскажешь))


Всем большое спасибо! Очень приятно, это мой первый тутор, жаль что парня, который его выложил забанили. Ну что поделаешь)))
 

stproz

New member
31.03.2009
1 646
24
Я тоже такой способ использовал на deathrace_brio для рандомного открытия/закрытия дверей без кнопок.
 

Lamar-2008

Умник недели
01.11.2008
403
27
я вот попробовал на сорсе типо такого сделать (жаль нету триггера trigger_changetarget но вместо него использовал logic_relay. Щяс посмотрю что выйдет.

[ADDED=Lamar-2008]1299093922[/ADDED]
вот что у меня получилось. Вместо дверей у меня func_brush 3 штуки. И они постоянно мергают с параметром toggle в атпутах. Тоесть типо мергающих лампочек таким образом можно сделать.

[ADDED=Lamar-2008]1299093984[/ADDED]
видимо на сорсе невозможно рандом сделать. Жаль.

[ADDED=Lamar-2008]1299096077[/ADDED]
конечный итог этого моего теста таков: я использовал еще два logic_timer. Один который врубает manager и потом через 5 секунд врубает второй timer. И также во втором идет через 3 секунды (после рандома) уничтожение manager. В первом рандомно от 2 до 10 во втором рандом от 1 до 7,3 плюс позиция рандома 5,5. Получается что более 80% успевают исчезнуть. Но 20% из 5 - 7 перезапусканий карты может 1 остаться из трёх. Так что вот таков итог.

[ADDED=Lamar-2008]1299096199[/ADDED]
С вами был ламарыч. Спасибо за читание моего теста сегодня.

Если кто-то найдет намного лучший способ как такое сделать рандомно и качественно. Пишите в лс или в эту тему.
 
Последнее редактирование:

DrTressi

Хрустик
06.03.2010
6 421
26
  • Журналист
2 Lamar-2008: Ну не знаю что у тебя там для сорца получилось, т.к. я с сорцем ещё не знаком.

Но по поводу генератора - я уже другой придумал. Более мобильный и более удачный. В ближайшее время реализую.
 

Lamar-2008

Умник недели
01.11.2008
403
27
DrTressi сказал(а):
2 Lamar-2008: Ну не знаю что у тебя там для сорца получилось, т.к. я с сорцем ещё не знаком.

Но по поводу генератора - я уже другой придумал. Более мобильный и более удачный. В ближайшее время реализую.
ок. А для сорса подойдет?
 

Miley

New member
03.11.2010
149
Мне кажется, время можно чуть больше сделать, чем 0.01, можно и в 10 раз больше - 0.1, просто из соображений целесообразности: чуток меньше гонять проц при том самом конечном результате.
 

DrTressi

Хрустик
06.03.2010
6 421
26
  • Журналист
2 Miley: Вам не правильно кажется=) Конецный результат будет разный! Чем выше скорость крутибарабана - тем выше его качество, сейчас объясню почему.

Допустим триггер от кнопки находится на расстоянии 10 м и игру проходит какой нибудь Spider-Waffle. В данном случае если он будет одинаково добегать до кнопки получится одинаковый результа. У этого задрота вполне есть шансы. А вот если буду сотые - ему будет куда тяжелее. И скорее всего невозможно=)
 

Half-Life: Alyx release

000
Дней
00
часа(ов)
00
minutes
00
Секунды
До выхода Half-Life: Alyx
Half-Life: Alyx вышел!

Новые сообщения

Донат - Хостинг

Итого
125.00 $
Цель
600.00 $

Доноры Красавчики

Пользователи онлайн