Zauważyłem, że wiele gier (jeśli nie większość lub wszystkie) wykorzystuje różne tabele wyników dla różnych platform. Na przykład inny ranking dla iOS i Androida. Różne tabele wyników na Xbox i PS.
Nie widzę logiki za tym. W końcu powiedzmy, że iPhone i Android wysyłają dane do jednej usługi / systemu.
Czy to decyzja biznesowa?
leaderboards
Chiron
źródło
źródło
Odpowiedzi:
Różne platformy mogą dawać różne wyniki nawet przy tych samych umiejętnościach. Na przykład dlatego, że musiałeś mieć mniej wrogów w grze na Androida z powodu problemów z wydajnością.
To (wraz z różnicą kontrolną) powoduje, że gry na konsole i komputery PC zazwyczaj nigdy nie grają razem (w trybie dla wielu graczy lub w tabeli wyników).
źródło
To może być decyzja biznesowa. To może być wygodna decyzja. To naprawdę zależy; jedyne, co możesz powiedzieć na pewno, to decyzja osób zaangażowanych w tworzenie gry (programista, wydawca, dostawca platformy itp.).
Jesteś przy założeniu, że „iPhone i Android wysyłania danych do pojedynczej usługi”, co nie zawsze jest prawdą. Interfejsy API iOS dla liderów ( Game Center ) wysyłają dane do Apple. Usługa liderów Google wysyła dane do Google. Deweloper może zdecydować się na użycie dostarczonego przez platformę interfejsu API dla swojej gry, ponieważ jest to dla nich łatwiejsze lub tańsze (pomimo faktu, że będzie musiał zbudować implementację dla obu interfejsów API). Mogą również to zrobić, ponieważ te interfejsy API oferują lepszą integrację urządzeń niż interfejsy API innych firm i uważają, że zapewnia to lepsze wrażenia dla odtwarzacza.
Istnieje wiele interfejsów API liderów innych firm, które może przyjąć gra. Niektóre z nich mogą wiązać się z dodatkowymi kosztami (jako produkty detaliczne lub w postaci wymagania od dewelopera zapewnienia i opłacenia hostingu baz danych tabeli wyników). Mogą również nie wyglądać lub być zintegrowane z urządzeniem. Te potencjalne wady należy porównać z korzyścią wynikającą z tego, że wystarczy napisać do API tylko raz (teoretycznie), skracając czas opracowywania.
Szczególna równowaga między tymi wszystkimi czynnikami (i nie tylko) będzie mieć wpływ na decyzję, jakiej konkretnej metody użyć w przypadku tabel wyników; w zasadzie zależy to od potrzeb i pragnień programisty.
źródło
Jeśli korzystasz z wbudowanej funkcji GameCenter w tabeli wyników, aby uniknąć konieczności samodzielnego wdrażania tabel wyników, tworzysz osobne tabele wyników podczas tworzenia wersji dla Androida.
Dla mnie decyzja brzmi następująco: „Nie chcę ponownie wdrażać serwera liderów tylko po to, aby mieć tabele wyników dla wielu platform”.
źródło
Większość odpowiedzi tutaj wyjaśnia powody. Chciałbym wspomnieć o rozwoju systemów iOS i Android.
Apple preferuje gry i aplikacje korzystające z natywnych funkcji iOS. Bardziej prawdopodobne jest, że będziesz polecany, jeśli używasz Game Center do liderów. Zdecydowanie go polecają i mogą nawet skontaktować się z tobą z ofertami promującymi cię na pierwszej stronie, jeśli przejdziesz na to.
Android działa tak samo z Google Play i Google+. Tak więc posiadanie dwóch oddzielnych tabel wyników w GameCenter i wersji GooglePlay / Google + jest bardzo korzystne, aby wyróżnić się i promować swoją grę.
źródło
Nowy członek, nie mogę komentować, ale zgadzam się z tymi odpowiedziami. Jako gracz chciałbym zobaczyć moją „globalną” pozycję w grze na wielu platformach. Jednak jako programista rozumiem, dlaczego są one oddzielne.
Pierwszą rzeczą, jaka przychodzi mi na myśl, jest fakt, że są to różne firmy (o czym wspomniał @JoshPetrie). Microsoft ma własne serwery i bazy danych, podczas gdy Sony ma swoje. Ponieważ są to oddzielne firmy z osobnymi hubami danych, naturalnie będą istnieć osobne rankingi. Musieliby współpracować i dzielić system, w którym mieszczą się oba zestawy danych. Nie wydaje się to prawdopodobne, ponieważ oznaczałoby to, że Microsoft ma dostęp do danych Sony i odwrotnie. I nic nie jest bardziej osobiste dla firmy niż jej dane.
Załóżmy jednak, że było to prawdą i istniała wspólna baza danych, w której wszystkie rankingi są razem. Założę się, że rankingi nie byłyby tak równomiernie rozłożone, jak mogłoby się wydawać, i wynikałoby to z różnic sprzętowych, które skutkują dużą różnicą w zdolności użytkownika do opanowania gry. Każda konsola do gier jest innym środowiskiem lub medium, w którym użytkownik może grać. Opierając się na swojej konstrukcji, środowisko stwarza ograniczenia dotyczące tego, „jak dobrze” użytkownik może grać w stosunku do użytkowników na innym medium.
Największym przykładem, jaki mogę wymyślić (o czym już wspomniałem w innej odpowiedzi), jest różnica między konsolą a komputerem.
Jako przykładu wykorzystajmy Team Fortress 2. Wersja konsolowa jest obsługiwana za pomocą kontrolera ręcznego. Zwykle kontroler obsługuje się zarówno kciukiem, jak i palcem wskazującym (4 cyfry, przynajmniej tak, jak gram). Wersja na PC używa klawiatury z ruchem WASD, innych klawiszy do funkcji i myszy (6 cyfr używanych jednocześnie, według moich obliczeń).
Nie tylko „kontrolery” są różne, ale, jak powiedział @ratchetfreak, każdy system ma swój własny poziom wydajności. Tak więc dokładnie ta sama gra może być powolna i opóźniona na Xbox, ale bardzo płynna na PS lub PC.
Również komputery PC mogą być aktualizowane w przeciwieństwie do gier konsolowych, które są statyczne, dopóki nie pojawi się nowa wersja. Które wtedy tabele wyników byłyby inne, ponieważ wymagana jest nowsza wersja gry (co oznacza inny serwer i bazę danych i bla bla ...)
Oprócz tych różnic masz także ustawienia systemowe, takie jak szybkość myszy, które można zwiększyć w stosunku do czułości joysticka (co, przynajmniej dla mnie, stanowi największą zaletę grania na PC).
Jestem pewien, że zaangażowanych jest wiele innych czynników, ale były to pierwsze rzeczy, które przyszły mi do głowy, gdy zobaczyłem to pytanie. Przepraszam za to, że jestem rozwścieczony, podnieciłem się i wyrzuciłem to tak szybko, jak tylko mogłem.
źródło