dgonny 0 Опубликовано 8 Декабря 2015 (изменено) Всем добрый вечер. Возникла большая проблема, с созданием smart_terrain в ТЧ 1.0004. Делал всё так, как описано в туторах. Ставлю смарт на Кордоне, на АТП, его логика: [smart_terrain] type = esc_killer capacity = 7 Дальше ставлю нпс. Группировка наёмники. Их логика: [smart_terrains] esc_killer = true Затем в файле gulag_escape.script прописываю работу: if type == "esc_killer" thent = { section = "logic@esc_killer_patrol1",idle = 0,prior = 8,state = {0},online = true,in_rest = "", out_rest = "esc_killer_out_rest",}table.insert(sj, t)t = { section = "logic@esc_killer_patrol2",idle = 0,prior = 8,state = {0},online = true,in_rest = "", out_rest = "esc_killer_out_rest",}table.insert(sj, t)t = { section = "logic@esc_killer_patrol3",idle = 0,prior = 8,state = {0},online = true,in_rest = "", out_rest = "esc_killer_out_rest",}table.insert(sj, t)t = { section = "logic@esc_killer_patrol4",idle = 0,prior = 8,state = {0},online = true,in_rest = "", out_rest = "esc_killer_out_rest",}table.insert(sj, t)t = { section = "logic@esc_killer_patrol5",idle = 0,prior = 8,state = {0},online = true,in_rest = "", out_rest = "esc_killer_out_rest",}table.insert(sj, t)t = { section = "logic@esc_killer_patrol0",idle = 0,prior = 8,state = {0},online = true,in_rest = "", out_rest = "esc_killer_out_rest",}table.insert(sj, t)t = { section = "logic@esc_killer_leader_ward",idle = 0,prior = 8,state = {0},online = true,in_rest = "", out_rest = "esc_killer_out_rest"}table.insert(sj, t)end Потом ещё одна функция, в этом же файле: if type == "esc_killer" then return function(gulag) return 0 end end И в конце ещё: if gulag_type == "esc_killer" then return npc_community == "killer" end Потом логика в файле gulag_escape.ltx (путь gamedata\config\misc\gulag_escape.ltx): [logic@esc_killer_patrol1] active = patrol@esc_killer1 [patrol@esc_killer1] path_walk = 01_walk ;-------------------------------------------------- [logic@esc_killer_patrol2] active = patrol@esc_killer2 [patrol@esc_killer2] path_walk = 02_walk ;-------------------------------------------------- [logic@esc_killer_patrol3] active = patrol@esc_killer3 [patrol@esc_killer3] path_walk = 03_walk ;-------------------------------------------------- [logic@esc_killer_patrol4] active = patrol@esc_killer4 [patrol@esc_killer4] path_walk = 04_walk ;-------------------------------------------------- [logic@esc_killer_patrol5] active = walker@esc_killer5 [walker@esc_killer5] path_walk = 05_walk ;-------------------------------------------------- [logic@esc_killer_patrol0] active = patrol@esc_killer0 [patrol@esc_killer0] path_walk = 00_walk ;-------------------------------------------------- [logic@esc_killer_leader_ward] active = walker@esc_killer_leader_ward [walker@esc_killer_leader_ward] path_walk = mirovoy_walk path_look = mirovoy_look Ну и соответственно ставлю точки путей. Их имена, как сказано в туторе, с префиксом esc_killer. И последнее, в smart_terrain_presets.ltx в поле [l01_escape] дописываю killer = novice, experienced, veteran, master Но нпс просто разходятся кто куда. Кто может объяснить, может созданный смарт нужно ещё регистрировать где-то? В чем проблема? Изменено 8 Декабря 2015 пользователем dgonny Поделиться этим сообщением Ссылка на сообщение
dgonny 0 Опубликовано 9 Декабря 2015 К моему посту о смарте. --> http://www.amk-team.ru/forum/index.php?showtopic=5525&p=979489 При том, что в самом смарте, параметр capacity = задаёт кол-во людей, принадлежащих к смарту. То есть кол-во должно быть либо меньше, либо равно, но не больше. После всех проверок смарта, я просто изменил число на большее, но игра всё равно спокойно загрузилась. Из этого можно сделать вывод, что смарт просто мёртв и ни на что не реагирует... Наконец я разобрался в чем проблема, но пока не смог найти решение. После того, как я добавляю свою функцию в gulag_escape.script, на Кордоне перестают работать вообще все смарты... Поделиться этим сообщением Ссылка на сообщение
dgonny 0 Опубликовано 15 Декабря 2015 Всем привет, возник такой вопрос, платформа ТЧ 1.0004. При убийстве всех бандитов на АТП, задание выполняется, то есть где-то выдаётся инфопоршень или выполняется функция. Инфопоршни можно выдать, прописав в логику неписям секцию [death], а потом, в bind_stalker на апдэйт повесить функцию, где при определённом наборе инфопоршней, выдаётся основной и задание засчитывается. Но разрабы делали другим путём, более оптимальным, кто подскажет, как они это сделали, к примеру, на АТП? Поделиться этим сообщением Ссылка на сообщение
dgonny 0 Опубликовано 6 Января 2016 Добрый день всем. Платформа ТЧ 1.0004. При загрузке сохранений, как и через меню, как и через консоль, и через F7, происходит вылет: Expression : child Function : xrServer::Perform_destroy File : E:\stalker\patch_1_0004\xr_3da\xrGame\xrServer_sls_clear.cpp Line : 22 Description : child registered but not found [1394] Так же, когда выхожу из игры (или же нажимаю q или же просто - выйти в windows) она при выходе вылетает, с этим же логом. Слышал что ошибка из-за не правильной логики в custom_data, но при игре всё работает, и происходит всё только на одной локации - свалка. Я переделал её полностью (имею ввиду all spawn) все смарты и нпс новые. Можно ли узнать, хотя бы из-за какого спавн объекта происходит вылет? Поделиться этим сообщением Ссылка на сообщение
dgonny 0 Опубликовано 8 Января 2016 Всем привет. Платформа ТЧ 1.0004. Вопрос возник, как выдать инфопоршень, при уничтожении всех нпс из определённого гулака? Поделиться этим сообщением Ссылка на сообщение