Обратно към Unity

DryreL Software Unity

Supabase Game Achievements

Постижения с приоритет на офлайн за игри в Unity

Отключвайте постижения мигновено, дори офлайн, и ги синхронизирайте безопасно, когато играчът е отново онлайн. Вече в GitHub.

Наличен в GitHub

  • 0 msИзчакване на мрежата при отключване
  • 3Assembly-та, ядро без енджин
  • MITБезплатно в GitHub

Общ преглед

Какво прави

Постижения за игри с приоритет на офлайн: мигновено локално отключване, записи, устойчиви на сривове, пакетна идемпотентна синхронизация със сървъра, незадължително известие при отключване и незадължителен Unity Localization.

  • Unity
  • C#
  • Supabase
  • uGUI
  • Лиценз MIT

Как работи

От нула до работещо

  1. Създайте каталогаИзпълнете кратък SQL скрипт веднъж за всяка игра в SQL редактора на Supabase.
  2. Добавете пакетаИнсталирайте от Git URL и инициализирайте веднъж в първата си сцена.
  3. Отключвайте от геймплеяИзвикайте TryUnlock. Мигновено е, записва се локално и се синхронизира на заден план.

Функции

Създаден да просто работи

  • Първо офлайнTryUnlock никога не чака мрежата; отключването е мигновено и се пази локално.
  • Записи, устойчиви на сривовеНапредъкът оцелява при срив или затворена игра.
  • Сигурна синхронизация със сървъраОтключванията се изпращат към Supabase на пакети и повторна синхронизация никога не ги дублира.
  • Известие при отключванеНезадължително известие на екрана при отключване на постижение.
  • ЛокализацияНезадължителна поддръжка на Unity Localization за заглавия и описания.
  • Ядро без енджинОсновното assembly няма референции към енджина, затова лесно се тества.
  • Achievement DashboardПрозорец в редактора за управление на постиженията, смяна на стила на известието с живо преглеждане и настройка на правила без код.
  • Условни постиженияБроячи, задачи и правила „без провал“ — от раздела Rules на таблото или в кода.
  • Известие, което не пречиПлъзга се навътре, чака на опашка вместо да се застъпва, пуска звук и никога не блокира управлението.
  • Поддръжка на Dialogue SystemНезадължително отключване от Dialogue System for Unity плюс пример за интеграция с Patreon.

Първи стъпки

Инсталиране и използване

  1. Отворете Package ManagerВ Unity изберете Window, Package Manager, после бутона +.
  2. Добавете от Git URLПоставете URL адреса на хранилището и натиснете Add.

След това в кода ви

  • ОтключванеAchievementManager.TryUnlock("first_blood")Мигновено и сигурно офлайн. Никога не чака мрежата.
  • ПроверкаAchievementManager.HasUnlocked("first_blood")Разберете какво вече има играчът.
  • РеакцияAchievementManager.AchievementUnlocked += ...Изпълнявайте собствен код при всяко отключване.
  • Синхронизиранеawait AchievementManager.SyncAsync()По желание: само когато трябва да знаете резултата.

Изисквания

Преди да започнете

  • Unity 2022.3 или по-нова (тествано на 6000.3)
  • Пакет Newtonsoft Json (com.unity.nuget.newtonsoft-json)
  • uGUI