Сталкер Лом 356 Опубликовано 3 Апреля 2015 Поделиться Опубликовано 3 Апреля 2015 Капитан Кузьмичёв, В Notepad++ есть хорошая функция "искать в файлах" [Кэп как бы намекает ]. Configs\misc\bridge.ltx скопируй к себе и зарегистрируй его в system.ltx, вписав в начало #include "misc\bridge.ltx" по аналогии с уже имеющимися регами. 1 Работы на Artstation - https://www.artstation.com/artist/stalker_lom Ссылка на комментарий
sneik 341 Опубликовано 3 Апреля 2015 Поделиться Опубликовано 3 Апреля 2015 @Капитан Кузьмичёв, meshes\dynamics\scene_objects\red_forest тут модели, кстати они есть и в ЗП. По названиям моделей ищи секции в alife_l05_red_forest.ltx. 1 Ссылка на комментарий
Grif_on 9 Опубликовано 3 Апреля 2015 Поделиться Опубликовано 3 Апреля 2015 (изменено) Опишу как я добавил мост в Лиманск из ЧН в ЗП. (все манипуляции проводил на стимовской лицензии ЗП!) Понадобятся файлы из чн: configs\misc\bridge.ltx - можно сразу скопировать по аналогичному пути в ЗП (секцию agru_door, если не иползуется, можно удалить); далее понадобятся фйлы bind_red_forest_bridge.script, db.script и xr_effects.script из папки scripts. Теперь переходим в ЗП. Копируем bind_red_forest_bridge.script в папку gamedata\scripts, Далее правим аналогичные ЧН-овским скрипты ЗП: в db.script переносим аналогично из ЧН-овского: bridge_by_name = {}и вниз пишем функцииfunction add_bridge( bridge, binder )printf("adding bridge %s",bridge:name())bridge_by_name[bridge:name()] = binderadd_obj( bridge )endfunction del_bridge( bridge )bridge_by_name[bridge:name()] = nildel_obj( bridge )end Теперь правим xr_effects.script: -- Функции для управления мостом.function bridge_down()db.bridge_by_name["red_bridge"]:anim_forward()endfunction bridge_up()db.bridge_by_name["red_bridge"]:anim_backward()endfunction bridge_stop()db.bridge_by_name["red_bridge"]:anim_stop()endfunction anim_obj_down(actor, npc, p)if p[1] ~= nil thendb.anim_obj_by_name[p[1]]:anim_forward()endendfunction anim_obj_up(actor, npc, p)if p[1] ~= nil thendb.anim_obj_by_name[p[1]]:anim_backward()endendfunction anim_obj_stop(actor, npc, p)if p[1] ~= nil thendb.anim_obj_by_name[p[1]]:anim_stop()endend Спавним сам мост: ; cse_abstract propertiessection_name = red_forest_bridgename = red_bridgeposition = -144.884460449219,10.0784387588501,-270.569519042969direction = 0,0,0; cse_alife_object propertiesgame_vertex_id = ваш вертексdistance = 0level_vertex_id = ваш левел вертексobject_flags = 0xffffff3acustom_data = <[collide]ignore_static[animated_object]END; cse_visual propertiesvisual_name = dynamics\scene_objects\red_forest\red_forest_bridge_01_dynamic; cse_ph_skeleton propertiesskeleton_name = bridge_downskeleton_flags = 1; cse_alife_object_physic propertiesphysic_type = 0x3mass = 10 ну и прописываем в acdc (если нету) red_forest_bridge => 'cse_alife_object_physic', чтоб запаковать спавн. Запускаем игру и видим наш мост: http://pixic.ru/i/x000U7Z5f7I6C4Y5.jpg Для управления мостом используем для примера логику из ЧН (это пока лично не проверял, т.к. ещё руки недошли): [logic]active = sr_idle[sr_idle]on_info = sr_idle@1 %=bridge_up()% ; =turn_off(513)%[sr_idle@1]on_info = {+red_bridge_bridge_move -red_bridge_down_done} sr_idle@2 %=bridge_down()% ; =turn_on(513)%[sr_idle@2]on_info = {-red_bridge_bridge_move -red_bridge_down_done} sr_idle@1 %=bridge_stop()% ; =turn_off(513)% Вроде ничего не упустил. Извините, что пишу не по теме, но тут человек спрашивает, я его понимаю, т.к сам довольно долго бился с этим мостом, да и может ещё кому пригодится мой пост. Изменено 3 Апреля 2015 пользователем Grif_on 1 Ссылка на комментарий
Капитан Кузьмичёв 124 Опубликовано 3 Апреля 2015 Поделиться Опубликовано 3 Апреля 2015 (изменено) ОГРОМНЕЙШЕЕ СПАСИБО!!!!! Только что бился всё с логикой этого моста, кучу фалов перелопатил. Всё прописал, как в твоём посте, и заработало!!! Мост не опускается!!!!!!!!!!! Снова огромное тебе спасибо!!! Изменено 3 Апреля 2015 пользователем Капитан Кузьмичёв Ссылка на комментарий
Grif_on 9 Опубликовано 3 Апреля 2015 Поделиться Опубликовано 3 Апреля 2015 (изменено) Не за что, рад, что помог . Забыл указать зарегистрировать bridge.ltx в system.ltx - #include "misc\bridge.ltx". Сразу не посмотрел на предыдущей странице, что @Сталкер Лом то же самое подсказал, но всё же... Изменено 3 Апреля 2015 пользователем Grif_on 1 Ссылка на комментарий
Капитан Кузьмичёв 124 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 А как добавить новые загрузочные скриншоты? Добавил новые локации, а гляжу при загрузке на синюю картинку какую-то. Ссылка на комментарий
Сталкер Лом 356 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 Капитан Кузьмичёв, в папку textures\intro кидай файлы с именем intro_<Имя_локации>_<номер>. Например, Intro_escape_1. Если есть СДК, то там в папке sources есть исходники для создания интро-текстур - рамка с побитым стеклом. 1 Работы на Artstation - https://www.artstation.com/artist/stalker_lom Ссылка на комментарий
monk 2 847 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 (изменено) Добавил новые локации, а гляжу при загрузке на синюю картинку какую-то В консоли глянь, что красным цветом написано. Добавь экран с таким названием в папку intro. Изменено 6 Апреля 2015 пользователем monk 1 Ссылка на комментарий
Капитан Кузьмичёв 124 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 Спасибо! Ещё вопрос - как добавить карту локации новой на общую карту в КПК? Ссылка на комментарий
UnLoaded 313 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 ак добавить карту локации новой на общую карту в КПК? А вот это уже несерьезно - в тему "Уроки по модострою" совсем лень заглянуть ? 2 Ссылка на комментарий
Grif_on 9 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 Доброго времени суток! Подключил кордон к ЗП, заспавнил сквад сталкеров, но хочу, чтоб они днём стояли у Ж/Д моста, а ночью уходили в лагерь. Прописал им таргет смарт так: target_smart = {=is_day} esc_smart_terrain_6_8, esc_smart_terrain_5_7, но почему-то сквад не идёт на указанный смарт (и не возвращается на прежний), а прётся к переходу на болота. Подскажите, в чём может быть проблема? Ссылка на комментарий
UnLoaded 313 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 Подскажите, в чём может быть проблема? Опять-же, в отсутствии Кашпировских! Ну вот сам, поставь себя на место тех, кто якобы должен тебе помочь: ты пишешь, что подключил новую локу к ЗП. Вот откуда нам знать, что там у тебя за esc_smart_terrain_6_8 и esc_smart_terrain_5_7 ? Ты бы хоть конфиги этих смартов приложил(под спойлер)! Ссылка на комментарий
Grif_on 9 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 @UnLoaded, делал так: [smart_terrain] squad_id = 1max_population = 1 [smart_terrain]squad_id = 2max_population = 1 [start_position_escape]esc_smart_terrain_5_7_stalker_1_squad = esc_smart_terrain_5_7 [esc_smart_terrain_5_7_stalker_1_squad]:default_squadsim_avail = true [esc_smart_terrain_5_7_stalker_1_squad]:online_offline_groupfaction = stalkernpc = sim_default_stalker_2, sim_default_stalker_1, sim_default_stalker_1, sim_default_stalker_1target_smart = {=is_day} esc_smart_terrain_6_8, esc_smart_terrain_5_7 Ссылка на комментарий
Clayman 104 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 @Grif_on, локацию нужно еще в скриптах прописывать и смарты в simulation_objects_props. Ссылка на комментарий
Grif_on 9 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 @Clayman, локацию зарегистрировал в sim_board.script, smart_terrain.script, surge_manager.script. Сматры в simulation_objects_props тоже прописаны так: [esc_smart_terrain_5_7]:default_basesurge = 1sim_avail = true [esc_smart_terrain_6_8]:defaultsim_avail = true Заодно смарты прописал и в game_graphs.ltx Ссылка на комментарий
Clayman 104 Опубликовано 7 Апреля 2015 Поделиться Опубликовано 7 Апреля 2015 (изменено) @Grif_on, тогда не знаю, у меня такая конструкция с условием работает без проблем. Нужно все проверять с малого, пропиши по отдельности скваду target_smart = esc_smart_terrain_6_8, посмотри, пойдут ли они туда, потом другой смарт. Все должно работать, где-то ты накосячил. А в смартах есть ссылки на конфиг-файлы? Сами конфиг файлы для смартов есть с разными ID сквадов? Еще попробуй изменить: [esc_smart_terrain_6_8]:default territory = 1 sim_avail = true Хотя этот параметр важен для сим-сквадов. Изменено 7 Апреля 2015 пользователем Clayman 1 Ссылка на комментарий
Grif_on 9 Опубликовано 7 Апреля 2015 Поделиться Опубликовано 7 Апреля 2015 (изменено) @Clayman, для пробы заспавнил сквад на Затоне у портовых кранов, а на ночь ему поставил смарт на "Шевченко", и сквад ночью без проблем побрёл на Шевченко. Значит, похоже, косяк нужно искать где-то на поключенной локации. Ничего понять не могу (я всё разбраюсь насчёт target_smart = {=is_day} esc_smart_terrain_6_8, esc_smart_terrain_5_7) Заспавнил ГГ на блокпосту военных, после чего пошёл на смарт под Ж/Д мостом (esc_smart_terrain_6_8) - сквад на месте, где надо. Вернулся на блокпост и поспал до ночи. Снова пошёл к Ж/Д мосту - сквада нет, добежал до смарта esc_smart_terrain_5_7 - там сквада тоже нет (хотя по логике ночью должен быть там). Пробегал какое-то время по всему кордону - сквада нигде нет. Вернулся на esc_smart_terrain_5_7 - сквад там. Дождался дня. Сквад выдвинулся на выход (на смарт esc_smart_terrain_6_8, подумал я, но решил за ним проследить) - сквад на esc_smart_terrain_6_8 не пошёл, а пошёл тыняться по кордону. Я решил вернуться на военный блокпост и словил вылет: Expression : !m_error_codeFunction : raii_guard::~raii_guardFile : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cppLine : 748Description : ...\stalker call of pripyat\gamedata\scripts\_g.script:479: bad argument #2 to 'format' (string expected, got nil) (Хотя до этого 2 раза там был и вылета не было). Что я всем этим хочу сказать: почему-то, когда ГГ рядом сквад на нужный смарт не идёт, но когда ГГ "отходит подальше", то через время сквад как бы телепортируется на нужный смарт. Может быть, кто подскажет в чём может быть косяк? Просто хочу разобраться... Изменено 7 Апреля 2015 пользователем Grif_on Ссылка на комментарий
Clayman 104 Опубликовано 7 Апреля 2015 Поделиться Опубликовано 7 Апреля 2015 Дело в том, что передвижение сквадов в оффлайне (когда не рядом с гг) сильно упрощено, они через некоторое время как раз и практически "телепортируются" в нужный смарт. То, что они у тебя не хотят идти в онлайне - непонятно. Они должны передвигаться по граф-поинтам, может просто там путь запутанный? По поводу вылетов - если ты оставил спавн и пути от ЧН, то вылеты будут. Там есть пути работ для смартов, в точках котрых прописаны флаги, которые не работают в ЗП. Из-за этого могут быть вылеты, когда нпс становятся на эти пути (работы). Все нужно тщательно проверять и чистить или по новой создавать свои. 1 Ссылка на комментарий
warwer 900 Опубликовано 7 Апреля 2015 Поделиться Опубликовано 7 Апреля 2015 (изменено) @Grif_on, в смарте прописана работа для определённого кол-ва нпс. Если кол-во нпс больше работы, то вылет будет с примерно 70% вероятностью. Без вылета нпс будут вставлены друг в друга или ещё какой глюк... В ЧН, при переполнении работников (их не больше 7 на смарт - не база), происходят движковые вылеты или просто глюки. Изменено 7 Апреля 2015 пользователем warwer 1 HARDWARM☢D Ссылка на комментарий
Grif_on 9 Опубликовано 8 Апреля 2015 Поделиться Опубликовано 8 Апреля 2015 @Clayman, @warwer, спасибо за ответы. Я для теста спавнил сквады, состоящие из sim_default_military_ , словил тот вылет. Сейчас прописал им "индивидуальные характеры" - вылета не стало. Буду пробовать разобраться со смартами. Если что, извиняйте за глупые вопросы, я ведь только учусь . Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти