Это популярное сообщение. Dennis_Chikin 3 648 Опубликовано 16 Мая 2014 Это популярное сообщение. Поделиться Опубликовано 16 Мая 2014 (изменено) Ковыряемся в файлах ТЧ Прежде чем писать в тему - внимательно читаем первый пост, и пользуемся поиском.Возможно, ответ на Ваш вопрос уже есть.Касательно телепатии: если Вы передаете Ваши файлы телепатическим путем - ответы будут передаваться тоже телепатически. Если Вы предлагаете угадать, отчего у Вас в подвале происходит странный стук - ответ будет передан стуком. Изменено 23 Февраля 2016 пользователем warwer 4 7 6 10 Цитата Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Guidesun 0 Опубликовано 15 Сентября 2018 Поделиться Опубликовано 15 Сентября 2018 (изменено) Только сейчас заметил одну проблему. Если отойти от нового НПС на приличное расстояние то он исчезает в мир иной. У меня все НПС куда то пропали, хотя в логике ясно прописано что они должны стоять колом на заданном месте. Раньше не было такого, НПС не квестовые стоят голые без диалогов. ЗЫ Хотя нет один использует эти функции. Скрытый текст function has_item_af_medusa(task, objective) if db.actor ~= nil then return db.actor:object("af_medusa") ~= nil end return false end function has_item_af_medusa_pes(first_speaker, second_speaker) dialogs.relocate_item_section(second_speaker, "af_medusa", "out") end function has_item_kanistra(first_speaker, second_speaker) local n=2 local count=0 db.actor:iterate_inventory(function (dummy, item) if item:section()=="explosive_mobiltank" then count=count+1 end end, nil) if count>=n then return true else return false end end function has_item_kanistra_pes(first_speaker, second_speaker) flamethrower.relocate_n_items_section(second_speaker, "explosive_mobiltank", "out", 2) dialogs.relocate_item_section(second_speaker, "wpn_pm", "in") dialogs.relocate_item_section(second_speaker, "ammo_9x18_fmj", "in") end Когда беру канистры он в первую очередь пропадает, может что то не так с проверкой has_item_kanistra? Изменено 15 Сентября 2018 пользователем Guidesun Цитата Ссылка на комментарий
Overfirst 615 Опубликовано 15 Сентября 2018 Поделиться Опубликовано 15 Сентября 2018 (изменено) 3 минуты назад, Guidesun сказал: Если отойти от нового НПС на приличное расстояние то он исчезает в мир иной. Все неписи переходят в оффлайн, когда актор очень далеко (150+ метров). В ТЧ, вроде как, можно в работе гулага или как там ваша эта система называется, прописать флаг онлайн, чтобы непись не "исчезал в мир иной". Изменено 15 Сентября 2018 пользователем Overfirst Цитата Ранее был известен под ником BoBaH_671. Ссылка на комментарий
Guidesun 0 Опубликовано 15 Сентября 2018 Поделиться Опубликовано 15 Сентября 2018 1 час назад, Overfirst сказал: Все неписи переходят в оффлайн, когда актор очень далеко (150+ метров). В ТЧ, вроде как, можно в работе гулага или как там ваша эта система называется, прописать флаг онлайн, чтобы непись не "исчезал в мир иной". Никогда не сталкивался с подобным. На всякий случай секция НПС. Скрытый текст [870] ; cse_abstract properties section_name = stalker name = esc_pes position = -199.870178222656,-19.8877372741699,-137.10905456543 direction = 0,0,0 ; cse_alife_trader_abstract properties money = 5000 character_profile = esc_pes ; cse_alife_object properties game_vertex_id = 57 distance = 0 level_vertex_id = 52330 object_flags = 0xffffffbf custom_data = <<END [logic] active = walker@stay_at_position combat_ignore = combat_ignore danger = danger_condition [walker@stay_at_position] path_walk = esc_lager_wolf_walk path_look = esc_lager_wolf_look [combat_ignore] combat_ignore_cond = always [danger_condition] ignore_distance = 0 ignore_distance_corpse = 0 END story_id = 10000 ; cse_visual properties visual_name = actors\soldier\soldier_beret_1 ; cse_alife_creature_abstract properties g_team = 0 g_squad = 1 g_group = 2 health = 1 dynamic_out_restrictions = dynamic_in_restrictions = upd:health = 1 upd:timestamp = 0 upd:creature_flags = 0 upd:position = -199.870178222656,-19.8877372741699,-137.10905456543 upd:o_model = 0 upd:o_torso = 0.028013030067086,0,0.9996075630188 upd:g_team = 0 upd:g_squad = 1 upd:g_group = 2 ; cse_alife_monster_abstract properties upd:next_game_vertex_id = 65535 upd:prev_game_vertex_id = 65535 upd:distance_from_point = 0 upd:distance_to_point = 0 ; cse_alife_human_abstract properties predicate5 = 1,2,2,1,2 predicate4 = 0,1,1,1 ; cse_ph_skeleton properties upd:start_dialog = ; se_stalker properties ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Даже представления не имею что прописать что бы он не уходил в мир иной. Цитата Ссылка на комментарий
Guidesun 0 Опубликовано 15 Сентября 2018 Поделиться Опубликовано 15 Сентября 2018 Продолжения поста. Ошибочка, НПС не исчезает а бежит за мной будто старается попасть в мой радиус действия А-Лайф. У меня слов нет. Что делать ума не приложу, что ему прописать в логике что бы он тупо стоял. Думал patch_walk и patch_look будет достаточно. Цитата Ссылка на комментарий
AndreySol 206 Опубликовано 15 Сентября 2018 Поделиться Опубликовано 15 Сентября 2018 @Guidesun Использовать персональную логику для НПСов в ТЧ - дело мутное и не всегда правильное. Проблема в том, что при переходе в офф-лайн собственная логика НПСа перестает работать, и какой нить гулаг может запросто затянуть к себе твоего моба. Лучше всего, определять всех НПСов на работы в гулаги - будет все стабильно и значительно меньше всяких непоняток... Цитата Ссылка на комментарий
Houdini_one 49 Опубликовано 15 Сентября 2018 Поделиться Опубликовано 15 Сентября 2018 2 часа назад, AndreySol сказал: затянуть Простое [smart_terrains] none = true Решает эту проблему. Цитата ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
AndreySol 206 Опубликовано 16 Сентября 2018 Поделиться Опубликовано 16 Сентября 2018 1 час назад, Houdini_one сказал: none = true Вот мне не надо за это рассказывать - лучше бы @Guidesun рассказал... Цитата Ссылка на комментарий
Змея 240 Опубликовано 21 Сентября 2018 Поделиться Опубликовано 21 Сентября 2018 (изменено) Есть глобальные моды - в которых вообще не используется система гулагов. И в них никогда не было таких проблем. Конечно в логике у них было прописано: [smart_terrains]none = true Но как тут раньше говорили гуру моддинга - это вроде-как и не работает в вынесенной из олл-спавн логике. А логика в этих модах вынесена. Да и большинство персонажей скриптом спавнились... Изменено 21 Сентября 2018 пользователем Змея Цитата Ссылка на комментарий
dPlayer 366 Опубликовано 21 Сентября 2018 Поделиться Опубликовано 21 Сентября 2018 Как перевести в офф а потом обратно в онлайн гулаг? Скажем ферма в ТД с продавцами гауссовки. Условия вида online = "{+info1}" работает, а вот online = "{-info1}" offline = "{+info1}" offline = "{-info1}" почему-то никакого действия не оказывают. Выглядит так: -- простые сталкеры внутри фермы вокруг костра for i = 1, 5 do t = { section = "logic@" .. gname .. "_kamp", idle = 0, prior = 1, state = {0}, squad = squad, group = groups[1], online = "{+info1}", --строка с условием in_rest = "", out_rest = "" } table.insert(sj, t) end Цитата Ссылка на комментарий
Змея 240 Опубликовано 21 Сентября 2018 Поделиться Опубликовано 21 Сентября 2018 А вот так пробовал? online = "{+info1}",offline Цитата Ссылка на комментарий
dsh 3 537 Опубликовано 21 Сентября 2018 Поделиться Опубликовано 21 Сентября 2018 (изменено) @dPlayer, возможно, что такое там не предусмотрено. Скрипта под руками нет, не могу сказать точно. Попробуй сделать два разных состояния у лагеря, одно для онлайн и другое - для оффлайн, и их переключай. Изменено 21 Сентября 2018 пользователем dsh Цитата dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
AndreySol 206 Опубликовано 22 Сентября 2018 Поделиться Опубликовано 22 Сентября 2018 (изменено) В 21.09.2018 в 09:19, dPlayer сказал: offline = "{+info1}" offline - нет такого параметра для логики, и видимо вариант переключения состояний - единственное решение Изменено 22 Сентября 2018 пользователем AndreySol Цитата Ссылка на комментарий
Змея 240 Опубликовано 22 Сентября 2018 Поделиться Опубликовано 22 Сентября 2018 Кстати - можно их просто всех убить... Цитата Ссылка на комментарий
dPlayer 366 Опубликовано 22 Сентября 2018 Поделиться Опубликовано 22 Сентября 2018 @AndreySol, точно. Эх, думал можно всё по быстрому сделать) @Змея, прям из логики гулага? Цитата Ссылка на комментарий
Змея 240 Опубликовано 22 Сентября 2018 Поделиться Опубликовано 22 Сентября 2018 @dPlayer, может и из логики...если можно. Чисто по игре...непонятно, что ты хочешь сделать с этими неписями. Вот поподробней разъяснил бы свою похотелку, может и советчики нашлись-бы. А так...по оригиналу...достаточно ГГ всех их убить вроде)) Цитата Ссылка на комментарий
AndreySol 206 Опубликовано 23 Сентября 2018 Поделиться Опубликовано 23 Сентября 2018 20 часов назад, dPlayer сказал: Эх, думал можно всё по быстрому сделать) А что тут долгого - добавить в скрипт гулага пару строк с переключением состояний ? Цитата Ссылка на комментарий
dPlayer 366 Опубликовано 23 Сентября 2018 Поделиться Опубликовано 23 Сентября 2018 @Змея, увести их в онлайн, разыграть сценку а потом обратно в онлайн)) @AndreySol, покажи пжлста на примере этого гулага? Скрытый текст -------------------------------------------------------------------------- -- Robbers (грабители на ферме) -------------------------------------------------------------------------- -- Predicates ------------------------------------------------------------ -- Jobs ------------------------------------------------------------------ gulags.val_rob.job = function(sj, gname, type, squad, groups) local i = 0 local ltx = "[meet@ignore_abuse]\n" .. "use = false\n" .. "use_wpn = false\n" .. "abuse = false\n" .. "[meet@" .. gname .. "_warn]\n" .. --"meet_state = 20| {+val_rob_buying} threat, guard@ {+val_rob_buying} val_rob_guard_jeer\n" .. --, weather "meet_state = 1| threat@threat_back\n" .. --, weather "meet_state_wpn = 25| threat@{+val_rob_buying} val_rob_guard_jeer, threat_back\n" .. "victim = 20| actor\n" .. "victim_wpn = 25| actor\n" .. "use = true\n" .. "use_wpn = false\n" .. "zone = val_rob_warn_zone| {+val_rob_buying} threat@ {+val_rob_buying} val_rob_guard_jeer | val_rob_kill_zone| {+val_rob_buying} true \n" .. "[kamp@" .. gname .. "_kamp]\n" .. "center_point = kamp\n" .. "meet = meet@" .. gname .. "_warn\n" -- главный грабителей, с которым разговариваем t = { section = "logic@" .. gname .. "_leader", idle = 0, prior = 3, state = {0}, squad = squad, group = groups[1], in_rest = "", out_rest = "" } table.insert(sj, t) ltx = ltx.."#include \"scripts\\val_rob_leader.ltx\"\n" -- охранники на входах в здание фермы for i = 1, 2 do t = { section = "logic@" .. gname .. "_guard" .. i, idle = 0, prior = 2, state = {0}, squad = squad, group = groups[1], in_rest = "", out_rest = "" } table.insert(sj, t) ltx = ltx.."[logic@" .. gname .. "_guard" .. i .. "]\n" .. "active = walker@" .. gname .. "_guard" .. i .. "\n" .. "[walker@" .. gname .. "_guard" .. i .. "]\n" .. "path_walk = guard" .. i .. "_walk\n" .. "path_look = guard" .. i .. "_look\n" .. "meet = meet@" .. gname .. "_warn\n" end -- простые сталкеры внутри фермы вокруг костра for i = 1, 5 do t = { section = "logic@" .. gname .. "_kamp", idle = 0, prior = 1, state = {0}, squad = squad, group = groups[1], online = "{-find_dynamite}", in_rest = "", out_rest = "" } table.insert(sj, t) end ltx = ltx.."[logic@" .. gname .. "_kamp]\n" .. "active = kamp@" .. gname .. "_kamp\n" gulags.val_rob.ltx = ltx end Цитата Ссылка на комментарий
AndreySol 206 Опубликовано 23 Сентября 2018 Поделиться Опубликовано 23 Сентября 2018 11 минут назад, dPlayer сказал: покажи пжлста на примере этого гулага? Такие портянки под спойлер надо прятать, а то модератор ругаться будет. Ты привел только загрузки работ, а переключение состояний гулагов происходит в ф-ции Скрытый текст function load_states(gname, type) if type == "val_rob" then return function(gulag) local actor = db.actor if not actor then return gulag.state end if has_alife_info("твоя_инфо_порция") then return 1 -- состояние 1, пусть это будет офф-лайн else return 0 -- состояние 0 end end end далее, соответственно в описании работ делаешь два набора работ для всех НПСов, типа так: Скрытый текст -- простые сталкеры внутри фермы вокруг костра for i = 1, 5 do t = { section = "logic@" .. gname .. "_kamp", idle = 0, prior = 1, state = {0}, --<-- тут они в он-лайн squad = squad, group = groups[1], online = true, in_rest = "", out_rest = "" } table.insert(sj, t) end -- простые сталкеры внутри фермы вокруг костра for i = 1, 5 do t = { section = "logic@" .. gname .. "_kamp", idle = 0, prior = 1, state = {1},--<-- тут они в офф-лайн squad = squad, group = groups[1], online = false, in_rest = "", out_rest = "" } table.insert(sj, t) end И читай СталкерВики, там много полезного. 1 Цитата Ссылка на комментарий
nego 35 Опубликовано 23 Сентября 2018 Поделиться Опубликовано 23 Сентября 2018 Здравствуйте ВАМ. Добавил трупаку вещи через ал.спавн, по принципу солдата на Янтаре (у которого спекопскомбез), но у меня ни чего не появилось. В чем проблема? Цитата Одна голова хорошо, а две лучше. А вот три, это уже змей Горыныч. Ссылка на комментарий
Wlad777 23 Опубликовано 23 Сентября 2018 Поделиться Опубликовано 23 Сентября 2018 @nego, Новую игру начал то? Цитата --------------------------------- www.amk-zone.de Ссылка на комментарий
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.