Throttle и Debounce
Плагин предоставляет доступ к двум особым условиям: Не чаще чем раз в <X> секунд и На отложенное событие.
Если вы предпочитаете использовать JavaScript, то вы можете ознакомиться со статьями: Debounce на примере формы поиска и Throttle на примере изменения страницы при прокрутке.
Throttle
Иногда бывает, что какая-то часть игры может сильно влиять на общую производительность. Например, обработка физики или искусственного интеллекта.
Из-за сложности подобных вычислений, лучше избегать их использования слишком часто. Для таких случаев обычно используют Каждые <X> секунд, чтобы запускать код раз в некоторое, но это не всегда возможно.
Вдруг у нас есть какая-то сложная игровая механика, которая выполняется при нажатии на экран? В таких ситуациях, когда надо ограничить частоту выполнения кода, но вы не можете использовать таймер, вы можете воспользоваться особым условием Не чаще чем раз в <X> секунд.
Важно
Не рекомендуется использовать Не чаще чем раз в <X> секунд каждый тик, это не повлечет за собой никаких последствий, но вместо этого лучше использовать Каждые <X> секунд.
Debounce
Некоторые методы SDK Яндекс Игр имеют ограничение на количество запросов в определенное время. Если вы будете пренебрегать этими ограничениями, то ваша игра может не пройти модерацию.
Например, если вы слишком часто обновляете счет в лидерборде, то вам стоит использовать особое условие На отложенное событие в связке с триггерным условием Отложить выполнение. Эта связка работает по аналогии с нативной связкой Сигнал → При получении сигнала, но откладывает вызов на определенное время с момента последней попытки выполнения.
Однако, его можно спутать с предыдущим условием Не чаще чем раз в <X> секунд, ведь мы его тоже использовали, чтобы спрятать код, который не должен вызываться слишком часто, так в чем же разница?
Основное их различие в том, что Не чаще чем раз в <X> секунд ограничивает частоту вызова, а На отложенное событие откладывает вызов функции на определенное время, а это именно то, что нам нужно, ведь нам, в случае с отправкой счета в таблицу, не обязательно выполнять функцию в слишком часто, нам лишь нужно не превышать ограничение.
Визуализация разницы между Не чаще чем раз в <X> секунд и На отложенное событие:
Примечание
Если при работе с плагином вы столкнулись с проблемой или у вас появился вопрос, обратитесь в сообщество в Телеграме.