Это популярное сообщение. Dennis_Chikin 3 664 Опубликовано 16 Мая 2014 Это популярное сообщение. Поделиться Опубликовано 16 Мая 2014 Ковыряемся в файлах ТЧ Прежде чем писать в тему - внимательно читаем первый пост, и пользуемся поиском. Возможно, ответ на Ваш вопрос уже есть. Касательно телепатии: если Вы передаете Ваши файлы телепатическим путем - ответы будут передаваться тоже телепатически. Если Вы предлагаете угадать, отчего у Вас в подвале происходит странный стук - ответ будет передан стуком. 4 8 6 12 Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-847221
Expropriator 2 119 Опубликовано 20 Августа 2016 Поделиться Опубликовано 20 Августа 2016 @Silver Raven, это же прям как ЗП ченджер от проводника, либо от рестриктора. Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033283
Kondr48 314 Опубликовано 20 Августа 2016 Поделиться Опубликовано 20 Августа 2016 (изменено) Ну телепортировать там, что-ли. Заблочить управление, убрать худ, затемнить экран построцессом. И наверх. local a = vector() -- Задаем координаты a.x = -50 a.y = -3 a.z = -488 db.actor:set_actor_position(a) db.actor:set_actor_direction(0) Kondr48, меня интересует приоритет? Это очень важно мне знать, на будущее. Что первично, родная задача или прикреплённый конфиг? Что значит "родная задача"? Всё, что можно добавить на уровне скриптов/логики работать будет, т.к движок штатно эту возможность поддерживает.. Если нет, и захотите её добавить на уровне движка, то какая строка первой у вас будет написана, такая первай и сработает. Вопрос странный конечно. Kondr48, нет, скриптовый ЛЧ я не хочу юзать. Он работает через одно известное место... Нормально он работает. Изменено 20 Августа 2016 пользователем Kondr48 Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033285
Expropriator 2 119 Опубликовано 20 Августа 2016 Поделиться Опубликовано 20 Августа 2016 @Kondr48, да я вообще туплю, и не про скриптовой спрашиваю. Я сам проверю на практике. Добавлено BFG, 20 Августа 2016 Не ФЛУДИМ !!! Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033287
BFG 7 583 Опубликовано 20 Августа 2016 Поделиться Опубликовано 20 Августа 2016 (изменено) Может, как-то изменить местоположение гг? Ну телепортировать там, что-ли. Заблочить управление, убрать худ, затемнить экран построцессом. Просто посмотри как сделан переход в оригинале ТЧ с БУМа на ЧАЭС-2, после разговора с О-Сознанием. Изменено 20 Августа 2016 пользователем BFG 2 Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033290
Silver Raven 197 Опубликовано 20 Августа 2016 Поделиться Опубликовано 20 Августа 2016 Просто посмотри как сделан переход в оригинале ТЧ с БУМа на ЧАЭС-2, после разговора с О-Сознанием. Собственно, вот эта функция, вот только где координаты места телепортации? -- Мы отказываемся вступить в осознание, нас переносит на вторую станцию function osoznanie_decline(npc, actor) db.actor:disable_info_portion("oso_init_dialog") npc:stop_talk() actor:stop_talk() xr_effects.enable_ui(db.actor, nil) local point = patrol("mon_jump_aes2_walk") local look = patrol("mon_jump_aes2_look") db.actor:set_actor_position(point:point(0)) local dir = look:point(0):sub(point:point(0)) db.actor:set_actor_direction(-dir:getH()) end Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033301
Карлан 1 050 Опубликовано 20 Августа 2016 Поделиться Опубликовано 20 Августа 2016 К ЛЧ нельзя "подкинуть" логику. В стандартном понимании нельзя. То есть функционал xr_logic, в широком же смысле LC наследуется от рестриктора, соответственно ничто ему не чуждо. И если придумать схему для LC, то и кастом дату ему можно будет не бездумно заполнять. Посмотрите ставится ли игра на паузу при вызове месайдж бокса, если нет, то значит с вероятностью в 99% у НЕ тихих переходов ваши функции успеют отработаться, и тот же sr_idle будет иметь смысл. На оригинале можно сделать псевдо-LC с логикой на основе рестриктора. Это вполне нормальный трюк. Так же можно выставлять таймер до телепорта ГГ, пока нужные функции не отработаются. Хотя я все-таки собираюсь написать нормальную логическую схему. На исходниках я сделал, во-первых, нормальную функцию спавна LC, во-вторых делал функции включения/отключения. И с LC стало работать просто превосходно. Можно не удалять, а просто выключить, еще захомутать его меточным менеджером каким-нибудь и вся эта телега с LC будет управляться однострочным кодом. @Silver Raven, метод point возвращает вектор, это и есть координаты. Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033304
UnLoaded 313 Опубликовано 21 Августа 2016 Поделиться Опубликовано 21 Августа 2016 И наверх. А там в ЛЧ с переходом без запроса (silent mode). Все эти извращения упираются в не желание использовать скриптовые LC. Хотя, с учетом наличия нормальных модулей работы с нет-ракетами, создание скриптового LC не представляет ни какой сложности. Если уж такой напряг с скриптованием, могу дать свою готовую ф-цию для скриптового спавна LC. Тока в ней используется модуль нет-пакетов от Artos. Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033328
Mr. KoT 43 Опубликовано 21 Августа 2016 Поделиться Опубликовано 21 Августа 2016 Никак не пойму одно - как правильно распаковать игру и редактировать файлы. Другие мне писали - нужно распаковать геймдату игры в отдельную папку, например, UNPACK. Потом отредактировать файлы, написать, наприме, пусть будет диалог или квест. Написали. Все. Потом что? Меня интересуют такие вопросы: 1. Куда деть файлы с папки unpack? 2. Куда деть и поместить отредактированные файлы (написанный квест или диалог)? Большое спасибо за помощь! Добавлено Eugen81, 21 Августа 2016 1. Оставить там, где они лежат - пригодятся, чтобы каждый раз заново не распаковывать. 2. Создать в корне игры (напр. c:\Games\S.T.A.L.K.E.R\) папку gamedata и закинуть в нее свои файлы, соблюдая пути (напр., если в распакованных путь c:\распаковка\config\gameplay\мой_файл.xml, то в gamedata кидай config\gameplay\мой_файл.xml) Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033373
Kondr48 314 Опубликовано 21 Августа 2016 Поделиться Опубликовано 21 Августа 2016 1. Оставить на месте или удалить. По желанию. 2. В папку gamedata (если её нет - создайте). Но вообще это совсем основы. Неужели туторов нету? Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033375
Helgi 37 Опубликовано 21 Августа 2016 Поделиться Опубликовано 21 Августа 2016 (изменено) Никак не пойму одно - как правильно распаковать игру и редактировать файлы. Попробуй "stalker universal extractor". Хороший распаковщик, удобный и простой в использовании. Все распакованные файлы будут в директории игры и в отдельной папке. Название папки будет "UEgamedata". Если хочешь делать с нуля, то создай свою gamedata (в директории) и перекопируй туда все содержимое из папки с распакованными файлами (или те, которые собираешься изменять), ну а там уже и начинай работать. Только бэкапы делай. Опять же, это удобно тем, что у тебя не будет путаницы между разными папками и копиями, а-ля "мои файлы"/"мой_файл.ltx" и т.д., что потом придется переименовывать, вставлять, копировать 200 раз, а если какая-то ошибка, то опять все по новой. Изменено 21 Августа 2016 пользователем Helgi 2 Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033397
AndrewMor 533 Опубликовано 21 Августа 2016 Поделиться Опубликовано 21 Августа 2016 (изменено) Пытаюсь новому НПС прописать повторяющиеся квесты подай/принеси, делаю другому персу вместо Сахарова на Янтаре. Вроде в task_manager все прописал, story_id указал. Но почему-то такая странная байда получается. Список заданий у перса в диалоге есть, а у ГГ - нету. https://yadi.sk/i/7QBcTk1cuNP6d Изменено 21 Августа 2016 пользователем AndrewMor Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033400
CRAZY_STALKER666 36 Опубликовано 21 Августа 2016 Поделиться Опубликовано 21 Августа 2016 @AndrewMor, к сожалению мы не Ванги, и узнать что там у тебя не так прописанно - не можем. Сверься со статьёй - http://stalkerin.gameru.net/wiki/index.php?title=SoC._%D0%9E%D0%B4%D0%BD%D0%BE%D1%82%D0%B8%D0%BF%D0%BD%D1%8B%D0%B5_%D0%BA%D0%B2%D0%B5%D1%81%D1%82%D1%8B_%D0%B4%D0%BB%D1%8F_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_NPC Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033475
Silver Raven 197 Опубликовано 21 Августа 2016 Поделиться Опубликовано 21 Августа 2016 (изменено) Где-то в этой логике косяк, наглухо ее вешающий.: [logic] active = ph_idle@wait_to_using_lift_called_button [ph_idle@wait_to_using_lift_called_button] on_info = {!on_actor_not_in_zone(lab_x7_lift_spase_restrictor)} ph_idle@using_lift_called_button [ph_idle@using_lift_called_button] on_use = %=play_snd(alex_mod\devices\lift_called_button)% tooltip = lab_x7_use_lift_called_button nonscript_usable = true on_timer = 5000 | ph_idle@wait_to_using_lift_called_button | 2000 | %+lab_x7_actor_using_lift_called_button% (Как должно работать: если ГГ не в зоне lab_x7_lift_spase_restrictor, тогда при юзании объекта на который завязана логика, проиграется звук lift_called_button и спустя 2 сек. будет выдан инфопоршень lab_x7_actor_using_lift_called_button, а спустя пять вся схема возвращается в начальное состояние) З.Ы. Не копайтесть в логике в час ночи. Изменено 21 Августа 2016 пользователем Silver Raven Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033495
Expropriator 2 119 Опубликовано 21 Августа 2016 Поделиться Опубликовано 21 Августа 2016 (изменено) @Silver Raven, кто такие логики делает? У тебя что боты кнопки юзают? Две несовместимые вещи: рестриктор фиг знает где, и кнопка, которую фиг включишь, если в зоне. Изменено 21 Августа 2016 пользователем Дизель Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033500
AndrewMor 533 Опубликовано 22 Августа 2016 Поделиться Опубликовано 22 Августа 2016 к сожалению мы не Ванги, и узнать что там у тебя не так прописанно - не можем. Спасибо за ссылку, дома переделаю. Хотя вопросы уже появились. Например, почему task_manager.ltx в статье не упоминается? Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033506
Silver Raven 197 Опубликовано 22 Августа 2016 Поделиться Опубликовано 22 Августа 2016 Так, все что мог поправил и протестировал. Вылетов нет, но вся нижеописанная логика "висит": 1. Кнопка вызова лифта: [logic] active = ph_idle@using_lift_call_button [ph_idle@using_lift_call_button] on_use = {=on_actor_not_in_zone(lab_x7_lift_teleport_to_level_changer)} %=play_snd(lift_call_button)% tooltip = lab_x7_use_lift_call_button nonscript_usable = true on_timer = 2000 | %+lab_x7_actor_using_lift_call_button% | 5000 | ph_idle@using_lift_call_button 2. Панель управления внутри лифта: [logic] active = ph_idle@wait_to_using_lift_control_panel [ph_idle@wait_to_using_lift_control_panel] on_info = {+actor_arrived_in_lab_x7} ph_idle@set_timer_to_use_lift_control_panel on_info2 = {=actor_in_zone(lab_x7_lift_teleport_to_level_changer) -actor_arrived_in_lab_x7} ph_idle@using_lift_control_panel [ph_idle@set_timer_to_use_lift_control_panel] on_timer = 5000 | %=disable_actor_arrived_in_lab_x7_info_portion% ph_idle@using_lift_control_panel [ph_idle@using_lift_control_panel] on_use = %=disable_input =disable_ui =play_snd(lift_control_panel)% tooltip = lab_x7_use_lift_control_panel nonscript_usable = true on_timer = 4000 | %+actor_leaving_lab_x7% | 3000 | %=run_cam_effector("teleport":2006:false)% | 0 | %+lab_x7_change_actor_position_to_level_changer% 3. Двери лифта: [logic] active = ph_button@lift_doors_closed [ph_button@lift_doors_closed] anim_blend = true anim = idle_close on_info = {+actor_arrived_in_lab_x7} ph_button@lift_doors_opening %=play_snd(lift_doors_start)% on_info2 = {+lab_x7_actor_using_lift_call_button} ph_button@lift_doors_opening %=play_snd(lift_doors_start)% [ph_button@lift_doors_opening] anim_blend = true anim = open on_timer = 3030 | ph_button@lift_doors_opened %=play_snd(lift_doors_stop)% [ph_button@lift_doors_opened] anim_blend = true anim = idle_open on_timer = 8000 | ph_button@lift_doors_closeing %=play_snd(lift_doors_start)% on_info = {+actor_leaving_lab_x7} ph_button@lift_doors_closeing %=play_snd(lift_doors_start)% [ph_button@lift_doors_closeing] anim_blend = true anim = close on_timer = 3030 | ph_button@lift_doors_closed %=play_snd(lift_doors_stop)% Прочее барахло, завязанное на лифт: [logic] active = sr_idle@check_change_actor_position_to_level_changer [sr_idle@check_change_actor_position_to_level_changer] on_info = {+lab_x7_change_actor_position_to_level_changer} sr_teleport@change_actor_position_to_level_changer [sr_teleport@change_actor_position_to_level_changer] point1 = lab_x7_actor_teleport_to_level_changer_walk look1 = lab_x7_actor_teleport_to_level_changer_look timeout = 0 В общем, выручайте, кто-как может. З.Ы. Если потребуется, дам более подробное описание того, как в теории должна работать та или иная логика. Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033620
CRAZY_STALKER666 36 Опубликовано 22 Августа 2016 Поделиться Опубликовано 22 Августа 2016 Например, почему task_manager.ltx в статье не упоминается? Внимательнее надо быть. Он упоминается внизу, где обсуждается возможность добавления новых квестов. В статье лишь описан метод подключения функционала таких квестов для нового НПЦ. Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033634
abramcumner 1 229 Опубликовано 22 Августа 2016 Поделиться Опубликовано 22 Августа 2016 Так, все что мог поправил и протестировал. Вылетов нет, но вся нижеописанная логика "висит":Добавь в эффекты отсылку сообщений - узнаешь, что работает, а что "висит". Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033636
Silver Raven 197 Опубликовано 22 Августа 2016 Поделиться Опубликовано 22 Августа 2016 (изменено) @abramcumner, прикрутил на каждое действие в логике вывод сообщений в консоль: 1. Кнопка вызова лифта: [logic] active = ph_idle@using_lift_call_button [ph_idle@using_lift_call_button] on_use = {=on_actor_not_in_zone(lab_x7_lift_teleport_to_level_changer)} %=play_snd(lift_call_button) =test_call_button% tooltip = lab_x7_use_lift_call_button nonscript_usable = true on_timer = 2000 | %+lab_x7_actor_using_lift_call_button% | 5000 | ph_idle@using_lift_call_button 2. Панель управления внутри лифта: [logic] active = ph_idle@wait_to_using_lift_control_panel [ph_idle@wait_to_using_lift_control_panel] on_info = {+actor_arrived_in_lab_x7} ph_idle@set_timer_to_use_lift_control_panel %=test_lift_control_panel_start% on_info2 = {=actor_in_zone(lab_x7_lift_teleport_to_level_changer) -actor_arrived_in_lab_x7} ph_idle@using_lift_control_panel [ph_idle@set_timer_to_use_lift_control_panel] on_timer = 5000 | %=disable_actor_arrived_in_lab_x7_info_portion =test_lift_control_panel_start_set_timer_to_use% ph_idle@using_lift_control_panel [ph_idle@using_lift_control_panel] on_use = %=disable_input =disable_ui =play_snd(lift_control_panel) =test_lift_control_panel_using% tooltip = lab_x7_use_lift_control_panel nonscript_usable = true on_timer = 4000 | %+actor_leaving_lab_x7% | 3000 | %=run_cam_effector("teleport":2006:false)% | 0 | %+lab_x7_change_actor_position_to_level_changer% 3. Двери лифта: [logic] active = ph_button@lift_doors_closed [ph_button@lift_doors_closed] anim_blend = true anim = idle_close on_info = {+actor_arrived_in_lab_x7} ph_button@lift_doors_opening %=play_snd(lift_doors_start) =test_lift_doors_idle_close% on_info2 = {+lab_x7_actor_using_lift_call_button} ph_button@lift_doors_opening %=play_snd(lift_doors_start)% [ph_button@lift_doors_opening] anim_blend = true anim = open on_timer = 3030 | ph_button@lift_doors_opened %=play_snd(lift_doors_stop) =test_lift_doors_onening% [ph_button@lift_doors_opened] anim_blend = true anim = idle_open on_timer = 8000 | ph_button@lift_doors_closeing %=play_snd(lift_doors_start) =test_lift_doors_idle_open% on_info = {+actor_leaving_lab_x7} ph_button@lift_doors_closing %=play_snd(lift_doors_start)% [ph_button@lift_doors_closing] anim_blend = true anim = close on_timer = 3030 | ph_button@lift_doors_closed %=play_snd(lift_doors_stop) =test_lift_doors_closing% Прочее барахло, завязанное на лифт: [logic] active = sr_idle@check_change_actor_position_to_level_changer [sr_idle@check_change_actor_position_to_level_changer] on_info = {+lab_x7_change_actor_position_to_level_changer} sr_teleport@change_actor_position_to_level_changer %=test_lift_teleport_to_level_changer% [sr_teleport@change_actor_position_to_level_changer] point1 = lab_x7_actor_teleport_to_level_changer_walk look1 = lab_x7_actor_teleport_to_level_changer_look timeout = 0 xr_effects: function test_call_button() local c = get_console() c:execute("test_call_button. done!") end function test_lift_control_panel() local c = get_console() c:execute("test_lift_control_panel. done!") end function test_lift_control_panel_start() local c = get_console() c:execute("test_lift_control_panel_start. done!") end function test_lift_control_panel_set_timer_to_use() local c = get_console() c:execute("test_lift_control_panel_set_timer_to_use. done!") end function test_lift_control_panel_using() local c = get_console() c:execute("test_lift_control_panel_using. done!") end function test_lift_doors_idle_close() local c = get_console() c:execute("test_lift_doors_idle_close. done!") end function test_lift_doors_close() local c = get_console() c:execute("test_lift_doors_close. done!") end function test_lift_doors_opening() local c = get_console() c:execute("test_lift_doors_opening. done!") end function test_lift_doors_idle_open() local c = get_console() c:execute("test_lift_doors_idle_open. done!") end function test_lift_teleport_to_level_changer() local c = get_console() c:execute("test_lift_teleport_to_level_changer. done!") Теперь лог изобилует ошибками: ! Unknown command: test_lift_doors_idle_close. ! Unknown command: test_lift_control_panel_start. ! Unknown command: test_lift_doors_idle_close. * MEMORY USAGE: 272793 K FATAL ERROR [error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp [error]Line : 73 [error]Description : <no expression> [error]Arguments : LUA error: ...a.l.k.e.r. - trilogy\shoc\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value) stack trace: Scheduler tried to update object lab_x7_doors_lift FATAL ERROR [error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp [error]Line : 73 [error]Description : <no expression> [error]Arguments : LUA error: ...a.l.k.e.r. - trilogy\shoc\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value) stack trace: Scheduler tried to update object lab_x7_doors_lift_0000 FATAL ERROR [error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp [error]Line : 73 [error]Description : <no expression> [error]Arguments : LUA error: ...a.l.k.e.r. - trilogy\shoc\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value) stack trace: Scheduler tried to update object lab_x7_lift_control_panel Из всего, кажись, пытаются работать только двери лифта. Изменено 22 Августа 2016 пользователем Silver Raven Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033650
abramcumner 1 229 Опубликовано 22 Августа 2016 Поделиться Опубликовано 22 Августа 2016 (изменено) @Silver Raven, одна ошибка из-за описки =test_lift_doors_onening. Другие сходу не нашел. Изменено 22 Августа 2016 пользователем abramcumner Ссылка на комментарий https://www.amk-team.ru/forum/topic/15045-soc-kovyrjaemsja-v-fajlah/page/805/#findComment-1033670
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти