Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 16 Мая 2014 Это популярное сообщение. Поделиться Опубликовано 16 Мая 2014 (изменено) Ковыряемся в файлах ТЧ Прежде чем писать в тему - внимательно читаем первый пост, и пользуемся поиском.Возможно, ответ на Ваш вопрос уже есть.Касательно телепатии: если Вы передаете Ваши файлы телепатическим путем - ответы будут передаваться тоже телепатически. Если Вы предлагаете угадать, отчего у Вас в подвале происходит странный стук - ответ будет передан стуком. Изменено 23 Февраля 2016 пользователем warwer 4 8 6 12 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
DarkSnowder 898 Опубликовано 8 Сентября Поделиться Опубликовано 8 Сентября (изменено) Всем чистого неба коллеги вопросец - в секции торговли для соответсвующих НПС есть такие строки Скрытый текст buy_condition = trade_generic_buy sell_condition = {+mil_lukash_dolg_task_complete} trade_friend_sell, trade_generic_sell buy_supplies = {+mil_leader_quest2_complete} supplies_exp_2,{+mil_lukash_dolg_task_complete} supplies_exp_1, supplies_generic сдесь как говориться записаны поршни, по которым происходит смена асортимента. Вопрос - можно ли заменить зависимость от поршней зависмостью от ранга ГГ и от его отношении с группировкой (ну чтоб если ГГ свободе друг, (не обязательно он должен состоять в группировке), цены были меньше, а если ГГ ранга ветеран - менялся асортимент? Если да - то какие данные нужно писать взамен инфопоршней? Изменено 8 Сентября пользователем DarkSnowder Лучше сделать мод с 0, чем пытаться залатать багованный. Ссылка на комментарий
Norman Eisenherz 286 Опубликовано 8 Сентября Поделиться Опубликовано 8 Сентября Если сравнивать с квестами, parse_condition понимает и ссылки на проверочные функции из [xr_conditions.script] – можно попробовать вместо ±инфо условие вида =fx_name с оформлением в указанном скрипте. 1 1 Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
Капрал Хикс 509 Опубликовано 8 Сентября Поделиться Опубликовано 8 Сентября Задался целью сделать открываемыми все ящички, дверцы шкафов и пр. в Зоне. Собственно, всё работает, только вот например на базе "Свободы" в здании на втором этаже есть тумбочка с выдвижным ящичком (он вроде один такой судя по визуалу в спавне), который хоть и даёт возможность открыть и закрыть его (надпись меняется), но визуально не выдвигается. Это копать ph_door.script нужно? Добавлено Купер, 9 Сентября Исправленные модели выдвижных ящиков для ТЧ от @h0N0r здесь. Ссылка на комментарий
ted.80 251 Опубликовано 8 Сентября Поделиться Опубликовано 8 Сентября 36 минут назад, Капрал Хикс сказал: есть тумбочка с выдвижным ящичком ЕМНИП эта та же тумбочка что и у Борова стоит? ЕМНИП_2 когда-то кто-то уже пытался сделать то-же самое и бодался с этой тумбой - кто, где и когда не помню, склероз видимо но вроде-бы все дело было в самой модели то-ли глючная она или не доделана что-то в ней Личный АРХИВ по S.T.A.L.K.E.R Ссылка на комментарий
imcrazyhoudini 202 Опубликовано 9 Сентября Поделиться Опубликовано 9 Сентября Есть чудесная логика: Скрытый текст [logic] active = remark combat_ignore = combat_ignore on_death = death [remark] target = esc_baza_novice_walk_3, 0 meet = no_meet snd = esc_zombie_1 combat_ignore_cond = always on_signal = sound_end | remark@2 on_info = {+esc_zombie_off} walker [remark@2] target = esc_baza_novice_walk_3, 0 meet = no_meet snd = esc_zombie_2 combat_ignore_cond = always on_signal = sound_end | remark on_info = {+esc_zombie_off} walker [walker] path_walk = esc_shpil_walk path_look = esc_shpil_look combat_ignore_cond = always on_info = {+esc_sidor_have} walker@2 [walker@2] path_walk = esc_shpil_walk path_look = esc_shpil_look combat_ignore_cond = always meet = no_meet [death] on_info = %+esc_sidor_have2% [combat_ignore] combat_ignore_cond = always Как сделать чтобы remark был зациклен и НПС говорил до того момента как получит инфопоршень? А то переходит в remark@2 и затыкается. ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Kirgudu 1 176 Опубликовано 9 Сентября Поделиться Опубликовано 9 Сентября 1 час назад, imcrazyhoudini сказал: Как сделать чтобы remark был зациклен Можно добавить промежуточную секцию с вилкой на возврат по небольшому таймеру (если требуется пауза) или переход дальше: [remark@1] target = esc_baza_novice_walk_3, 0 meet = no_meet combat_ignore_cond = always on_timer = 5 | remark on_info = {+esc_zombie_off} walker А из секции remark сделать переход на remark@1. Инструмент Ссылка на комментарий
imcrazyhoudini 202 Опубликовано 9 Сентября Поделиться Опубликовано 9 Сентября @Kirgudu а почему мой вариант не работает? ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Kirgudu 1 176 Опубликовано 9 Сентября Поделиться Опубликовано 9 Сентября @imcrazyhoudini погоди, не обратил внимание, что во втором ремарке у тебя тоже звук с возвратом на начало по окончании. Тогда моё предложение можно не принимать во внимание, оно неверное по сути. Не знаю, без собственноручной пробы в игре сказать не могу. Пусть более искушённые в логике отвечают. ) 1 Инструмент Ссылка на комментарий
DarkSnowder 898 Опубликовано 9 Сентября Поделиться Опубликовано 9 Сентября @Norman Eisenherz в кондишине стоят проверки на ранг ботов, под ранг ГГ ничё такого нет зато в диалог.скрипт есть упоминания на проверку ранга ГГ Скрытый текст function gar_actor_rank_newbie(actor,npc) local actor = db.actor if actor:character_rank() < 300 then return true end end по идее, можно на основании такой функции выдавать инфопоршень, который и будет активировать доп.хабар в торговлю. Ток как такую функцию прописать, а главное, потом её вызвать (хоть через тот-же инфопоршень хотя бы)? Лучше сделать мод с 0, чем пытаться залатать багованный. Ссылка на комментарий
Norman Eisenherz 286 Опубликовано 9 Сентября Поделиться Опубликовано 9 Сентября Не понимаю, зачем упираться в готовые функции и в чем разница между ГГ и NPC при общем методе проверки ранга. [trade_npc.ltx] -- заменить инфо логической функцией sell_condition = {=fx_name} npc_sell_list, … [xr_conditions.script] -- добавить описание function fx_name() return db.actor:character_rank() < 300 end 1 Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
DarkSnowder 898 Опубликовано 10 Сентября Поделиться Опубликовано 10 Сентября @Norman Eisenherz не всё так просто походу вот прописал в конфигах продавца условия Скрытый текст [trader] buy_condition = trade_generic_buy sell_condition = {=actor_friend} trade_friend_sell, trade_generic_sell buy_supplies = {=actor_rank_veteran} supplies_exp_2, {=actor_rank_experienced} supplies_exp_1, supplies_generic Скрытый текст -- функции на проверку ранга актора function actor_rank_newbie() return db.actor:character_rank() < 300 end function actor_rank_experienced() return db.actor:character_rank() < 600 end function actor_rank_veteran() return db.actor:character_rank() < 900 end function actor_rank_master() return db.actor:character_rank() > 900 end на старте у меня ГГ новичок, но в продаже появляются предметы, что должны ток на ранге опытный и ветеран появлятся 1 Лучше сделать мод с 0, чем пытаться залатать багованный. Ссылка на комментарий
abramcumner 1 134 Опубликовано 10 Сентября Поделиться Опубликовано 10 Сентября (изменено) 2 часа назад, DarkSnowder сказал: buy_supplies = {=actor_rank_veteran} supplies_exp_2, {=actor_rank_experienced} supplies_exp_1, supplies_generic Прочитай вслух свои условия. Если ранг ГГ меньше 900, то продавать ему как ветерану. <= в начале игры с рангом ноль, срабатывает это условие Если ранг ГГ больше или равен 900 и меньше 600, то продавать ему как опытному. Если ранг ГГ больше или равен 900, то продавать стандартно Я бы инвертировал условия или в конфиге или в функциях. Например, так: buy_supplies = {!actor_rank_veteran} supplies_exp_2, {!actor_rank_experienced} supplies_exp_1, supplies_generic Тогда звучало бы более логично: Если ранг ГГ больше или равен 900, то продавать как ветерану. Если ранг ГГ меньше 900 и больше или равен 600, продавать как опытному. Если ранг ГГ меньше 600, продавать стандартно. Изменено 10 Сентября пользователем abramcumner Ссылка на комментарий
DarkSnowder 898 Опубликовано 10 Сентября Поделиться Опубликовано 10 Сентября @abramcumner в игре ранговая система вроде как такая от 0 до 300 - новичок, от 300 до 600 - опытный, от 600 да 900 ветеран, а все кто свыше 900 мастера то бишь как я хочу сделать - если ГГ новичок (то бишь его ранг не достиг 300 - продавать по таблице supplies_generic, если ранг ГГ опытный (от 300 до 600) - асортимент идёт по таблице supplies_exp_1, на а если свыше 600 - то продавать по supplies_exp_2. Лучше сделать мод с 0, чем пытаться залатать багованный. Ссылка на комментарий
abramcumner 1 134 Опубликовано 10 Сентября Поделиться Опубликовано 10 Сентября @DarkSnowder тогда надо переработать функции, чтобы они соответствовали системе: -- функции на проверку ранга актора function actor_rank_newbie() return db.actor:character_rank() < 300 end function actor_rank_experienced() local rank = db.actor:character_rank() return rank >= 300 and rank < 600 end function actor_rank_veteran() local rank = db.actor:character_rank() return rank >= 600 and rank < 900 end function actor_rank_master() return db.actor:character_rank() >= 900 end 2 1 Ссылка на комментарий
Norman Eisenherz 286 Опубликовано 10 Сентября Поделиться Опубликовано 10 Сентября (изменено) Может, передавать ранг как аргумент, чтобы обойтись одной функцией? Все равно числа вручную вводятся, хотя при равномерном интервале можно обойтись нижней границей. … = {=actor_rank(min_rank)} … function actor_rank(min) local max = min + 300 if min == 900 then max = min *10 -- на всякий случай end local rank = db.actor:character_rank() return (rank >= min and rank < max) end Изменено 10 Сентября пользователем Norman Eisenherz 1 Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
Kirgudu 1 176 Опубликовано 10 Сентября Поделиться Опубликовано 10 Сентября 4 часа назад, Norman Eisenherz сказал: Может, передавать ранг как аргумент, чтобы обойтись одной функцией? Тогда, если правильно помню, функция должна содержать в своём объявлении ещё два параметра, которые в исходном её виде неявно опускаются, а при передаче аргумента обязательны: function actor_rank(actor, npc, min) --... end при этом желательно проверить, в каком виде приходит в функцию аргумент min: числа или таблицы с единственным элементом. 2 2 Инструмент Ссылка на комментарий
dPlayer 433 Опубликовано 10 Сентября Поделиться Опубликовано 10 Сентября Почему у некоторых зомбированных есть имя и прозвище, а другие просто "Зомбированный"? Ссылка на комментарий
Это популярное сообщение. Купер 2 759 Опубликовано 10 Сентября Это популярное сообщение. Поделиться Опубликовано 10 Сентября Потому что половина здесь (в качестве примера): character_desc_yantar.xml -> <name>GENERATE_NAME_stalker</name> А половина в симуляции: character_desc_simulation.xml -> <name>zombie_name</name> 1 5 Ссылка на комментарий
DarkSnowder 898 Опубликовано 11 Сентября Поделиться Опубликовано 11 Сентября @abramcumner ну чёт не срабатывает проверка видимо Скрытый текст buy_condition = trade_generic_buy sell_condition = {!actor_friend} trade_friend_sell, trade_generic_sell buy_supplies = {!actor_rank_veteran} supplies_exp_2, {!actor_rank_experienced} supplies_exp_1, supplies_generic Скрытый текст -- функции на проверку ранга актора function actor_rank_newbie(actor, npc) return db.actor:character_rank() < 300 end function actor_rank_experienced() local rank = db.actor:character_rank(actor, npc) return rank >= 300 and rank < 600 end function actor_rank_veteran(actor, npc) local rank = db.actor:character_rank() return rank >= 600 and rank < 900 end function actor_rank_master(actor, npc) return db.actor:character_rank() >= 900 end ГГ спавнится с рангом 0, а всё равно в продаже предметы, что должны появляться при условии опытный и ветеран Лучше сделать мод с 0, чем пытаться залатать багованный. Ссылка на комментарий
Это популярное сообщение. abramcumner 1 134 Опубликовано 11 Сентября Это популярное сообщение. Поделиться Опубликовано 11 Сентября (изменено) @DarkSnowder с такими функциями нужен изначальный конфиг: buy_supplies = {=actor_rank_veteran} supplies_exp_2, {=actor_rank_experienced} supplies_exp_1, supplies_generic Изменено 11 Сентября пользователем abramcumner 1 4 Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти