В много пользовательской игре делаю ящик в который может смотреть

несколько игроков, как лучше реализовать обновление чтобы данные о предметах в ящике показывались только тем игрокам, которые в него заглянули? В GetLifetimeReplicatedProps вроде как нет возможности указать отдельных игроков. А задача вроде как должна быть распространённая, и наверное велосипед делать не стоит.

12 ответов

15 просмотров

DOREPLIFETIME_CONDITION(classname, property, COND_Custom); + DOREPLIFETIME_ACTIVE_OVERRIDE

Артур-Петров Автор вопроса
NoCodeBugsFree
DOREPLIFETIME_CONDITION(classname, property, COND_...

почитал документацию и не понимаю, как мне тут определить нужных клиентов?

А что значит " заглянуть "?

Артур-Петров Автор вопроса
NoCodeBugsFree
А что значит " заглянуть "?

подошёл игрок к ящику, открыл его содержимое, т.е. отобразился виджет на клиенте и этому клиенту надо показать содержимое ящика в виджете, одновремено в ящик могут заглянуть несколько игроков. И если один игрок положил в ящик что-то оно должно появиться у другого игрока(игроков) открывших ящик, а тем кто рядом бегает но ящик не открыл можно не реплицировать содержимое

Артур Петров
подошёл игрок к ящику, открыл его содержимое, т.е....

и NetCullDistance + какой нибудь OnRep тебе тут не хватает?

Артур-Петров Автор вопроса
NoCodeBugsFree
и NetCullDistance + какой нибудь OnRep тебе тут не...

по идее нет, надо фиксировать факт открытия виджета конкретными игроками, иначе будет лишняя нагрузка от просто пробегающих мимо, и если для ящика это ещё будет не критично, но потом появится склад, а в нём уже может быть много всякого положено

Артур Петров
по идее нет, надо фиксировать факт открытия виджет...

Еслия правильно понял, то вам надо разделить сущности. Т.е. ЯЩИК с которым можно взаимодействовать это актор, который хранит в себе ссылку на СОДЕРЖИМОЕ ящика. СОДЕРЖИМОЕ реплицировать только после взаимодействия с ЯЩИКОМ

Артур-Петров Автор вопроса
Puptsev Andrey
Еслия правильно понял, то вам надо разделить сущн...

верно, я тоже над этим думал, есть ли стандартный способ как-то создать "содержимое" для которого можно "подключать" клиентов?

Артур Петров
верно, я тоже над этим думал, есть ли стандартный ...

Ну например отправить запрос на сервак, в ответ передать содержимое, когда ответ прилетит, отрисовать виджет с содержимым

Артур-Петров Автор вопроса
Puptsev Andrey
Ну например отправить запрос на сервак, в ответ пе...

т.е. в этой ситуации лучше RPC использовать, верно?

Артур-Петров Автор вопроса
Puptsev Andrey
а какие есть вариант?)

ну ещё TCP можно) но RPC по проще в реализации будет

Похожие вопросы

Обсуждают сегодня

Короче я тут узнал полный пиздец Что кучу постов которые я создавал через posted Спустя время не могу редактировать и менять Мол телега возвращае ошибку Это реально так ...
inc.
13
Привет, сталкивался кто с такой ситуацией? У меня есть модальное окно Bootstrap, в нем кнопка закрытия: <button type="button" class="btn-close" data-bs-dismiss="modal" aria-...
Виталий
3
А если изначально бот работал так : есть сайт онлайн школы. У каждого ученика свой кабинет. Где он авторизуется по своим данным. И уже в кабинете, на самом сайте делает оплату...
Денис 💡 Фрилансер
13
что это и почему оно? executor.start_polling(bot, skip_updates=True, on_startup=on_startup, File "/usr/local/lib/python3.10/dist-packages/aiogram/utils/executor.py", line 4...
𐌍𐌄 ᕓ𐌄𐌓𐌌Ꝋ𐌓𐌄
2
Какой число последнее будет, если сказали от 1 до 10 взять все?
Misha Mikhail
5
лучше расскажите, вы тоже используете эмодзи в качестве названий переменных?
Karl {🌪️}{🐊} Shinobi
3
А у тебя есть информация сколько сейчас использует твой бот?
Artem Stormageddon
4
Кто знает, возможно ли сделать линк на телеграм бот и через линк передать команду боту стартовую какую-то?
Куся 🌿⃤ __UKS
4
Окрошка! На квасе или кефире или на пиве?!
Akcium Сергей
4
Ребят, привет. Интересует вопрос: есть ли способ получить доступ к WebView в Linux? Рылся-ковырялся, решения не нашел. Объясню сразу задачу, возможно, скажете, что копаю не в...
advanc3d
13
Карта сайта