- Registriert
- 11 Mai 2006
- Beiträge
- 12.030
- Punkte Reaktionen
- 1.212
TitanSeal2 schrieb:der giftschaden wird intern in schaden pro tick berechnet (weil er schließlich auch jedes tick wirkt und nicht im sekundentakt). allerdings sind dies äußerst kleine werte, daher werden sie zur vermeidung von rundungsfehlern mit 256 multilpliziert (man spricht dabei vom hitshift).
jedes affix ist eine eigene quelle, deren stärken und dauern addiert werden. die dauer allerdings nur, weil es beides affixe des selben gegenstandes sind. wären es verschiedenen quellen (zb schwert mit giftschaden und sockelung mit giftschaden) so würde man die dauer mitteln. die interne stärke des giftes berechnet man folgendermaßen:
interner_schaden = {angezeigter_giftschaden * 256 / dauer_in_ticks}
das ist dann der schaden pro tick, multipliziert mit 256 zur verringerung der rundungsfehler. außerdem müssen wir aufrunden, wir gehen ja den umgekehrten weg der berechnung. diese werte werden dann addiert und weil beide giftquellen affixe sind, werden die dauern addiert. die dauer liegt somit bei 12 sekunden und den angezeigten giftschaden erhalten wir ganz einfach durch die umgekehrte rechnung:
angezeigter_schaden = [interner_schaden * dauer_in_ticks / 256]
beispiel:
175 über 6 sekunden
50 über 6 sekunden
interner_schaden_1 = {175 * 256 / (6 * 25)}
interner_schaden_1 = 299
interner_schaden_2 = {50 * 256 / (6 * 25)}
interner_schaden_2 = 86
interner schaden_gesammt = 299 + 86
interner schaden_gesammt = 385
angezeigter_schaden = [385 * (6 * 25 + 6 * 25) / 256]
angezeigter_schaden =451
hoffentlich konnte ich etwas licht ins dunkel bringen und ich werf mal nen gruß in die runde
mfg
Berechnung