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 Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/
SkyLoader 53 Опубликовано 28 Июля 2010 Поделиться Опубликовано 28 Июля 2010 А, точно! Мне бы узнать, как непися перевести на другой смарттеррейн через скрипт. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470279
AKKK1 6 Опубликовано 28 Июля 2010 Поделиться Опубликовано 28 Июля 2010 Помоему только через нет пакет вобщем изменить секцию смарт террайн на нужную Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470293
ФеНиКс 2 Опубликовано 28 Июля 2010 Поделиться Опубликовано 28 Июля 2010 (изменено) function dead_is_actor() --' на актор апдейте if db.actor and not db.actor:alive() and db.actor:dont_has_info("info_dox") then game.start_tutorial("x18_dream") db.actor:give_info_portion("info_dox") end end Почему не работает? Тупо не работает и всё. __________ И ещё вот такие вопросы. Возможно сделать так чтобы при НПС с опр. предметом в руках он(НПС) убегал? ведь существует паника у НПС как сделать это "чудо" через скрипт? Изменено 28 Июля 2010 пользователем ФеНиКс Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470300
Stalk15 27 Опубликовано 28 Июля 2010 Поделиться Опубликовано 28 Июля 2010 ФеНиКс game.start_tutorial("x18_dream") - срабатывает когда ГГ жив.А если он мертв, то почему-то эта строка игнорируется. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470322
iDreD 5 Опубликовано 28 Июля 2010 Поделиться Опубликовано 28 Июля 2010 ФеНиКс, наложи кастом_статик с этим видео после смерти и всё. Работа в Sculptris 3D [туториал] Страничка на Проза.ру Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470329
Arhara 32 Опубликовано 28 Июля 2010 Поделиться Опубликовано 28 Июля 2010 (изменено) SkyLoader, Для чего такие трудности? Пропишите ему но_не=труе, и пусть тусует в зоне гулага, не входя в него. Когда куд-то надо идти, кроме стандартной работы - назначите в логике. Изменено 28 Июля 2010 пользователем Arhara Еще 10 лет таких цен, зарплат и пенсий, и вместо переписи населения будет перекличка Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470332
SkyLoader 53 Опубликовано 28 Июля 2010 Поделиться Опубликовано 28 Июля 2010 (изменено) Да дело в том, что мне надо, чтобы для любых неписей это было, даже если сразу появился (alife:create), я назначаю ему смарт сам (через action диалога, например), а не он выбирает. А как через нет пакеты сделать? Изменено 28 Июля 2010 пользователем SkyLoader Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470346
iDreD 5 Опубликовано 28 Июля 2010 Поделиться Опубликовано 28 Июля 2010 Я спауню тайник вот с такой [spawn] esc_ship_sound wpn_bizon_kol ammo_7.62x39_ap [logic] active = ph_code@lock [ph_code@lock] code = 0000 on_code = ph_code@open [ph_code@open] code = nil Когда я ввожу код тайник не становится "открытым", почему так (код вводится, затем опять при нажатии на F опять вылазит менюшка кодового замка)? Работа в Sculptris 3D [туториал] Страничка на Проза.ру Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470443
DimOriN 43 Опубликовано 28 Июля 2010 Поделиться Опубликовано 28 Июля 2010 Stalk15, ты должен этой функции скормить ID непися " local se_obj = alife():object(ID) -- , где id айдишник непися " Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470469
Arhara 32 Опубликовано 28 Июля 2010 Поделиться Опубликовано 28 Июля 2010 кровоSTALKER, [logic] active = ph_code [ph_code] code = 55555 on_code = nil %+сим_сим_откройся% Еще 10 лет таких цен, зарплат и пенсий, и вместо переписи населения будет перекличка Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470493
Stalk15 27 Опубликовано 29 Июля 2010 Поделиться Опубликовано 29 Июля 2010 (изменено) DimOriN Я так попробовал, ввел ид Волка(006 и 6 - все пробовал), но при вызове опять ни чего не происходит. ------------------------- У меня еще вопроc: Я вот поверяю ранг НПС: rank_npc = ranks.get_obj_rank_name(npc_stalker) if rank_npc == "regular" then Проверки ранга Новичок, Ветеран, Мастер работают, а проверка Опытного не работает.regular - вроде правильно.В чем дело-то? --------------------------------------------------------------------------------------------- SkyLoader Точняк, спасибо. Изменено 29 Июля 2010 пользователем Stalk15 Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470576
ФеНиКс 2 Опубликовано 29 Июля 2010 Поделиться Опубликовано 29 Июля 2010 (изменено) По поводу кодовых замков как сделать код рандомным? т.е. код выбирался из таблицы и при выдачи поршня ГГ появлялся в виде сообщения. А логика при этом должна выглядеть типа вот этого? [logic] active = ph_code [ph_code] code = 55551 on_code = nil %+sim_sim% code1 = 55552 on_code1 = nil %+sim_sim1% code2 = 55552 on_code2 = nil %+sim_sim2% Скрипт: local tabla = { [1]="Код 55551", [2]="Код 55552", [3]="Код 55552" } local fs = false function random_kod() local pos = "" if not fs then pos = tabla[math.random(#tabla)] local news_text = "%c[255,255,1,1]Татар\\n+%c[255,1,255,1]"..pos.."%c[default]" db.actor:give_game_news(news_text, "ui\\ui_iconsTotal", Frect():set(249,893,83,47), 0, 2000) fs = true end if fs then fs = false end end все верно? Изменено 29 Июля 2010 пользователем ФеНиКс Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470578
SkyLoader 53 Опубликовано 29 Июля 2010 Поделиться Опубликовано 29 Июля 2010 (изменено) Stalk15, experienced - опытный ФеНиКс, tabla[math.random(table.getn(tabla))] Arhara, вот моя функция, чтобы узнать название гулага (пишу с мобильника): function where_smartterrain(first_speaker, second_speaker) -- первый говорит непись local gulag = xr_gulag.get_npc_gulag(first_speaker) --непись в гулаге ли? local gulag_name = gulag.name --имя гулага if gulag then News_manager.sent_tip(db.actor,"Гулаг: " ..gulag_name, nil, nil, 10000)--вывод End End Может быть можно так же, примерно, изменить гулаг неписю? Изменено 29 Июля 2010 пользователем SkyLoader Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470588
ФеНиКс 2 Опубликовано 29 Июля 2010 Поделиться Опубликовано 29 Июля 2010 SkyLoader tabla[math.random(#tabla)] -- то же самое...почти тоже самое. так что разницы нет. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470696
Влад 9 Опубликовано 29 Июля 2010 Поделиться Опубликовано 29 Июля 2010 (изменено) имею код: function func_name() db.actor:iterate_inventory(del_obj, actor) end function del_obj(actor,item) local tbl = {} local s = item:section() table.insert(tbl, s) for k, v in pairs(tbl) do if v == "ammo_7.62x54_ap" then alife():release(alife():object(db.actor:object(v):id()), true) end end end Что надо: удалить ВСЕ итемы определённого вида (в данном случае "ammo_7.62x54_ap"). Но удаляются не все,а одна пачка.Иногда две-три.. Charsi спасибо! Изменено 30 Июля 2010 пользователем Влад Мои работы Не бойтесь совершенства. Вам его не достичь. C. Дали Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470784
Charsi 441 Опубликовано 29 Июля 2010 Поделиться Опубликовано 29 Июля 2010 Влад,правильно так: function func_name() db.actor:iterate_inventory(del_obj, nil) end function del_obj(dummy,item) if item:section() == "ammo_7.62x54_ap" then alife():release(alife():object(item:id()), true) end end Lua и LuaJIT плагины для Notepad++ SciTE-RU 3.5.5 плагины для MilkShape3D Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-470936
ФеНиКс 2 Опубликовано 30 Июля 2010 Поделиться Опубликовано 30 Июля 2010 Возможно ли повесить на тайник кодовый замок? Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-471083
SkyLoader 53 Опубликовано 30 Июля 2010 Поделиться Опубликовано 30 Июля 2010 ФеНиКс, Stalk15 недавно делал такое. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-471157
Гость Greh921 Опубликовано 31 Июля 2010 Поделиться Опубликовано 31 Июля 2010 Люди, а кто знает на каком языке програмирования написан иксреевский движок? Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-471586
stalker.odinochka 0 Опубликовано 31 Июля 2010 Поделиться Опубликовано 31 Июля 2010 Подскажите пожалуйста скрипт для спавна аномалий. Чтоб на локации просто спавнились при старте игры и не динамические. Срочно ищу опытного скриптёра и модельера, нужна помощь в создании мода. Готовность мода Новый мир 85%. Мод Огнемёт для ЗП v1.0 Скачать Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/43/#findComment-471671
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти