Jak mogę wdrożyć globalną drabinę najlepszych wyników? [Zamknięte]

15

Czy są jakieś istniejące ramy, na których mogę budować? Czy powinienem zbudować własny? Jak mogę zapobiec zamieszczaniu fałszywych wyników?

Bryan Denny
źródło
O jakich platformach mówisz? Czy musi działać na różnych platformach?
Dennis Munsie
@Dennis specjalnie używa Java i programuje na Androida.
Bryan Denny

Odpowiedzi:

6

ScoreLoop jest dostępny na platformę Android.

Możesz także użyć ScoreNinja . ScoreNinja oferuje łatwy sposób na wdrożenie globalnych wyników, ale wymaga przejrzenia wyniku w aplikacji ScoreNinja.

W przeciwnym razie iPhone Cocos zapewnia globalny wynik dzięki CocosLive . Możesz użyć CocosLive.net lub własnej maszyny wirtualnej GoogleApp Engine. CocosLive nie jest dostępny na platformie Android, ale protokół jest REST z JSON i można go łatwo przenieść.

Moje obecne rozwiązanie to CocosLive na Androida i iPhone'a z moją własną maszyną wirtualną, ale wykorzystam ScoreLoop w mojej następnej grze do integracji z sieciami społecznościowymi.

Ellis
źródło
5

Nie jestem pewien, czy istnieje jedna platforma, która obejmuje wiele platform, ale na pewno istnieją ramy specyficzne dla platformy. Dwa, które przychodzą na myśl na iPhone'a to Scoreloop i OpenFeint .

Carson
źródło
Ogłoszono OpenFeint dla Androida - patrz openfeint.com/developers/android .
Dennis Munsie
1

Wykonaj następujące czynności:

(1) Użytkownik otrzymuje wynik w grze.

(2) Utwórz ciąg „Nazwa użytkownika, wynik, znacznik czasu” lub coś podobnego.

(3) Dodaj sól (tajny ciąg) do tego ciągu: „nazwa użytkownika, wynik, znacznik czasu, SALTSTRING”

(4) Oblicz skrót tego ciągu za pomocą swojego ulubionego algorytmu (MD5, SHA ...).

(5) Prześlij „Nazwa użytkownika, wynik, znacznik czasu” wraz z hashem obliczonym na swojej stronie: www.yoursite.com?str=username,score,timestamp&hash=MYHASH lub coś podobnego

(6) Na serwerze powtórz obliczenia, tj. Utwórz „nazwę użytkownika, wynik, znacznik czasu, SALTSTRING”, a następnie porównaj z hashem przesłanym przez użytkownika. Jeśli nie pasuje, coś zostało zmienione.

Uwaga: jeśli użytkownik może uzyskać pliki klas, wówczas można je zdekompilować, dzięki czemu można zobaczyć sól. Jeśli jednak użytkownik może zdekompilować program, nie ma sposobu, aby zapobiec fałszywym wysokim wynikom: użytkownik może zmodyfikować kod, aby ułatwić grę i użyć tej wersji. Nie będziesz mógł tego sprawdzić.

Per Alexandersson
źródło