Перейти к контенту

Погода и освещение


The ReapeR

Рекомендуемые сообщения

Здравия желаю, товарищи!

Интересует раздел ambient. Понятно, как функционирует env_ambient.ltx, но как бы сделать так, чтоб некоторые локации звучали уникально? Например, хочу, чтоб на Радаре не было птичек, но были фантомные звуки, характерные только для этой локации. Нигде мне не могут ответить на этот чрезвычайно сложный в техническом плане вопрос. Я понимаю, что надо править исходники, выкупать права у Григоровича, нанимать штат программистов и т.д., но уж очень интересна мне эта тема)

Поделиться этим сообщением


Ссылка на сообщение
2 часа назад, _Val_ сказал:

Делаешь для Радара свою погоду и прописываешь свой амбиент.

 

2 часа назад, Хемуль36рус сказал:

В каждом конфиге погоды есть свой ambient , напиши в env_ambient.ltx  свою секцию, и пропиши туда куда нужно.

1)В game_maps_single есть раздел Радара:

[l10_radar]
texture         = map\map_radar
bound_rect      = -136.256, -503.108, 714.384, 353.524
global_rect        = 527.0,975.0,769.0,1218.704712
weathers        = storm
music_tracks    = l10_radar_musics

2)В папке weathers есть так же папка storm, а в ней - несколько ltx-файлов: weather_default_clear_storm, weather_default_dynamic_storm и т.п. В них на каждый час игровых суток прописана погода и сопутствующий эмбиент.

3)Я делал именно то, что и вы все написали, - создавал свои секции в env_ambient.ltx и прописывал их в вышеперечисленные. Это все хорошо, НО:

Проблема-то в том, что этот самый storm (пункт 1) использует не только Радар, но и несколько других локаций, а при замене storm на что-то другое, ничего не меняется. Как будто вообще ни на что не влияет строчка.

И да, это не ванильный ТЧ, а NLC. На форумах NLC мне не помогли, потому притопал сюда. "Мануальчики почитать" это не совет. Читал. Большая часть из них - ни бе, ни ме, ни кукареку. "Чтоб создать новую погодную секцию, создайте новую погодную секцию".

2 часа назад, _Val_ сказал:

В оригинале есть уже погода weather_radar...

И в нём почему-то всего две секции - на час ночи и на два. И в эмбиенте стоит только аmbient_env_rain. 

Изменено пользователем Ring-a-ding

Поделиться этим сообщением


Ссылка на сообщение
3 минуты назад, _Val_ сказал:

Что мешает сделать полноценный конфиг по типу дефолтного?

Так ведь в game_maps_single ссылка идёт на папку storm с несколькими конфигами. Когда я меняю её, всё хорошо, но изменённое звучание распространяется не только на Радар, как я писал выше, а мне этого не нужно. Если я создаю другую папку с точно такими же конфигами, называю её, например, radar и прописываю её в game_maps_single заместо storm - игра вылетает:dash2:. Там именно несколько конфигов на одну локацию (clear, groza, pasmurno), а не один.

Поделиться этим сообщением


Ссылка на сообщение
7 минут назад, _Val_ сказал:

А ты глянь, ни где не зарегистрирован файл storm

Есть, да. Тоже приходил сюда, что-то ковырял, но только вылеты ловил с этими инклудами.

Вот такое там:

#include "storm\weather_default_pasmurno_storm.ltx"
#include "storm\weather_default_rain_storm.ltx"
#include "storm\weather_default_clear_storm.ltx"
#include "storm\weather_default_groza_storm.ltx"

 

Пробовал по аналогии писать в конец документа, после того, как создавал соответствующие секции. Вылет.

Я, правда, не пробовал НИ начинать. Вдруг и правда в этом дело.

Изменено пользователем Ring-a-ding

Поделиться этим сообщением


Ссылка на сообщение
6 минут назад, _Val_ сказал:

поиском воспользоваться на предмет регистрации родителя

Это как?:blush:

Поделиться этим сообщением


Ссылка на сообщение
15 минут назад, _Val_ сказал:

Чет я подустал с тобой.

Спасибо и на том. Попробую ещё всяко-разно. Не получится - приду снова.:pooh_go:

Поделиться этим сообщением


Ссылка на сообщение

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

Поставлю чуть иначе вопрос. В чём может быть проблема, если при замене значения в строчке weathers в док-те game_maps_single.ltx ничего не меняется? Ровным счётом ничего.

То бишь по умолчанию: weathers = default. Я сделал такую же погоду, как и default, только изменил некоторые параметры (секции env_ambient), переименовал в kordon, прописал в environment.ltx все инклуды по аналогии и заменил ту самую строку на weathers = kordon. Игра прекрасно запускается, в консоли при запуске новая погода проверяется, ничего не вылетает, НО разницы нет - звучат дефолтные секции env_ambient. Новая игра не помогает.

По этому делу ничего нигде не нашёл, хотя искал достаточно. Сам я имею мало опыта в правке конфигов, поэтому не бейте сильно. Спасибо.

Изменено пользователем Ring-a-ding

Поделиться этим сообщением


Ссылка на сообщение
2 часа назад, AndreySol сказал:

вроде все, связанное с озвучкой, должно регистрироваться, как в конфигах так и в скриптах

В скриптах на всякий случай шарился, но всё-таки думаю, что за погоду именно конфиги отвечают.

Тут вопрос какой, ещё раз: "как именно работает строка weathers в game_maps_single.ltx" Почему сделанная по аналогии погода не действует? Что я мог пропустить?

1 час назад, Змея сказал:

Жевать пережеванное даже не хочется...

Вопрос адресован не умникам, а тем, кто разбирается и не прочь объяснить другим.

Поделиться этим сообщением


Ссылка на сообщение
13 часов назад, AndreySol сказал:

Ты у себя все это прописал\изменил для своей новой озвучки ?

Да. Всё это прописал\изменил и раз сто проверил. Инклуды в environment тоже прописал, т.к. погода новая, а не старая изменённая. Игра работает, опять же, проверяет перед загрузкой все новые секции и не ругается, но звучит дефолт, тудыть его за ногу.

Там ещё динамическая погода АМК, не знаю, какая точно. Вот такая петрушка:https://yadi.sk/d/hhQVYQHr3aJyM9. Там дефолтная погода и сделанная по аналогии kordon, которая отличается только секциями env_ambient.

Поделиться этим сообщением


Ссылка на сообщение
30 минут назад, Змея сказал:

что в скриптах АМК где-то зарыта таблица локаций

То есть именно скрипт из папки scripts, а не конфиг? Хоть бы примерно его название. Я интуитивно смотрел там на предмет погоды, но ничего не нашёл.

35 минут назад, Змея сказал:

А вообще это зачетно - ради звуков амбиента вкорячить в игру еще одну динамическую погоду.

Хочу сделать для каждой локации свою озвучку.

36 минут назад, Змея сказал:

Чтобы конфигурационно твоя погода была прописана правильно, нужно соблюдать правильный порядок переименования. Везде должно упоминаться default

Да, тоже была такая мысль. Это уже сделал - результат тот же. Видимо, дело в скрипте.

Спасибо большое за развёрнутый ответ. Поищу сегодня этот скрипт, да ещё раз пробегусь по всему.

P.S. одна локация в game_maps_single ссылается на погоду october. А такой, в отличие от всех этих mist, no_far, depressive, нету нигде. Отсюда у меня и мысль, что либо неверно, либо очень загадочно функционирует этот конфиг (game_maps_single).

Поделиться этим сообщением


Ссылка на сообщение

Не смог отредактировать пост, чтоб добавить приписку. Пришлось новый писать, сори за флуд.

Сейчас глянул в скрипты с меткой "амк" и нашёл в одном вот это:

Скрытый текст

local weather_types={
  marsh=3,
  aver=2,
  generators=2,
  hospital=0,
  limansk=4,
  lost_village=4,
  red_forest=5,
  av_peshera=1,
  labx8=1,
  labx10=1,
  warlab=1,
  l01_escape=0,
  l02_garbage=0,
  l03_agroprom=0,
  l03u_agr_underground=1,
  l04_darkvalley=4,
  k01_darkscape=4,
  l04u_labx18=1,
  l05_bar=0,
  l06_rostok=4,
  l07_military=5,
  l08_yantar=2,
  l08u_brainlab=1,
  l10_radar=5,
  l10u_bunker=1,
  deadcity=4,
  l11_pripyat=4,
  l12_stancia_new=4,
  l12_stancia_2_new=4,
  l12u_control_monolith=1,
  l12u_sarcofag=1

Не оно? Но какая должна быть цифра для новой погоды? :dash3:

Поделиться этим сообщением


Ссылка на сообщение
3 часа назад, Змея сказал:

0 - дефолтная

1 - погода для подземок....

Это-то ясно. Арифметика несложная. Но для меня вопрос в том, какая цифра будет для новой погоды. Вот ещё, что нашёл там же:

Скрытый текст

if weather_types[lname]==0 then
    w=amk_vars.dynweather or level.get_weather()
  elseif weather_types[lname]==1 then
    w="indoor"
  elseif weather_types[lname]==2 then
    w=amk_vars.dynweather_no_far or level.get_weather()
  elseif weather_types[lname]==3 then
    w=amk_vars.dynweather_mist or level.get_weather()
  elseif weather_types[lname]==4 then
    w=amk_vars.dynweather_depressive or level.get_weather()
  elseif weather_types[lname]==5 then
    w=amk_vars.dynweather_storm or level.get_weather()
   else
    w=level.get_weather() 
  end

Вроде, блика разгадка, но что за "amk_vars.dynweather". Надо будет попробовать просто по аналогии сделать, как и до этого.

3 часа назад, Змея сказал:

Либо как-то скриптово регулировать, либо через правки движка...чтобы именно амбиент подключался на локациях отдельно от остальных конфигов погоды.

Либо вообще урезать амбиент в погоде и понатыкать на локах источников звука:-)

Всё это для меня сложнее, чем тот способ, каким пошёл я) Я тоже намерен группировать локации, схожие примерно по звучанию. Делать тридцать одну дин. погоду это слишком. Бедная игра и так еле ползает даже на коде ЗП.

Спасибо ещё раз! Попробую этим путём. Чёрта с два бы я его нашёл самостоятельно.

Поделиться этим сообщением


Ссылка на сообщение

Эх! Кажется, получилось.

Даже, кажется, НИ не нужна - подождал пару минут на локации и начинает работать новая погодка.

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

Благодарю ещё раз за помощь, товарищи!

Если надо, то позже опишу подробно, что и как. Для тех, кто, быть может, придёт с похожим вопросом. И если я не ошибся, т.к. уже паранойя...

1 час назад, AndreySol сказал:

Установи что нить приличное, типа TextPad или Notepad++

Да, надо бы. Блокнот для этого уже не годится.

Поделиться этим сообщением


Ссылка на сообщение

В общем, за погоду ответственны также скрипты amk_mod.script и lukash_info.script.

1) В первом, при добавлении новой динамической погоды на определённую локацию, нужно проставить цифру:

Скрытый текст

local weather_types={
  marsh=3,
  aver=2,
  generators=2,
  hospital=0,
  limansk=4,
  lost_village=4,
  red_forest=5,
  av_peshera=1,
  labx8=1,
  labx10=1,
  warlab=1,
  l01_escape=6,

Хотим погоду для Кордона - ставим, например, цифру 6. Цифра произвольная; ниже, в этом же док-те нужно будет тоже указать её, прописав по аналогии с предыдущими (новое выделено):

Скрытый текст

elseif weather_types[lname]==5 then
    w=amk_vars.dynweather_storm or level.get_weather()
   elseif weather_types[lname]==6 then
    w=amk_vars.dynweather_kordon or level.get_weather()

    w=level.get_weather() 
  else
  end

2) Во втором док-те (lukash_info), который находится в scripts\levels, следует отыскать строчки:

Скрытый текст

local amk_weather={
"amk_clear_clear_5",
"amk_clear_clear_depressive_5",
"amk_clear_clear_mist_5",
"amk_clear_clear_storm_5",
"amk_clear_clear_kordon_5",
"amk_groza_clear_5",
"amk_groza_clear_depressive_5",
"amk_groza_clear_mist_5",
"amk_groza_clear_storm_5",
"amk_groza_clear_kordon_5",

и т.д.

...И дописать свои (выделены). Это, как я понял, сама динамика погоды. В моём случае это из док-та weather_default_dynamic_kordon.ltx Только убрать из названия секций ''sect_'' Почему сначала идёт _5 - без понятия. Нада так.

Во-от.

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...