Fight: Flucht des Gegners beachten

Fight: Flucht des Gegners beachten

Beitragvon Gaddezwerch » Di 21 Jun, 2011 17:09

Bei vielen ZBs gibt's ja das Problem, dass am Ende behauptet wird, der Gegner wäre gestorben, obwohl er eigentlich geflohen ist.

Ich schlage vor, fight, besser gesagt den victory-Tag, wie folgt zu erweitern:
Code: Alles auswählen
<fight>
  <rivals>
    <npc npcid="7" name="Ork" escape="true"/>
    <npc npcid="8" name="Oger" escape="true"/>
  </rivals>
  <victory min-escaped="2">
    Held hat gewonnen und alle beide sind geflohen.
  </victory>
  <victory min-escaped="1">
    Held hat gewonnen und einer ist geflohen.
  </victory>
  <victory>
   Wird ausgeführt, wenn Held gewonnen hat und kein anderer victory-Zweig greift
  </victory>
  <escape>
    Held ist geflohen.
   </escape>
  <defeat>
    Held wurde besiegt.
  </defeat>
</fight>

min-escaped gibt also eine Anzahl an Gegnern, die geflohen sind. Das hat den Nachteil, dass man nicht genau weiß, wer geflohen ist, aber brauchen wir das?

Alternativ könnte ich mir auch folgendes vorstellen:
Code: Alles auswählen
<fight>
  <rivals>
    <npc npcid="7" name="Ork" escape="true"/>
    <npc npcid="8" name="Oger" escape="true"/>
  </rivals>
  <victory escaped="1+2">
    Held hat gewonnen und alle beide sind geflohen.
  </victory>
  <victory escaped="1">
    Held hat gewonnen und der Ork ist geflohen.
  </victory>
  <victory escaped="2">
    Held hat gewonnen und der Oger ist geflohen.
  </victory>
  <victory escaped="1|2">
    Held hat gewonnen und Ork oder Oger ist geflohen (würde in diesem Beispiel nie greifen, weil der Fall bereits abgeklopft wurde).
  </victory>
  <victory>
   Wird ausgeführt, wenn Held gewonnen hat und kein anderer victory-Zweig greift
  </victory>
  <escape>
    Held ist geflohen.
   </escape>
  <defeat>
    Held wurde besiegt.
  </defeat>
</fight>

Die Zahlen 1 und 2 in escaped beziehen sich dabei auf die Reihenfolge des npc-Tags in rivals.


Noch wichtig: Es wird im Siegesfall nur ein victory-Zweig ausgeführt, niemals mehrere.
Bestehende ZB und Questen würden nicht ungültig werden, weil im Notfall immer der normale victory-Zweig ausgeführt wird.

Brauchen wir noch etwas?
:meidetdasorkland: <-- Das meine ich ernst! Wirklich!
Gaddezwerch
Programmierer
Programmierer
 
Beiträge: 4848
Registriert: Fr 18 Mai, 2007 00:04
Heldenname: Alos Traken

Re: Fight: Flucht des Gegners beachten

Beitragvon Lowlander » Di 21 Jun, 2011 17:19

Wäre nicht sinnvoller, wenn man innerhalb eines fight-Tags, also in den Unterzweigen, abfragen könnte, wer geflohen ist?
Lowlander
:: Ratsmitglied :: Programmierung
:: Ratsmitglied :: Programmierung
 
Beiträge: 2276
Registriert: So 25 Nov, 2007 18:05
Wohnort: Hage/Ostfriesland
Heldenname: Markorka Faargh

Re: Fight: Flucht des Gegners beachten

Beitragvon Gaddezwerch » Di 21 Jun, 2011 17:23

Ja, an sich schon.
Wie machen wir das am besten?
:meidetdasorkland: <-- Das meine ich ernst! Wirklich!
Gaddezwerch
Programmierer
Programmierer
 
Beiträge: 4848
Registriert: Fr 18 Mai, 2007 00:04
Heldenname: Alos Traken

Re: Fight: Flucht des Gegners beachten

Beitragvon Lowlander » Di 21 Jun, 2011 18:00

Ich würde Variablen mit Szenen-Scope belegen: ${npc:Vergebener Name} oder ${npc:#1}, darin steht dann entweder der Status "escaped", "dead" etc. oder direkt Variable mit dem Status: ${npc:Vergebener Name:escaped} mit true/false. Was wäre praktischer?

Abfragen kann man dann ja mit Switch. Will man den Status über die Szene hinaus retten, müsste man die Werte in eigenen Variablen speichern.
Lowlander
:: Ratsmitglied :: Programmierung
:: Ratsmitglied :: Programmierung
 
Beiträge: 2276
Registriert: So 25 Nov, 2007 18:05
Wohnort: Hage/Ostfriesland
Heldenname: Markorka Faargh

Re: Fight: Flucht des Gegners beachten

Beitragvon Gaddezwerch » Di 21 Jun, 2011 18:28

Gute Idee, so machen wir das!
Sagen wir
npc:#1:status -> 'dead', 'live', 'escaped'
npc:#1:health -> Zahlenwert
npc:#1:wounds -> Zahlenwert
:meidetdasorkland: <-- Das meine ich ernst! Wirklich!
Gaddezwerch
Programmierer
Programmierer
 
Beiträge: 4848
Registriert: Fr 18 Mai, 2007 00:04
Heldenname: Alos Traken

Re: Fight: Flucht des Gegners beachten

Beitragvon neonix » Di 21 Jun, 2011 18:39

"Der Wegelagerer flieht halbtot mit mittelschwerer Beinwunde."


Langsam wird die Ergebnisauswertung der Kämpfe detailliert - und eklich... :o_O:
Zufallszauberer und Questenschmied.
Kanzler Westendar und Vizekanzler Flora & Fauna.
Ansonsten verantwortlich für Rastfunktion, Mietstall, Tempel, Gosse, Söldnerlager, Blutrabe, Kommandantur ET, Alte Kaserne, diverse Gegenstandsquesten und so weiter...
Benutzeravatar
neonix
Erzmarschall
Erzmarschall
 
Beiträge: 5077
Registriert: Di 11 Dez, 2007 11:33
Wohnort: Braunschweig
Heldenname: Marquez Santarosa
Mitglied bei: Helden Schurken Suchende

Re: Fight: Flucht des Gegners beachten

Beitragvon Tommek » Mi 22 Jun, 2011 07:57

Muss man ja nur nutzen wo es vom Text her passen soll.
Benutzeravatar
Tommek
Site Admin
Site Admin
 
Beiträge: 8859
Registriert: Mi 17 Mai, 2006 22:40
Wohnort: Eodatia
Heldenname: Alrik Dormwald
Mitglied bei: Orkwacht


Zurück zu Antamar®-Archiv



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste