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

=VENOM=

Проверенные
  • Число публикаций

    131
  • Регистрация

  • Последнее посещение

4 подписчика

О =VENOM=

  • День рождения 03.01.1975

Контакты

  • ICQ
    0

Недавние посетители профиля

809 просмотров профиля
  1. Скриптование

    Согласен с TIGER_VLAD, для себя такую проблему решал давным-давно - похоже, тем же способом, что и в ЧН на болотах (точно не помню, в ЧН не играл с момента выхода игры, наверное ). 2 варианта: первый попроще, если вокруг левелчейнджера есть много свободного места, "накрываем" его рестриктором, с шейпом, бОльшим, чем у левелчейнджера. В его логике выставляем условия, при которых рестриктор будет "возвращать" игрока в заданную (заданные) точки функцией set_actor_position+set_actor_direction, не давая ему "добраться" до левелчейнджера. И, может быть, даже с соответствующим сообщением, типа "дорога закрыта" . Второй вариант, если пространство у перехода ограничено, и рестриктором не получается надёжно перекрыть левелчейнждер - логику рестриктора, перемещающую игрока оставляем, как и в первом случае, а вот сам левелчейнджер придётся спонить/удалять уже либо из логики рестриктора (что очень удобно, в общем-то), либо где-то в другом месте, где удобнее разработчику.
  2. [SoC] Ковыряемся в файлах

    Действительно, оно . Ставишь значение 0 и анимация работает с любым стволом.
  3. [SoC] Ковыряемся в файлах

    Касательно обреза и воплей про группу Крота. Выяснилось, что кости модельки оружия в этой анимации значения не имеют. Анимация работает только с оружием класса WP_BM16, то есть этому сталкеру запросто можно всучить и ТОЗ-34, к примеру. А можно и вообще либо подменить визуал обреза, либо создать "фейковый" ствол на классе WP_BM16 с каким-нибудь визуалом - в качестве прикола: Сам прикол .
  4. [SoC] Ковыряемся в файлах

    2 SWEAW. Если нужно изменить всего лишь текст, то файл локализации - ui_st_pda.xml, если изменить свойства самого окна - то в файле message_box.xml, первая же секция. Если же нужно, чтобы левелчейнджер срабатывал без запроса "Перейти на другую локацию?", тогда в свойствах самого левелчейнджера указать silent_mode = 1.
  5. [SoC] Ковыряемся в файлах

    2 Han Sola, sr_sound поддерживает либо звуки, указываемые напрямую, либо внутренние темы sr_sound.script. Тогда лучше воспользоваться несколько иной схемой, sr_sound_act, и в рестрикторе применить вот такую логику: custom_data = <<END [logic] active = sr_idle [sr_idle] on_actor_inside = sr_sound_act@snd1 [sr_sound_act@snd1] theme = zvuki_bara on_actor_outside = sr_idle END Здесь указывается именно тема, из неё случайным образом будут выбираться звуки для воспроизведения, до тех пор, пока игрок находится внутри рестриктора. Если не указать условие on_actor_outside = sr_idle, звуки будут проигрываться до посинения, даже если игрок покинет рестриктор.
  6. [SoC] Ковыряемся в файлах

    Han Sola, попробуй заменить логику на такую: [logic] active = sr_idle [sr_idle] on_actor_inside = sr_sound [sr_sound] snd = zvuki_bara play_at_actor = true
  7. [SoC] Ковыряемся в файлах

    2 Han Sola - по этим двум отрывкам секций смарттеррейнов догадаться, что происходит со гулагами в принципе невозможно. Нужно как минимум смотреть, что прописано в логике первого смарта (раз уж второй работает, да ещё general_lager). Сам по себе объект smart_terrain на другой аналогичный никакого влияния не оказывает, могут конфликтовать только их логика, и, возможно, пути. Скорее всего, где-то закралась ошибка в настройках первого смарта. 2 nego - чтобы вернуть всё, что нажито напосильным трудом ГГ, сначала надо где-то сохранить информацию об изъятых в ходе обыска предметах. Неплохо бы определиться, что именно будем сохранять - данные (имена секций и количество) об изъятых предметах (этот вариант больше подходит, если вернуть предметы нужно будет где-то на другой локации). Если только данные, то в базе ГГ. Если же события будут происходить в пределах одной локации, тогда гораздо проще перебросить сами объекты в какой-нибудь подходящий "инвенторибокс". Ну, в затем вернуть всё назад.
  8. Скриптование

    2 Jekyll - в твоём коде с таблицей на каждую "подходящую" жертву будет по 20 раз (сколько итераций указано, если нет ни одного совпадения) срабатывать установка партикла. Проверка же набора строк вернёт всего лишь одно значение - верно/не верно. Поэтому во втором случае результат положительный. Кстати, строчку for t = 1,20 do лучше сразу заменить на for t = 1,table.getn(type) do чтобы потом, в случае увеличения/уменьшения значений в таблице не дёргаться и не переписывать количество циклов обработки.
  9. Скриптование

    Ну тогда переезжаем в личку - общий контур проблемы вроде бы ясен (апдейт ГГ), а остальным всё это вряд ли будет интересно.
  10. Скриптование

    Интересно... А перезагрузка уровня (выход-вход обратно на локацию) после отстрела всей массы мутантов как-то влияет на FPS?
  11. Скриптование

    Если каждая "волна" по 20 штук мутантов (*9=180 нехило так полигонов в кадре прибавилось) то, вполне возможно, что количество мобов и есть причина просадки FPS. Попробуй каждую "волну" заменить на всего одного моба и проверь, что получится. Кстати, проще сделать цикл спона мобов, чем городить кучу одинаковых строк кода: for a=1, 20 do alife():create("zombie_game2",vector():set(-475,-0.73,-170),288029,967) end А, только что заметил - вроде, уборщик трупов есть какой-то? Ну, тогда не знаю ...
  12. Скриптование

    Ну это как бы то же самое, только вид сбоку .
  13. [SoC] Ковыряемся в файлах

    В оригинале есть проверка "на день", но она не годится для прекондишнов диалогов, поэтому можно поступить так: Прописать в dialogs.script эту функцию: function is_night(first_speaker, second_speaker) if level.get_time_hours() > 6 and level.get_time_hours() < 21 then return false end return true end И использовать в диалоге такой прекондишн: <precondition>dialogs.is_night</precondition> Диалог будет доступен от 9 вечера до 6 утра. Время также можно выставить своё, подходящее для ситуации.
  14. [SoC] Ковыряемся в файлах

    Спасибо, КО. Но у меня, например, там нет никакой точки "спавна" (которой, кстати, там никогда не было) ни точки перехода (перенесена поближе к тепловозу у второго туннеля). И да, любое изменение, хотя бы одной буковки в диалоге или описании чего-либо в игре, не говоря уже о добавлении/удалении смарттеррейнов - это уже не оригинальная игра. Так что мечты сбываются - надо только захотеть... и сделать. Можно (и нужно) пользоваться, например, поиском по форуму. Если же что-то всё равно непонятно (хотя обычно здесь всё разжёвано достаточно подробно), можно в личку обратиться, чтобы не засорять тему инструкциями на достаточно стандартную (и давно решённую) проблему.
  15. [SoC] Ковыряемся в файлах

    Вопрос далеко не такой простой, как покажется на первый взгляд. Если просто взять и поменять коммьюнити и, соответственно, группировки населения смарттеррейнов (ЕМНИП, первый такой пример я видел в ZENOBIAN - там был на Агропроме заменён смарт военных на наёмников) то это несложно, конечно. Но в таком случае как быть с квестами, "зашитыми" в оригинальной игре? Отправит Сидорович на тот же Агропром стянуть документы у военных, а там в западном корпусе НИИ какие-нибудь долговцы-свободовцы, или, простигосподи, монолитовцы тусуются? Вопрос... Конечно, можно поменять какие-то несюжетные, маленькие смарты, вроде того костерка в лесочке на Кордоне, между двумя туннелями. Из него вполне себе можно состряпать небольшой лагерь с парой-тройкой часовых, главарём у костерка, и, может даже, отдыхающими под ближайшими ёлочками. А то ещё проще - сделать новый смарт в туннеле, из которого в оригинале ГГ прибывает из ТД после Х-18. И даже сделать квестов пару-тройку, связанных с этим лагерем... Инструменты для этого есть - кто-то пользуется SDK, кто-то по-старинке ACDC, это что касается файла all.spawn. А всё остальное в простейшем случае радактируется тем же самым Блокнотом.
×