Это популярное сообщение. Dennis_Chikin 3 665 Опубликовано 16 Мая 2014 Это популярное сообщение. Поделиться Опубликовано 16 Мая 2014 Ковыряемся в файлах ТЧ Прежде чем писать в тему - внимательно читаем первый пост, и пользуемся поиском. Возможно, ответ на Ваш вопрос уже есть. Касательно телепатии: если Вы передаете Ваши файлы телепатическим путем - ответы будут передаваться тоже телепатически. Если Вы предлагаете угадать, отчего у Вас в подвале происходит странный стук - ответ будет передан стуком. 4 8 6 12 Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-847221
SLIVA 0 Опубликовано 21 Декабря 2010 Поделиться Опубликовано 21 Декабря 2010 (изменено) Как не странно делал тоже самое,а вылет вот вылет: Expression : !m_DefaultCharacters.empty() Function : CSE_ALifeTraderAbstract::specific_character File : D:\xray-svn\xr_3da\xrGame\xrServer_Objects_ALife_Monsters.cpp Line : 332 Description : no default specific character set for class Arguments : marsh_provodnik Изменено 21 Декабря 2010 пользователем SLIVA Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535253
ColR_iT 171 Опубликовано 21 Декабря 2010 Поделиться Опубликовано 21 Декабря 2010 (изменено) SLIVA, по всей видимости у тебя игра не может найти соответствующий класс marsh_provodnik. И у меня вопрос к публике. А возможно ли отследить с какой локации на какую переходит ГГ. На какой локации ГГ находиться сейчас - это я могу узнать, а вот на какой был до этой? Изменено 21 Декабря 2010 пользователем Куфзук Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535286
Полтергейст 38 Опубликовано 21 Декабря 2010 Поделиться Опубликовано 21 Декабря 2010 (изменено) А возможно ли отследить с какой локации на какую переходит ГГ Сделать в биндере игрока поле actor_on_level и в net_spawn поставить сравнение имени текущего уровня с именем уровня, записанного в этом поле. Если значения отличаются - записать это в какой-нибудь параметр. Может можно было бы сделать это через биндер для level_changer, но как именно пока не знаю. Изменено 21 Декабря 2010 пользователем Полтергейст Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535470
TRAMP14 1 Опубликовано 22 Декабря 2010 Поделиться Опубликовано 22 Декабря 2010 Подскажите пожалуйста как омжно заспавнить телевизор. Радио получается а телевизор я не знаю как в спавне прописывать Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535535
ColR_iT 171 Опубликовано 22 Декабря 2010 Поделиться Опубликовано 22 Декабря 2010 (изменено) TRAMP14, вот пример телевизора в баре: [3455] ; cse_abstract properties section_name = lights_hanging_lamp name = bar_tv_01 position = 130.294647216797,-2.38456416130066,18.8145923614502 direction = 0,3.06333684921265,0 s_flags = 0x23 ; cse_alife_object properties game_vertex_id = 1168 distance = 0 level_vertex_id = 76465 object_flags = 0xfffffffa ; cse_visual properties visual_name = physics\decor\tv_1 ; cse_ph_skeleton properties skeleton_name = ; cse_alife_object_hanging_lamp properties main_brightness = 1 main_color_animator = tv light 1 main_range = 4 light_flags = 0xb57c startup_animation = lamp_fixed_bones = link health = 100 main_virtual_size = 0.100000001490116 ambient_radius = 2 ambient_power = 0.200000002980232 main_bone = bone_lamp main_cone_angle = 2.09439516067505 glow_texture = glow\glow_orange glow_radius = 1 ambient_bone = bone_lamp Пропиши ему другое имя, поставь нужные координаты и вуаля! Полтергейст, а можно поподробнее, потому как я ни чего похожего actor_on_level не нашел. Где именно сохраняется имя предыдущего уровня? Изменено 22 Декабря 2010 пользователем Куфзук Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535545
TRAMP14 1 Опубликовано 22 Декабря 2010 Поделиться Опубликовано 22 Декабря 2010 Куфузук skeleton_name = это менять? Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535606
ColR_iT 171 Опубликовано 22 Декабря 2010 Поделиться Опубликовано 22 Декабря 2010 (изменено) TRAMP14, вот это: name = bar_tv_01 ;свое имя напиши, например TRAMP14_telek. position = 130.294647216797,-2.38456416130066,18.8145923614502 game_vertex_id = 1168 level_vertex_id = 76465 ;Поставь соответствующие координаты. Изменено 22 Декабря 2010 пользователем Куфзук Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535652
Stalk15 27 Опубликовано 22 Декабря 2010 Поделиться Опубликовано 22 Декабря 2010 (изменено) Куфзук Ранее посещенный ГГ уровень можно определить так: При приближении к Lевел_чанджеру определяем текущий уровень и сохраняем с помощью pstor_store. Потом, после перехода на другую локацию, можно прочитать сохраненное имя уровня. Вот и все. Изменено 22 Декабря 2010 пользователем Stalk15 Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535681
ColR_iT 171 Опубликовано 22 Декабря 2010 Поделиться Опубликовано 22 Декабря 2010 Stalk15, хорошо, а как мне тогда определить, что я в level_changere или пытаюся в него зайти? Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535691
Stalk15 27 Опубликовано 22 Декабря 2010 Поделиться Опубликовано 22 Декабря 2010 Куфзук Ну например так: for k, v in pairs (db.storage) do local object = level.object_by_id(k) if object:section(или section_name) == "level_changer" then Думаю, дальше сможешь проверить дистанцию до object. Только проверяй дистанцию на 1 метр или на 2. А то при переходе на другую локу ГГ вель будет не подалеку от левел_чанджера. Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535720
Charsi 441 Опубликовано 22 Декабря 2010 Поделиться Опубликовано 22 Декабря 2010 Куфзук, левелченджер сам определит, что ГГ внутри него, сохранит игру и загрузит ГГ на другой локации. Во время сохранения выполнится функция actor_binder:save(packet), в ней и нужно сохранять имя текущей локации - level.name(). При загрузке в actor_binder:net_spawn(data) сравнивай имя текущего уровня и того, что сохраняли. Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535737
TRAMP14 1 Опубликовано 22 Декабря 2010 Поделиться Опубликовано 22 Декабря 2010 А телевизор будет стандарт вертеть? или свои можно? Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535743
ColR_iT 171 Опубликовано 22 Декабря 2010 Поделиться Опубликовано 22 Декабря 2010 Да будет то, что обычно. Чтобы сделать свое, нужно в самой модельке прописать нужный путь к seq файлу. Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535745
TRAMP14 1 Опубликовано 22 Декабря 2010 Поделиться Опубликовано 22 Декабря 2010 А можно какнить удалить все телевизоры чтобы толькоиз спавна а не конфиги не скрипты редать не пришлось? Строгое предупреждение от администратора n6260 1. Пишите грамотно. Сообщение от администратора n6260 2. Распаковываете алл_спавн, удаляете секции, компилируете обратно. Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535746
Полтергейст 38 Опубликовано 22 Декабря 2010 Поделиться Опубликовано 22 Декабря 2010 (изменено) потому как я ни чего похожего actor_on_level не нашел Там этого и нет, надо самому создать поле actor_on_level и приравнять его к level.name(). Сделать, чтобы этот параметр сохранялся. Потом в net_spawn() сравнивать actor_on_level с level.name(). Выглядит это примерно так: function actor_binder:__init (obj) super(obj) ... actor_on_level = nil level_changing_from = nil level_changing_to = nil ... end function actor_binder:net_spawn(data) ... if actor_on_level == nil then actor_on_level = level.name() else level_changing_from = actor_on_level actor_on_level = level.name() level_changing_to = actor_on_level end ... end function actor_binder:save(packet) ... packet:w_stringZ(actor_on_level) ... end function actor_binder:load(reader) ... reader:r_stringZ(actor_on_level) ... end После этого можно будет запрашивать параметры level_changing_to и level_changing_from из любого скрипта. Можно это же сделать через биндер для самого level_changer'а, но это чуть сложнее. В функциях save/load всё должно быть в той же последовательности, то есть, если сохранение параметра actor_on_level идёт после сохранения какого-то другого параметра, то и в загрузке они должны идти в таком же порядке. ------ Сегодня мне удалось перенести state_mgr.script из ЗП в ТЧ. Всё работает, кроме раненых и анимаций сидения у костра. При попытке вылечить раненого игра вылетает (ругается, что передаю nil в state_mgr.set_state. А любители погрятся у костра просто стоят как столбы. Копал xr_kamp - ничего не нашёл. Кто-нибудь знает, как правильно вызвать смену анимации при лечении раненых и в схеме xr_kamp? Изменено 22 Декабря 2010 пользователем Полтергейст Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535813
ColR_iT 171 Опубликовано 22 Декабря 2010 Поделиться Опубликовано 22 Декабря 2010 Доброй ночи! Хочу задать вопрос касающийся анимаций НПС. Где-то на форуме видел вопрос на тему как прописать нужному "чудику" нужную анимацию. Меня это зацепило и я полез в SDK глядеть на неиспользованный труд ПЫСов. Так вот собственно вопрос: а как правильно прописать новую анимацию для НПС в файлы state_lib.script и state_mgr_animation_list.script. Вот "вырезки" из этих файлов: wait_rac = {weapon = "strapped", movement = move.stand, mental = anim.free, bodystate = move.standing, animstate = "stand", animation = "raciya" } и raciya = { prop = { maxidle = 1, sumidle = 1, rnd = 100 }, into = { [0] = {"raciya_0_draw_0", {a="hand_radio"}, "raciya_0_draw_1"}, [1] = {"raciya_1_draw_0", {a="hand_radio"}, "raciya_1_draw_1"}, [2] = {"raciya_2_draw_0", {a="hand_radio"}, "raciya_2_draw_1"}, [3] = {"raciya_3_draw_0", {a="hand_radio"}, "raciya_3_draw_1"}, [4] = {"raciya_4_draw_0", {a="hand_radio"}, "raciya_4_draw_1"}, [8] = {"raciya_8_draw_0", {a="hand_radio"}, "raciya_8_draw_1"}, [9] = {"raciya_9_draw_0", {a="hand_radio"}, "raciya_9_draw_1"}, [10]= {"raciya_10_draw_0",{a="hand_radio"}, "raciya_10_draw_1"} }, out = { [0] = {"raciya_0_hide_0", {d="hand_radio"}, "raciya_0_hide_1"}, [1] = {"raciya_1_hide_0", {d="hand_radio"}, "raciya_1_hide_1"}, [2] = {"raciya_2_hide_0", {d="hand_radio"}, "raciya_2_hide_1"}, [3] = {"raciya_3_hide_0", {d="hand_radio"}, "raciya_3_hide_1"}, [4] = {"raciya_4_hide_0", {d="hand_radio"}, "raciya_4_hide_1"}, [8] = {"raciya_8_hide_0", {d="hand_radio"}, "raciya_8_hide_1"}, [9] = {"raciya_9_hide_0", {d="hand_radio"}, "raciya_9_hide_1"}, [10]= {"raciya_10_hide_0",{d="hand_radio"}, "raciya_10_hide_1"} }, idle = { [0] = "raciya_0_idle_0", [1] = "raciya_1_idle_0", [2] = "raciya_2_idle_0", [3] = "raciya_3_idle_0", [4] = "raciya_4_idle_0", [8] = "raciya_8_idle_0", [9] = "raciya_9_idle_0", [10]= "raciya_10_idle_0" }, rnd = { [0] = {"raciya_0_talk_0"}, [1] = {"raciya_1_talk_0"}, [2] = {"raciya_2_talk_0"}, [3] = {"raciya_3_talk_0"}, [4] = {"raciya_4_talk_0"}, [8] = {"raciya_8_talk_0"}, [9] = {"raciya_9_talk_0"}, [10]= {"raciya_10_talk_0"} } } Как видно, в файле state_mgr_animation_list.script дело ведется непосредственно с файлами анимации (stalker_animation.ogf, bandits_animation.omf и тому подобные), а вот в файле state_lib.script задаются параметры непосредственно самой анимации, так сказать - готовой. Так вот, кто нибудь знает назначение параметров этих файлов и какие значения они могут принимать? Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-535984
Полтергейст 38 Опубликовано 23 Декабря 2010 Поделиться Опубликовано 23 Декабря 2010 Вот "вырезки" из этих файлов: Подставьте перед элементами таблицы "state_mgr_". Для первого элемента получится state_mgr_movement. И так далее. Короче говоря, эти параметры делаются для скриптов, имена которых можно узнать этой подстановкой. Вот у меня почему-то на новом state_mgr'е не хочет работать анимация "sit", причина непонятна. Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-536110
gruber 2 481 Опубликовано 23 Декабря 2010 Поделиться Опубликовано 23 Декабря 2010 Куфзук, Лучше всего эта тема освещена на с-портале(там соответствующая тема есть) И еще набери в поиске"возвращение вырезаных анимаций"-самый подробный тутор из попадавшихся мне Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-536143
ColR_iT 171 Опубликовано 23 Декабря 2010 Поделиться Опубликовано 23 Декабря 2010 Полтергейст, не совсем понял! Меня интересуют параметры, например в: wait_rac = { weapon = "strapped", movement = move.stand, mental = anim.free, bodystate = move.standing, animstate = "stand", animation = "raciya" } и raciya = { prop = { maxidle = 1, sumidle = 1, rnd = 100 }, into = { [0] = {"raciya_0_draw_0", {a="hand_radio"}, "raciya_0_draw_1"}, [1] = {"raciya_1_draw_0", {a="hand_radio"}, "raciya_1_draw_1"}, [2] = {"raciya_2_draw_0", {a="hand_radio"}, "raciya_2_draw_1"}, [3] = {"raciya_3_draw_0", {a="hand_radio"}, "raciya_3_draw_1"}, [4] = {"raciya_4_draw_0", {a="hand_radio"}, "raciya_4_draw_1"}, [8] = {"raciya_8_draw_0", {a="hand_radio"}, "raciya_8_draw_1"}, [9] = {"raciya_9_draw_0", {a="hand_radio"}, "raciya_9_draw_1"}, [10]= {"raciya_10_draw_0",{a="hand_radio"}, "raciya_10_draw_1"} }, out = { [0] = {"raciya_0_hide_0", {d="hand_radio"}, "raciya_0_hide_1"}, [1] = {"raciya_1_hide_0", {d="hand_radio"}, "raciya_1_hide_1"}, [2] = {"raciya_2_hide_0", {d="hand_radio"}, "raciya_2_hide_1"}, [3] = {"raciya_3_hide_0", {d="hand_radio"}, "raciya_3_hide_1"}, [4] = {"raciya_4_hide_0", {d="hand_radio"}, "raciya_4_hide_1"}, [8] = {"raciya_8_hide_0", {d="hand_radio"}, "raciya_8_hide_1"}, [9] = {"raciya_9_hide_0", {d="hand_radio"}, "raciya_9_hide_1"}, [10]= {"raciya_10_hide_0",{d="hand_radio"}, "raciya_10_hide_1"} }, idle = { [0] = "raciya_0_idle_0", [1] = "raciya_1_idle_0", [2] = "raciya_2_idle_0", [3] = "raciya_3_idle_0", [4] = "raciya_4_idle_0", [8] = "raciya_8_idle_0", [9] = "raciya_9_idle_0", [10]= "raciya_10_idle_0" }, rnd = { [0] = {"raciya_0_talk_0"}, [1] = {"raciya_1_talk_0"}, [2] = {"raciya_2_talk_0"}, [3] = {"raciya_3_talk_0"}, [4] = {"raciya_4_talk_0"}, [8] = {"raciya_8_talk_0"}, [9] = {"raciya_9_talk_0"}, [10]= {"raciya_10_talk_0"} } } какие параметры они могут принимать? По совету gruber. На сталкер-портале был, ничего существенного не нашел. Были ссылки, но датированные прошлогодним летом, соответственно - не рабочие! Да и вообще почему-то тема больше похожа на "моделирование", а не "анимирование". Может у кого есть тутор по внедрению новых "старых" анимаций. З.Ы. прошу прощение за каламбур. Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-536278
amik 256 Опубликовано 23 Декабря 2010 Поделиться Опубликовано 23 Декабря 2010 Куфзук У эрлика или у сингапура22 в журнале смотри. Не помню у кого, но там есть. Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/283/#findComment-536306
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти