Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 16 Мая 2014 Это популярное сообщение. Поделиться Опубликовано 16 Мая 2014 Ковыряемся в файлах ТЧ Прежде чем писать в тему - внимательно читаем первый пост, и пользуемся поиском. Возможно, ответ на Ваш вопрос уже есть. Касательно телепатии: если Вы передаете Ваши файлы телепатическим путем - ответы будут передаваться тоже телепатически. Если Вы предлагаете угадать, отчего у Вас в подвале происходит странный стук - ответ будет передан стуком. 4 8 6 12 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Pir@t@s 36 Опубликовано 20 Октября 2015 Поделиться Опубликовано 20 Октября 2015 Прошу помощи. Как создать укрытия от выброса на новых локациях. Смотрел как это сделано на примере других модов , но так ничего не понял. Подскажите где найти данный материал. платформа SoC 1.0004 Ссылка на комментарий
FonSwong 33 Опубликовано 20 Октября 2015 Поделиться Опубликовано 20 Октября 2015 (изменено) Как правильно достать профиль? В первой функции Сохраняю npc:id() непися, затем Во второй функции загружаю в npc_id и мне нужно получить его профиль, но НЕ через npc = level.object_by_id( npc_id ), ибо в оффлайне если нпс, то крашится игра затем передать "npc" другой фунции, а там уже В третьей функции она снова возьмёт из "npc" npc:id() Пробовал после загрузки профиль вытаскивать через npc = alife():object(a), но он вроде как даёт сид, а в третьей фунции нужно передать "npc" и получить npc:id() Изменено 20 Октября 2015 пользователем FonSwong Ссылка на комментарий
naxac 2 447 Опубликовано 20 Октября 2015 Поделиться Опубликовано 20 Октября 2015 @FonSwong, для серверного объекта - только через net_packet. Аддон для ОП-2.09.2: Яндекс/Google/GitHub Ссылка на комментарий
FonSwong 33 Опубликовано 20 Октября 2015 Поделиться Опубликовано 20 Октября 2015 @FonSwong, для серверного объекта - только через net_packet.А поподробней можно? Ссылка на комментарий
FonSwong 33 Опубликовано 21 Октября 2015 Поделиться Опубликовано 21 Октября 2015 upd. поковырял net_packet'ы, разобрался сам, спасибо. Ссылка на комментарий
Lagos 688 Опубликовано 21 Октября 2015 Поделиться Опубликовано 21 Октября 2015 (изменено) Всем добрый день! Вопрос с загвоздочкой..Есть какие-нибудь особенные настройки(логика) у рестириктора, чтобы в него не могли зайти мобы\НПС? Спасибо. Изменено 22 Октября 2015 пользователем Lagos Официальный сайт . Ссылка на комментарий
naxac 2 447 Опубликовано 22 Октября 2015 Поделиться Опубликовано 22 Октября 2015 @Lagos, задай рестриктору соответствующий restrictor_type: IN default restrictor в SDK, или 2 - в all.spawn Аддон для ОП-2.09.2: Яндекс/Google/GitHub Ссылка на комментарий
Lagos 688 Опубликовано 22 Октября 2015 Поделиться Опубликовано 22 Октября 2015 (изменено) @naxac, из тестов получилось следующее: Я выставил рестриктору этот тип.Закинул на карту пару плотей. Ну-с, начнём тест. Плоти меня увидели, побежали ко мне..я забежал в рестриктор..и плоти "зависли". Т.е., начали бежать на месте. Все схемы отрабатывают(combat, если подойти и прочее), но бегут они упорно на месте. Не двигаясь больше никуда. Не понимаю, в чём дело.. Изменено 22 Октября 2015 пользователем Lagos Официальный сайт . Ссылка на комментарий
UnLoaded 313 Опубликовано 22 Октября 2015 Поделиться Опубликовано 22 Октября 2015 начали бежать на месте Ну так это то самое и есть - in-рестриктор их не пускает к тебе. Ты лучше вместо указания типов рестриктору в СДК попробуй по другому: верни рестриктору тип по умолчанию "None default restrictor"(как-то так, извиняй, СДК не запущен чтоб точнее посмотреть), а затем задай этот рестриктор мобу\ам через ф-цию add_restrictions(string <out_restrictions_names>, string <in_restrictions_names>). Ссылка на комментарий
Lagos 688 Опубликовано 22 Октября 2015 Поделиться Опубликовано 22 Октября 2015 (изменено) @UnLoaded, верно? P.S.: если так - то мобы с момента спавне никуда не двигаются, живут в своём мирке, да бегают на месте. Изменено 22 Октября 2015 пользователем Lagos Официальный сайт . Ссылка на комментарий
naxac 2 447 Опубликовано 22 Октября 2015 Поделиться Опубликовано 22 Октября 2015 @Lagos, всё правильно, так и будет. Если нужно конкретным нпс/монстрам запретить входить в определённую зону, то либо делай как UnLoaded написал, либо в секции нпс в all.spawn укажи этот рестриктор, либо в функции загрузки логики гулага в скриптах. Аддон для ОП-2.09.2: Яндекс/Google/GitHub Ссылка на комментарий
FonSwong 33 Опубликовано 22 Октября 2015 Поделиться Опубликовано 22 Октября 2015 (изменено) Я вот не могу понять. У меня ситуация такая: нпс в оффлайне, я на этот момент знаю его ид, можно ли без вывода нпс в онлайн, получить из net_packet по ид нпс, его userdata Или же мне придётся нпс выводить в онлайн, получить userdata через npc =level.object_by_id(id) и потом отправить его снова в оффлайн Важно то, чтобы я получил userdata нпс в переменную "npc", передал "npc" в другую переменную, и там смог использовать npc:id() Изменено 22 Октября 2015 пользователем FonSwong Ссылка на комментарий
UnLoaded 313 Опубликовано 22 Октября 2015 Поделиться Опубликовано 22 Октября 2015 @Lagos По первому скрину: у тебя один и тот же рестриктор задан и как in и как out. Так нельзя - получается, что мобу запрещено одновременно и входить в него и выходить из него же. Оставь что-то одно. @FonSwong Я чет не пойму тебя: ты знаешь ID непися. Затем пытаешься получить по этому ID'у юзердату, чтоб затем из нее опять получить ID. А сразу этот ID использовать в чем проблема ? Или я не так понял, что-же тебе надобно ? Ссылка на комментарий
Карлан 1 049 Опубликовано 22 Октября 2015 Поделиться Опубликовано 22 Октября 2015 (изменено) @Lagos, это по меньшей мере странно, кури справочник, потом что-нибудь из практики типа динамических аномалий, но скриптами все-же не советую, вроде где-то уже писал. да бегают на месте. неудивительно, ты логику своих действий проанализируй.@FonSwong, изучи методы клиентских и серверных объектов, у серверного объекта тоже можно получить айди, в нет-пакете клиентской части разумеется нет. Изменено 22 Октября 2015 пользователем Карлан Ссылка на комментарий
FonSwong 33 Опубликовано 22 Октября 2015 Поделиться Опубликовано 22 Октября 2015 (изменено) Уже и не знаю как объяснить, но всё же попытаюсь, ибо самому интересно проводится сбор npc:id() нпс подходящих под условие и записываются ид в tbl_sos, после сбора запускается функция function start_sos() выбирается рандомный ид local npc_id=tbl_sos[math.random(#tbl_sos)] получаем юзер дату npc= --получить как серверный объект или клиентский? ведь нпс может быть оффлайн! делаем нпс компаньоном dialogs.companion_start_folowing(npc,db.actor запуск таймера ogse.g_start_timer("sms_sos_stop", 0,0,1) end В фунцию companion_start_folowing передаётся юзердата через "npc" Вот начало этой функции: function companion_start_folowing(npc, actor) local st = db.storage[npc:id()] Уже тут ошибка- попытка получить через npc:id() ид нпс у серверного объекта Изменено 22 Октября 2015 пользователем FonSwong Ссылка на комментарий
UnLoaded 313 Опубликовано 22 Октября 2015 Поделиться Опубликовано 22 Октября 2015 (изменено) делаем нпс компаньоном Однако, оригинальный подход - делать компаньоном непися, который может быть и офф-лайн ! Ты в курсе, что в офф-лайне логика для мобов не работает ? Да и сама строка, в используемой тобой ф-ции local st = db.storage[npc:id()] однозначно намекает, что непись, которого назначаем компаньоном, должен быть в он-лайне. ID от серверного объекта получают так: ser_obj.id Изменено 22 Октября 2015 пользователем UnLoaded Ссылка на комментарий
FonSwong 33 Опубликовано 23 Октября 2015 Поделиться Опубликовано 23 Октября 2015 (изменено) Вообще я не совсем правильно описал, взятие напарника происходит в онлайне, но вот потом, через 5 минут, допустим, он выходит из напарников, и вот в этот момент мы можем быть в машине, а если мы в машине, все компаньоны автоматом выходят в оффлайн.. Получается мне придётся выбросить временного компаньона из машины в онлайн и тут же его отписать из компаньонов? Попытался, не выходит, временного напарника выбрасывает в онлайн, да, но в файле ogse.script, который постоянно игра пробегает(раз в секунду вроде, может быстрее) Есть условие При котором если актор в машине, то напарников кидает в оффлайн и привязывает к машине. Такое чувство что я тупо не успеваю при выкиде в онлайн получить клиентскую юзердату и отрубить его от напарников Изменено 23 Октября 2015 пользователем FonSwong Ссылка на комментарий
NonGrande 16 Опубликовано 24 Октября 2015 Поделиться Опубликовано 24 Октября 2015 (изменено) Добрый вечер. Скажите пожалуйста: можно ли заспавнить бармена раненым, чтобы он лежал и просил аптечку при заходе в бар? Изменено 24 Октября 2015 пользователем NonGrande Ссылка на комментарий
ed_rez 16 109 Опубликовано 24 Октября 2015 Поделиться Опубликовано 24 Октября 2015 NonGrande, а у бармена есть вообще анимация "ранение"!? Изначально от этого нужно отталкиваться..., а затем уже спавнить его... Ссылка на комментарий
UnLoaded 313 Опубликовано 24 Октября 2015 Поделиться Опубликовано 24 Октября 2015 допустим, он выходит из напарников, и вот в этот момент мы можем быть в машине, а если мы в машине, все компаньоны автоматом выходят в оффлайн.. Ни чего не понял ! Что ты вообще пытаешься сделать ? Пытаюсь по-ванговать: есть НПС-напарник, актер едет в машине и в это время происходит исключение НПСа из напарников ? И проблема в том, что при нахождении актера в машине, все его напарники находятся в офф-лайне ? можно ли заспавнить бармена раненым Проверь... Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти