@GingerSibe

Как заставить работать кликер в фоновом режиме?

Здравствуйте, у многих кликеров когда прокачиваешь автоматическую генерацию валюты, закрываешь приложение и потом заходишь, то у тебя выскакивает окно по типу "У вас накопилось 50000 валюты, пока вас не было", подскажите пожалуйста вот как сделать чтобы пока у меня приложение закрыто, то валюта бы копилась дальше>?
  • Вопрос задан
  • 494 просмотра
Решения вопроса 1
red-cat-fat
@red-cat-fat
Делаю игры
В полноценных кликерах и других играх, где используется игровой процесс в "нерабочем" состоянии - либо работает механика на сервере (что на самом деле редко делают, только в случаях возможного влияния других игроков извне), либо осуществляют ускоренную симуляцию.
Например, есть какое-то здание, которое накапливает золото с течением в ремени по формуле
сurrency(t) = t*currencyPerSecond
где t - время, а currencyPerSecond - количество валюты, начисляемое в секундах.
В итоге игрок сидит и играет, каждую секунду получает по currencyPerSecond. И тут мы должны куда-то сохранять момент, в который мы последний раз получили эту валюту. Например, в 11:00 игрок получил currencyPerSecond и у него теперь 10000 золота. Мы это записали и сохранили в файл сохранения, какой-нибудь json или типа того.
Игрок закрыл игру и открыл через пол часа, в 11:30.
Мы пошли смотреть, когда игрок последний раз получил валюту - в 11:00, а сейчас 11:30 - значит он отсутствовал 30 минут и мы должны нагенерировать ему
30*60*currencyPerSecond (30 минут * 60 секунд * на величину получаемого золота в секунду)

И тут-то, если больше 0, то показываем игроку окно, что "У вас накопилось 30*60*currencyPerSecond валюты. А в сумме у вас 10000 + 30*60*currencyPerSecond".
currencyPerSecond - может само по себе быть формулой, типа количество построенных зданий * 2 или типа того.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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