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

[SoC] Ковыряемся в файлах

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

ColR_iT

 

> Когда конкретно происходит вылет, до звука или после?

До звука.

 

> Где ты прописал данную логику и как?

В all.spawn, в секции персонажа. 

 

> Пути.

 

[val_atack_1]


points = p0,p1
p0:name = name00
p0:position = -45.142692565918,0.431318998336792,-487.816375732422
p0:game_vertex_id = 825
p0:level_vertex_id = 121788

p1:name = name01
p1:position = -44.5511093139648,0.436177045106888,-494.977294921875
p1:game_vertex_id = 825
p1:level_vertex_id = 121778


[val_atack_2]
points = p0,p1,p2,p3
p0:name = name00
p0:position = -56.4030075073242,0.289295345544815,-482.208435058594
p0:game_vertex_id = 825
p0:level_vertex_id = 107386

p1:name = name01
p1:position = -76.0202178955078,0.182733684778214,-471.158172607422
p1:game_vertex_id = 830
p1:level_vertex_id = 84643

p2:name = name02
p2:position = -84.5404968261719,0.236373871564865,-470.106903076172
p2:game_vertex_id = 830
p2:level_vertex_id = 75342

p3:name = name03
p3:position = -112.293670654297,0.670565128326416,-487.396423339844
p3:game_vertex_id = 830
p3:level_vertex_id = 45909

 

Такие дела. - Курт Воннегут.

Ссылка на комментарий

@stalkerok007,Петруха, это марочная функция :)
Вот полегче.

function printf(fmt,...)
 get_console():execute("load "..fmt)
 log(string.format(fmt,...))
end

 
 

@irish_rebel, А где у тебя переходы на другие точки? Из-за этого система видит только одну точку, а при одной точке пешего пути БЕЗ пути look(с точками наблюдения) происходит вылет.

Изменено пользователем La'Rento
Ссылка на комментарий

La'Rento, в смысле? Не понял, поясни.
P.S. Walker работает нормально, по точкам ходит.

 

Не правда, у тебя нет связки точек посредством параметра links, поэтому у тебя в первой схеме walker@1 НПС просто не может никуда ходить, ибо он не знает куда.

ColR_iT

Изменено пользователем ColR_iT

Такие дела. - Курт Воннегут.

Ссылка на комментарий

Mi scusi!

La'Rento, ты прав - вылет из-за того, что в параметре snd прописан звук на прямую, этого делать нельзя. Но можно в схеме meet задавать непосредственно название звука. Это я перепутал.

Ссылка на комментарий

А как же его пути? У него даже нету переходов на другие точки.

Значит тут вылет по 2 причинам даже :)

Изменено пользователем La'Rento
Ссылка на комментарий

La'Rento, в walker путь look, впринципе не обязательный, за его отсутствием вылета не будет.

Ссылка на комментарий

@irish_rebel,

Линки между точками делаются следующим образом (если ты не знал): 

[val_atack_1]
points = p0,p1
p0:name = name00
p0:position = -45.142692565918,0.431318998336792,-487.816375732422
p0:game_vertex_id = 825
p0:level_vertex_id = 121788
p0:links = p1(1)

p1:name = name01
p1:position = -44.5511093139648,0.436177045106888,-494.977294921875
p1:game_vertex_id = 825
p1:level_vertex_id = 121778

 

 

Изменено пользователем stalkerok007
Ссылка на комментарий

@ColR_iT,Я имел ввиду, система считает , что у него одна точка, а при одной точке пути, к которой не привязана точка смотрения, как ты и сам когда-то мне объяснял :), произойдёт вылет.

 

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

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

Параметр path_look в схеме walkwer, действительно не обязательный и его отсутствие не приводит к вылету, но не гарантирует правильности работы по задуманной схеме.

ColR_iT

Изменено пользователем ColR_iT
Ссылка на комментарий

stalkerok007, спасибо, просто я до этого момента думал, что они юзаются лишь в том случае, если нужно задать переход на первую точку (т.е. зациклить путь), т.к. в статье с примером было лишь две точки.

 

Мне интересно, а если у меня два звуковых файла с одним названием, произойдет вылет?

 

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

ColR_iT

 

 

Т.е. так?

snd = assault_attack
Но и в таком случае - вылет.

 

Вылет потому, что такой темы нет. Загляни в файл sound_theme.script и посмотри какие темы вообще существуют.

ColR_iT

Изменено пользователем ColR_iT

Такие дела. - Курт Воннегут.

Ссылка на комментарий

@irish_rebel, что-то типа ошибки "duplicate section found", только это из конфигов :), а вообще, конечно, одинаковые имена/названия недопустимы.

Ссылка на комментарий

Надеюсь, вписать её туда можно?

 

Кого и куда?

ColR_iT

 

Тему assault_attack в sound_theme.script

 

Конечно, а почему нет?

ColR_iT

 

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

Изменено пользователем ColR_iT

Такие дела. - Курт Воннегут.

Ссылка на комментарий

@irish_rebel, в чем там разбираться-то? 

music - название, characters_voice\\scenario\\megafon\\megafon_music_1 - путь относительно папки /sounds без расширения. Копипастишь. И пишешь то, что тебе нужно.
ph_snd_themes["music"] = {      "characters_voice\\scenario\\megafon\\megafon_music_1",
	                        "characters_voice\\scenario\\megafon\\megafon_music_2",
	                        "characters_voice\\scenario\\megafon\\megafon_music_3"
	                 }
Потом название (в примере - music) пишешь в логику:
snd = music
И всё.

 

 

Всё, да не всё. Эта не та табличка. :) Ему нужно дописывать тему в таблицу theme, которая находится ниже.

ColR_iT

Изменено пользователем ColR_iT
Ссылка на комментарий

Добрый день.
Какая строка и в каком файле отвечает за вывод текстовых сообщений в левом нижнем углу экрана в чистом оригинальном ТЧ ?

Как правило, это делает функция send_tip в файле news_manager.script, и в оригинале никакие другие функции этого не делают. Если интересна конкретно строка, то это 165 строка в этом же файле (если оригинал) - это движковая функция, которая и отправляет сообщение.

ColR_iT



Большое спасибо за ответ!

Насколько я понял - положение этих сообщений на экране в чистом ТЧ изменить невозможно.

Или возможно ?

Мне всего то и надо - поднять их на середину экрана чтобы освободить место под миникарту в левом нижнем углу экрана.

Изменено пользователем ColR_iT
Ссылка на комментарий

@shahvkit, Возможно.  Для этого тебе надо редактировать файл config\ui\maingame_pda_msg.xml.

Там координаты иконки и координаты текста новостей.

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

Поэтому, прочитай эту же тему, вот отсюда - http://www.amk-team.ru/forum/index.php?showtopic=5525&p=748737

 и до поста # 9877. 

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

"Кругом зомби.....у меня кончаются патроны...."

Ссылка на комментарий

ColR_iT, я не понял, где конкретно вставлять свои звуки в sound_theme.script. Т.к. я нигде не нашёл в блоке "Звуки сталкеров" хоть одной ссылки на звуковой файл. Пробовал писать по аналогии с другими -

esc_wolf_say_thanks = {min_snd = 3, max_snd = 5, rnd = 100, prior = 5, rnd_id = id(), into_id = id(), max_ids = {}}, - это прототип;



assault_attack = {min_snd = 3, max_snd = 5, rnd = 100, prior = 5, rnd_id = id(), into_id = id(), max_ids = {}}, - а это уже моё.


 

 

В результате - игра при попытке перейти NPC на схему ремарка не вылетает, но звук и не воспроизводится.

Такие дела. - Курт Воннегут.

Ссылка на комментарий
Пробовал писать по аналогии с другими

Нет. Аналогию как раз то вы и не проследили.

Если воспользоваться каким-нибудь редактором с поддержкой мультифайлового поиска, то можно выяснить не мало.

Взять ваш пример - "esc_wolf_say_thanks"

"Прогон" в поиске даёт следующее :

.\config\misc\gulag_escape.ltx:308: snd = esc_wolf_say_thanks
.\config\misc\script_sound.ltx:353: [esc_wolf_say_thanks_seq]
.\scripts\sound_theme.script:415: esc_wolf_say_thanks = {min_snd = 3, max_snd = 5, rnd = 100, prior = 5, rnd_id = id(), into_id = id(), max_ids = {}},

И если  включить логику, то всё становиться на свои места, и ничего не вылетает.

Вопросы в студию.

Изменено пользователем Gun12
Ссылка на комментарий

Gun12, спасибо за ответ, но я не совсем разобрался со script_sound.ltx.
 

1. Что дает "seq" или "rnd" в конце названия? И что нужно ставить в моем примере? 

2. Что за единица (или ноль) перед путем звука? Тут я уже никакой аналогии проследить не смог.

Такие дела. - Курт Воннегут.

Ссылка на комментарий
Что дает "seq" или "rnd" в конце названия?

Включаем логику. "seq" - не зная английского - запустить Google и найти.

"seq" - "Sequence" - "Последовательность", т.е проигрывается строго определённый звук.

"rnd" - "Random" - "Произвольный, Случайный", Думайте сами, как и что будет проигрываться :)

 

По второму вопросу уже и не помню (как-то больше увлекаюсь Lua скриптами чем конфигами), но вроде в своё время не заморачивался.

Для реплик, начинающихся со "scenario\..." ставил "0". Извиняюсь, столько лет прошло - не могу вспомнить.

Изменено пользователем Gun12
Ссылка на комментарий

Параллельно у меня возник довольно интересный вопрос.

 

Возможно ли реализовать вызов экрана PDA через инвентарь? Например, как это было сделано со спальным мешком. Есть PDA - меню открывается. Нету (продал, потерял) - меню не открывается.

Такие дела. - Курт Воннегут.

Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

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

AMK-Team.ru

×
×
  • Создать...