Egor4ikModMaker 8 Опубликовано 5 Ноября 2014 (изменено) Я прошу прощения если нарушаю правила форума_(я не нашел темы по вылету именно с моим логом или проблема с таким же файлом)._Ув._администрация, прошу не удалять мое сообщение и рассмотреть как просьбу о помощи._Я столкнулся с вылетом в файле - "_g.script". Expression : ai().script_engine().functor(start_game_callback,functor) Function : CALifeSimulator::CALifeSimulatorFile : E:\stalker\patch_1_0004\xr_3da\xrGame\alife_simulator.cppLine : 64Description : failed to get start game callback Я понимаю что вылет связан с строчками вызова новой игры,_но что именно - не понимаю. Слезно прошу помочь потому что как я ни удалял файл, ошибка есть,_я даже пытался его изменить, но ошибка снова наведалась... (Заранее извиняюсь и каюсь в том что написал тут,_простите народ,_я здесь новичок._Ваш форум мне хорошо помог,_надеюсь поможете еще._Заранее спасибо и еще раз извиняюсь за свою невнимательность,_если есть тема по моему логу направьте меня туда._Заранее спасибо.) Изменено 6 Ноября 2014 пользователем Kirgudu [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 19 Июня 2018 Доброго времени суток , прошу помощи. Достаточно Проблемный вопрос назрел , как все таки без Декомпелирования all.spawn'a можно дать НПС-у Story_id, в сталкер тч 1.0004 ( надеюсь существует какой-то способ ) Ибо у меня, ни в какую , на НПС , не вешается метка ( скорее НПС сам повесится, чем отметка на него по карте ). Устал честно что-то ковырять , во всех гайдах и уроках ( квестах на убийство и пр. ) Сказано что нужно распаковать алл.спавн , для этого принудительно скачать софт какой-то ( асдс) потом это еще и запаковывать , у меня просто и так весь комп забит под завязку, мне последнее место забивать не охота , подскажите выход из такой ситуации, Заранее благодарю. [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 19 Июня 2018 6 часов назад, _Val_ сказал: zip.add_npc("uchen_10", 26.068271636963,-11.718555450439,-272.28005981445,51614,1480, "[logic]\ncfg = scripts\\terra_npc\\yantar\\yan_uchen_1.ltx", 12505 Интересует следущее, это скриптовая ф-ция? Подскажите Чайнику, что с этим делать? ( ну координаты свои поставлю, путь к логике тоже свой, а дальше? ) [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 20 Июня 2018 (изменено) 1 час назад, _Val_ сказал: Поставить и подключить модули нет_пакетов И как их подключить? (Upd:можно как нибудь по проще , сделать что-то для установки метки на НПс ? ) Изменено 20 Июня 2018 пользователем Egor4ikModMaker [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 22 Июня 2018 20 часов назад, h0N0r сказал: Ставить метку через map_add_object_spot(number, string, string), но нужна функция, чтобы получить секцию / профиль нпс и передать полученное в number. А можно полную ф-цию , я в скриптах не шарю , так что прошу помощи у вас. Просто хочу сделать что бы адекватно как у всех , работали квесты с указанием на карте. где же стоит этот нпс. [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 22 Июня 2018 Хорошо господа, последовав вашему совету , я постараюсь более точнее излагать свои мысли, и более конкретнее вопросы. Изходя из поста Хикса ( пост ниже) https://www.amk-team.ru/forum/topic/6458-uroki-po-modostroeniyu/?page=3&tab=comments#comment-630233 Я пытаюсь понять : ( может я просто глупый и не нашел спойлер, но мне было бы привычно делать раскрывающимся текстом. ) Так что простите за километровое сообщение . - function add_lchanger_location() local sim = alife() if sim then -- escape - здесь идет вроде как пояснение , какая локация local obj = sim:story_object(91) - сюда надо записать присвоенный стори_ид if obj then level.map_add_object_spot(obj.id, "level_changer", "to_garbage") - конкретно эта часть вроде как отвечает за постановку метки, на карте. (Собственно здесь я немного путаюсь , т.к - автор ( Хикс) сперва пишет что типы меток пишутся в первые кавычки (т.е надпись level_changer) (им же указанные - crlc_big – большой белый круг; crlc_mdl – средних размеров круг; crlc_small – маленький кружок. ) Но , позже я запутался, потому что он написал - Теперь можно тип метки указывать ”primary_object”. Куда это указывать , я так и не понял , если второе слово в кавычках , это вроде как название (здесь to_garbage это дословно - переход к свалке.) Меня интересует следущее - можно без ковыряния алл.спавн-а , указать координаты, и сделать все эти махинации через скрипты? Да , для меня это правда сложно. Только на вас надеюсь. end [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 23 Июня 2018 (изменено) Собственно если я правильно понял, получается что ф-ция должна принимать следующий вид: (поправьте если не так) function add_lchanger_location() local obj = sim:object("es_andrew") - по имени , как пояснили (Указал из профиля, нпс) if obj then level.map_add_object_spot(obj.id, "12000", "Андрюха") (если все правильно понял , то первое это ид - из game_story_ids, а второе - это то , что появится на карте если навести на отметку. end Изменено 23 Июня 2018 пользователем Egor4ikModMaker [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 23 Июня 2018 Я может совсем дегенерат , но я собственно ловлю вылет (но по мимо этого я добавил в диалог экш на вызов этой ф-ции ( <action>level_tasks.andrew_at_map</action> ) по этой ф-ции, (Прописал ее как было указано в level_tasks.script) Ф-ция function andrew_at_map() local obj = sim:object("es_andrew") if obj then level.map_add_object_spot(obj.id, "12000", "Андрюха") end Log: Expression : fatal error Function : CScriptEngine::lua_error File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp Line : 73 Description : <no expression> Arguments : LUA error: ...- Èñòèííûé ïóòü\gamedata\scripts\bind_stalker.script:194: attempt to index global 'level_tasks' (a nil value) [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 23 Июня 2018 (изменено) 2 часа назад, WinCap сказал: function andrew_at_map() local obj = alife():object("es_andrew") if obj then level.map_add_object_spot(obj.id, "green_location", "Андрюха") end end Попробую это. Добавляю в свой скриптовый файл, и вызываю через диалог <action>название файла.название функции</action> , игра хотя бы запускается. Добавлю эту ф-цию , в level_tasks.script , как указано в уроке хикса, ловлю вылет на загрузке такого характера Expression : fatal error Function : CScriptEngine::lua_error File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp Line : 73 Description : <no expression> Arguments : LUA error: ...- Èñòèííûé ïóòü\gamedata\scripts\bind_stalker.script:194: attempt to index global 'level_tasks' (a nil value) Теперь убрав даже строку вызова ф-ции из диалога, при попытке разговора с нпс ловлю безлогий вылет. обидно. Изменено 23 Июня 2018 пользователем Egor4ikModMaker дополнение [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 23 Июня 2018 Только что, Dennis_Chikin сказал: Осталось выяснить, зачем добавлять ее в level_tasks. И какая конечная цель всех манипуляций. 1)Добавление этой ф-ции собственно было описано в вышеуказанном уроке от Хикса 2)Конечная цель этих манипуляций , что бы нпс отображался на карте у гг ( при взятии квестов принеси-подай ) как с торговцем. [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 23 Июня 2018 (изменено) 10 минут назад, AndreySol сказал: "как можно знать сид" - ну к примеру, через сет в game_story_ids.ltx. Или не реально ? Это явно простая синтаксическая ошибка. Проверь синтаксис добавленного кода. Собственно это странно, потому что bind_stalker я не трогал вообще! Т.е файл оригинальный, и до этого все работало без подобного вылета. upd: Не понимаю ничего , т.е если я в game_story_ids напишу например 12000 = esc_vova(имя перса из профиля) он типа вообще это игнорирует? Потому что я до этого пытался поставить на него метку. Т.е по аналогии как и с сидором , при выдаче квеста , там следущим образом построен квест <objective> <text>Принести Артефакт Андрею</text> <infoportion_complete>ses_done</infoportion_complete> <map_location_type hint="esc_andrew">blue_location</map_location_type> <object_story_id>esc_andrew</object_story_id> </objective> Изменено 23 Июня 2018 пользователем Egor4ikModMaker 1 [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 23 Июня 2018 1 минуту назад, Dennis_Chikin сказал: Как вообще берутся ? В диалоге с этим неписем ? Спокойно. Через диалог с нпс + game_tasks.xml 2 минуты назад, Dennis_Chikin сказал: game_story_ids они щучьим велением прописываются ? Нет , в ручную прописал 12.000 = "esc_andrew" ( из профиля нпс ) как было ранее указано в уроках . [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 23 Июня 2018 Только что, Dennis_Chikin сказал: Непись с диалогом тот же самый, на которого надо метку ? <<в ручную прописал 12.000 = "esc_andrew" >> - поздравляю. Удивительно, что запускается. Да [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 23 Июня 2018 (изменено) 8 минут назад, Dennis_Chikin сказал: level.map_add_object_spot_ser( n1:id(), "кракозябра", "надпись" ) Вызывает вопрос только что должно быть под "кракозяброй"? Upd: Поставил одно из ранее указанных значений вместо кракозябры - green_location , ловлю безлогий вылет. Такой же результат если поставить "primary_object". Изменено 23 Июня 2018 пользователем Egor4ikModMaker [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 23 Июня 2018 2 минуты назад, Dennis_Chikin сказал: "green_location" или green_location ? В ui\map_spots.xml вообще есть такая ? Да есть . специально проверил , и primary_object Скрипт через lua.exe вообще собирается ? Диалог правильно написан ? - не мне судить насколько правильно он собирается, но до этого работал. Не знаю , может я дурной и на последнюю фразу диалога лепить нельзя .но вот диалог <dialog id="find_art1"> <dont_has_info>ses_done</dont_has_info> <dont_has_info>ses_have</dont_has_info> <phrase_list> <phrase id="0"> <text>Привет, есть работенка какая?</text> <next>1</next> </phrase> <phrase id="1"> <text>Здрав буди, да имеются для тебя, мелкие поручения, извини но пока я тебе серьезную не доверю, ты уж не обижайся.</text> <next>2</next> </phrase> <phrase id="2"> <text>Все нормально , так что у тебя там за поручения?</text> <next>3</next> </phrase> <phrase id="3"> <text>Тебе нужно поискать артефакт "Медуза", как найдешь приходи, в замен получишь хороший ствол и пару пачек патронов. Искать его стоит севернее бункера сидора. Там есть небольшой участок с аномалиями, будь осторожен. Удачи.</text> <next>4</next> </phrase> <phrase id="4"> <text>Спасибо за наводку. Сейчас схожу посмотрю.</text> <action>sesok.mapspot</action> -- вот именно это и вызывает функцию проблемную. <give_info>ses_have</give_info> </phrase> </phrase_list> </dialog> [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 23 Июня 2018 3 минуты назад, Dennis_Chikin сказал: sesok.script на обменник, и ссылку в студию. Держи http://rgho.st/8p5J5cXqs [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 23 Июня 2018 Только что, Dennis_Chikin сказал: в map_spots.xml слово primary_object вообще существует ? существует и существует вот так <primary_object> <level_map spot="primary_object_spot" pointer="quest_pointer"/> </primary_object> <primary_object_spot x="0" y="0" width="15" height="15" alignment="c" scale="1" scale_min="1" scale_max="6" stretch="1"> <texture x="858" y="392" width="62" height="62">ui\ui_common</texture> </primary_object_spot> [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 23 Июня 2018 1 минуту назад, Kirgudu сказал: Да не в bind_stalker ошибка, а в level_tasks. Попробуй перевести на русский: это означает "попытка проиндексировать глобальный объект 'level_tasks' (значение nil)". То есть ты из bind_stalker пытаешься вызвать какую-то функцию в level_tasks, но так как level_tasks имеет значение nil - получаешь ошибку. А быть равным nil какой-то скрипт может в том случае, если внутри имеется какая-то синтаксическая ошибка, и движок просто не может скрипт загрузить. Проверяй, что делал не так в level_tasks. Все , что я делал в level_tasks., это добавление ф-ции , вышеуказанной . т.е (что по логике должно было работать . ) function add_lchanger_location() local obj = sim:object("es_andrew") - по имени , как пояснили (Указал из профиля, нпс) if obj then level.map_add_object_spot(obj.id, "12000", "Андрюха") (если все правильно понял , то первое это ид - из game_story_ids, а второе - это то , что появится на карте если навести на отметку. end [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение
Egor4ikModMaker 8 Опубликовано 23 Июня 2018 (изменено) 56 минут назад, Dennis_Chikin сказал: @Egor4ikModMaker, Это типа шутка такая - всадить в файл невидимый символ, после которого он вообще не читается ? Нет , сам не знал , извиняюсь за неудобства. Сейчас попробую. Благодарствую всем , кто участвовал. Все работает . всем спасибо Изменено 23 Июня 2018 пользователем Egor4ikModMaker [Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // ☮ "Burn the rich // eat the rich" О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист. Поделиться этим сообщением Ссылка на сообщение