Projekt

Allgemein

Profil

Aktionen

Fehler #1328

geschlossen

[PVP] Resist bei zu wenig Zauberdurchschlag

Von darkztar vor mehr als 12 Jahren hinzugefügt. Vor etwa 8 Jahren aktualisiert.

Status:
Live
Priorität:
Hoch
Zugewiesen an:
-
Kategorie:
Mechanik
Zielversion:
Beginn:
13.12.2011
Update Text Deutsch:

Beschreibung

Wenn man mehr Resist gegen einen Cast hat, als der Gegnerische Spieler Zauberdurchschlag hat, sollte eine Chance bestehen, den Zauber komplett zu Widerstehen, dies ist hier aber leider nicht der Fall


Dateien

Resistance.png (370 KB) Resistance.png Corrius, 09.06.2013 19:28
WoWScrnShot_082813_001154.jpg (456 KB) WoWScrnShot_082813_001154.jpg Corrius, 28.08.2013 00:12

Zugehörige Tickets

Beziehung mit RG Live WotLK 3.3.5a - Fehler #8150: [Mechanik] Widerstand im PVELive23.01.2014Aktionen
Beziehung mit RG Live WotLK 3.3.5a - Fehler #9345: Schurken Gifte und Vergiften werden partiell resistedLive21.04.2014Aktionen
Aktionen #1

Von provafix vor mehr als 12 Jahren aktualisiert

  • Zugewiesen an wurde auf Sioni gesetzt
Aktionen #2

Von Sioni vor etwa 12 Jahren aktualisiert

Irgendwelche Quellen, Chancen oder ähnliches?

Aktionen #3

Von Jingkong45 vor etwa 12 Jahren aktualisiert

Spell penetration: http://www.wowwiki.com/Spell_penetration
Resistance: http://www.wowwiki.com/Resistance

hilft hoffentlich weiter.

MfG

Aktionen #4

Von Cero vor etwa 12 Jahren aktualisiert

/push

Aktionen #5

Von Yuliwee vor etwa 12 Jahren aktualisiert

  • Thema wurde von Resist bei zu wenig Spellpen zu [PVP] Resist bei zu wenig Zauberdurchschlag geändert
  • Zugewiesen an wurde von Sioni zu Smoo geändert

Push nützt nichts und sind somit unnötig :-)

Aktionen #6

Von Razael vor etwa 12 Jahren aktualisiert

Soweit ich weiß wurde das als WOTLK raus kam geändert, dem Spell wird dann nicht resisted sondern der Spell verfehlt einfach anstatt dessen, dies dürfte den selben Effekt haben wie ein kompletter Resist da der Spell einfach daneben geht.

Aktionen #7

Von Yuliwee vor etwa 12 Jahren aktualisiert

  • Zugewiesen an wurde von Smoo zu Razael geändert
Aktionen #8

Von Razael vor etwa 12 Jahren aktualisiert

  • Status wurde von Neu zu Abgewiesen geändert

Getestet auf dem Testserver und auch auf dem Arena Tournament Server.
Resi vermindert nur den erlittenen Schaden, dem kann entgegengewirkt werden indem man Spellpen hat.
Wie bereits oben gesagt: Nach meiner Kenntnis existiert "Resist" im PvP seit WOTLK nicht mehr.
Entgegen meiner Vermutung hat es sich allerdings auch herrausgestellt das Resist nicht durch
Verfehlen ersetzt wurde.
Allerdings glaube ich mich daran erinnern zu können, dass Resi die Wirksamkeit von Massenbann und Dispelleffekten beeinflusst hat. Dies scheint auf RG einwandfrei zu funktionieren.
Somit würde alles klappen.
/closed

Aktionen #9

Von darkztar vor etwa 12 Jahren aktualisiert

UNFUG. Können uns gerne mal ins TS setzen und das genau austesten...

Aktionen #10

Von Yuliwee vor etwa 12 Jahren aktualisiert

  • Status wurde von Abgewiesen zu Neu geändert
  • Zugewiesen an wurde von Razael zu Yuliwee geändert

Bitte nochmal überprüfen, da im Stammtisch angesprochen.

Aktionen #11

Von Razael vor etwa 12 Jahren aktualisiert

  • Status wurde von Neu zu Bestätigt geändert
  • Zugewiesen an Yuliwee wurde gelöscht
  • Priorität wurde von Normal zu Dringend geändert

Habe mich mal mit Darkztar in Verbindung gesetzt und es nochmal ganz ausführlich mit ihm auf dem AT getestet.
Wie es aussieht habe ich mich geirrt, leider habe ich nicht so intensiv Caster gespielt wie Rogue auf dem Offi.
Der full Spellresist existiert, wenn genügend Resistance vorhanden ist können komplette Spells resisted werden, dies gilt auch für CC-Effekte wie Fear, Silence oder dergleichen.
Dem kann man wie gehabt mit genügend Spellpenetration entgegenwirken.
Ist ein wichtiges und entscheidenes Element im PvP und sollte nach Möglichkeit schnellstmöglich behoben werden.

Aktionen #12

Von Razael vor etwa 12 Jahren aktualisiert

  • Zugewiesen an wurde auf Lareine gesetzt
Aktionen #13

Von Lareine vor etwa 12 Jahren aktualisiert

  • Zugewiesen an Lareine wurde gelöscht
Aktionen #14

Von marmil vor etwa 12 Jahren aktualisiert

  • Priorität wurde von Dringend zu Sofort geändert
Aktionen #15

Von derschnitter vor etwa 12 Jahren aktualisiert

1) Spellpen funktioniert derzeit nur bei nicht binären spells (dots, Sternenfeuer vom Druiden)
2) Man kann binären spells (deathcoil/mind flay, CCs wie cyclone und fear) derzeit nicht resisten, egal ob man resi hat oder nicht
3) In TC ist das auch in der aktuellen Version immer noch nicht gefixt (getested mit plain trinity server)

-> sowohl spellpen als auch resistance sind in ihrem Nutzen stark eingeschränkt und z.B. Heilerklassen brauchen gar kein spellpen mehr (obwohl es unbedingt notwendig wäre)
Da es nicht mal im TC gefixt ist, wird man wohl noch eine Weile mit dem Zustand leben müssen.

Aktionen #16

Von antagarich vor etwa 12 Jahren aktualisiert

https://github.com/TrinityCore/TrinityCore/pull/4831

Immerhin gibt es dazu ein pullrequest, jedoch is das wohl noch nicht soo ausgereift:3(nutzen könnte man es aber vll)

Aktionen #17

Von Lareine vor fast 12 Jahren aktualisiert

  • Priorität wurde von Sofort zu Hoch geändert

Das ist nicht Sofort ...

Aktionen #18

Von Anubis1618 vor fast 12 Jahren aktualisiert

Zaubern widerstehen zu können betrifft nicht nur das PvP, sondern führt auch im PvE zu einer Heal Entlastung (Bsp.: Hodir).
Eingehende Zauber sollten nicht nur eine schadensverringernde Wirkung erzielen, sondern (bei bestimmten Auren / Totems /Buffs, die Zauberwiderstand gewähren) auch eine Chance besitzen komplett widerstanden zu werden.

Aktionen #19

Von karn vor mehr als 11 Jahren aktualisiert

  • Status wurde von Bestätigt zu Testbereit geändert
  • Zielversion wurde auf Merge gesetzt

vorläufige tests gut, muss aber noch ausführlicher gemacht werden

Aktionen #21

Von Liwan vor mehr als 11 Jahren aktualisiert

  • Status wurde von Testbereit zu In Bearbeitung geändert
  • Zugewiesen an wurde auf karn gesetzt

da scheint was nicht zu stimmen
habe 100 Frostzblitze auf Testi gehauen und 6 davon wurden Wiederstanden
Ich hatte zwar keine spellpen aber Testi hat auch keine Ressi.
Daher kann ich schonmal sagen das im Fall 0 zu 0 das Ergebnis fehlerhaft ist.

Aktionen #22

Von Liwan vor mehr als 11 Jahren aktualisiert

Ebenso bei selben Fall wird generell bei jedem Spell ein bestimmter Betragt wiederstanden.
Das waren beim Test eben bei Testi als ca. 10% des Schadens.

Aktionen #23

Von karn vor mehr als 11 Jahren aktualisiert

  • Zugewiesen an wurde von karn zu Daejiv geändert

wenn du es fixen kannst tu es ansonsten reverte ich die commits wieder

Aktionen #24

Von Anteloa vor mehr als 11 Jahren aktualisiert

  • Priorität wurde von Hoch zu Dringend geändert

Prio geändert, da man durch das auch vielen Boss-spells resistet :-/

Aktionen #25

Von Daejiv vor mehr als 11 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Bestätigt geändert
  • Zugewiesen an wurde von Daejiv zu Anteloa geändert
  • Priorität wurde von Dringend zu Hoch geändert

Commits sollten jetzt erstmal alle reverted sein, sprich nicht mehr aktiv sein.

Bug weiterhin existent

Zum vermerken Anteloa

Aktionen #26

Von karn vor etwa 11 Jahren aktualisiert

  • Status wurde von Bestätigt zu Testbereit geändert
  • Zugewiesen an Anteloa wurde gelöscht

git.rising-gods.de/wotlk/rg/commit/63b6eb697ddb404fc12adb61e45764a87d71c7ed
alle anderen commit links nicht beachten

binary resistance nur bei spielern. für alle zauber

Aktionen #27

Von karn vor etwa 11 Jahren aktualisiert

  • Status wurde von Testbereit zu Pending geändert

von 1337 abgesegnet.

Aktionen #28

Von Lareine vor etwa 11 Jahren aktualisiert

  • Status wurde von Pending zu Live geändert
Aktionen #29

Von karn vor etwa 11 Jahren aktualisiert

  • Status wurde von Live zu Pending geändert

http://git.rising-gods.de/wotlk/rg/commit/57838470a57e63254885ff59e89d4da41832815f
es kann nun nicht mehr vorkommen, dass ein zauber auf ein pet wiedersteht. (gemeint sind positive zauber wie hexenmeister pet-heal)

Aktionen #31

Von Daejiv vor etwa 11 Jahren aktualisiert

  • Status wurde von Pending zu Live geändert
Aktionen #32

Von 1337 vor etwa 11 Jahren aktualisiert

  • Status wurde von Live zu In Bearbeitung geändert

Chaosblitz wird widerstanden & Felhunter widersteht Soullink

Aktionen #33

Von karn vor etwa 11 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Testbereit geändert
Aktionen #34

Von 1337 vor etwa 11 Jahren aktualisiert

  • Status wurde von Testbereit zu Pending geändert
Aktionen #36

Von Lareine vor etwa 11 Jahren aktualisiert

  • Status wurde von Pending zu Live geändert
Aktionen #37

Von Lareine vor etwa 11 Jahren aktualisiert

  • Status wurde von Live zu In Bearbeitung geändert
  • Zugewiesen an wurde auf karn gesetzt

http://www.wowwiki.com/Resistance?oldid=2246763

Auf dem derzeitigen Liveserverstand werden auch Non-Binary-Spells (z.B. Feuerball) komplett widerstanden, ebenso scheint die Chance mit der Binary-Spells resisted wird, viel zu hoch zu sein.

Nach der bei WoW-Wiki angegebenen Formel sollte die Chance im PvE bei Binary Spells wohl bei 2.85% liegen.

Da eigentlich abgesprochen war, dass das System vorerst nur im PvP aktiviert wird, frage ich mich sowieso, wieso das nun ungetestet im PvE aktiv ist.

Daher bitte entweder im PvE deaktivieren oder fixen und auch im PvP überprüfen.

Sollte hier bis zum nächsten Update kein Fix vorliegen, werde ich das komplette Binary Resistance System in Absprache mit Anteloa vorerst deaktivieren / reverten.

Aktionen #38

Von karn vor etwa 11 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Pending geändert
  • Zugewiesen an karn wurde gelöscht
Aktionen #39

Von Lareine vor etwa 11 Jahren aktualisiert

  • Status wurde von Pending zu Live geändert
Aktionen #40

Von Meceran vor etwa 11 Jahren aktualisiert

Den Giften von Schurken wird auch sehr oft widerstanden. Sehr nervig, da man gerade als Meuchler deutlich weniger Schaden fährt und es kaum möglich ist 5 Giftstacks auf den Gegner zu bekommen.. Es sollte ja nich der Sinn sein als Schurke Zauberdurchschlag zu sockeln :D

Aktionen #41

Von karn vor etwa 11 Jahren aktualisiert

  • Status wurde von Live zu Testbereit geändert

http://git.rising-gods.de/wotlk/rg/commit/1b867e1cb66c8afd835192870c8d3f3ec8b93e0e

-binary spells are all spells with an additional non damage effect
-poisons are non binary spells

Aktionen #42

Von 1337 vor etwa 11 Jahren aktualisiert

  • Status wurde von Testbereit zu Pending geändert
Aktionen #43

Von 1337 vor etwa 11 Jahren aktualisiert

  • Status wurde von Pending zu In Bearbeitung geändert
  • Zugewiesen an wurde auf karn gesetzt

Frostbolt sollte auch nicht von Binary Resistance betroffen sein. Also keine kompletten Resists.

Aktionen #44

Von karn vor etwa 11 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Testbereit geändert
  • Zugewiesen an karn wurde gelöscht
Aktionen #45

Von 1337 vor etwa 11 Jahren aktualisiert

  • Status wurde von Testbereit zu In Bearbeitung geändert
  • Zugewiesen an wurde auf karn gesetzt
Aktionen #46

Von karn vor etwa 11 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Testbereit geändert
  • Zugewiesen an karn wurde gelöscht
Aktionen #47

Von karn vor etwa 11 Jahren aktualisiert

  • Status wurde von Testbereit zu Pending geändert
Aktionen #48

Von Lareine vor etwa 11 Jahren aktualisiert

  • Status wurde von Pending zu Live geändert
Aktionen #49

Von Corrius vor fast 11 Jahren aktualisiert

Heute beim Stammtisch hat ein User ein interessantes Problem aufmerksam gemacht, nämlich das manchen Spells Komplett widerstanden wird, denen rein rechnerisch nicht widerstanden werden konnte.

Dazu folgender Link: http://elitistjerks.com/f15/t44675-resistance_mechanics_wotlk/

Insbesondere dieses Bild: http://img401.imageshack.us/img401/5309/resistprobs2.jpg

Darin sieht man, bei 75 Resi sollte ein Level 83 Mob niemals einen 100% Resist haben.

Bei einem Level 80 Char führt 75 Resi (was einem geskillten Mal der Wildnis entspricht) laut http://www.wowwiki.com/Resistance?oldid=2142719 zu folgendem Damage Reduce:

100%*75/(400+75)=15,789%

Das bedeutet zusammengefasst, 15,789% weniger Schaden, kein einziger Kompletter Resist bei einem Non-Binary Spell, wie Zorn es ist.

Ich habe mit Zorn auf ein Playertarget gecastet (Duell), welches einen geskillten Druidenbuff hatte, und kam zu folgenden Ergebnissen:

Ohne Dudubuff:

Durchschnittlicher Schaden 592
Komplette Resists: 0%

Mit Dudubuff:

Durchschnittlicher Schaden 499 (84,29%) soviel.
Komplette Resists: 15,4%

Dazu siehe bitte angefügten Screenshot. Testgrößen waren >1000.

EDIT: Selbe Ergebnisse bei Feuerball, welcher auch ein Non-Binary spell ist.

Aktionen #50

Von 1337 vor mehr als 10 Jahren aktualisiert

R = Resistance des Ziels
TL = Level des Ziels
TC = Level des Casters
SP = Spellpen des Casters
K = Resistance-Konstante (400 für Level 80)

ER (Effective Resistance) des Targets = R + max((TL - TC) * 5, 0) - min(SP, R)
AR (Average Reduction) des erlittenen Schadens = ER / (K + ER)

Resists treten in Stufen von 0%, 10%, 20% etc. auf.
Die Wahrscheinlichkeit, dass der Anteil x des Spells resisted wird:
P(x) = 0.5 - 2.5 * abs(x - AR)

Beispiel:
R = 75
TL = 80
TC = 80
SP = 0
K = 400

ER = 75 + max((80 - 80) * 5, 0) - min(0, 75) = 75
AR = 75 / (400 + 75) = 0.1578 (~15.78% Schadensreduktion avg.)

Wahrscheinlichkeit, dass 10% des Casts resisted werden:
P(0.1) = 0.5 - 2.5 * abs(0.1 - 0.1578) = 0.3555
~35.55% Chance auf einen 10%igen Resist

Wahrscheinlichkeit, dass 100% des Casts resisted werden:
P(1) = 0.5 - 2.5 * abs(1 - 0.1578) = -1.6055
Nicht möglich, da unter 0

Für 75 Resistance ergibt sich folgendes Bild:
Zu ~10% wird gar nicht resisted
Zu ~35% wird 10% resited
Zu ~40% wird 20% resisted
Zu ~15% wird 30% resisted
Die anderen Stufen sind in diesem Beispiel nicht möglich.

Aktionen #51

Von Corrius vor mehr als 10 Jahren aktualisiert

Anscheinend wird keine Unterscheidung zwischen Binary und Non Binary getroffen.

Mind flay als Binary spell erhält trotzdem eine Streuung.

Aktionen #52

Von karn vor mehr als 10 Jahren aktualisiert

  • Status wurde von Bestätigt zu Testbereit geändert

teil 1:
https://git.rising-gods.de/wotlk/rg/commit/255ddfd0249d5e8d00ce4b028077a44b096e3f69
bessere selektierung von binary spells

Teil 2:
kommt mit dem nächsten merge mit trinity

@TESTER: NICHT TESTEN

Aktionen #53

Von 2danger vor mehr als 10 Jahren aktualisiert

Nach Rücksprache mit Rewzy; momentan noch bestehender Bug:
-Auch wenn spellpen > Resi ist, treten resists auf.
-Resist von Holy/Arcan-spells

Aktionen #54

Von Anonym vor mehr als 10 Jahren aktualisiert

  • Kategorie wurde auf Mechanik gesetzt
  • Zielversion wurde von Merge zu PvP geändert
Aktionen #55

Von 1337 vor mehr als 10 Jahren aktualisiert

Ist das jetzt von Trinity gefixt oder wie schauts aus?

Aktionen #56

Von 1337 vor mehr als 10 Jahren aktualisiert

  • Zugewiesen an wurde auf karn gesetzt

^ ?

Aktionen #58

Von 1337 vor mehr als 10 Jahren aktualisiert

  • Status wurde von Testbereit zu In Bearbeitung geändert
  • Zugewiesen an wurde auf karn gesetzt

Partial resists sehen gut aus, passt zu meinen Berechnungen. Binary resists scheinen aber viel zu oft aufzutreten. Bei 130 Resistance und 0 Spellpen sollten es laut meinen Berechnungen ~25% komplette binary resists sein, sind jedoch über 40%.

Aktionen #59

Von karn vor mehr als 10 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Testbereit geändert
  • Zugewiesen an wurde von karn zu 1337 geändert
Aktionen #60

Von 1337 vor mehr als 10 Jahren aktualisiert

  • Status wurde von Testbereit zu In Bearbeitung geändert
  • Zugewiesen an wurde von 1337 zu karn geändert

Immer noch zu viele binary resists. Die Chance sollte der Average Reduction (AR) aus den Formeln oben entsprechen.

Aktionen #61

Von karn vor mehr als 10 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Testbereit geändert
  • Zugewiesen an wurde von karn zu 1337 geändert
Aktionen #62

Von 1337 vor mehr als 10 Jahren aktualisiert

  • Status wurde von Testbereit zu In Bearbeitung geändert
  • Zugewiesen an wurde von 1337 zu karn geändert

Wie gesagt, in den Berechnungen wird scheinbar die doppelte Menge Resistance verwendet.

Aktionen #63

Von 1337 vor mehr als 10 Jahren aktualisiert

Da es bei mir lokal mit der gleichen CalcSpellResistance richtig funktioniert, muss das Problem wohl irgendwo ausserhalb liegen. Wobei das irgendwie auch komisch ist, weil die Berechnung der non-binary resists ja funktioniert und dafür eigentlich die gleichen Werte verwendet werden.

Aktionen #64

Von karn vor mehr als 10 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Testbereit geändert
Aktionen #65

Von 1337 vor mehr als 10 Jahren aktualisiert

  • Status wurde von Testbereit zu In Bearbeitung geändert

Jetzt ist es nur noch halb so viel, wie es sein sollte.
Soll: 24%
War vorher: 42%+
Ist jetzt: 12%

Total casts: 3069
Resisted: 368
% Resisted should: 24.53
% Resisted is: 11.99
Diff: 12.537427

Aktionen #66

Von Anonym vor mehr als 10 Jahren aktualisiert

Setzt es mal auf 15000

Aktionen #67

Von Anonym vor mehr als 10 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Testbereit geändert
  • Zugewiesen an wurde von karn zu 2403 geändert
Aktionen #68

Von 1337 vor mehr als 10 Jahren aktualisiert

  • Status wurde von Testbereit zu In Bearbeitung geändert
  • Zugewiesen an wurde von 2403 zu Anonym geändert

Hab dir ja schon geschrieben.

Aktionen #69

Von Anonym vor mehr als 10 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Testbereit geändert
  • Zugewiesen an wurde von Anonym zu 2403 geändert

Nach logischer Rechnung angepasst =P

Aktionen #70

Von 1337 vor mehr als 10 Jahren aktualisiert

  • Status wurde von Testbereit zu Pending geändert
  • Zugewiesen an 2403 wurde gelöscht

Diff: 0.13443947
Diff: 0.30528164
Diff: -0.09396219

Diff
-0.47
0.02
1.05
-0.59

Diff
1.49
-2.62
1.02
0.11

Scheint ja zu stimmen :D

Aktionen #71

Von Anonym vor mehr als 10 Jahren aktualisiert

  • Status wurde von Pending zu Bestätigt geändert

aber crasht den server

Aktionen #72

Von 1337 vor mehr als 10 Jahren aktualisiert

Sicher? War alle paar tausend Casts oder so.

Aktionen #73

Von Anonym vor mehr als 10 Jahren aktualisiert

Ja crashlog sagt das karns fix wohl Probleme macht

Aktionen #74

Von Anonym vor mehr als 10 Jahren aktualisiert

  • Status wurde von Bestätigt zu In Bearbeitung geändert
  • Zugewiesen an wurde auf karn gesetzt
Aktionen #75

Von Anonym vor mehr als 10 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Testbereit geändert
  • Zugewiesen an karn wurde gelöscht
Aktionen #76

Von Anonym vor mehr als 10 Jahren aktualisiert

  • Zugewiesen an wurde auf 2403 gesetzt
Aktionen #77

Von Anonym vor mehr als 10 Jahren aktualisiert

  • Status wurde von Testbereit zu Pending geändert
Aktionen #78

Von Anonym vor mehr als 10 Jahren aktualisiert

  • Zugewiesen an 2403 wurde gelöscht
Aktionen #79

Von Corrius vor mehr als 10 Jahren aktualisiert

Dotticks sollten Nonbinary resistbar sein.

Feuerball wird Binary berechnet, sollte Nonbinary sein.

was mir noch so aufgefallen ist.

Aktionen #80

Von karn vor mehr als 10 Jahren aktualisiert

Aktionen #81

Von 1337 vor mehr als 10 Jahren aktualisiert

Ich mach mal ein neues Ticket für die Unterscheidung zwischen binary/non-binary Spells. Das hier ist ziemlich voll und die Mechanik an sich sollte ja jetzt funktionieren.
#8129

Aktionen #82

Von Daejiv vor mehr als 10 Jahren aktualisiert

  • Status wurde von Pending zu Live geändert
Aktionen #83

Von Rushor vor etwa 8 Jahren aktualisiert

Bedeutung Live:

- Der Bug wurde erfolgreich behoben und der Fix dazu befindet sich auf dem Spielserver. Sollte der Fehler weiterhin bestehen sollte ein neues Ticket ( https://redmine.rising-gods.de/projects/live/issues/new ) erstellt werden. Anmerkungen in dem alten abgewiesenen oder live genommenen Tickets werden ignoriert und gelöscht.

Aktionen

Auch abrufbar als: Atom PDF