Trefferzone und Verwundbarkeitszone
Eine Trefferzone ist die unsichtbare Form eines Angriffs, eine Verwundbarkeitszone die unsichtbare Form eines Körpers, der verletzt werden kann. Ein Angriff trifft, wenn sich beide überlappen, während der Angriff aktiv ist. Jeder Schlag trifft jedes Ziel einmal, und Anlauf und Erholung halten Kämpfe fair und lesbar.

Das sagst du deiner KI
Kopiere es in Claude, Cursor oder ChatGPT. Gute Werte und die typischen Fehler stehen schon drin.
Baue „Trefferzone und Verwundbarkeitszone“ in mein Spiel ein.
Das soll es bewirken: Kämpfe fühlen sich fair an, wenn das, was wehtut, zu dem passt, was der Spieler sieht. Wer die Form eines Angriffs von der Form eines Körpers trennt, kann jede einzeln abstimmen, ohne zu ändern, wie die Figuren aussehen.
Baue es genau nach diesem Automaten. Prüfe zuerst, ob er zu meinem Spiel passt, und bau ihn dann so:
```mermaid
stateDiagram-v2
[*] --> idle
idle: Bereit
startup: Anlauf
active: Aktiv
recovery: Erholung
idle --> startup: drückt Angriff
startup --> active: Anlauf ist vorbei
active --> recovery: aktive Zeit ist vorbei
recovery --> idle: Erholung ist vorbei
```
Nimm diese Startwerte:
- startupTime: 0.12 s
- activeTime: 0.1 s
- recoveryTime: 0.3 s
- reach: 1.4 units
- hitHeight: 1 units
- offset: 0.2 units
Achte auf diese typischen Fehler:
- Der Treffer, der in jedem Bild landet: Sag deiner KI: Halte fest, welche Ziele ein Schlag getroffen hat, und überspringe sie bis zum Ende des Schlags.
- Ein langes Bild überspringt den Treffer: Sag deiner KI: Prüfe auf Treffer in jedem Bild, dessen Zeitspanne das aktive Fenster berührt, nicht nur in Bildern, die darin enden.
- Die Box dreht sich zu spät um: Sag deiner KI: Lies die Blickrichtung einmal beim Start des Schlags, spiegle die Box daraus und behalte sie bis zum Ende des Schlags.
- Berühren zählt als Treffer: Sag deiner KI: Nimm eine strenge Überlappung, mit kleiner als und nicht kleiner oder gleich, und ignoriere Boxen ohne Größe.
- Der Angreifer trifft sich selbst: Sag deiner KI: Nimm den Angreifer nie in die Liste der Ziele und lass die Angriffsbox ein Stück vor dem Körper beginnen.
- Ein Tastendruck mitten im Schlag: Sag deiner KI: Ignoriere die Taste, bis der Schlag vorbei ist, oder merke dir den Druck für den Moment, in dem er endet.
Ändere nichts anderes im Spiel. Behaupte nichts, ohne es zu belegen: Modelliere, was dafür nötig ist, und zeig mir, worauf deine Lösung beruht und woran ich sehe, dass sie klappt. Wenn du etwas nicht zeigen kannst, sag, dass du es nicht weißt. Sag mir danach in einfachen Worten, wie ich es ausprobiere.Oder spar dir das und schließ den MCP an: Dann findet deine KI das alles von selbst.MCP anschließen
Was es bewirkt
Kämpfe fühlen sich fair an, wenn das, was wehtut, zu dem passt, was der Spieler sieht. Wer die Form eines Angriffs von der Form eines Körpers trennt, kann jede einzeln abstimmen, ohne zu ändern, wie die Figuren aussehen.
So läuft es ab, als Diagramm
Alles, was es sein kann, und was es weiterbewegt. Genau danach baut deine KI.
So läuft es ab, als Diagramm
- Bereit → Anlauf: drückt Angriff
- Anlauf → Aktiv: Anlauf ist vorbei
- Aktiv → Erholung: aktive Zeit ist vorbei
- Erholung → Bereit: Erholung ist vorbei
Gute Startwerte
| Wert | Starte mit | Was es ändert |
|---|---|---|
| startupTime | 0.12 s | Der Anlauf, bevor der Angriff jemandem wehtun kann. Er gibt der Gegenseite Zeit, den Schlag kommen zu sehen. Unter 0,1 Sekunden lässt sich nicht mehr darauf reagieren. |
| activeTime | 0.1 s | Wie lange der Angriff wehtun kann. Kurz macht ihn genau und schwer, lang macht ihn nachsichtig. Er muss mindestens ein paar Bilder dauern, sonst kann ein Treffer zwischen zwei Bildern durchrutschen. |
| recoveryTime | 0.3 s | Die Zeit nach dem Schlag, in der der Angreifer feststeckt. Sie ist der Preis fürs Verfehlen und die Chance der Gegenseite zum Gegenschlag. |
| reach | 1.4 units | Wie weit die Angriffsbox reicht. Sie sollte etwas mehr sein, als die Waffe aussieht, damit knappe Fehlschläge sich nach Treffern anfühlen und nicht nach Betrug. |
| hitHeight | 1 units | Wie hoch die Angriffsbox ist. Eine Box so hoch wie der Körper trifft alles, was davor steht, und eine niedrige lässt einen Sprung darüber hinweg. |
| offset | 0.2 units | Der Abstand zwischen der Mitte des Angreifers und dem Beginn der Angriffsbox. Er verhindert, dass der Angriff Dinge trifft, die hinter oder im Angreifer stehen. |
Was meistens schiefgeht
Der Treffer, der in jedem Bild landet
Die Boxen überlappen sich sechs Bilder lang. Der Code teilt in jedem Schaden aus, sodass ein Schlag sechsfachen Schaden macht.
Lösung: Sag deiner KI: Halte fest, welche Ziele ein Schlag getroffen hat, und überspringe sie bis zum Ende des Schlags.
Ein langes Bild überspringt den Treffer
Auf einem langsamen Gerät dauert ein Bild länger als das aktive Fenster. Der Code prüft nur am Ende des Bildes, das Fenster ist schon vorbei, und der Schlag geht durch den Gegner.
Lösung: Sag deiner KI: Prüfe auf Treffer in jedem Bild, dessen Zeitspanne das aktive Fenster berührt, nicht nur in Bildern, die darin enden.
Die Box dreht sich zu spät um
Die Angriffsbox sitzt immer vor der Figur, sodass ein Umdrehen mitten im Schlag den ganzen Angriff auf die andere Seite kippt, oder die Box bleibt rechts, während das Bild nach links schaut.
Lösung: Sag deiner KI: Lies die Blickrichtung einmal beim Start des Schlags, spiegle die Box daraus und behalte sie bis zum Ende des Schlags.
Berühren zählt als Treffer
Zwei Boxen, die sich genau berühren, gelten als überlappend. Ein Spieler an der äußersten Spitze der Reichweite wird von etwas getroffen, das ein Pixel zu kurz aussieht.
Lösung: Sag deiner KI: Nimm eine strenge Überlappung, mit kleiner als und nicht kleiner oder gleich, und ignoriere Boxen ohne Größe.
Der Angreifer trifft sich selbst
Die Angriffsbox beginnt im eigenen Körper des Angreifers, sodass jeder Schlag dem wehtut, der schlägt.
Lösung: Sag deiner KI: Nimm den Angreifer nie in die Liste der Ziele und lass die Angriffsbox ein Stück vor dem Körper beginnen.
Ein Tastendruck mitten im Schlag
Der Spieler tippt während des Schlags noch einmal auf Angriff. Der Code startet sofort einen neuen Schlag, der die Liste der Treffer leert, sodass derselbe Gegner innerhalb eines Schlags zweimal getroffen wird.
Lösung: Sag deiner KI: Ignoriere die Taste, bis der Schlag vorbei ist, oder merke dir den Druck für den Moment, in dem er endet.
So prüfst du, ob es klappt
- Ein Ziel steht vor dem Angreifer, innerhalb der Reichweite. der Angreifer schlägt: wird das Ziel im 8. Bild getroffen, wenn der Anlauf vorbei ist, und nicht früher.
- Ein Ziel, das nur während des Anlaufs in der Reichweite steht, und ein anderes, das erst nach der aktiven Zeit hineintritt. der Angreifer schlägt: wird keines getroffen.
- Ein Ziel, das den ganzen Schlag über in Reichweite bleibt. der Schlag bis zum Ende läuft: wird das Ziel genau einmal getroffen.
- Zwei Ziele stehen in der Reichweite. der Angreifer einmal schlägt: werden beide getroffen, je einmal, im selben Bild.
- Auf jeder Seite des Angreifers steht ein Ziel. der Angreifer nach rechts schlägt und danach nach links: wird jedes Mal nur das Ziel auf der Seite des Schlags getroffen.
- Ein Ziel rechts und eines links. der Angreifer nach rechts schlägt und der Stick mitten im Schlag nach links kippt: wird nur das rechte Ziel getroffen.
- Ein Ziel, dessen Rand genau das Ende der Angriffsbox berührt, oder ihre Oberkante. der Angreifer schlägt: wird das Ziel nicht getroffen.
- Ein Ziel in der Reichweite. der Angreifer schlägt und ein Bild eine ganze Sekunde dauert: wird das Ziel trotzdem getroffen, und der Schlag ist vorbei.
- Ein Ziel, das von einem beendeten Schlag getroffen wurde. der Angreifer erneut schlägt: wird das Ziel erneut getroffen, einmal.
- Ein laufender Schlag, dessen Ziel schon getroffen wurde. der Spieler noch einmal Angriff drückt: startet der Schlag nicht neu und das Ziel wird nicht noch einmal getroffen.
- Ein Ziel, dessen Box keine Breite oder keine Höhe oder eine negative hat. der Angreifer nach ihm schlägt: wird es nie getroffen.
Passt gut zu
- Leben und Schaden: Die Boxen sagen nur, wer getroffen wurde. Wie sehr es wehtut und ob das Ziel stirbt, gehört zur Gesundheit. Teile den Schaden aus der Liste der getroffenen Ziele aus, nachdem der ganze Tick geprüft ist.
- Rückstoß: Nimm die Seite, auf die der Schlag ging, nicht den Standort des Ziels, damit ein Treffer von links immer nach rechts stößt. Stoße die Ziele nach dem Treffer vom Angreifer weg.
- Ausweichrolle: Unverwundbarkeit ist einfach ein Körper, der kurze Zeit keine Box hat. Der Angriff läuft weiter und findet nichts. Nimm die Verwundbarkeitszone aus der Liste, solange die Rolle schützt.
- Combo-System: Jeder Schritt hat eigene Zeiten, eine eigene Box und eine eigene Trefferliste, sodass dasselbe Ziel von jedem Schritt einmal getroffen werden kann. Lass jeden Schritt der Kombo einen eigenen Schlag starten.
- Parade: Parieren ändert, was ein Treffer bewirkt, nicht ob sich die Boxen überlappen. Finde erst den Treffer und frage dann den Verteidiger, was passiert. Prüfe das Parierfenster, bevor der Treffer ausgeteilt wird.
Häufige Fragen
was ist der Unterschied zwischen einer Trefferzone und einer Verwundbarkeitszone
Eine Trefferzone gehört zu einem Angriff und sagt, wo er wehtun kann. Eine Verwundbarkeitszone gehört zu einem Körper und sagt, wo er verletzt werden kann. Ein Treffer entsteht, wenn die eine die andere überlappt.
warum trifft mein Angriff einen Gegner mehrmals
Die Boxen überlappen sich viele Bilder lang, und jedes Bild zählt als Treffer. Halte fest, wen ein Schlag schon getroffen hat, und überspringe ihn bis zum Ende des Schlags.
wie groß sollte eine Trefferzone im Vergleich zur Grafik sein
Mach die Angriffsbox etwas größer, als die Waffe aussieht, und die Körperbox etwas kleiner als die Figur. Beide Abweichungen helfen dem Spieler, sodass knappe Situationen fair wirken.
was sage ich meiner KI, damit sie Treffererkennung einbaut
Füge das ein: Baue Angriffsboxen und Körperboxen ein. Ein Schlag hat 0,12 Sekunden Anlauf, 0,1 Sekunden, in denen er wehtun kann, und 0,3 Sekunden Erholung. Er trifft jedes Ziel einmal pro Schlag, spiegelt die Box nach der Seite, auf der er begann, und prüft jedes Bild, das die aktive Zeit berührt.
Woher es kommt
Für diese Idee konnten wir noch keine verlässliche Herkunft finden.
Was geprüft wurde
- 19 Tests bestehen auf dem Referenzcode.
- Das Zustandsdiagramm wurde gegen den Code geprüft, mit den Standardwerten und mit jedem niedrigsten und höchsten Wert der Liste.
Deine KI bekommt den Code
Fertiger Beispielcode kommt über die Spielerando-Verbindung, damit deine KI ihn sofort nutzen kann. So verbindest du es