Charsi 440 Опубликовано 12 Июня 2011 Поделиться Опубликовано 12 Июня 2011 При убранном оружии db.actor:active_slot() выдает 4294967296. Lua и LuaJIT плагины для Notepad++ SciTE-RU 3.5.5 плагины для MilkShape3D Ссылка на комментарий
herurg 0 Опубликовано 12 Июня 2011 Поделиться Опубликовано 12 Июня 2011 Всем привет. Пытаюсь в all.spawn прописать к смарттеррейну респавн изломов: [897] ; cse_abstract properties section_name = respawn name = kord_izlom_1_respawn position = -244.820007324219,-11.1999998092651,-7.90000009536743 direction = 0,0,0 ; cse_alife_object properties game_vertex_id = 67 distance = 0 level_vertex_id = 12578 object_flags = 0xffffff3e custom_data = <<END [respawn] respawn_section = fracture_weak max_spawn = 2 idle_spawn = medium END ; cse_shape properties shapes = shape0 shape0:type = sphere shape0:offset = 0,0,0 shape0:radius = 4 ; cse_alife_space_restrictor properties restrictor_type = 0 ; se_respawn properties Но спавна к сожалению не происходит. Попробоал тоже самое с котами - никакого спавна. Может я что-то не так сделал? Всё,что есть в ЗОНЕ, должно быть УЧТЕНО, ПРИПОРЯДКОВАНО и СХОВАНО! (с) Ссылка на комментарий
iDreD 5 Опубликовано 12 Июня 2011 Поделиться Опубликовано 12 Июня 2011 Респаун прописывается в space_restrictor'е, а не в smart_terrain'е. Работа в Sculptris 3D [туториал] Страничка на Проза.ру Ссылка на комментарий
_Призрак_ 11 Опубликовано 12 Июня 2011 Поделиться Опубликовано 12 Июня 2011 iDreD Сейчас речь идет о ТЧ, поэтому ты не прав. herurg Советую прописать радиус респавна и подождать нужное количество для респавна времени Freedom Ссылка на комментарий
herurg 0 Опубликовано 12 Июня 2011 Поделиться Опубликовано 12 Июня 2011 (изменено) _Призрак_, ты не мог бы по-подробнее чуток? Я лишь недавно начал осваивать all.spawn, не всё могу Где что надо изменить? iDreD, я респаун прописал в all.spawn, мне так подсказал один знающий человек, большего я пока не знаю, к сожалению у него проблемы с нетом. Так что узнать что-то новое буду рад. Изменено 12 Июня 2011 пользователем herurg Всё,что есть в ЗОНЕ, должно быть УЧТЕНО, ПРИПОРЯДКОВАНО и СХОВАНО! (с) Ссылка на комментарий
iDreD 5 Опубликовано 12 Июня 2011 Поделиться Опубликовано 12 Июня 2011 (изменено) Как раз таки в ТЧ респаун прописывается в рестрикторе. ========================== Если быть точным для респауна есть спец. секция в ТЧ: stalkerin.gameru.net/wiki/index.php/SoC._Respawn Изменено 12 Июня 2011 пользователем iDreD Работа в Sculptris 3D [туториал] Страничка на Проза.ру Ссылка на комментарий
herurg 0 Опубликовано 12 Июня 2011 Поделиться Опубликовано 12 Июня 2011 Обязательные условия респавна: 1. На локации обязательно должен быть хоть один гулаг для респавнящихся NPC и мутантов, так как количество NPC для респавна, ориентируется по доступным местам в гулагах. 2. Респавн производится, только если под гулагами есть доступные работы. Мог бы кто-нибудь обьяснить мне значение этих правил? Для меня пока это не очень-то знакомые слова. Всё,что есть в ЗОНЕ, должно быть УЧТЕНО, ПРИПОРЯДКОВАНО и СХОВАНО! (с) Ссылка на комментарий
abramcumner 1 159 Опубликовано 12 Июня 2011 Поделиться Опубликовано 12 Июня 2011 herurg, это вольный и не совсем точный пересказ se_respawn.script и xr_gulag.script Если коротко, то респавнеры в ТЧ при спавне пытаются пристроить НПЦ в какой-нибудь гулаг. Если не получается, то заспавненный НПЦ сразу же уничтожается. По-видимому ты для своих изломов не сделал гулага, вот респавнер якобы и не работал. Для принятия в гулаг нужно выполнить кучу условий: там должны быть свободные работы, НПЦ должен подходить гулагу по группировке и прочее... Одна из не точностей кстати, что на локации с респавнером должен быть гулаг. Гулаг может быть где угодно, главное чтобы НПЦ туда могли взять. В том же ТЧ все ровно наоборот - гулаги заполняются респавнерами, находящимися на других локациях. Из-за этого на свалке у ангара может возникать непрерывный поток бандитов, так как свалка фактически представляет собой перекресток для НПЦ, расходящихся по своим гулагам. Хочешь точно знать, что происходит - изучай скрипты, а так довольствуйся тем, что для респавнящихся НПЦ должно быть свободное место в гулаге Ссылка на комментарий
Якут 0 Опубликовано 12 Июня 2011 Поделиться Опубликовано 12 Июня 2011 (изменено) Gektor, новую локу нужно регистрировать в скриптах, скорее у тебя из-за этого и не спавниться сквад: 1) scripts\sim_board.script - добавление в симуляцию. 2) scripts\smart_terrain.script - менеджер смарт-террейнов 3) scripts\surge_manager.script - выброс 4) scripts\task_objects.script - межуровневые проводники Подробное описание, что где править есть на Вики. Да кстати, если ты спавнил отдельно взятого сталкера, то он не будет занимать работу, покрайне мере у меня на Юпитере не занимал. Добавлено через 235 мин.: Всем доброго вечера, кто-нибудь знает, что нужно прописать в логику НПС, чтобы он стал враждебным, по отношению к актеру или другому НПС(по умолчанию нейральному ему). Пробовал прописывать combat_enemy = actor эффекта нуль. Зарание, спасибо. Изменено 12 Июня 2011 пользователем Якут Ссылка на комментарий
TRAMP14 1 Опубликовано 13 Июня 2011 Поделиться Опубликовано 13 Июня 2011 И снова здравствуйте! Я с очередным вопросом: Можно ли отследить наличие прицелов\глушителей\подствольных гранатомётов на оружии? Если да то как? Ссылка на комментарий
Kirag 39 Опубликовано 13 Июня 2011 Поделиться Опубликовано 13 Июня 2011 TRAMP14 Можно через нет-пакеты. Читаешь стандартный нет-пакет оружия (функцией из АМК, например), и смотришь параметр addon_flags. Он будет иметь значение от 0 до 7 (111 в двоичной системе): Аддоны: 0 = 000 = ничего 1 = 001 = пр 2 = 010 = пг 3 = 011 = пр + пг 4 = 100 = гл 5 = 101 = пр + гл 6 = 110 = пг + гл 7 = 111 = пр + пг + гл Мои работы: Ночные прицелы + смена ножевого слота AI вертолетов + ПЗРК Soul Cube Работаю только с ТЧ. С ковырянием ЧН/ЗП не связываюсь ни в какой форме. Совсем. Ссылка на комментарий
gruber 2 481 Опубликовано 14 Июня 2011 Поделиться Опубликовано 14 Июня 2011 может кому поможет - иногда нпс ведут себя не так как хотелось бы ,то шарахаются от каждого куста ,то по монстрам почти пробегают не замечая их.Так вот разбираясь со слишком пугливым поведением шайки волка из ТТ ,заметил что у них стоит анимка для путей assault ,которая обозначает движение в денжере ,как только убрал эту анимку все нпс "успокоились" assault = { weapon = "unstrapped", movement = move.run, mental = anim.danger,-------так что прописывая анимацию нпс обращайте внимание на эту строку в списке анимаций bodystate = move.standing, animstate = "stand", animation = nil Ссылка на комментарий
Ulman 5 Опубликовано 14 Июня 2011 Поделиться Опубликовано 14 Июня 2011 (изменено) Ребята, я пытаюсь написать скрипт для ТЧ, что бы при определённо одетом котюме проигрывался звук "дыхания", я "очень не сильно" рабираюсь в скриптах, но с горем пополам что то написал, но в итоге оно не работает, подскажите пожалуйсто, где ошибка? Заранее спасибо. Собственно вот он: local outfits={ "stalker_gas_outfit", "military_stalker_commander_outfit" } local snd = xr_sound.get_safe_sound_object([[actor\sopit]]) function protivogaz_sound() if db.actor and db.actor:alive() then local outfit = db.actor:item_in_slot(6) if outfit and outfit:section() and outfits[outfit:section()] then if not snd:playing() then snd:play_at_pos(db.actor, vector ():set (0, 0, 0), 0, sound_object.s2d) end end end end Изменено 14 Июня 2011 пользователем Ulman Ссылка на комментарий
Kirag 39 Опубликовано 14 Июня 2011 Поделиться Опубликовано 14 Июня 2011 Ulman В play_at_pos, насколько я понимаю, первый аргумент - от чьего имени играется звук, второй - позиция относительно уровня, а не относительно "автора" звука. Третий аргумент не помню зачем, как бы не громкость, в любом случае он не обязателен, как и четвертый. Так, как написано, у тебя играется звук от имени актора, но в начале координат уровня, само собой, ты его просто не слышишь, даже если я не прав насчет громкости. Попробуй так: snd:play_at_pos(db.actor, device().cam_pos) P.S. Всю функцию на апдейт актора, само собой. Мои работы: Ночные прицелы + смена ножевого слота AI вертолетов + ПЗРК Soul Cube Работаю только с ТЧ. С ковырянием ЧН/ЗП не связываюсь ни в какой форме. Совсем. Ссылка на комментарий
Artos 99 Опубликовано 14 Июня 2011 Поделиться Опубликовано 14 Июня 2011 (изменено) Kirag' Поправлю: Допускается и строка с аргуметами как у Ulman'а, т.е. 'play_at_pos' выполняется не 'от имени кого-то', а относительно какого-либо объекта (1-ый аргумент). 2-ой аргумент - вектор позиции (координаты точки), относительно того объекта, который указан в 1-ом аргументе. Т.е. snd:play_at_pos(db.actor, vector():set( 0, 0, 0), 0, sound_object.s2d) --/ играть звук 'в голове' актора (без задержки, моно) snd:play_at_pos(db.actor, vector():set( 1, 0, 1), 3, sound_object.s3d) --/ играть звук относительно актора впереди-справа (с задержкой 3 сек, стерео) snd:play_at_pos(db.actor, vector():set(-1, 0, 1), 0, sound_object.s2d+sound_object.loop) --/ играть звук относительно актора впереди-слева (без задержки, моно,зацикленно) и т.п. 3-ий аргумент - задержка звука (сек) 4-ый аргумент - константа (из набора свойств класса 'sound_object': s2d|s3d|loop -> моно/стерео/зацикленно) Т.о. строка проигрыша звука корректна. Вероятно ошибка в вызове самой функции проигрывания звука или обработке наличия допустимой секции. Примечание: vector():set(0,0,0) - просто некий вектор(объект) 'нулевой длины' (а не относительно начала координат локации) Изменено 14 Июня 2011 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
Massaraksh 0 Опубликовано 15 Июня 2011 Поделиться Опубликовано 15 Июня 2011 Всем привет! Решил скриптово добавить новую консольную команду. Создал файл console_addon.script с таким содержимым: function update() local console = get_console() if console == "get.weap()" then spawner() else return end function spawner() alife():create("wpn_ak74", db.actor:position(), db.actor:level_vertex_id(), db.actor:game_vertex_id(), db.actor:id()) end И прописал строчку console_addon.update() в апдейт в файле bind_stalker. Ну, суть в том, чтобы при наборе в консоли get.weap() в рюкзаке появлялся АК-74 (это к примеру). Игра вылетала при загрузке с логом заканчивающимся .. to index global "console_addon" (как-то так). Решил запихнуть содержимое скрипта целиком в bind_stalker. Вылетать перестало, игра запускается, но при наборе команды в консоли выдает, что команда неизвестна (эту надпись, как я понял, скриптом не уберёшь), и рюкзак остаётся пустым. Собственно, вопрос: что не так и как можно доделать скрипт, чтобы можно было вызывать команду с к-л параметром, а не переделывать скрипт каждый раз? Например, так: get.weap wpn_ak74 или get.weap wpn_pm. Помогите, плиз, я в скриптах дуб дубом... Ссылка на комментарий
Malandrinus 615 Опубликовано 15 Июня 2011 Поделиться Опубликовано 15 Июня 2011 Massaraksh, Решил скриптово добавить новую консольную команду. Это не получится. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Ulman 5 Опубликовано 15 Июня 2011 Поделиться Опубликовано 15 Июня 2011 Люди, я опять по поводу своего скрипта, ничего не изменял, только теперь всё время такой вылет, да и не работает: Expression : fatal error Function : CScriptEngine::lua_error File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp Line : 73 Description : <no expression> Arguments : LUA error: ...$\s.t.a.l.k.e.r\gamedata\scripts\bind_stalker.script:302: attempt to index global 'ulman_outfit_sound' (a nil value) Саму функцию вызываю через бинд сталкер так: game_stats.update (delta, self.object) ulman_outfit_sound.sound_update() Уже не знаю что делать, помогите пожалуйсто. Ссылка на комментарий
_Призрак_ 11 Опубликовано 15 Июня 2011 Поделиться Опубликовано 15 Июня 2011 Синтаксическая ошибка в файле ulman_outfit_sound.sound_update() Freedom Ссылка на комментарий
ZeeK 57 Опубликовано 16 Июня 2011 Поделиться Опубликовано 16 Июня 2011 Ulman в ulman_outfit_sound не хватает end-ов, проверено на себе) Не соответствует. N6260 Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти