Skip to content
cstim edited this page Sep 14, 2010 · 1 revision

Hier die Zusammenfassung der 3-Vorwärtsschritte der letzten Tage und Nächte:
Stand 5.5.10, KON

Phone Start → App wird in Hintergrund geladen
Hintergrundprozeß: Monitoring GPS-Valid Data und Funkzellenwechsel für dynamische Erkennung der Bewegung und Strom zu sparen.
>5min GPS Data invalid → GPS ausschalten
Handover Request → GPS einschalten

Wenn GPS Data valid, Start Game
Startbildschirm anzeigen
Frage User: Start Game ja/nein
Ja:
Auswahl der Bewegungsart:
Fußgänger → Späher (Stone Age)
Radfahrer → Kurier (Middle Age)
Auto → Rocket Man (Industrial Age)
Hintergrund: Für jeden Bewegungstyp eigenen Score und Unterscheidung in Datenbank, wie Daten behandelt werden, um Fehlinformationen zu vermeiden.
Weitere Auswahl: Gruppenfahrt
Hintergrund: manchmal will man in einer Gruppe gegeneinander das Spiel spielen, wer kommt auf unterschiedlichen Wegen in direkten Vergleich schneller an. Wie man das genau macht, müssen wir noch aushandeln. Mögliches Feature für Zukunft.

Phone kontaktiert Server, meldet sich an.
Server berechnet nächste Updatezeit für das Phone, um Systemlast zu nivellieren
Formel: mittlere Speed der letzten 10 GPS-Punkte [in m/s] * Serverlast / Normallast + Zufallszahl(1…5 min).
Ergebnis: hohe Serverlast, längere Zeitdauer bis User sich wieder meldet, geringe Serverlast öfter Teilabschnitte eingesendet Zufallszahl verhindert, daß bei gleicher Prozessorlast und mittlerer Speed sich alle solche User zur gleichen Zeit wieder melden und dann wieder Last hochschnellt, somit zeitlich entzerrt wird.

Logge Daten der Bewegung bis User Game beendet; kein Logging wenn GPS-Daten invalid
Wenn Timer (den Server vorgegeben hat) abgelaufen, kontaktiere Server und sende GPS-Daten bis zu diesem Zeitpunkt und bekomme aktuelle Verkehrslage als Bild vom Server.
Server-Bild nach Formel: mittlere Speed letzten 10 GPS-Punkte [in m/s]* 5 min Fahrt
Ergebnis: minimal 2km Umkreis, 200km/h = 17km Umkreis, max. 20km Umkreis

Darstellung des Bildes, Phone stellt um Umkreisbild des Servers nur Ausschnitt abhängig von aktueller Geschwindigkeit dar. Schnelle Fahrt→ weit vorausblickend, langsame Fahrt → näher heran.
Straßen mit hoher mittlerer Speed→ breitere Linien, langsame Speed→ schmale Linie
evtl. einfärben mit Farben, um weitere Unterscheidung zu erreichen.

Server Updates:
Wenn Taste: “Force Update Now” von User gedrückt
Wenn Position >80% des Server-Bildes erreicht hat (Kartenende)
Wenn Timer abgelaufen

Wenn Game beendet wird:
Game kann von User beendet werden → Menü-Punkt “Ende Game”
Wenn GPS-Data >5min invalid
Bei Beendigung: Abmeldung des Phones vom Server, Berechnung des End-Scores und Anzeige der Score-Liste
Wenn neuer Highscore, Glückwunsch-Popup
Beendigung der Aufzeichnung des Tracks
Frage, ob dieser Track in Favoriten-Liste gespeichert werden soll, um ggfs. Upload in Openstreetmap oder für Google-Maps Darstellung oder wenn gute Route zur Wiederfahrt gespeichert werden soll.
Ansonsten verwerfen des Tracks, Speicher wieder freigeben.
App geht in Schlafmodus und überwacht nur, GPS-Speed und Zellenwechsel → siehe Anfang

Gameplay:
Credits werden für jeden gefahrenen Kilometer gewährt, z.B. 1000 Credits (evtll. logarithmisch über Strecke 1,5,10,20,50,100). Da das Spiel als Ziel hat, möglichst schnell sein Ziel zu erreichen, wird ein Speed-Multiplikator eingeführt.
Formel: (meine_mittlere Speed – Server_mittlere Speed) / 10 + 1 für meine Speed>Server Speed
1-(Server_mittlere_Speed – meine_mittlere_Speed) /10 für Speed < Server_Speed
Ergebnis: fährt jemand 2 km im Mittel schneller als die im Server hinterlegte mittlere Speed in der Region, dann wird ein Faktor 1,2 * gefahrene Kilometer angewendet. Fährt jemand 10km langsamer, dann wird er in den Credits bestraft mit 0,1 * km
Sonderpunkte für neue Strecken, die nicht in der Datenbank enthalten ist: Bonus 10’000 Credits
Fahrstrecke zu einer neuen Zeit, die nicht in der Datenbank enthalten ist: Bonus 5’000 Credits
Scores:
mit jedem Serverupdate wird Zwischen-Score berechnet und aufsummiert.
Ende des Games: Endsstand der Credits.

Popups:
New Highscore
Bonus Creditis
Monster Popup für Fahrt in den Stau hinein – nix geht mehr
aktuelle Stauansicht → kann mit 8888 Credits gekauft werden oder wenn Bonus / new highscore erreicht, kann der User mal den aktuellen Stau sehen 30 sek lang.

Clone this wiki locally