@Medovochka

Возможны ли подобные технические реализации моментов в мобильной разработке игр на Unity?

На данный момент занимаюсь анализом рынка мобильных игр, а в будущем планирую перейти в дев.
У меня более технические вопросы на рассуждение, но так как нету опыта в разработке, то обращаюсь к вам.

spoiler

Вопросы будут по игре RAID. Можете мои вопросы и на другие игры проецировать, но суть не изменится.

Кто играл или играет в RAID знают о том, что он тратит очень много времени игрока (хотя, давно обещают ввести возможности для ускорения и т.д.).

По поводу КБ (клановый босс, либо в других играх будет финальный босс файт) - Обычно я затрачиваю 25-27 минут (там идет авто-бой, хоть это хорошо) на одного босса, а их 2, и выходит что у меня уходит почти час игры. В такие моменты нельзя свернуть игру, либо перейти на другую активность, то есть только смотреть на включенный телефон и ничего не делать


Отсюда и вопросы:
P.S. Игра реализована на движке Unity

1) Сложно ли технически на Unity реализовать возможность фоновых/параллельных активностей в самой игре? Допустим, как пример fallout shelter - вы можете поставить улучшение комнаты (будет длиться час), и при этом параллельно нападать на других игроков или заниматься другой активностью.

2) Сложно ли технически на Unity реализовать возможность фоновых активностей при заблокированном телефоне или свернутой игре? Тот же самый пример с fallout shelter - вы перед сном поставили улучшение комнаты (которое будет длиться 10 часов), заблокировали телефон, а утром останется подождать час до окончания улучшения. Так же самое и со свернутой игрой - поставить на улучшение, свернуть игру и пойти смотреть Ютуб.

Понимаю, что у компании эти пункты могут быть не в приоритете и далее. Но меня интересует именно техническая реализация, а не почему компания не хочет сделать эти пункты
  • Вопрос задан
  • 141 просмотр
Решения вопроса 1
RiseOfDeath
@RiseOfDeath
Диванный эксперт.
1) Сложно ли технически на Unity реализовать возможность фоновых/параллельных активностей в самой игре? Допустим, как пример fallout shelter - вы можете поставить улучшение комнаты ( будет длиться час), и при этом параллельно нападать на других игроков или заниматься другой активностью


Я конечно не эксперт в юнити (вообще не в теме), но разве эти действия обрабатывает не сервер игры (который можно написать на чем угодно), а клиент просто запрашивает обновление при открытии нужной "активности" игроком?
Т.е. иными словами пока вы воюете с другим игроком, ваша игра (скорее всего) знать не знает что у вас в убежище происходит и запросит его состояние когда вы еще раз его откроете. Как вариант - для большей "гладкости" игра примерно закешировала его последнее известное состояние и показывает его (с поправкой на прошедшее кол-во времени, ведь посчитать сколько времени прошло это элементарно), параллельно в фонезапрашивая от сервера актуальное состояние.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
freeExec
@freeExec
Участник OpenStreetMap
Но в ваших примерах же нет никакой "фоновой активности", тупая проверка при запуске если полдень, то здание построено.
Ответ написан
Комментировать
MinTnt
@MinTnt
...

1) Это иллюзия. Зачем тратить ресурсы на работу в фоне, и тд, когда всё это можно просто реализовать некоторыми матем.просчётами. Ну а так, стоит прочекать AsyncTask, Coroutine.

2) Прочекайте так же про "Жизненный цикл Activity". Чтоб лучше понять фоновые процессы
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы