Optimierung der Akkulaufzeit in Monster Walk

UNITY TEAM /
Jun 2, 2026|3:59 Min.
Monster Walk | Talofa Games
Diese Website wurde aus praktischen Gründen für Sie maschinell übersetzt. Die Richtigkeit und Zuverlässigkeit des übersetzten Inhalts kann von uns nicht gewährleistet werden. Sollten Sie Zweifel an der Richtigkeit des übersetzten Inhalts haben, schauen Sie sich bitte die offizielle englische Version der Website an.

Lesen Sie unser Interview mit Jenny Xu, der Geschäftsführerin von Talofa Games, in dem sie die technischen Herausforderungen und Entwicklungsentscheidungen erläutert, die hinter der Schaffung eines nahtlosen Hintergrunderlebnisses stehen, darunter auch, wie das Team Unity-Hooks für „OnApplicationFocus“ und „OnApplicationPause“ nutzt, um den Spielstand zu speichern.

JENNY XU:Als wir „Monster Walk“ konzipierten, war das zentrale Designproblem, das wir zu lösen versuchten, folgende Frage: Wie können wir Schritte – also echte Schritte, die man im Alltag macht – so gestalten, dass sie sich wie ein Spiel anfühlen? Es fühlt sich nicht wie eine lästige Pflicht an, es wirkt nicht wie ein Anhängsel, es fühlt sich nicht so an, als wären es zwei verschiedene Dinge – eine Fitness-App und ein Spiel –, sondern wirklich wie ein Spiel, das man spielt, indem man im echten Leben gesünder lebt.

Die größte technische Herausforderung bestand darin, diese Echtzeit-Elemente – wie Live-Daten – wirklich nahtlos und in das Spielerlebnis integriert wirken zu lassen, trotz all der verschiedenen plattformspezifischen Einschränkungen wie Hintergrundübertragung und Akkulaufzeit. Für uns ging es vor allem um die Schrittzählung in Echtzeit und darum, wie man das so gestalten kann, dass es sich für die Spieler weder zu anstrengend noch zu belohnend anfühlt, sondern sie dennoch dazu motiviert, auf ihre Fitness zu achten.

KONSOLIDIERUNG VON SCHRITT-DATENSTROMEN

Da wir Unity verwendet haben, war es wirklich sehr hilfreich, dass sich die Verbindung zu den nativen Plugins für Android und iOS ganz einfach herstellen ließ. Und wir haben es mit Android Health Connect, Google Fit, Garmin und all diesen Datenquellen zu tun, die in unser Spiel einfließen. Und wir müssen all diese Daten zusammenfassen und dem Spieler mitteilen, wie viele Schritte er unserer Einschätzung nach zwischen seinem letzten Spielbesuch und dem nächsten Start des Spiels zurückgelegt hat.

Glücklicherweise bietet Unity uns die Möglichkeit, auf native APIs zuzugreifen. Irgendwann haben wir sogar unseren eigenen Schrittzähler entwickelt, weil wir nicht davon ausgehen konnten, dass sie Health Connect haben würden. Wir konnten nicht davon ausgehen, dass sie Google Fit hatten. Vielleicht hatten sie gar nichts. Und wir haben dieses native Plugin entwickelt, das sich nahtlos in Unity einbindet und im Hintergrund die Schritte zählt, selbst wenn die App geschlossen ist.

Also mussten wir innerhalb unseres Unity-Projekts quasi eine dreistufige Lösung entwickeln, um das zu ermöglichen. Und gleichzeitig darf es nicht zu viel Akkuleistung verbrauchen oder ständig im Hintergrund laufen, damit die Spieler es nicht einfach deinstallieren wollen.

Das Gleiche galt auch für die Aufbereitung all der Daten, die wir erhielten. Denn bei Apple gibt es „Apple Health“ und die native Schrittzählung im Vordergrund – zum Beispiel wenn die App geöffnet ist und das Telefon wackelt, macht der Spieler vielleicht einen Schritt, aber auch „Apple Health“ erfasst in diesem Moment einen Schritt.

Wie konsolidiert man also die redundanten Daten? Wie schafft man es, dass es sich weder zu belohnend noch zu bestrafend anfühlt? Den richtigen Mittelweg zu finden, den Spieler dort abzuholen, wo er gerade steht – je nachdem, welches Gerätemodell er nutzt – und ihm ein magisches Erlebnis zu bieten, das war die größte technische Herausforderung.

OPTIMIERUNG DER AKKULAUFZEIT

Da „Monster Walk“ ein Spiel ist, das praktisch den ganzen Tag im Hintergrund lief, mussten wir Systeme entwickeln, die das Spiel vorantreiben, ohne dass das Smartphone überhitzt. Selbst zwischen iOS und Android unterscheidet sich das Verhalten im Hintergrund erheblich.

Deshalb mussten wir beim Speichern des Spielerstatus besonders vorsichtig sein, und da wir im Hintergrund so viele Schritte und Gesundheitsdaten verarbeiten, mussten wir den Spielern die Illusion vermitteln, dass ihre Monster auch in ihrer Abwesenheit weiter mit ihnen unterwegs waren – selbst wenn die App geschlossen war.

Ich würde also sagen, dass vieles davon auf die Gestaltung der Benutzeroberfläche zurückzuführen ist, und außerdem achten wir sehr darauf, Prozesse zu beenden und sicherzustellen, dass keine Hintergrundprozesse laufen, damit der Nutzer nicht sieht, dass die App geöffnet ist und den Akku belastet.

Wir nutzen also viele der Unity-Hooks für „OnApplicationFocus“ und „OnApplicationPause“ und nutzen diese Momente einfach dazu, den Status schnell zu speichern. Und jedes Mal, wenn sie zurückkommen, schauen wir uns unseren letzten Spielstand an, machen dort weiter und überprüfen ihre Schrittzahl, und dann sagen wir: „Hey, du bist mit deinem kleinen Monsterfreund tatsächlich schon so viel gelaufen.“ Also, willkommen zurück.

Weitere Berichte von Unity-Entwicklern findest du im Unity-Blog und im Resource Hub.