• Herzlich Willkommen!

    Nach der Schließung von inDiablo.de wurden die Inhalte und eure Accounts in dieses Forum konvertiert. Ihr könnt euch hier mit eurem alten Account weiterhin einloggen, müsst euch dafür allerdings über die "Passwort vergessen" Funktion ein neues Passwort setzen lassen.

    Solltet ihr keinen Zugriff mehr auf die mit eurem Account verknüpfte Emailadresse haben, so könnt ihr euch unter Angabe eures Accountnamens, eurer alten Emailadresse sowie eurer gewünschten neuen Emailadresse an einen Administrator wenden.

ActionFlags & ImA

LastCorpse

Well-known member
Ex-Staffmember
Registriert
5 Juni 2010
Beiträge
6.213
Punkte Reaktionen
949
Hallo,

Ich wüsste gerne, wo die ActionFlags beim Standardangriff der Amazone mit verschiedenen Bögen liegen. Das wäre ja für den Feuerbrandpfeil durchaus interessant, weil man die Geschwindigkeit, also auch den Schadensausstoß, evtl. minimal erhöhen könnte.

Gibt es auf irgendeiner D2-Seite vielleicht einen IAS Calc, der die ActionFlags berücksichtigt? Oder hat schon mal jemand die Werte ausgerechnet und gepostet?


Vielen Dank im Vorraus
 
Zuletzt bearbeitet:
Die Theorie dazu gibt es hier und irgendwo hier, ein fertiger Calc bzw. Listen für die diversen Waffen ist mir nicht bekannt.

Wobei ich bei Zaubern neulich beim Testen auf Ungereimtheiten gestoßen bin - das Delay zwischen zwei Orbs (Castdelay 25) mit 105fc (Animationslänge 8, Action Frame 5) war nicht 30 Frames wie erwartet, sondern zwischen 32 und 34.
Blizzard mit 45 Frames CD hatte 52 Frames zwischen den Zaubern.
Beim Druiden mit Feuersturm hat es dagegen wieder zur Theorie gepasst.
 
Hmm, in Titans FAQ steht zu Angriffen:
AT = {(Hitshift*FrameDataActionFlag)/[(AnimationSpeed*Acceleration/100)]}
FPA = {(Hitshift*FramesPerDirection)/[AnimationSpeed*Acceleration/100]} - 1
Das sieht für mich so aus, als wäre das Aktionstick bei Angriffen immer das letzte Frame der Animation.
Richtig oder falsch? (ich vermute falsch :-))

Den anderen Thread hab ich bislang nur überflogen.
 
Zuletzt bearbeitet:
FrameDataActionFlag und FramesPerDirection sind nicht identisch.
Kennt man ihr Verhältnis und ignoriert Rundungen, kann man das ActionFrame aber aus der Länge der Gesamtanimation abschätzen.

Für die Amazone mit dem Bogen erhält man
06 als FrameDataActionFlag
14 als FramesPerDirection.
Der Angriff selbst findet also irgendwo in der Nähe der Mitte der Animation statt.

AnimationSpeed=256, cnbf setze ich mal voraus, der Rest aus TitanSeals Formel:

AT = {(256*FrameDataActionFlag)/[(256*(70 + EIAS + SIAS - WSM)/100)]}
FPA = {(256*FramesPerDirection)/[256*(70 + EIAS + SIAS - WSM)/100]}
EIAS = [120*IAS/(120 + IAS)]

Wenn ich EIAS+SIAS-WSM mal als x zusammenfasse, erhält man folgende Tabelle:
Code:
x	AT
-20	12
-15	11
-9	10
-3	9
5	8
16	7
30	6
51	5
80	4
130	3

Gilt nur für die Amazone mit einem Bogen und ohne Spezialangriffe (Strafe...).
 
Stimmt, das ist ein Fehler in der FAQ. Ich habe allerdings die falsche Stelle zitiert :hammer:

http://planetdiablo.eu/forum/showthread.php?p=17669538#post17669538

Animationslänge und Aktionstick

AT = {(Hitshift*FrameDataActionFlag)/[(AnimationSpeed*Acceleration/100)]}
FPA = {(Hitshift*FramesPerDirection)/[AnimationSpeed*Acceleration/100]} - 1


Wie man anhand der Formeln erkennen kann, handelt es sich bei der Acceleration um einen Prozentwert. Dieser muss daher über einen Grundwert verfügen, der dann durch bestimmte Boni und Mali verändert werden kann. Bei der Angriffsgeschwindigkeit gibt es dabei mehrere beeinflussende Faktoren:

Acceleration = Baserate + EIAS + SIAS - WSM (+ ColdEffekt)

Baserate ... Der Grundwert der Beschleunigung verwendet für Angriffe einen Wert von 100.
EIAS ... Sie wird intern aus der IAS berechnet. Dabei wird die so genannte "dimishing returns" Formel (siehe unten) angewandt, die einen sinkenden Grenznutzen aufweist. Anders ausgedrückt braucht man mit steigendem Wert immer mehr IAS um noch eine weitere Änderung der EIAS zu bewirken.

EIAS = [120*IAS/(120 + IAS)]

SIAS ... Die Summe aller Boni und Mali zur Angriffsgeschwindigkeit, die wir von verschiedensten Fertigkeiten (zum Beispiel Fanatismus oder Altern) erhalten. Auch die Gegnerverlangsamung gewisser Gegenstände wird hier verrechnet.
WSM ... Der Weapon Speed Modifier ist ein waffenabhängiger Wert zur Steuerung der Geschwindigkeit. Da er nicht die "dimishing returns" Formel durchläuft, kann er die Geschwindigkeit entscheidend beeinflussen.
ColdEffekt ... Kälteangriffe verfügen meist über eine Wirkzeit, während dieser die Geschwindigkeiten der betroffenen Einheit beeinflusst werden. Während Spieler hier einen konstanten Wert von 50 besitzen, ist jeder Monsterklasse in der MonStats.txt für jeden Schwierigkeitsgrad ein eigener Wert zugewiesen.


StartingFrame

Bisher sind wir immer davon ausgegangen, dass unsere Animation mit dem Frame 00, also der Counterstellung 0 beginnt. Dieses Startingframe, welches den Beginn der Animation kennzeichnet, ist für alle Charaktere und alle Waffengattungen in der D2Common.dll festgehalten und im Regelfall das erste Frame, sprich jenes mit der Bezeichnung "FrameData00". Für die Angriffsanimationen (exklusive Wurfangriffen) mit den Charakterklassen "Amazone" und "Zauberin" kann das StartingFrame allerdings je nach verwendeter Waffenart auch einen anderen Wert annehmen. Dies bedeutet, dass die Animation verkürzt und damit deren Dauer verringert wird.
Code:

Waffe: hth 1hs 2hs 1ht 2ht stf bow xbw
StartingFrame: 1 2 2 2 2 2 0 0

Die Werte sind für Zauberinen und Amazonen ident, daher gebe ich sie nur einmal an. Alle anderen Charklassen haben immer ein StartingFrame von 0.

Damit müssen wir unsere Formel noch weiter modifizieren, indem wir das StartingFrame von den FramesPerDirection abziehen. Damit erhalten wir die Zahl der wirklich verwendeten Frames und die Formeln sind korrekt:

AT = {(Hitshift*(FramesPerDirection - Startingframe))/[(AnimationSpeed*Acceleration/100)]}
FPA = {(Hitshift*(FramesPerDirection - Startingframe))/[AnimationSpeed*Acceleration/100]} - 1


Acceleration = Baserate + [120*IAS/(120 + IAS)] + SIAS - WSM (+ ColdEffekt)

In der zweiten rot markierten Stelle wird beim AktionsTick FramesPerDirection statt FrameDataActionFlag genannt. (In diesem Falle wäre die zweite Formel ohnehin irrelevant, weil der StartingFrame-Wert für Bögen 0 beträgt.)

Vielen Dank für die Mühe :kiss:, den Rest schaffe ich (hoffentlich) alleine.
 
Zuletzt bearbeitet:
Ich hol' den noch mal kurz hoch, weil ich gerade festgestellt habe, dass meine Ergebnisse abweichen, obwohl ich ziemlich sicher bin, dass sie stimmen.-.-
AnimationSpeed=256, cnbf setze ich mal voraus, der Rest aus TitanSeals Formel:

AT = {(256*FrameDataActionFlag)/[(256*(70 + EIAS + SIAS - WSM)/100)]}
FPA = {(256*FramesPerDirection)/[256*(70 + EIAS + SIAS - WSM)/100]}
EIAS = [120*IAS/(120 + IAS)]
Warum 70% BaseRate? Die BaseRate beträgt doch für normale Angriffe und die meisten anderen Animationen 100%, siehe Zitat im Posting über mir. Den 30%igen Malus auf die Acceleration bekommen nur Sequenzen und Würfe.
 
Zurück
Oben