ColR_iT 171 Опубликовано 21 Февраля 2013 alex5773, как вариант можно в схеме xr_wounded в методе eat_medkit, подменять аптечки, которыми пользуется ГГ на другие, в которых жизни восстанавливает движок. Т.е. тебе нужно создать ещё одну секцию с аптечками, оставить им не нулевое значение параметра eat_health и спавнить их вместо обычных аптечек перед использованием. Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 21 Февраля 2013 (изменено) Старлей, На толике не проверяй, у него логика валяться раненым.а ты думаешь, что когда НПС в бою ложатся раненными они под логикой kamp'ера стонут? Отнюдь, они так же валяются с активной секцией wounded, только включается она автоматом. У Толик действительно использует данную ему аптечку, а не просто забирает её себе. Изменено 21 Февраля 2013 пользователем ColR_iT Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 22 Февраля 2013 Старлей, что он даже при 100 хп будет раненым Задай для параметра hp_state значение 200, в 98% случаях любой НПС будет переходить в состояние раненый.но у него стоит также параметр not_for_help = true Этот параметр присутствует только в ЗП и определяет может ли другой НПС лечить его. Примечание: не рекомендуется задавать схему в качестве активной.Это я писал. А у нас получается, как раз что для Толика активной схемой будет [wounded]Во-первых, схема wounded является секцией, которая пишется в активную схему логики. Во-вторых, загляни в работу гулага, под которой "стонет" Толик, там секция раненного прописана в схеме walker, так что активной остаётся именно walker. Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 24 Апреля 2013 плащ, может проблема в том, что у тебя куда-то делась самая верхняя строка в файле game_tasks.xml: <?xml version='1.0' encoding="windows-1251"?> Stalker_AleX333, а что конкретно происходит с твоим НПС? 1 Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 24 Апреля 2013 (изменено) riddik121, всё что тебе нужно можно найти в двух файлах: heli_move.script и heli_combat.script. Судя из того, что ты этого не нашёл, то вряд ли тебе удастся сделать то, о чём ты пишешь. 1. Вопрос: в строке скрипта actor это комьюнити или класс?Ни то и ни другое. Строка: elseif target == "actor" or target == "a" thenПроверяет значение флага e, либо в точке move, либо look, на соответствие того, нужно ли атаковать именно актора. Этом можно увидеть несколькими строками выше, а именно здесь:local target = self:waypoint_param( path_info, index, "e" )И в дальнейшем коде, если проверка возвращает истину. 2. Высота на которой будет находится вертолёт можно задавать при помощи параметра combat_safe_altitude. Считается это значение относительно максимального значения координаты Y на локации. Если этого не делать то по умолчанию формула выглядит так: Максимальное значение координаты Y на локации + удвоенное значение параметра safe_altitude из секции helicopter. Таким образом, если ГГ будет находится в самой высокой точки локации, то вертолёт будет находится от него на расстоянии всего шести метров (safe_altitude по умолчанию равен трём метрам). Изменено 24 Апреля 2013 пользователем ColR_iT Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 26 Апреля 2013 (изменено) riddik121, что значит "как выглядеть"? Бери нужные параметры и вписывай в секцию, учитывая мааааленькое замечание: Примечание: отдельной секции для этой схемы поведения нет. Поэтому настройки производятся в секции текущей схемы поведения. Пример можно найти в ТЧ или ЧН, а за более подробной информацией нужно лезть в файлы heli_move.script и heli_combat.script. Изменено 26 Апреля 2013 пользователем ColR_iT Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 26 Апреля 2013 (изменено) riddik121, хорошо, растолкую по другому данное примечание. Секции heli_combat не существует, следовательно задавать параметры по которым будет определятся поведение вертолёта во время боя нужно не в новой секции, делая на неё ссылку, а прямо в текущей секции heli_move. Так, надеюсь, яснее? И по поводу примеров. Почему не заглянуть в оригинальные файлы? [logic] active = heli_move1 on_hit = hit [heli_move1] path_move = aes_heli_attack_desant_walk_begin2 on_info = {+aes_desant_go} heli_move2 engine_sound = false combat_safe_altitude = -100 [heli_move2] path_move = aes_heli_attack_desant_walk2 path_look = aes_heli_attack_desant_look2 invulnerable = true immortal = true on_signal = final | %+aes_desant_wave2% heli_move3 combat_ignore = true mute = true combat_safe_altitude = -100 [heli_move3] path_move = aes_heli_attack_desant_walk2_2 path_look = aes_heli_attack_desant_look2_2 on_actor_in_zone = aes_actor_heli | %=heli_set_enemy_actor% mute = true combat_safe_altitude = -100 on_info = {=heli_health_le(0.3)} heli_move@death [heli_move@death] path_move = heli_death_way invulnerable = true on_signal = arrived | heli_move@silent combat_ignore = true [heli_move@silent] path_move = heli_death_way invulnerable = true engine_sound = false combat_ignore = true [hit] on_info = {+aes_desant_wave2} %+aes_choper_crush_sound =heli_start_flame% Как видишь, все параметры heli_combat заданы в секции heli_move. Изменено 26 Апреля 2013 пользователем ColR_iT Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 1 Мая 2013 Uyman358, очень плохо искал. В секции meet@at_hole логики Бармена есть вот такие две строки: meet_state = 2|barman_talk_free@bar_bar_barmen_hello meet_state_wpn = 2|barman_talk_free@bar_bar_barmen_hello Так вот bar_bar_barmen_hello это и есть ссылка на произносящий звук в файле sound_theme.script 1 Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 1 Мая 2013 plac 1. Либо апгрейдить компьютер, либо воспользоваться правками движка X-Ray Extension. Ещё можешь взять правленый экзешник от Macron'а, там данная ошибка тоже пофиксена. 2. Во-первых, ты ошибся темой. А вообще - вот: >>ClicK Me<<. VovanDolg, если не уверен - лучше не пиши... Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 10 Мая 2013 Labus, в любом диалоге, обязательно должна присутствовать фраза с id равной 0 иначе будешь получать такой вылет. Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 29 Мая 2013 panzyuza, а ты свой универсальный гулаг правильно настроил? Может НПС не подходят под его условия? Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 4 Июня 2013 Копировал из артефактов туда же, не работают.Туда же - это куда? Все пять параметров: health_restore_speed (восстановление жизни), radiation_restore_speed (вывод радиации), satiety_restore_speed (уменьшение/увеличение сытости), power_restore_speed (восстановление/уменьшение выносливости) и bleeding_restore_speed (уменьшение/увеличение кровотечения), работают, если их прописать в конфиге костюма, если не работает, значит не туда написал.По поводу того, как игра просчитывает, что 0.0002 - это 200%, тебе мало кто ответит, просто прими как должное и всё. Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 4 Июня 2013 @JohnWaine, извини, что обнадёжил, но параметры не работают. Я поддался на провокацию ПЫС и поверил тому, что написано у них в конфиге. На деле же указанных мной параметров внутри структуры костюма, т.е. в классе CCustomOutfit, просто нет - поэтому и не работают. В OGSE, некоторые из них были реализованы с помощью скриптов, можешь посмотреть там, если очень нужно. Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 5 Июня 2013 (изменено) @riddik121, должно всё работать, при условии, что ты скомпилировал all.spawn и начал новую игру и ты вообще разбиваешь тот ящик, что нужно.Хотя меня ещё смущает путь до модели, в ТЧ нет папки dynamics. Изменено 5 Июня 2013 пользователем ColR_iT Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 5 Июня 2013 @riddik121, в данном случае, вылет без лога может быть в том случае, если у тебя не существует указанной функции, либо в файле с функцией синтаксическая ошибка. Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 8 Июня 2013 @Dennis_Chikin, нет, таковое смысла не имеет. Перед разделителем пишется условие для параметра, после можно прописать дополнительные, скажем "общие" условия в фигурных скобках, эффекты, внутри знаков процента, и схема на которую нужно перейти, при этом, если ни дополнительных условий, ни эффектов, ни схемы не будет - ничего не произойдёт. И в приведённом тобой примере:xr_logic.switch_to_section( obj, st, xr_logic.pick_section_from_condlist( actor, obj, nil ) )Вылета не будет, т.к. в функции switch_to_section стоит проверка на nil, в качестве секции на которую переходить. Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 8 Июня 2013 @Dennis_Chikin, не обратил внимание... А где ты таковую запись нашёл? Хотя я кажется понял, что это пример того, что произойдёт в случае записи: условие|<пусто>.Здесь, да - данное на совести модмейкера. Но если честно, лично мне и в голову не придёт НЕ писать что-то в кондлист, ведь для чего-то мне потребовалось использовать данный параметр... Да, и кстати при отсутствии кондлиста, вылет будет ещё на этапе парсинга всей строки с параметром, в той функции, которая там прописана, как правило это одна из функций cfg_get_трямтрям_condlist. Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 12 Июня 2013 @Saruman, хоть он действительно и сидит только из-за логики, но пойти он всё равно не сможет - у него нет ходячих и даже стоячих анимаций, к тому же, модель Сидора имеет 55 костей (43 у обычного сталкера). Ко всему, все анимации зашиты в модели. Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 12 Июня 2013 это перечисление или эти анимации будут следовать друг за другом?Будет случайно выбрана одна из указанных анимаций. Поделиться этим сообщением Ссылка на сообщение
ColR_iT 171 Опубликовано 12 Июня 2013 (изменено) @Saruman, да, но не прямую. Здесь вероятность просчитывается весьма оригинальным образом. При переходе на схему, где присутствуют данные "символы", берётся случайное число от 1 до 100 и сравнивается с числами в условиях слева-направо. Если число в условии больше, то само условие считается выполненным, если нет, то сравнивается со следующим числом и так далее. Т.е. в данном случае настоящая вероятность для перехода на любую из указанных схем равна 25%. Условно можно посчитать так: для первого условия вероятность будет ровно такая, какое задано число (25%); для второго условия вероятность будет число минус предыдущее число (50-25=25%); для третьего, опять число минус предыдущее число (75%-50%=25%), если и это условие не выполнится, то произойдёт безусловный переход на четвёртую схему (а это тоже 25 оставшихся процентов). Вот такой алгоритм. Изменено 12 Июня 2013 пользователем ColR_iT Поделиться этим сообщением Ссылка на сообщение