kubix, глупый вопрос ну или странно сформулированный. Что именно тебе нужно бы хоть написал П.с. Первый раз слышу о том что бы кто то программы переводил кроме SDK (Но думаю тебе это не надо)
Люпит, в папке gamedata\config\gameplay в файле character_desc_general меняй в строке <community>actor</community> вместо"actor" ставь свою группировку, например <community>dolg</community>
satanian, вопрос не сильно понятен. Ты хочешь чтоб после того как ты отдал предмет НПС или взял, спавнился где-нибудь другой НПС?? Если да, то читай тутор по функциям диалогов
Сообщение отредактировал Novellus - Пятница, 25.05.2012, 15:13
satanian, Необходимо создать спейс рестриктор, а так же сделать инфо поршень для предмета и рестриктора, после у тебя при взятии нужной вещи стазу налетятся НПС
satanian, обширный вопрос, поскольку ты не назвал обстоятельства "подбора" нужного тебе предмета, поэтому приведу пример в общем случае... В файле bind_stalker.script есть функция on_item_take, собственно это колбек на появление предмета в инвентаре актора. В конец этой функции, пишешь вот такой код:
Code
if (db.actor:dont_has_info("item_is_take")) and (obj:section == "section_name") then --# Спавним НПС. alife():create("stalker_name", vector():set(x,y,z), level_vertex, game_vertex) --# Затычка, чтобы спавн проходил один раз. db.actor:give_info_portion("item_is_take") end
Где: section_name - секция твоего предмета; stalker_name - id профиля НПС, которого ты будешь спавнить; item_is_take - инфопорция, которая будет свидетельствовать о взятии предмета, тем самым спавн НПС будет проходить один раз; Далее пишешь нужные координаты (x,y,z), вставляешь соответствующие level_vertex и game_vertex.
Если нужно, чтобы спавнилось несколько НПС сразу, то дублируешь строку спавна нужное количество раз. Собственно всё.
В файле bind_stalker.script есть функция on_item_take, собственно это колбек на появление предмета в инвентаре актора. В конец этой функции, пишешь вот такой код:
Code if (db.actor:dont_has_info("item_is_take")) and (obj:section == "section_name") then --# Спавним НПС. alife():create("stalker_name", vector():set(x,y,z), level_vertex, game_vertex) --# Затычка, чтобы спавн проходил один раз. db.actor:give_info_portion("item_is_take") end
Где: section_name - секция твоего предмета; stalker_name - id профиля НПС, которого ты будешь спавнить; item_is_take - инфопорция, которая будет свидетельствовать о взятии предмета, тем самым спавн НПС будет проходить один раз; Далее пишешь нужные координаты (x,y,z), вставляешь соответствующие level_vertex и game_vertex. Если нужно, чтобы спавнилось несколько НПС сразу, то дублируешь строку спавна нужное количество раз. Собственно всё.
Думаю это и есть ответ на твой вопрос. Мне тоже стала интересна эта идея, посмотрю как еще можно сделать.
Добавлено (26.05.2012, 10:22) --------------------------------------------- Ребята. Меня мучает вот что - хочу вставить свой трэк в радио на Скадовске, делаю все вот по этому тутору - Как корректно вставить свою музыку в игру используя X-Ray SDK Любым музыкальным редактором, например можно использовать Sound Forge 8.0, подготавливаем наши звуковые файлы – они должны быть сохранены в следующем виде: качество сохраняемых файлов: WAV (standard) 44100Гц, Моно, 16 бит. После сохранения выбранных треков в виде WAV (standard) 44100Гц, Моно, 16 бит, их необходимо перевести в формат, поддерживаемый игрой. Для этого нам понадобится X-Ray SDK – официальный пакет разработчика для игры S.T.A.L.K.E.R. NB: Вы спросите, почему сразу не сохранять треки в формате OGG 44100Hz, Mono? Ответ прост – в комментах OGG-файла должны прописываться параметры распространения звука по игровому миру. Именно по этой причине собственные звуки в игре практически не слышно на определенных расстояниях, именно поэтому в консоль выводятся сообщения о ! Invalid ogg-comment version, file: и т.п. Итак, открываем Actor Editor либо Level Editor. На панели инструментов справа вверху ищем пункт меню Sounds, кликаем его и выбираем Sound Editor (звуковой редактор). Откроется окно редактора звука. Для того чтобы там появились наши файлы, необходимо скопировать их в папку rawdata\sounds в корне установленного Level Editor’a (например, c:\Program Files\X-Ray SDK\level_editor\rawdata\sounds). В этой папке вполне могут оказаться какие-то «левые» файлы – их можно смело удалить. NB: Важно чтобы копируемые туда файлы были именно в формате WAV! После того как вы скопировали свои файлы в папку SDK в окне Sound Editor’a должен появиться их список.
Выбираем трек и изменяем следующие параметры: Quality = 0.0 ширина полосы частоты, окружающая центральную частоту (для более плавного угасания звука или его стабильности) MinDist = 300.0 расстояние, с которого громкость звука начнет затухать (чем ниже к MaxDist тем плавнее переход но Quality нужно увеличить) MaxDist = 300.0 максимальное расстояние, на котором звук будет слышен ГГ MaxAIDist = 300.0 максимальное расстояние, на котором звук будут слышать NPC BaseVolume = 1.0 громкость
А также задается к какому типу звуков в игре он относится: в нашем случае - undefined
Game Type Описание undefined неопределенный. Ставим этот тип, чтобы NPC не реагировали на музыку и прочее. Item picking up подбирание предмета Item dropping выбрасывание предмета Item taking взятие предмета Item hiding убирание предмета Item using использование предмета Weapon Shooting Выстрелы оружия. Ставить на все виды оружейного выстрела, взрыва и т.д
обязательно выстави BaseVolume = 2.0 и Quality = 1.0 это нормализует громкость.
Weapon empty clicking щелчок УСМ при отсутствии патрона Weapon bullet hit звук попадания пули в поверхность Weapon recharging перезарядка оружия. ставим на все звуки связанные с перезарядкой оружия. NPC Injuring Ранение НПС. Ставить на все призывы о помощи в папке help (..я ранен... или ...ап-птечку) NPC Talking беседы НПС. Ставить на диологи, истории, анекдоты и гитарную музыку. Это позволит НПС-ам после анекдота
вставить коментарий (типа ... хорош...комик, блин). NPC Attaking Атаки НПС. Ставить на вопли при атаки. это подходит к папке fight.
НПС начинают более тактично вести себя при атаках ГГ-а и других групперовок. NPC dying смерть NPC NPC injuring ранение NPC NPC step шаги NPC NPC eating приём пищи NPC Anomaly idle Постоянный звук аномалей. Тлько на постоянный звук, на Hit... ставить ИМХО...NPC Injuring т.к другие
НПС начнут обходить данную аномалию в которую влез гг или кто либо. Object breaking разрушение объекта Object colliding столкновение объекта(ов), удар Object exploading взрыв World Ambient Мировое окружение. Ставить на все окружающие звуки. фонувую музыку лучше привезать к undefined.
Остальные параметры не тестировал пока. Нажимаем ОК и сного жмем на панель инструментов и ищем пункт меню Sounds жмем синхронизировать звук с игрой. Ждем. Если всё было сделано правильно, в папке gamedata\sounds в директории Level Editor’a (например, c:\Program Files\X-Ray SDK\level_editor\gamedata\sounds\) можно забрать готовые файлы ogg с правильными комментариями. Но после этого нужно удалить папку Sounds т.к все остальные ОГГ-шки станут в категорию (Delete) и вам сного нужно будить закачать папку Sounds из оригенальной gamedata После этого смело кладем наши звуки в папки игры. Не забывая удалять старые, а не заменять их.
И еще один нюанс, связанный с громкостью музыки: если при маленьком расстоянии MaxDist сделать высокую громкость или MinDist, то процесса затухания громкости будет практически не слышно – при движении ГГ это приведет как к резкому возникновению музыки, так и к такому же резкому ее прекращению.Это очень режет слух. Не забывайте применять Quality... это всегда смягчит переход звука с резкого на более мягкий. пример: MinDist=10; MaxDist=150 значение Quality =0,30 или 0,40 что значительно смягчит угасание звука.
Шаблоны для начинающих
Для всех переозвученных тем, затрагивающих окружающую среду. Это относится к папкам ambient, nature: ветра, амбианта, электричества, new_wind-ы (любые) или крики, эхо и прочее типа rnd_outdoor-а. Code Quality = 1.00 MinDist = 20.00 MaxDist = 150.00 MaxAIDist = 50.00 BaseVolume = 1.0 Game Type: =World Ambient
для звуков дождя и порыва ветра Code Quality = 1.00 MinDist = 10.00 MaxDist = 300.00 MaxAIDist = 300.00 BaseVolume = 1.50 Game Type: =World Ambient
для скриптов и мелких эффектов Code Quality = 1.00 MinDist = 1.20 MaxDist = 50.00 MaxAIDist = 20.00 BaseVolume = 1.0 Game Type: =World Ambient
для голоса НПС Code Quality = 1.00 MinDist = 10.00 MaxDist = 300.00 MaxAIDist = 300.00 BaseVolume = 1.50 Game Type: ставим в зависимости от категории
Важное замечание После того как рассортируете звуки по папкам, не забудьте! что речь нпс должна находиться не прямо в sounds\, а в character_voice\, а то потом будете несколько дней рыть где вы ошиблись и корректны ли звуки вообще. Тестирование, тестирование и еще раз тестирование? Удачного моддинга! Звук все равно орет на всю локации, как бы я его не изменял. Может кто знает другой способ правильно вставить свой трэк в радио?? Заранее спасибо))