Svoboда 3 Опубликовано 23 Апреля 2009 Поделиться Опубликовано 23 Апреля 2009 Тема для обсуждения скриптов всего и всех в серии игр STALKER. Задавая вопрос (!): 1. Внимательно изучите суть вопроса. Вопрос должен соответствовать выбранной Вами темы. Это поможет сохранить порядок и читабельность темы, а также облегчит поиск и понимание сего; 2. Изучите то, что уже есть в теме (пролистайте "руками", воспользуйтесь поиском на форуме); 3. Изучите информацию которая может вам помочь: Stalkerin. Там есть много хороших статей касательно данной темы.Уроки по модостроению. Есть рабочие примеры готовых скриптов различного назначения. Справочное руководство по языку Lua 5.1https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/ruСправочник по функциям и классам. Собрано много информации по функциям и классам, не всем, но по основные сведения предоставлены. Логика со вступлением и четырьмя частями: ВступлениеЧасть перваяЧасть втораяЧасть третьяЧасть четвертая. Smart_terrain (в простонароде - гулаг)Интересный способ настроики логики для гулаговСкриптовая часть игровой логики 4. Дабы не превращать обсуждение в "кашу" разной информативной направленности, задавайте несколько вопросов по порядку (в разных постах) после того, как получите ответ на предыдущий вопрос; 5. "Спасибо" и тому подобное - будьте так любезны в ПМ. Если не любите писать в ПМ, в конце вопроса напишите фразу: "Заранее спасибо!" - или что-то в этом духе; 6. ПОЖАЛУЙСТА! Указывайте, для какой игры Вам необходима информация (ТЧ, ЧН, ЗП), если стоит мод - укажите название мода; 7. Если Вы что-то сделали и результат не такой, какой Вами задумывался, то, пожалуйста, приводите коды которые Вы изменяли/писали целиком! Это поможет другим правильно ответить на Ваш вопрос, а также оградит Вас от лишней писанины. 8. Оформляйте сообщение. Пользуйтесь тегами для того, чтобы отделить код от текста. Пишите грамотно - ПОЛЬЗУЙТЕСЬ ЗНАКАМИ ПРЕПИНАНИЯ. 9. И помните: «Правильно заданный вопрос – половина ответа». Какие вопросы следует задавать, а какие нет... Задавайте вопросы, которые касаются непосредственно скриптов и их работы, т.е. Вы что-то делаете, а у Вас что-то не получается, при этом у Вас на руках должен быть хотя бы какой-то код, свидетельствующий о Вашей причастности к вопросу. Вопросы которые будут удалятся, следовательно их задавать не нужно:-- Где находится та или иная функция? Для ответа используем поиск по словам среди файлов оригинальной игры или мода, если объект поиска относится к нему, при помощью программы, которая Вам наиболее симпатизирует;-- Как сделать что-то/то-то? С подобными вопросами, либо в "ковырялки", где Вам вероятнее всего так же не ответят, либо выдвигаем мысли, подкреплённые теорией, практикой (идеальный вариант) и здравым рассудком;-- Вопросы со смыслом: "сделайте", "совместите" и подобными глаголами повелительного наклонения.-- К тому же удалению будут подвергаться вопросы, в которых масштабно не используются теги, для отделения кода и цитат от основного текста, а также не вписан в спойлер код размером превышающие семь строк.Ответ на возможно возникший вопрос: В какую тему можно обратиться по поводу логики и спавна объектов? В тему "ковырялок" соответствующей версии игры, для которой Вы задаёте вопрос. И последнее: очень рекомендовано к прочтению Правила форума 1 2 Ссылка на комментарий
Unnamed Black Wolf 4 Опубликовано 23 Июля 2010 Поделиться Опубликовано 23 Июля 2010 Stalk15, не секрет. Легко. Ссылка на комментарий
Gektor 0 Опубликовано 24 Июля 2010 Поделиться Опубликовано 24 Июля 2010 (изменено) И снова здравствуйте товарищи. . Как в зове припяти увести нпц в оффлайн по определенному info_portion при любых условиях. Как торгаш в припяти из OGSM для теней (короче исчез на глазах у актора и на месте нпц проигрался партикл один раз). И еще вопрос: секция [spawner] в зове припяти вобще чтоли не пашет? И на последок можно ли в зове припяти спавнить space_restrictor через скрипт, и если можно то как? Заранее спасибо. Изменено 24 Июля 2010 пользователем Gektor Команда ReWrite Team. От сталкера отошли. Пересели за другую платформу. Ссылка на комментарий
Stalk15 27 Опубликовано 24 Июля 2010 Поделиться Опубликовано 24 Июля 2010 Я хотел сделать такое:Если на Волке одет костюм stalker_outfit, то вывести сообщение: function drhyrd() local npc = level_object_by_sid(006) local outfit = npc:item_in_slot(6) if outfit and outfit:section() == "stalker_outfit" then news_manager.send_tip(db.actor, "stalker_outfit На Волке", 0, "freedom", 10000) end end Функцию ставлю на апдей, запускаю игру, игра не вылетает, но и сообщение не выводится, хотя у Волка же как раз одет stalker_outfit.Не подскажете, в чем дело? Ссылка на комментарий
Scarabay 98 Опубликовано 24 Июля 2010 Поделиться Опубликовано 24 Июля 2010 Всем привет. У меня похожий вопрос как у Stalk15, только мне нужно определить название самой модели, которую в данный момент юзает нпс. Мой YouTube-канал Ссылка на комментарий
Министр 4 Опубликовано 24 Июля 2010 Поделиться Опубликовано 24 Июля 2010 (изменено) Stalk15, у НПС костюмов и слотов как таковых нету... P.S. Можно узнать визуал непися (название модели, которую сейчас использует НПС) и через него определить, что на него одето. ----------------------------------------------------------------------------- Stalk15, через нет-пакет. По-моему get_current_outfit() вообще не работает и как я говорил у неписей вообще костюмов как таковых нет... P.S. А по нет-пакетам достаточно инф-ии на форуме, также можно посмотреть скрипты того же АМК или IMM (интелликтуал марадер мод или как там его, он в Мастерской есть). Изменено 24 Июля 2010 пользователем Министр Ссылка на комментарий
Stalk15 27 Опубликовано 24 Июля 2010 Поделиться Опубликовано 24 Июля 2010 (изменено) Министр А как узнать визуал непися? Есть метод get_current_outfit(), но я не знаю, как его правильно применить ... Изменено 24 Июля 2010 пользователем Stalk15 Ссылка на комментарий
Massaraksh 0 Опубликовано 24 Июля 2010 Поделиться Опубликовано 24 Июля 2010 Дайте, пожалуйста, функцию из bind_monster из АМК (в нормальном виде, не в одну строчку), которая биндит партиклы к костям. Просто я в скриптах почти ничего не соображаю... Ссылка на комментарий
Stalk15 27 Опубликовано 24 Июля 2010 Поделиться Опубликовано 24 Июля 2010 Скажите, правильно ли я проверяю группировку любого НПС?: local npc_stalker = level.object_by_id(id) if npc_stalker:character_community() == "stalker" then А то если я добавлю эту проверку в свой скрипт, то действие перестает срабатывать ...Подскажите, как правильно нужно? Ссылка на комментарий
DiXares 1 Опубликовано 25 Июля 2010 Поделиться Опубликовано 25 Июля 2010 Товарищи! Есть ли скрипт, что бы приаттачить в инвентаре новую кнопку? Бэкграунд? Ссылка на комментарий
RvP 1 Опубликовано 25 Июля 2010 Поделиться Опубликовано 25 Июля 2010 TREWKO, http://www.amk-team.ru/forum/index.php?s=&...st&p=260901 Vita sine libertate, nihil Vita sine litteris - mors est Ссылка на комментарий
h0N0r 366 Опубликовано 25 Июля 2010 Поделиться Опубликовано 25 Июля 2010 (изменено) Подскажите, кто знает: имеются некие координаты (допустим - 1,2,3), как с помощью скрипта определить level_vertex или game_vertex по ним. Изменено 25 Июля 2010 пользователем h0N0r https://sites.google.com/view/xray-sdk-0-4-smg Ссылка на комментарий
lexer125 0 Опубликовано 25 Июля 2010 Поделиться Опубликовано 25 Июля 2010 (изменено) h0N0r, stalkerin.gameru.net Ищи LVID_GVID script h0N0r, не понял тебя сначала. Изменено 25 Июля 2010 пользователем lexer125 Ссылка на комментарий
h0N0r 366 Опубликовано 25 Июля 2010 Поделиться Опубликовано 25 Июля 2010 h0N0r, stalkerin.gameru.net Ищи LVID_GVID script Этот скрипт определяет позицию гг, а нужно по известным координатам на уровне определить их level_vertex или game_vertex (без участия гг, спавн или телепорт на эти координаты). https://sites.google.com/view/xray-sdk-0-4-smg Ссылка на комментарий
Knight 0 Опубликовано 26 Июля 2010 Поделиться Опубликовано 26 Июля 2010 (изменено) Скажите, правильно ли я проверяю группировку любого НПС?: Если, в целом, эта функция примерно так выглядит, то да: for id=1,65535 do local npc_stalker=level.object_by_id(id) if npc_stalker then if IsStalker(npc_stalker) and npc_stalker:character_community() == "stalker" then ... end end end Stalk15, Конечно будет напрягать. Но все зависит от того, для чего тебе нужно узнавать группировку. Изменено 26 Июля 2010 пользователем Knight Ссылка на комментарий
Stalk15 27 Опубликовано 26 Июля 2010 Поделиться Опубликовано 26 Июля 2010 Knight Я функцию ставлю на апдейт.Думаю, постоянный перебор айди очень напрягает игру... Ссылка на комментарий
DimOriN 43 Опубликовано 26 Июля 2010 Поделиться Опубликовано 26 Июля 2010 А как узнать визуал непися? Есть метод get_current_outfit(), но я не знаю, как его правильно применить ... На базе АМК выглядит примерно так local se_obj = alife():object(id) -- , где id айдишник непися local t = amk.read_stalker_params(se_obj) if t ~= nil then local vis = t.visual vis = amk.str_explode("\\",vis) vis = vis[3] -- теперь vis есть визуал объекта end Добавлено через 2 мин.: Stalk15, а зачем на апдейт то? че хотим сделать то? Ссылка на комментарий
Unnamed Black Wolf 4 Опубликовано 26 Июля 2010 Поделиться Опубликовано 26 Июля 2010 DimOriN, чего так сложно ? local npc = level.object_by_id(...) local visual_outfit = npc:get_visual_name() Вроде так, хотя не сильно уверен именно это-ли выкинет.... Ссылка на комментарий
DimOriN 43 Опубликовано 26 Июля 2010 Поделиться Опубликовано 26 Июля 2010 get_visual_name() чет в lua_help такого нет )) з.ы. я выдрал код из IMM (death_manager) Ссылка на комментарий
pathfinder 1 Опубликовано 26 Июля 2010 Поделиться Опубликовано 26 Июля 2010 expression : fatal error Function : CScriptEngine::lua_error File : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp Line : 73 Description : <no expression> Arguments : LUA error: ...mod\sdk\games\gamedata\scripts\dialog_manager.script:393: attempt to compare number with nil Вот такая вот ошибка При редактировании функции выдачи предмета ГГ Волком. Функция работает, но все сейвы убивает забыто и уничтожено. Ссылка на комментарий
Stalk15 27 Опубликовано 26 Июля 2010 Поделиться Опубликовано 26 Июля 2010 DimOriN Спасибо, надо попробовать... ----------------------------- Я изпользую строку for k, v in pairs (db.storage) do в функции.Функция стоит на апдейте.Скажите, эта строка напрягает игру, или все "нейтрально"? Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти