İçeriğe geç / Skip to content / Zum Inhalt

Risiko und Belohnung: Lufttricks für ein Pogo-Spiel

Ahmet Balaman

6 Min. Lesezeit

Vibe CodingBOINGWARDSpieldesignGodotGDScriptMobile GameClaude Code
Risiko und Belohnung: Lufttricks für ein Pogo-Spiel

In der ersten Version von BOINGWARD hüpfte der Pogostab nur. Beim Spielen kam mir etwas Einfaches in den Sinn, und ich habe es genau so aufgeschrieben: „Wenn er einen coolen Move hinlegt, soll er höher springen.“ Dieser Satz ist eine schöne Idee, aber kein Design. Welcher Move? Wie viel höher? Und was, wenn der Spieler mitten im Move auf den Boden knallt? Dieser Beitrag verfolgt, wie aus diesem einen Satz ein Designdokument und dann ein System aus Zahlen wurde.

Die ganze Geschichte steht im Hauptbeitrag der Serie, die Sprungphysik, auf der die Tricks aufbauen, im Physik-Beitrag.

Zuerst die Grenzen

Das Designdokument beginnt nicht mit der Belohnung, sondern mit den Grenzen. Tricks müssen diesen Regeln folgen:

  • Freiwillig. Jeder Parcours lässt sich ohne Tricks beenden. Die Bots, die die Parcours testen, machen nie einen Trick; verlangt eine Plattform einen, schlägt der Test fehl.
  • Riskant. Mitten im Trick zu landen ist eine Strafe, kein Gratis-Absprung.
  • Deterministisch. Der Trickzustand läuft im Physikschritt weiter; zwei Telefone mit 30 und 144 Bildern pro Sekunde bekommen aus demselben Trick dasselbe Ergebnis.
  • Die Regel „keine Sprungtaste“ gilt weiter. Das Hüpfen bleibt automatisch; die Trick-Taste dreht nur in der Luft.
  • Kosmetik hat keine Physik. Die Drehung ist rein optisch; der Kollisionskörper dreht sich nie.

Der letzte Punkt ist wichtig. Der Salto des Roboters ist eine Animation; für die Physik steht der Pogostab immer aufrecht. So beeinflussen Tricks nie Kollisionen, Plattformkanten oder die Fairness im Mehrspielermodus.

Eingabe: eine Taste, vier Tricks

Im Design hält der Spieler die TRICK-Taste unten rechts in der Luft gedrückt. Welcher Trick kommt, entscheidet die Richtung des linken Sticks im Moment des Drückens:

Stick beim Drücken Trick Drehachse
Nach vorn Vorwärtssalto Rechte Achse der Kamera, Nase nach vorn
Nach hinten Rückwärtssalto Rechte Achse der Kamera, Nase nach hinten
Links oder rechts Seitwärtssalto Achse der Bewegungsrichtung
Mitte Drehung Senkrechte Achse, 360 Grad

Solange die Taste gedrückt ist, steuert der Stick nicht, denn er hat den Trick schon gewählt. Beim Loslassen kehrt die Steuerung zurück. Es gibt kein eigenes Menü und keine Kombination zum Auswendiglernen; es ist einfach genug für einen Daumen auf dem Touchscreen.

Wann darf ein Trick beginnen?

Wäre bei jedem Sprung ein Trick möglich, verlöre das System seinen Sinn. Ein Trick kann nur beginnen, wenn bis zum Zurückfallen auf die letzte Absprunghöhe noch mindestens 0,7 Sekunden bleiben. Ein normaler Sprung dauert insgesamt etwa 1 Sekunde, also entstehen Tricks entweder im Steigen oder bei großen Sprüngen (Trampoline, Boost-Pads, geringe Schwerkraft). Damit Spieler dieses Fenster lernen, sieht das Design vor, dass die Taste immer dann leuchtet, wenn ein Trick beginnen kann.

Drehung, volle Umdrehungen und Aufrichten

Solange die Taste gedrückt ist, dreht sich der Roboter mit 1,6 Umdrehungen pro Sekunde. Beim Loslassen werden die vollen Umdrehungen so gezählt:

var turns := floori((angle + snap) / TAU)   # snap = 60 Grad

Dank der Toleranz von 60 Grad zählt eine Drehung um 300 Grad als volle Umdrehung, und der Roboter vollendet den Restwinkel beim Aufrichten. Nach dem Loslassen geht ein verbleibender Winkel in 0,15 Sekunden auf null zurück. Eine Drehung unter 300 Grad bringt nichts, kostet aber auch nichts, wenn sich der Roboter vor dem Aufsetzen wieder aufrichtet.

Landung: drei mögliche Ausgänge

Das Herz des Systems ist der Moment der Landung. Berührt die Spitze den Boden, passiert eins von drei Dingen:

  • Saubere Landung: Ist mindestens eine volle Umdrehung geschafft und steht der Roboter höchstens 20 Grad schief, zählt die Landung als „Style“. Die Absprunggeschwindigkeit dieses Sprungs steigt um die Belohnung.
  • Bruchlandung: Setzt der Roboter auf, während er sich noch dreht, oder mehr als 45 Grad schief, taumelt er, die Kombo fällt auf null und die Landung katapultiert gar nicht.
  • Dazwischen: Ist die Umdrehung geschafft, die Neigung aber zwischen 20 und 45 Grad, gehen die Umdrehungen verloren, und es gibt einen normalen Sprung ohne Strafe.

Diese Dreiteilung ist wichtig. Gäbe es nur „Erfolg oder Strafe“, würden Spieler Tricks meiden. Der mittlere Bereich nimmt die Belohnung zurück, ohne den Fehler zu bestrafen.

Die Belohnungsformel und die Obergrenze

Die Belohnung verbindet geschaffte Umdrehungen und Vielfalt der Tricks:

Belohnung = Summe(Umdrehungen x Satz je Trick) x (1 + 0,5 x (verschiedene Tricks - 1))
Belohnung = höchstens die Obergrenze des Modus

Sätze je Umdrehung: Salto 0,10, Seitwärtssalto 0,08, Drehung 0,06. Verschiedene Tricks im selben Sprung bringen je zusätzlicher Art 50 Prozent mehr. Ein Rückwärtssalto plus eine Drehung zum Beispiel: (0,10 + 0,06) x 1,5 = 0,24.

Die eigentliche Designentscheidung ist die Obergrenze. Der Spielmodus legt sie fest:

Modus Obergrenze Wirkung (12 m/s Basis-Absprung)
Spire 0,10 13,2 m/s, Scheitel von 3,0 m auf 3,6 m
Aufstieg 0,30 15,6 m/s, Scheitel von 3,0 m auf etwa 5,1 m

Der Spire ist ein Zeitrennen mit Medaillen; ein Trick bedeutet dort einen kleinen Zeitgewinn oder eine Abkürzung und darf den Parcours nicht aushebeln. Im langen Klettermodus sind Tricks der eigentliche Nervenkitzel, also ist die Belohnung groß. Die 0,24 aus dem Beispiel werden im Spire auf 0,10 gekappt und bleiben im Aufstieg unverändert.

Die Belohnung wird nach der normalen Absprungrechnung angewendet, die globale Höchstgeschwindigkeit gilt aber weiter. Boost-Pads ignorieren die Belohnung, weil ihr Ergebnis fest sein muss. Die Belohnung gilt nur für einen Sprung; die nächste Landung beginnt wieder bei null.

Warum sie unabhängig von der Bildrate sein muss

Der Drehwinkel läuft im Physikschritt weiter, nicht im Zeichenframe. Das klingt nach einem Detail, ist es aber nicht: Folgte der Winkel dem Zeichenframe, würde ein Telefon mit 120 Bildern eine Umdrehung zu einem etwas anderen Zeitpunkt beenden, und derselbe Trick wäre auf einem Gerät sauber und auf dem anderen eine Bruchlandung. Die Testsuite spielt denselben Trickversuch mit 30, 60 und 144 Bildern pro Sekunde und verlangt ein identisches Ergebnis (gelandete Tricks, Belohnung, Zahl der Sprünge).

Wie es auf dem Bildschirm aussieht

Die Optik der Tricks entstand in einer eigenen Sitzung. Der Roboter dreht sich um seinen Körpermittelpunkt einen Meter über der Spitze des Pogostabs; bei der Drehung lassen seine Hände den Stab los, nach einer sauberen Landung staucht er sich leicht und funkelt, nach einer Bruchlandung wackelt er. Für die Oberfläche hat das Designdokument ebenfalls einen Plan: nach einer sauberen Landung kurz „STYLE +18%“ auf dem Bildschirm, nach einer missglückten ein rotes „BAIL“.

Ein ehrlicher Hinweis: Stand 4. Oktober liegen Trickphysik, Tests und Roboteranimationen im Hauptzweig, aber die TRICK-Taste auf dem Bildschirm ist noch nicht an das Eingabesystem angebunden. Das System ist fertig; nur der Daumen des Spielers kommt noch nicht heran. Den aktuellen Stand halte ich auf der BOINGWARD-Seite fest.

Häufig gestellte Fragen

Wie balanciert man Risiko und Belohnung im Spieldesign?

Schreiben Sie die Grenzen auf, bevor Sie die Belohnung festlegen: Ist sie freiwillig, wie hoch ist die Strafe, was bringt sie höchstens? In BOINGWARD ist ein Trick nie Pflicht, ein Fehlschlag ist eine kurze Strafe, und ein Teilerfolg bringt weder Strafe noch Belohnung. Die Obergrenze legt der Spielmodus fest.

Warum hat die Belohnung eine Obergrenze?

Eine Belohnung ohne Grenze hebelt das Parcoursdesign aus: Ein Trick bringt den Spieler auf eine Höhe, die der Designer nie eingeplant hat. Eine kleine Grenze im Zeitrennen und eine große im freien Aufstieg lassen dasselbe System in zwei Modi unterschiedliche Rollen spielen.

Warum sollte man Teilerfolge nicht bestrafen?

Würde jeder Fehlversuch bestraft, würden Spieler aufhören, es zu versuchen. Ist die Umdrehung geschafft und die Landung nur etwas schief, ermutigt der Verlust der Belohnung ohne Strafe zum Weiterprobieren; die Strafe bleibt einer klar schlechten Landung vorbehalten.

Kommentare