Twoja gra
Jak zapisać postęp gracza w grze HTML5
Dodaj zestaw klyo do pliku index.html, wywołaj klyo.save.get na starcie gry i klyo.save.set po każdej ważnej zmianie. Postęp leży na serwerze klyo, idzie za zalogowanym graczem na każde urządzenie, a przed wydaniem sprawdzisz go w podglądzie w studiu.
Zanim zaczniesz
- Gra w przeglądarce (czysty JavaScript, Godot, Unity, GameMaker albo inny silnik z eksportem do przeglądarki) i dostęp do jej pliku index.html.
- Stan gry jako obiekt, który mieści się w 64 KB, na przykład poziom, monety i ustawienia.
- Po twojej stronie nie potrzeba serwera ani bazy danych: resztę robią zestaw i strona klyo.
Krok po kroku
Dodaj zestaw
Wstaw tę linijkę do pliku index.html przed własnym skryptem:
<script src="https://games.klyo.pl/sdk/klyo-gry-sdk.js"></script>. Silnik z eksportem do przeglądarki woła te same funkcje swoim sposobem wywołania JavaScriptu z gry.Wczytaj postęp na starcie
Wywołaj
klyo.save.get(odpowiedz)raz, gdy gra startuje. Gdyz.okjest prawdą, az.datama dane, odtwórz grę zz.data.z.cloudjest prawdą, gdy odpowiedział serwer klyo, az.reasonmówi, dlaczego dane są tylko z przeglądarki.Zapisuj po ważnych zmianach
Wywołuj
klyo.save.set(stan, odpowiedz)po poziomie, zakupie albo zmianie ustawień. Zestaw trzyma kopię w przeglądarce i łączy zapisy częstsze niż co 2 sekundy w jeden, więc nie potrzebujesz własnego licznika.Sprawdź w podglądzie w studiu
Wgraj paczkę i zagraj w oknie podglądu. Zapis idzie do chmury podglądu, którą widzisz tylko ty, a odpowiedź ma
o.cloudio.previewrówne prawdzie. Wywołajklyo.save.getjeszcze raz albo otwórz podgląd ponownie: te same dane wracają zz.sourcerównym "chmura".Wydaj grę
Po wydaniu każdy gracz zapisuje we własnym miejscu: zalogowany ma postęp na każdym urządzeniu, gość w tej przeglądarce. Twój zapis z podglądu znika razem z podglądem.
Jeśli coś nie działa
Odpowiedź mówi, że dane są lokalne
z.reason mówi dlaczego. bez-strony: gra działa poza klyo (wprost z pliku albo na innej stronie), więc postęp zostaje w przeglądarce. bez-serwera: nie było połączenia, a zestaw wyśle kopię później. pusto-w-chmurze: w chmurze jeszcze nic nie było, więc gra dostała kopię z przeglądarki, a zestaw wysłał ją do chmury.
Mój kod czeka, a potem się poddaje
Odpowiedź przychodzi zawsze, najpóźniej po 8 sekundach, a na klyo od razu. Usuń własny, krótszy limit czasu i uruchom grę z kopii w przeglądarce, zanim odpowie chmura.
Zapis wraca z powodem rozmiar
Stan po zakodowaniu ma więcej niż 64 KB. Zapisuj tylko to, czego trzeba do odtworzenia gry, a nie całą scenę.
Częste pytania
Czy gracz potrzebuje konta, żeby zachować postęp?
Nie. Bez konta postęp należy do tej przeglądarki. Z kontem idzie za graczem na każde urządzenie, a kopia zapisana w tej przeglądarce przed zalogowaniem przechodzi na konto.
Co się dzieje, gdy dwa urządzenia zapisują naraz?
Wygrywa ostatni zapis w chmurze. Kopia z przeglądarki, której serwer jeszcze nie potwierdził, idzie do chmury tylko wtedy, gdy w międzyczasie nie zapisało inne urządzenie, więc starsza kopia nigdy nie nadpisze nowszego postępu.
Czy gracze zobaczą moje testowe zapisy z podglądu?
Nie. Podgląd ma własne miejsce, które otwierasz tylko ty i moderatorzy klyo, i znika ono razem z podglądem.