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 Ссылка на комментарий
phalcor 60 Опубликовано 14 Июня 2021 Поделиться Опубликовано 14 Июня 2021 @Norman Eisenherz Т.е. я правильно понял, что скриптом параметр "сытость" для актора никак не получить? Ссылка на комментарий
Rod_K 1 Опубликовано 16 Июня 2021 Поделиться Опубликовано 16 Июня 2021 Подскажите, пожалуйста, есть ли нормальный скрипт с промоткой времени для тч? Я пытался спальный мешок адаптировать, но что-то не выходит. Если кто откликнется, то буду очень благодарен. Спасибо! Ссылка на комментарий
Colder 12 Опубликовано 16 Июня 2021 Поделиться Опубликовано 16 Июня 2021 @Rod_K Тебе нужно просто время перемотать или перемотать когда спишь? Ссылка на комментарий
Rod_K 1 Опубликовано 16 Июня 2021 Поделиться Опубликовано 16 Июня 2021 @Colder План такой: 1. Происходит разговор с торговцем. 2. После окончания диалога, актора как-бы бьют сзади, он теряет сознание и телепортируется от торговца на определенное расстояние. 3. Вот как раз когда он теряет сознание, нужно промотать время с условных 7:00 до 12:00 (пять часов). Именно с этим пунктом возникли сложности. Соответственно, нужно просто перемотать время без сна. Ссылка на комментарий
Colder 12 Опубликовано 16 Июня 2021 Поделиться Опубликовано 16 Июня 2021 (изменено) @Rod_K как то так: Скрытый текст k = 1000 --// перемотать function reg_time() t = xr_logic.pstor_retrieve(db.actor, "t", 0) t = t + k level.set_time_factor(t) xr_logic.pstor_store(db.actor, "t", t) news_manager.send_tip(db.actor, "%c[25,240,25,25]Таймфактор увеличен до "..t.."", nil, nil, 5000) end --// остановить function stop_time() level.set_time_factor(10) xr_logic.pstor_store(db.actor, "t", 0) news_manager.send_tip(db.actor, "%c[0,0,255,25]Таймфактор стандартный", nil, nil, 5000) end Увеличь "k" будет быстрее Изменено 16 Июня 2021 пользователем Colder 1 1 Ссылка на комментарий
Rod_K 1 Опубликовано 16 Июня 2021 Поделиться Опубликовано 16 Июня 2021 @Colder Спасибо. Но только у меня примерно тоже самое получалось: время проматывается, но не останавливается. Знаю, что это можно как-то таймерами пофиксить, но сколько я их не пытался реализовать - все ерунда какая-то получалась. @Colder Прошу прощения, теперь все удалось реализовать с таймером. Спасибо Вам огромное! Ссылка на комментарий
Купер 2 994 Опубликовано 16 Июня 2021 Поделиться Опубликовано 16 Июня 2021 А вот здесь, субъективно, таймфактор всё-таки надёжнее из конфигов вычитывать. local t = system_ini():r_u32('alife', 'time_factor') Это - как минимум. Впрочем, так, к слову. 2 Ссылка на комментарий
I am Dead 918 Опубликовано 16 Июня 2021 Поделиться Опубликовано 16 Июня 2021 15.06.2021 в 04:04, dsh сказал(а): мне кажется, лучше использовать уже готовое. Такое только в окнах можно сделать или на худ тоже без проблем можно вывести? Ссылка на комментарий
dsh 3 824 Опубликовано 16 Июня 2021 Поделиться Опубликовано 16 Июня 2021 @I am Dead на худ можно прикрепить любое окно, ну а дальше задача уже свелась к известному. Возможно и прогрессбар можно напрямую прикрепить, он же тоже окно. 1 1 dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
Norman Eisenherz 322 Опубликовано 17 Июня 2021 Поделиться Опубликовано 17 Июня 2021 Здрасьте. ЗП 1.6.02 Требуется отспавнить предмет на смотровой вышке баржи Ноя: xyz 155, 20, -138, lvid 1230702, gvid 13. Проблема: предмет спавнится на уровне земли (точно не летит сверху сквозь все платформы). Была подобная проблема в ЧН – решил подстановкой универсальных для всей локации значений lvid, gvid из [all.spawn]. В ЗП подстановка значений lvid = 293223, gvid = 0 из [all.spawn\alife_zaton.ltx] не меняет исхода. В чем причина? Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
naxac 2 477 Опубликовано 17 Июня 2021 Поделиться Опубликовано 17 Июня 2021 (изменено) @Norman Eisenherz , там, вернее всего, аи-сетки нет. Попробуй после спавна сделать use_ai_locations(false). Типа local obj = alife():create..... obj = alife():object(obj.id) obj:use_ai_locations(false) Изменено 17 Июня 2021 пользователем naxac 2 Аддон для ОП-2.09.2: Яндекс/Google/GitHub Ссылка на комментарий
Rod_K 1 Опубликовано 18 Июня 2021 Поделиться Опубликовано 18 Июня 2021 (изменено) Подскажите, пожалуйста, как сделать так, чтобы нпс не угодил в произвольном направлении при спавне через следующий скрипт: alife():create("...",vector():set(..., ..., ...),...,...) Логику в spawn_section-е прописал в разделе custom_data, чтобы нпс стоял на месте, но это особо не помогает. Изменено 18 Июня 2021 пользователем Rod_K Ссылка на комментарий
Pir@t@s 36 Опубликовано 18 Июня 2021 Поделиться Опубликовано 18 Июня 2021 @Rod_K Если нпс уходит гулять после спавна сам по себе, это ошибка в логике. 1 Ссылка на комментарий
Rod_K 1 Опубликовано 18 Июня 2021 Поделиться Опубликовано 18 Июня 2021 @Pir@t@s В общем, у меня проблема заключается в следующем: Нужно прописать волку логику или скрипт, чтобы он, после окончания диалога с другим нпс, сорвался со своего места и отправился на заданную точку. Затем с ним следует диалог и после него Волк возвращается на свою исходную позицию. Так вот, на данном этапе мне нужно расшевелить волка, чтобы он отправился на заданную точку. Здесь и возникли проблемы, поскольку я и логику прописывал с волкером, и пытался удалить и потом заспавнить через alife заново, но не выходит ничего - так и продолжает стоять на своем изначальном месте. P.s. платформа - ТЧ. Ссылка на комментарий
AndreySol 215 Опубликовано 19 Июня 2021 Поделиться Опубликовано 19 Июня 2021 3 часа назад, Rod_K сказал(а): чтобы он, после окончания диалога с другим нпс С каких пор неписи стали друг с другом разговаривать? Выкладывай то, что пытался прописать НПСу в логику. Ссылка на комментарий
Купер 2 994 Опубликовано 19 Июня 2021 Поделиться Опубликовано 19 Июня 2021 Гы... С самых что ни на есть релизных: Скрытый текст [remark@esc_corps_wounded] snd = esc_tolik_to_wolf target = 006 - возможные значения SID, actor, nil anim = guard on_signal = sound_end| walker@to_gulag_esc_corps_wounded danger = danger_condition@tolik meet = no_meet abuse = false Ссылка на комментарий
I am Dead 918 Опубликовано 20 Июня 2021 Поделиться Опубликовано 20 Июня 2021 @AndreySol Ну здрасьте, приехали, а как разговор Васильева и Сахарова в бункере учёных? Как же разговор шустрого с бандосами? Это только что первое на ум пришло, я уверен что таких ситуаций в игре более, а в модах - подавно. Ссылка на комментарий
AndreySol 215 Опубликовано 20 Июня 2021 Поделиться Опубликовано 20 Июня 2021 @I am Dead @Купер Диалог - это возможность для игрока, управляющего актером, начать взаимодействие с НПС и войти в режим выбора фраз в соответствующем диалоговом окне. А все то, о чем вы написали - это обыкновенный отыгрыш неписями своей логики, с анимациями и воспроизведением прописанных звуков, и с определенной синхронизацией между схем. 3 1 Ссылка на комментарий
I am Dead 918 Опубликовано 20 Июня 2021 Поделиться Опубликовано 20 Июня 2021 (изменено) @AndreySol Полнейший бред, уроки русского языка вам поучить, товарищ! Диалог это в первую очередь разговор между двумя и более лицами, что в свою очередь и имел ввиду товарищ @Rod_K 1 час назад, AndreySol сказал(а): обыкновенный отыгрыш неписями своей логики, с анимациями и воспроизведением прописанных звуков, и с определенной синхронизацией между схем. По твоему именно с такой трактовкой должны все задавать вопросы в этой теме? Изменено 20 Июня 2021 пользователем I am Dead 2 1 Ссылка на комментарий
Купер 2 994 Опубликовано 20 Июня 2021 Поделиться Опубликовано 20 Июня 2021 Оффтоп: Скрытый текст Да ладно, чего зря оффтопить, всё равно без предоставленной проблемной логики гадать можно до морковкиного заговенья Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти