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/
dsh 3 824 Опубликовано 26 Января 2017 Поделиться Опубликовано 26 Января 2017 Вот так и не понял: ближний к той, или ближний к этой. Ты указываешь начальный вертекс и задаешь расстояние. Движок ищет вертекс, который будет на максимальном расстоянии от начального вертекса, но не дальше указанного расстояния. Притом, у меня есть ощущение, что не дальше указанного расстояния - это не с точностью до миллиметра, а примерно. получить который не ближе 10, но не дальше 20 метров оттуда, откуда смотрим По идее, если запросить тот, который не дальше 20, то это будет именно то, что тебе нужно. А будет он, при этом, ближе 10 или дальше 10, уже зависит от наличия валидных вертексов на этом расстоянии. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062617
Dennis_Chikin 3 664 Опубликовано 26 Января 2017 Поделиться Опубликовано 26 Января 2017 Ну и откуда у меня тогда в логе 0.6 при запрошенных последовательно от 9 до 20 ? Хорошо, щас попробую попросить больше. Они там ТОЧНО есть. i: 50, lvid: 29341, dist: 0.59132808446884i: 45, lvid: 29341, dist: 0.59132808446884...i: 20, lvid: 29341, dist: 0.59132808446884Прямо ко курсу, в чисто поле, ага. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062621
dsh 3 824 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 @Dennis_Chikin, а ты попробуй, пройдись циклом по всем вертексам, проверь какие из них accessible() для этого непися и сравни с тем, что тебе vertex_in_direction() возвращает. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062629
AndrewMor 533 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 self.se_respawn:update_online() То есть достаточно закомментировать вызовы self.se_respawn:update_online() self.se_respawn:update() и респавна не будет? Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062643
Dennis_Chikin 3 664 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 se_respawn:update_online() se_respawn:update() внутри у них убрать self:execute(), если на то пошло. Да, ВООБЩЕ ни какого. 1 Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062671
gam 118 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 (изменено) То есть достаточно закоментировать вызовы self.se_respawn:update_online() self.se_respawn:update() и респавна не будет? Попробуй отключить только self.se_respawn:update(). self.se_respawn:update_online() похоже работает только для некоторых сторилайновых квестов. Т.е можешь нарушить баланс прхождения игры. Изменено 27 Января 2017 пользователем gam 1 Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062673
Карлан 1 050 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 Присоединяюсь к числу пострадавших от мороза. Как актор накапливает радиацию в зонах радиации? Я затерялся в пучине нет-пакета. Для разборок берем грузовик на Кордоне, тот который в сторону свалки от дома где Лис валяется. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062680
Dennis_Chikin 3 664 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 Моя твоя не понимай. hit_type = radiation awaking_time = 100 blowout_time = 100 accamulate_time = 500 Срабатывает, и наносит хит. В заблуждение могут вводить еще МАТЕРИАЛЫ с хитом радиации. Их иногда в радиоактивную зону добавляют, чтоб жизнь медом не казалась. Или без нее - тогда на детекторе ничего нет, а радиацию - огребаешь. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062701
Карлан 1 050 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 Да я пример же конкретный дал. Подойди к грузовику, хита нет, радиация есть. То есть там он начинает жрать радиацию и на апдейте кондишнов убиваться, это вроде понятно, а вот непонятно где там аномалия к этому всему привязана. Никак не найду. Т.е. урон от накопленной радиации минует хит как я понял, а аномалия по сути нас и не бьет. Поэтому я задался вопросом как (событийно) определить когда мы жрем радиацию в аномалии, а когда где-то еще. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062712
Dennis_Chikin 3 664 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 (изменено) Так а просто хит радиацией в скрипте сделай - он hp будет снимать, или радиацию накапливать ? Изменено 27 Января 2017 пользователем Dennis_Chikin Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062713
Карлан 1 050 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 Накапливает. Я запутался. Надо смотреть в радиацию чего у нее там сделали. Работает все верно и логично конечно, я не спорю, просто все хочу понять с ней реально все апдейтами обкладывать или можно где-то на событийные рельсы съехать. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062714
TIGER_VLAD 361 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 @Карлан, Тоже интересует этот вопрос. Пробовал когда-то отследить хит от радиации возле этого грузовика и ничего не получилось. Хита походу от радиации нет, просто отнимается жизнь. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062726
Карлан 1 050 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 Так. Австрийский кофе снял припудренность. При хите по BI_NONE коллбек не отрабатывает, но хит имеем, так что если хотим обработку апдейта снять (для статика например), то переписываем статик в исходники куда-нибудь в ActorCondition или около него. Вопрос закрыт. P.S. Комментировать проверку не советую, так как могут выползти артефакты. Ну вы поняли какие. А уж из извращений по желанию что хотите, хоть бы и проверку типа хита, но тоже на свой страх и риск, а то xr_detector может и зашутить. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062739
Dennis_Chikin 3 664 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 Может кто разбирался уже, чтоб мартышкин труд не делать... Имеем непися, допустим, под camper. Схема прерывается чем-то более важным, непись делает свои дела, и отпускается обратно, под camper. После этого, если непись перемещался - скажем, шел под тот camper откуда-то еще - перед тем, как идти дальше, он разворачивается, и бежит туда, откуда пришел. Нет, не путать с вечно бегающим на Кордоне Шустрым, которому так и написано - при каждом онлайне бежать на атп, а потом оттуда в ДН. Тут ничего такого вроде не прописано. Тем не менее, есть. Кстати, не только camper, просто сейчас занимаюсь неписем, который именно под ним. Вопрос - ВОТ КАК оно так сделано, и можно ли это поправить без особенного кровопролития ? Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062816
UnLoaded 313 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 Тут ничего такого вроде не прописано. Тем не менее, есть. Вроде, как непись возвращается в предыдущую точку пути, с которого его сдернуло из схемы. Если путь длинный, а точек мало - выглядит не красиво... Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062827
Dennis_Chikin 3 664 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 "возвращается в предыдущую точку пути" - это move_mgr, да ? А где именно он это делает ? Кто-нибудь правил ? Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062829
Карлан 1 050 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 @Dennis_Chikin, этож дорога из желтого кирпича! Логика ему целиком ресетится, он закидывается в своего кемпера, который тоже ресетится и начинает свое представление. Тут без свистопляски не поправишь. А так все что пожелаешь, вплоть до запоминаемых флагов в путях. А кемпер или нет тут да, любая схема где бороздим дороги под путями. В конце концов ты же не знаешь как далеко зайдет сталкер и какой ему айдишник поинта пихать в ресет, разве что разбирать путь и получать ближайший к неписю поинт в направлении к конечному и его айди засовывать в ресет. Такая блистательность искусственным интеллектом же в каждом моде. Ортодоксально и канонично, за лечение могут и по рукам дать, случаи бывали. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062831
Dennis_Chikin 3 664 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 Гм, навскидку, сказать этому самому move_manager, что в исходную точку ходить не нужно. А нужно в текущую. Не ? Спрашиваем у непися, где он, и в туда говорим, что все типа нормально, и когда вернемся - пусть спокойно продолжает свои дела. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062834
Карлан 1 050 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 Это навскидку, а на деле он у тебя может десять раз этот путь туда обратно обойти в поисках кровососов, артефактов и разгадки зоны. В теории extrapolate_callback и ага. Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062836
Dennis_Chikin 3 664 Опубликовано 27 Января 2017 Поделиться Опубликовано 27 Января 2017 (изменено) Не, ну мы его отвлекли, следовательно, знаем, с какой целью отвлекли. А теперь пусть себе идет, куда шел. За кровососами - значит, за кровососами. Нам надо свои дела сделать, и чтоб непись после этого обратно не побежал. В общем, пока втыкаю вывод в лог во все подозрительные места с целью понять: где же у него кнопка. UPD: э-эээ... мнэ-эээ... xr_camper делает reset_scheme(), и move_mgr:setup_movement_by_patrol_path() делается npc:set_start_point( self.current_point_index ), после чего непись резво бежит назад. Изменено 27 Января 2017 пользователем Dennis_Chikin Ссылка на комментарий https://www.amk-team.ru/forum/topic/6185-skriptovanie/page/411/#findComment-1062838
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти