Autor Wątek: Steam leaderboards problem  (Przeczytany 691 razy)

Offline Boski

  • Użytkownik

# Styczeń 21, 2018, 22:45:36
Cześć! Mam problem z dodaniem obsługi leaderboardsów steamowych do gry. Co się dzieje przy uruchomieniu:

- jeśli uruchamiam po raz pierwszy FindOrCreateLeaderboard, i leaderboard nie istnieje, to jest tworzony, a setScore jednorazowo działa poprawnie
- uruchamiam znowu, setScore nie działa poprawnie (leaderboard już istniał po poprzednim uruchomieniu)

Jeśli zamaist findOrCreate używam Find, nie działa nic. Nawet jeśli leaderboard zostanie stworzony z poziomu panela ze steama.

Czy ktoś wie, co to może być? Kończą mi się pomysły już. Callback uploadu scora zwraca
pCallback.m_bSuccess = 0, ale bez bardziej szczegółowych informacji

public static void FindOrCreateLeaderboard(string name, UnityEngine.Events.UnityAction onFindOrCreateLevelboard) {
            OnFindOrCreateLevelboard = onFindOrCreateLevelboard;
            //SteamAPICall_t handle = SteamUserStats.FindOrCreateLeaderboard(name, ELeaderboardSortMethod.k_ELeaderboardSortMethodAscending, ELeaderboardDisplayType.k_ELeaderboardDisplayTypeNumeric);
            SteamAPICall_t handle = SteamUserStats.FindLeaderboard(name);
            OnLeaderboardFindResultCallResult.Set(handle);
        }
public static void UploadLeaderboard(int score, UnityEngine.Events.UnityAction onUploadLeaderboard) {
            OnUploadLevelboard = onUploadLeaderboard;
            SteamAPICall_t handle = SteamUserStats.UploadLeaderboardScore(m_SteamLeaderboard, ELeaderboardUploadScoreMethod.k_ELeaderboardUploadScoreMethodKeepBest, score, null, 0);
            OnLeaderboardScoreUploadedCallResult.Set(handle);
}

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline RootKiller

  • Użytkownik

# Styczeń 22, 2018, 17:14:37
Zerknij sobie do dokumentacji https://partner.steamgames.com/doc/api/ISteamUserStats#LeaderboardScoreUploaded_t - może któryś z opisanych przypadków dotyczy ciebie?

Offline Boski

  • Użytkownik

# Luty 07, 2018, 12:32:02
Bardzo dziwna sprawa. Z jeden strony mogło to być to, że przy uruchomieniu w edytorze, gra była w kliencie steama oznaczona jako odpalona, i tak zostawała aż do wyłączenia edytora (nie gry w edytorze). Drugim powodem mogło być użycie w nazwach leaderboardów różnych znaczków typu spacje apostrony. Postawiłem na to, że w buildzie zostanie findOrCreate, a nazwa generowana z prostych znaków. Przeszło i śmiga.