Magier: Neues ModifySkillAttribute

Bild: Binär

Die Skill-Attribute (z.B. SA_SPEED, SA_QUALITY) sind ja allen vermutlich bekannt. Ebenso bekannt dütfte sein, dass sie eine Reihe von Defiziten
haben:

  1. Die Modifier sind multiplikativ, also (vereinfacht): (mod1 * mod2 * mod3 * …) * Basiswert, d.h. einerseits kann der Wert dadurch sehr schnell sehr groß werden. Andererseits weiß man als programmierender Magier nie so richtig, wieviel der eigene Modifier eigentlich bringt, weil das abhaengig ist von allen anderen Modifiern, die wirken.
  2. Ein Modifier kann nicht so ohne weiteres wieder aufgehoben werden, wenn man ihn einmal gesetzt hat.
  3. Die Aufteilung in FROM_ENEMY, FROM_FRIEND, FROM_PLAYER ist für viele Magier etwas verwirrend.

It und ich haben uns daher kurzerhand entschlossen, das SA-System umzubauen:

  1. Alle Modifier sind rein additiv: mod1 + mod2 + mod3 + Basiswert, d.h. alle Mods sind unabhängig voneinander und wenn ein Magier einen Mod von +100 vergibt, ist das immer +1 Kampfrunde. Die Folgen eines Mods sind so einfacher und transparenter abzusehen. Weiterhin steigen die Endwerte bei Verwendung mehrerer Mods nicht so schnell an.
  2. Das alte Interface zum Setzen der SA-Mods bleibt bestehen, aber zusätzlich gibt es ein neues, etwas vereinfachtes und vor allem wird es die Möglichkeit geben, einmal gesetzte Mods vor Ende ihrer Laufzeit wieder zu entfernen.
  3. Die Unterteilung in FROM_ENEMY, FROM_FRIEND, FROM_PLAYER entfällt ersatzlos. Statt früher max. 3 (praktisch meist 2) Mods, werden in Zukunft 5 Mods pro Skillattribut nutzbar sein.

Das neue Interface zur Nutzung ist unter „man ModifySkillAttribute“ einsehbar. Änderungen an Objekten sind in der Regel bei der Umstellung erstmal nicht
erforderlich, langfristig ist natürlich erwünscht, auf die neuen Funktionen umzusteigen. Ausnahmen sind hier das Setzen von dynamischen Mods in Form einer
Closure, diese Objekte müssen bei Umstieg geändert werden.

Gruß,
Torin

Zurück