Doppelkampf verhindern?

  • Hey....

    eine frage vielleicht auch 2 oder auch 3 aber erstmal 1.

    In meinen spiel gibt es grundlegend nur umher laufende Monster bis auf weiteres keine Zufalls Begegnungen was an sich ja nicht tragisch ist.

    Hier kommt aber mein Problem ich hab die Möglichkeit das der Feind auch den Kampf mit mir beginnen kann ohne das ich ihn anlaufen muss oder anklicken. Funktioniert soweit auch alles. Jetzt kommt aber das Problem lauf ich ihn in seiner lauf Animation entgegen oder der Kampf beginnt bevor beide auf das jeweilige andere Kachel wechseln konnten. Wird direkt nach dem Kampf ein weiterer Kampf ausgelöst.

    Weiß einer ob es da eine Möglichkeit gibt dies zu unterbinden? Wie eine 1sek. Kampf sperre oder sowas..

  • Sowas hab ich ehrlich gesagt schon drin. Direkt nach dem Sieg oder Flucht wechselt er die Event Seite. Wenn der Feind/Monster mich berührt wenn ich gerade stehe funktioniert das auch alles prima. Gibt wie gesagt nur das Problem wenn sie gleichzeitig laufen.

  • Vielleicht ließe es sich lösen, wenn das Ereignis an eine andere Stelle verschoben wird (hier wäre es kein Teleport, was nur den Spieler betrifft, sondern den Ereignis einfach den Ort mittels X-Y-Daten verändern, ohne Darstellungen), vor der Sperre. Gegebenenfalls an eine Stelle wo der Spieler auch am Rande nicht rankommt. Hoffe hab jetzt nichts geschrieben dass nicht geht :D

  • kann ich nachher mal versuchen.

    Vermute mal das ändert aber nichts.

    Denke mal das muss man über ein Script oder so lösen. Sonst ändert es an der Sache ja nichts. Hab ja direkt drin das wenn der Kampf gewonnen ist oder man Flucht erfolgreich nutzt verändert sich das Event. Nur wenn man in der Bewegung ist reicht das normale System nicht den nächsten Schritt rechtzeitig einzuleiten.

    Eventuell kann man über Script diese Schritt beschleunigen das es nicht zu einen 2. Kampf kommt. Wüsste nur aktuell nicht wie.


    Werde aber das obengenannte mal versuchen.

  • Hier kommt aber mein Problem ich hab die Möglichkeit das der Feind auch den Kampf mit mir beginnen kann ohne das ich ihn anlaufen muss oder anklicken.

    Wie genau meinst du das?
    Löst der Gegner den Kampf selber schon durch Sicht aus und zusätzlich durch Berührung? Oder meinst du nur, dass er auch dich anlaufen kann um den Kampf zu starten?

  • Zitat

    Oder meinst du nur, dass er auch dich anlaufen kann um den Kampf zu starten?

    Ja er kann durch anlaufen/berühren den Kampf starten. Heißt man kann nicht einfach stehen bleiben und der Feind läuft um dich herum. Sobald dich der Feind berührt/ oder du ihn startet der Kampf.

  • Wenn man es so verschieben kann, ginge es auch vorm Sieg, vorm Beginn des Kampfes, während das Ereignis noch läuft und dann den Kampf startet, dann sollte das 2. Reinlaufen nicht geschehen können. Wenn es dennoch passiert, hieße es für mich, dass es anscheinend auch mit dem Warte-Befehl passiert, weil zur Begegnung das Programm einfach sofort doppelt hinterlegt hat und dies dann mit Warte und allem nacheinander abarbeitet. Gewissermaßen ein Fehler der Berechnung des sichs Berührens von beiden Seiten. Aber dafür halt die Änderung mit Ereignis verschieben und gegebenenfalls des Befahls zum Warten.

  • Nur wenn man in der Bewegung ist reicht das normale System nicht den nächsten Schritt rechtzeitig einzuleiten.

    kannst Du mal screenshots von Deinen Event-seiten zeigen?

    denn normalerweise sollte das wait den nächsten Kampf blockieren, wenn es korrekt eingesetzt wurde.


    das hört sich alles so an, alsob Deine event-struktur anders ist als üblich...

  • Kann ich heute abend mal schicken wenn ich von der Arbeit wieder da bin. Das mit vor dem Kampf 1 Feld zur Seite bewegen klingt nicht falsch. Muss aber schauen ob das dann nicht doof aussieht direkt vorn start. Werde es mal versuchen.


    Ja da auch eine Art Respawn System mit drin ist. Verschwindet/löscht das Event sich ja nicht.

    Bei Feind Kontakt startet es einen zufälligen Kampf der bei Sieg einen selbstschalter auslöst für die 2. Seite dort ist kein Feind icon mehr und sonst nur ein warte Befehl der nach der warte Zeit eine Animation abspielt und den Feind wiederbelebt. Danach löschen sich die selbst Schalter wieder und springen auf die Grund Seite zurück.

  • OK, das erklärt einiges.

    Du hast ein oder mehrere Plugins, die das gesamte Event-Verhalten ändern, und die verursachen die Probleme.


    Nur ein Beispiel: Der Trigger "Spielerberührung" erfordert normalerweise das sich der Spieler auf das Event bewegt um die Befehle auszulösen. Eine Event-Bewegung dieses Events kann nichts triggern (dafür müsste "Event Touch" eingestellt sein).


    Und das ist der Grund weshalb die tips oben nichts brachten: es ist gar nicht das event das den Kampf triggered, sondern eines Deiner Plugins bzw. die Änderungen, die das Plugin an der Engine vorgenommen hat.

  • Hier muss ich aber dazu sagen das Doppelkampf Problem hatte ich vorher schon. Da hatte ich halt genug das der Feind als "Unter mir" gezählt hat das er alternativ auch den Kampf starten kann. So hat er sich auf mein Feld gestellt und hab ihn über Spieler Berührung direkt berührt und den Kampf gestartet.
    Auch das hat den Doppelkampf aus gelöst. Muss aber sagen aktuell hab ich es nicht mehr ohne was verändert zu haben.

    Muss einfach mal schauen wen ein paar mehr Test durch laufen ob das nun immer noch ist oder nicht mehr.

  • Hallo

    Auch wenn das Thema vielleicht nicht mehr relevant ist und du bereits eine Lösung gefunden hast.

    Lustigerweise benutze ich für mein Spielprojekt ebenfalls ein Gegner system wie du es beschrieben hast.

    -Keine Zufallskämpfe

    -Gegner laufen (unsichtbar) auf der karte herum
    -Kampf wird auch getriggert wenn man still steht und Gegner einen "berühren"
    -Event "verschwindet" wenn Gegner besiegt wird.
    -Bei Flucht geht das Monster in einen 5 Sekunden "wartemodus" und ist dann wieder aktiv.

    Bei mir funktioniert dies einwandfrei und ohne Plugins. Daher ist es vielleicht für dich hilfreich oder interessant wenn ich dieses event hier poste.