Случайная подборка модов
Плохая компания
4.0
Альтернатива 1.2
3.0
Dead Autumn 2: Другая реальность
4.1
Смерти Вопреки. Послушник
3.4
Sky anomaly
4.0
Dream Reader-TFZ 1.1
3.7
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
  • Страница 1 из 1
  • 1
Модератор форума: FanG, Аdmin, FantomICW, Overfirst  
Форум » S.T.A.L.K.E.R. Модификации » Помощь в моддинге » Скрипты, конфиги, логика, движок » [SoC] Blowout Mod - реализация рандомного выброса. (Урок по реализации рандомного выброса.)
[SoC] Blowout Mod - реализация рандомного выброса.
Российская Федерация  Streels
Четверг, 06.06.2013, 22:45 | Сообщение # 1
Статус:
Опытный:
Сообщений: 2088
Награды: 4
Регистрация: 28.09.2012

Данный урок посвящён реализации рандомного выброса.


Что для этого потребуется: конечно же S.T.A.L.K.E.R. - Shadow of Chernobyl, любой версии, с модификацией Blowout Mod.

К чему этот урок: многие уже наверное знают что в модификации "Blowout Mod" выброс наступает по указанному времени, а в этом уроке я поясню как сделать функцию рандома, т.е чтобы "выброс" мог начинаться в любое время.

Итак, приступим:

В папке с "gamedata", которая из под модификации, находим папку "scripts", там находим файл "ogsm_funcs.script", открываем его и находим такие строчки:

Код

g_start_timer("bl1",0, vars.t_surge+math.random(-4,4), 0)


и

Код

g_start_timer("bl1", 0, vars.t_start, 0)


И заменяем их на такие:

Код

g_start_timer("bl1",0, math.random(1,24), 0)


и

Код

g_start_timer("bl1",0, math.random(1,24), 0)


Всё, скрипт "vars" можете смело удалять, он больше не пригодится, время начало выброса будет работать по рандому. Всем удачи и обращайтесь если будут какие-то вопросы.
Сообщение отредактировал Streels - Вторник, 11.06.2013, 17:40
  Злобная реклама
Четверг, 06.06.2013, 22:45
Статус:
Сообщений: 666
Регистрация: 28.09.2012
Украина  Krievu_Okupants
Четверг, 06.06.2013, 22:48 | Сообщение # 2
Статус:
Новичок:
Сообщений: 348
Награды: 4
Регистрация: 18.06.2012

Хороший урок. Сейчас поправлю у себя в солянке smile
  Злобная реклама
Четверг, 06.06.2013, 22:48
Статус:
Сообщений: 666
Регистрация: 18.06.2012
Украина  zhuravel11021997
Четверг, 06.06.2013, 22:49 | Сообщение # 3
Статус:
Новичок:
Сообщений: 240
Награды: 0
Регистрация: 14.03.2013

О четко, молодца давно голову над выбросом ломаю smile
  Злобная реклама
Четверг, 06.06.2013, 22:49
Статус:
Сообщений: 666
Регистрация: 14.03.2013
Российская Федерация  _МстителЬ_
Четверг, 06.06.2013, 22:55 | Сообщение # 4
Статус:
Неопытный:
Сообщений: 519
Награды: 8
Регистрация: 24.05.2012

+ за урок cool
  Злобная реклама
Четверг, 06.06.2013, 22:55
Статус:
Сообщений: 666
Регистрация: 24.05.2012
Российская Федерация  Streels
Четверг, 06.06.2013, 23:06 | Сообщение # 5
Статус:
Опытный:
Сообщений: 2088
Награды: 4
Регистрация: 28.09.2012

Цитата (Krievu_Okupants)
Хороший урок. Сейчас поправлю у себя в солянке

Давай, удачи. smile

Добавлено (06.06.2013, 23:06)
---------------------------------------------

Цитата (zhuravel11021997)
О четко, молодца давно голову над выбросом ломаю

Спасибо. cool

Добавлено (06.06.2013, 23:06)
---------------------------------------------

Цитата (_МстителЬ_)
+ за урок

wink
  Злобная реклама
Четверг, 06.06.2013, 23:06
Статус:
Сообщений: 666
Регистрация: 28.09.2012
Украина  Krievu_Okupants
Пятница, 07.06.2013, 01:49 | Сообщение # 6
Статус:
Новичок:
Сообщений: 348
Награды: 4
Регистрация: 18.06.2012

Код
g_start_timer("bl1",0, math.random(1,24), 0)   

g_start_timer("bl1",0, math.random(1,24), 0)


Это значит, что выбросы будут раз в 1-24 часа, верно?

Добавлено (07.06.2013, 01:49)
---------------------------------------------
Думаю, стоит расширить диапазон до 36 часов. Для этого нужно заменить цифру 24 на 36. Но это уж кому как нравится.

Сообщение отредактировал Krievu_Okupants - Пятница, 07.06.2013, 01:38
  Злобная реклама
Пятница, 07.06.2013, 01:49
Статус:
Сообщений: 666
Регистрация: 18.06.2012
Российская Федерация  Streels
Пятница, 07.06.2013, 08:54 | Сообщение # 7
Статус:
Опытный:
Сообщений: 2088
Награды: 4
Регистрация: 28.09.2012

Цитата (Krievu_Okupants)
Это значит, что выбросы будут раз в 1-24 часа, верно?

Я думаю, что да, т.к начал пробовать методом тыка, но выброс таки начинался в разное время, подумал-ка что рандом действует. smile

Цитата (Krievu_Okupants)
Думаю, стоит расширить диапазон до 36 часов. Для этого нужно заменить цифру 24 на 36. Но это уж кому как нравится.

Спасибо за совет, может кому пригодится. wink
  Злобная реклама
Пятница, 07.06.2013, 08:54
Статус:
Сообщений: 666
Регистрация: 28.09.2012
Казахстан  Max_Warlock
Пятница, 07.06.2013, 08:59 | Сообщение # 8
Clear Sky - Remake
Статус:
Опытный:
Сообщений: 1552
Награды: 4
Регистрация: 18.01.2013

А как по мне то стоит сделать 6-36
Если выпадет рэндом хотя бы раза 3 подряд на число меньше 5 это будет выглядеть как полный бред. Если я правильно понял, то Выброс тогда может наступить хоть через час или два после прошедшего предыдущего. Ты б поправил (если я прав), а то сейчас школьники понаделают модов с таким выбросом biggrin
  Злобная реклама
Пятница, 07.06.2013, 08:59
Статус:
Сообщений: 666
Регистрация: 18.01.2013
Российская Федерация  Streels
Пятница, 07.06.2013, 09:09 | Сообщение # 9
Статус:
Опытный:
Сообщений: 2088
Награды: 4
Регистрация: 28.09.2012

Цитата (Max_Warlock)
А как по мне то стоит сделать 6-36
Если выпадет рэндом хотя бы раза 3 подряд на число меньше 5 это будет выглядеть как полный бред. Если я правильно понял, то Выброс тогда может наступить хоть через час или два после прошедшего предыдущего. Ты б поправил (если я прав), а то сейчас школьники понаделают модов с таким выбросом

Скорее всего ты прав, сейчас протестирую, и если всё ок будет - то поменяю значения. wink
  Злобная реклама
Пятница, 07.06.2013, 09:09
Статус:
Сообщений: 666
Регистрация: 28.09.2012
Украина  BozKurt
Пятница, 07.06.2013, 10:18 | Сообщение # 10
Статус:
Опытный:
Сообщений: 1753
Награды: 3
Регистрация: 25.05.2012

Мда... в итоге всё сведётся к стандартным значениям, с мааааленьким увеличением диапазона. В оригинале выброс наступал в случайном промежутке между 20 - 28 часами после предыдущего. Вся правка может ограничится изменением вот этой строки:
Код
g_start_timer("bl1",0, vars.t_surge+math.random(-4,4), 0)
В частности должны интересовать числа в скобках (-4,4), именно они задают рандом начала следующего выброса. Например, если вставить цифры от -12, до скажем 6, то следующий выброс будет начинаться в период от 12 до 30 часов.
И в чём смысл твоей "правки"? Ни в чём. Просто ты не очень то и разбираешься в работе того, что изменяешь, поэтому тебе и кажется это таким грандиозным... к сожалению, не только тебе.
  Злобная реклама
Пятница, 07.06.2013, 10:18
Статус:
Сообщений: 666
Регистрация: 25.05.2012
Российская Федерация  Streels
Пятница, 07.06.2013, 19:47 | Сообщение # 11
Статус:
Опытный:
Сообщений: 2088
Награды: 4
Регистрация: 28.09.2012

Цитата (ColR_iT)
Мда... в итоге всё сведётся к стандартным значениям, с мааааленьким увеличением диапазона. В оригинале выброс наступал в случайном промежутке между 20 - 28 часами после предыдущего. Вся правка может ограничится изменением вот этой строки:
Код
g_start_timer("bl1",0, vars.t_surge+math.random(-4,4), 0)
В частности должны интересовать числа в скобках (-4,4), именно они задают рандом начала следующего выброса. Например, если вставить цифры от -12, до скажем 6, то следующий выброс будет начинаться в период от 12 до 30 часов.
И в чём смысл твоей "правки"? Ни в чём. Просто ты не очень то и разбираешься в работе того, что изменяешь, поэтому тебе и кажется это таким грандиозным... к сожалению, не только тебе.

Значит тогда лучше ставить значения (-4,4) ?
  Злобная реклама
Пятница, 07.06.2013, 19:47
Статус:
Сообщений: 666
Регистрация: 28.09.2012
Форум » S.T.A.L.K.E.R. Модификации » Помощь в моддинге » Скрипты, конфиги, логика, движок » [SoC] Blowout Mod - реализация рандомного выброса. (Урок по реализации рандомного выброса.)
  • Страница 1 из 1
  • 1
Поиск: