# NuMnUmZz Tasty guide to Attributes, or how to not worry about gear and git gud

You might be a tad bit confused when you increase your stats and things don't feel right or don't make sense. so lets demystify your Attributes

You have your base attributes and then you have your compound attributes Base Attributes are highlighted in green and compound are highlighted in orange

[![image.png](https://wiki.weebsweb.com/uploads/images/gallery/2026-08/scaled-1680-/Ep2k5EMWNGA55vS4-image.png)](https://wiki.weebsweb.com/uploads/images/gallery/2026-08/Ep2k5EMWNGA55vS4-image.png)

Handy dandy base attributes Table

<table id="bkmrk-attribute-primary-ef"><thead><tr><th>Attribute</th><th>Primary Effects</th></tr></thead><tbody><tr><td>**STR**</td><td>Melee ATK, STR damage bonus every 10 STR, weight limit, minor ranged damage</td></tr><tr><td>**AGI**</td><td>FLEE, ASPD</td></tr><tr><td>**VIT**</td><td>Max HP, Soft DEF, HP regeneration, healing-item effectiveness, status resistance</td></tr><tr><td>**INT**</td><td>MATK, Soft MDEF, Max SP, SP regeneration, SP-item effectiveness, some status resistance</td></tr><tr><td>**DEX**</td><td>HIT, cast-time reduction, weapon damage consistency, ranged ATK, minor ASPD</td></tr><tr><td>**LUK**</td><td>CRIT, Perfect Dodge, minor ATK, resistance to several statuses, crafting success</td></tr></tbody></table>

#### **STR — Strength**

STR is the primary offensive stat for most **melee physical characters**. Each point increases melee attack, while every 10 total STR gives an increasingly large bonus through the classic `STR + floor(STR/10)²` progression. It also increases carrying capacity by **30 weight per base STR**. STR contributes only a small amount to ranged weapon damage compared with DEX.

##### **GETTING INTO THE WEEDS:**This is how your strength is calculated

<span class="base"><span class="mord mathnormal">STR</span><span class="mbin">+</span></span><span class="base"><span class="minner"><span class="mopen delimcenter"><span class="delimsizing size3">⌊</span></span><span class="mord"><span class="mfrac"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist">10<span class="mord mathnormal">STR</span></span><span class="vlist-s">​</span></span></span></span></span><span class="mclose delimcenter"><span class="delimsizing size3">⌋</span></span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist"><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span></span></span></span></span>

<span class="base"><span class="minner"><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist"><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mopen delimcenter"><span class="delimsizing size3">⌊</span></span><span class="mord"><span class="mfrac"><span class="vlist-t vlist-t2">10<span class="mord mathnormal">STR</span><span class="vlist-s">​</span></span></span></span><span class="mclose delimcenter"><span class="delimsizing size3">⌋</span></span> this essentially means it will round down to the nearest whole number</span></span></span></span></span></span></span></span>

<span class="base"><span class="minner"><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist"><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">Weeds TLDR: put STR+bonus STR to 10's I.E 10, 20, 30, etc... numbers for strength so you get the most out of your status points and damage.</span></span></span></span></span></span></span></span>

#### **AGI — Agility**

AGI primarily controls **attack speed and dodge**. Each point gives **+1 FLEE** and contributes substantially toward ASPD, although your actual ASPD also depends on class, weapon type, DEX, skills, and buffs. AGI does **not** reduce cast time or increase movement speed in classic mechanics. USE Concentration, Awake, and Berserk Potions they are your friend for ASPD

**GETTING INTO THE WEEDS:** This is your ASPD formula, you dirty filthy math nerd fucks

<div class="" data-is-intersecting="true" data-turn-id-container="dcbf8d5d-1551-4c2b-9d13-47fe0c0d8350" id="bkmrk--1"><section class="text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&:has([data-writing-block])>*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-(--sticky-padding-top)" data-testid="conversation-turn-51" data-turn="user" data-turn-id="dcbf8d5d-1551-4c2b-9d13-47fe0c0d8350" data-turn-id-container="dcbf8d5d-1551-4c2b-9d13-47fe0c0d8350" dir="auto"><div class="text-base my-auto mx-auto pt-12 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)"><div class="[--thread-content-max-width:40rem] @w-lg/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col" data-conversation-screenshot-content=""><div class="z-0 flex justify-end">  
</div></div></div></section></div><div class="" data-is-intersecting="true" data-turn-id-container="request-6a77cd5f-b61c-83ea-a890-26f698b44dcf-19" id="bkmrk-for-wro%2C-the-basic-a"><section class="text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&:has([data-writing-block])>*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" data-testid="conversation-turn-52" data-turn="assistant" data-turn-id="request-6a77cd5f-b61c-83ea-a890-26f698b44dcf-19" data-turn-id-container="request-6a77cd5f-b61c-83ea-a890-26f698b44dcf-19" dir="auto">For **wRO**, the basic ASPD formula is:

<div class="text-base my-auto mx-auto pb-8 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)"><div class="[--thread-content-max-width:40rem] @w-lg/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn" data-conversation-screenshot-content=""><div class="flex max-w-full flex-col gap-4 grow"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&]:mt-1" data-message-author-role="assistant" data-message-id="91d37d95-9edc-4aec-b9ae-992ac44123ef" data-message-model-slug="gpt-5-6-thinking" data-turn-start-message="true" dir="auto" tabindex="0"><div class="flex w-full flex-col gap-1 empty:hidden"><div class="markdown prose dark:prose-invert wrap-break-word w-full dark markdown-new-styling"><span aria-label="\boxed{
ASPD = 200-\left(WD-\frac{(WD\times AGI/25)+(WD\times DEX/100)}{10}\right)\times(1-SM)
}" data-client-katex-layout="" data-end="151" data-math-source="\boxed{
ASPD = 200-\left(WD-\frac{(WD\times AGI/25)+(WD\times DEX/100)}{10}\right)\times(1-SM)
}" data-start="49" role="math"><span class="katex-display"><span class="katex"><span aria-hidden="true" class="katex-html"><span class="base"><span class="mord"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist"><span class="boxpad"><span class="mord mathnormal">A</span><span class="mord mathnormal">SP</span><span class="mord mathnormal">D</span><span class="mrel">=</span>200<span class="mbin">−</span><span class="minner"><span class="mopen delimcenter"><span class="delimsizing size3">(</span></span><span class="mord mathnormal">W</span><span class="mord mathnormal">D</span><span class="mbin">−</span><span class="mfrac">10<span class="mopen">(</span><span class="mord mathnormal">W</span><span class="mord mathnormal">D</span><span class="mbin">×</span><span class="mord mathnormal">A</span><span class="mord mathnormal">G</span><span class="mord mathnormal">I</span>/25<span class="mclose">)</span><span class="mbin">+</span><span class="mopen">(</span><span class="mord mathnormal">W</span><span class="mord mathnormal">D</span><span class="mbin">×</span><span class="mord mathnormal">D</span><span class="mord mathnormal">EX</span>/100<span class="mclose">)</span><span class="vlist-s">​</span></span><span class="mclose delimcenter"><span class="delimsizing size3">)</span></span></span><span class="mbin">×</span><span class="mopen">(</span>1<span class="mbin">−</span><span class="mord mathnormal">SM</span><span class="mclose">)</span></span></span><span class="vlist-s">​</span></span></span></span></span></span></span></span></span></div></div></div></div></div></div>Where:

<div class="text-base my-auto mx-auto pb-8 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)"><div class="[--thread-content-max-width:40rem] @w-lg/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn" data-conversation-screenshot-content=""><div class="flex max-w-full flex-col gap-4 grow"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&]:mt-1" data-message-author-role="assistant" data-message-id="91d37d95-9edc-4aec-b9ae-992ac44123ef" data-message-model-slug="gpt-5-6-thinking" data-turn-start-message="true" dir="auto" tabindex="0"><div class="flex w-full flex-col gap-1 empty:hidden"><div class="markdown prose dark:prose-invert wrap-break-word w-full dark markdown-new-styling">- **WD** = Weapon Delay, based on your **class + weapon type**
- **AGI** = your total AGI
- **DEX** = your total DEX
- **SM** = ASPD speed modifiers from things like **potions and skills**

</div></div></div></div></div></div>In simple terms, **your class and weapon determine your starting attack delay**, then **AGI does most of the work reducing that delay**, while **DEX contributes about one-quarter as much as AGI**. ASPD buffs then reduce the remaining delay further. This is why the same AGI/DEX can produce different ASPD on different classes or weapon types.

##### **WD or Weapon Delay Table**

<details><summary></summary>

<table><thead><tr><th>Class</th><th>Weapon → **WD**</th></tr></thead><tbody><tr><td>**Novice / Novice High / Baby Novice / Super Novice / Baby Super Novice**</td><td>Unarmed **50** · Dagger **65** · 1H Sword **70** · 1H Axe **80** · Mace **70** · Rod **65** · 2H Staff **65**</td></tr><tr><td>**Swordman / Swordman High / Baby Swordman**</td><td>Unarmed **40** · Dagger **50** · 1H Sword **55** · 2H Sword **60** · 1H Spear **65** · 2H Spear **70** · 1H Axe **70** · 2H Axe **75** · Mace **65**</td></tr><tr><td>**Magician / Magician High / Baby Magician**</td><td>Unarmed **50** · Dagger **60** · Rod **70** · 2H Staff **70**</td></tr><tr><td>**Archer / Archer High / Baby Archer**</td><td>Unarmed **40** · Dagger **60** · Bow **70**</td></tr><tr><td>**Acolyte / Acolyte High / Baby Acolyte**</td><td>Unarmed **40** · Mace **60** · Rod **60** · 2H Staff **60**</td></tr><tr><td>**Merchant / Merchant High / Baby Merchant**</td><td>Unarmed **40** · Dagger **60** · 1H Sword **70** · 1H Axe **70** · 2H Axe **75** · Mace **70**</td></tr><tr><td>**Thief / Thief High / Baby Thief**</td><td>Unarmed **40** · Dagger **50** · 1H Sword **65** · 1H Axe **80** · Bow **80**</td></tr><tr><td>**Knight / Lord Knight / Baby Knight**</td><td>Unarmed **40** · Dagger **50** · 1H Sword **50** · 2H Sword **55** · 1H Spear **60** · 2H Spear **60** · 1H Axe **70** · 2H Axe **70** · Mace **65**</td></tr><tr><td>**Priest / High Priest / Baby Priest**</td><td>Unarmed **40** · Mace **60** · Rod **60** · Book **60** · 2H Staff **60**</td></tr><tr><td>**Wizard / High Wizard / Baby Wizard**</td><td>Unarmed **50** · Dagger **57.5** · Rod **62.5** · 2H Staff **62.5**</td></tr><tr><td>**Blacksmith / Whitesmith / Baby Blacksmith**</td><td>Unarmed **40** · Dagger **60** · 1H Sword **65** · 1H Axe **65** · 2H Axe **65** · Mace **67.5**</td></tr><tr><td>**Hunter / Sniper / Baby Hunter**</td><td>Unarmed **40** · Dagger **60** · Bow **60**</td></tr><tr><td>**Assassin / Assassin Cross / Baby Assassin**</td><td>Unarmed **40** · Dagger **50** · 1H Sword **65** · 1H Axe **80** · Katar **50**</td></tr><tr><td>**Crusader / Paladin / Baby Crusader**</td><td>Unarmed **40** · Dagger **50** · 1H Sword **50** · 2H Sword **55** · 1H Spear **60** · 2H Spear **60** · 1H Axe **70** · 2H Axe **70** · Mace **65**</td></tr><tr><td>**Monk / Champion / Baby Monk**</td><td>Unarmed **40** · Mace **57.5** · Rod **57.5** · Knuckle **47.5** · 2H Staff **57.5**</td></tr><tr><td>**Sage / Professor / Baby Sage**</td><td>Unarmed **45** · Dagger **52.5** · Rod **62.5** · Book **55** · 2H Staff **62.5**</td></tr><tr><td>**Rogue / Stalker / Baby Rogue**</td><td>Unarmed **40** · Dagger **50** · 1H Sword **55** · Bow **65**</td></tr><tr><td>**Alchemist / Creator / Baby Alchemist**</td><td>Unarmed **40** · Dagger **55** · 1H Sword **57.5** · 1H Axe **67.5** · 2H Axe **70** · Mace **65**</td></tr><tr><td>**Bard / Clown / Baby Bard**</td><td>Unarmed **40** · Dagger **55** · Bow **65** · Instrument **57.5**</td></tr><tr><td>**Dancer / Gypsy / Baby Dancer**</td><td>Unarmed **40** · Dagger **55** · Bow **65** · Whip **57.5**</td></tr><tr><td>**Gunslinger**</td><td>Unarmed **50** · Revolver **70** · Rifle **75** · Gatling Gun **70** · Shotgun **150** · Grenade Launcher **150**</td></tr><tr><td>**Ninja**</td><td>Unarmed **40** · Dagger **50** · Fuuma Shuriken **75**</td></tr><tr><td>**Taekwon**</td><td>Unarmed **40**</td></tr><tr><td>**Star Gladiator / TaeKwon Master**</td><td>Unarmed **40** · Book **50**</td></tr><tr><td>**Soul Linker**</td><td>Unarmed **50** · Dagger **57.5** · Rod **62.5** · 2H Staff **62.5**</td></tr><tr><td>**Source**</td><td>Classic class/weapon delay database ([GitHub](https://github.com/eathena/eathena/blob/master/db/job_db1.txt "eathena/db/job_db1.txt at master · eathena/eathena · GitHub")); WD corresponds to the Pre-Renewal ASPD formula's `WD = 50 × BTBA`. ([irowiki.org](https://irowiki.org/classic/ASPD "ASPD - iRO Wiki Classic"))</td></tr></tbody></table>

</details>Weeds TLDR: AGI is your biggest contributor and ASPD potions use ASPD potions. USE Concentration, Awake, and Berserk Potions they are your friend for ASPD

</section></div>#### **VIT — Vitality**

VIT is the main **durability stat**. Each point increases maximum HP by roughly **1% of your class's base HP**, contributes to your Soft/VIT DEF, improves HP recovery and healing-item effectiveness, and provides resistance to statuses such as Stun, Silence, Poison, and Bleeding. It is therefore valuable even though VIT DEF itself is only flat damage reduction.

##### **Getting into the Weeds:** Here is a table showing you the differences in hp each class has, it is based on class and Base level

<details id="bkmrk-job-class-hp-a-hp-b-"><summary></summary>

<table><thead><tr><th>Job Class</th><th align="right">HP A</th><th align="right">HP B</th><th align="right">Lv. 99 Effective Base HP</th><th align="right">HP per VIT @ 99</th></tr></thead><tbody><tr><td>**Novice**</td><td align="right">0.00</td><td align="right">5</td><td align="right">530</td><td align="right">**5.30**</td></tr><tr><td>**High Novice**</td><td align="right">0.00</td><td align="right">5</td><td align="right">662\*</td><td align="right">**6.63**</td></tr><tr><td>**Super Novice**</td><td align="right">0.00</td><td align="right">5</td><td align="right">2,530†</td><td align="right">**25.30**</td></tr><tr><td>**Swordman**</td><td align="right">0.70</td><td align="right">5</td><td align="right">3,997</td><td align="right">**39.97**</td></tr><tr><td>**High Swordman**</td><td align="right">0.70</td><td align="right">5</td><td align="right">4,996\*</td><td align="right">**49.96**</td></tr><tr><td>**Archer**</td><td align="right">0.50</td><td align="right">5</td><td align="right">3,029</td><td align="right">**30.29**</td></tr><tr><td>**High Archer**</td><td align="right">0.50</td><td align="right">5</td><td align="right">3,786\*</td><td align="right">**37.86**</td></tr><tr><td>**Thief**</td><td align="right">0.50</td><td align="right">5</td><td align="right">3,029</td><td align="right">**30.29**</td></tr><tr><td>**High Thief**</td><td align="right">0.50</td><td align="right">5</td><td align="right">3,786\*</td><td align="right">**37.86**</td></tr><tr><td>**Acolyte**</td><td align="right">0.40</td><td align="right">5</td><td align="right">2,510</td><td align="right">**25.10**</td></tr><tr><td>**High Acolyte**</td><td align="right">0.40</td><td align="right">5</td><td align="right">3,137\*</td><td align="right">**31.38**</td></tr><tr><td>**Merchant**</td><td align="right">0.40</td><td align="right">5</td><td align="right">2,510</td><td align="right">**25.10**</td></tr><tr><td>**High Merchant**</td><td align="right">0.40</td><td align="right">5</td><td align="right">3,137\*</td><td align="right">**31.38**</td></tr><tr><td>**Mage**</td><td align="right">0.30</td><td align="right">5</td><td align="right">2,020</td><td align="right">**20.20**</td></tr><tr><td>**High Mage**</td><td align="right">0.30</td><td align="right">5</td><td align="right">2,525</td><td align="right">**25.25**</td></tr><tr><td>**Knight**</td><td align="right">1.50</td><td align="right">5</td><td align="right">7,978</td><td align="right">**79.78**</td></tr><tr><td>**Lord Knight**</td><td align="right">1.50</td><td align="right">5</td><td align="right">9,972\*</td><td align="right">**99.73**</td></tr><tr><td>**Crusader**</td><td align="right">1.10</td><td align="right">7</td><td align="right">6,177</td><td align="right">**61.77**</td></tr><tr><td>**Paladin**</td><td align="right">1.10</td><td align="right">7</td><td align="right">7,721\*</td><td align="right">**77.21**</td></tr><tr><td>**Hunter**</td><td align="right">0.85</td><td align="right">5</td><td align="right">4,739</td><td align="right">**47.39**</td></tr><tr><td>**Sniper**</td><td align="right">0.85</td><td align="right">5</td><td align="right">5,923\*</td><td align="right">**59.24**</td></tr><tr><td>**Bard**</td><td align="right">0.75</td><td align="right">3</td><td align="right">4,056</td><td align="right">**40.56**</td></tr><tr><td>**Clown**</td><td align="right">0.75</td><td align="right">3</td><td align="right">5,070</td><td align="right">**50.70**</td></tr><tr><td>**Dancer**</td><td align="right">0.75</td><td align="right">3</td><td align="right">4,056</td><td align="right">**40.56**</td></tr><tr><td>**Gypsy**</td><td align="right">0.75</td><td align="right">3</td><td align="right">5,070</td><td align="right">**50.70**</td></tr><tr><td>**Assassin**</td><td align="right">1.10</td><td align="right">5</td><td align="right">5,979</td><td align="right">**59.79**</td></tr><tr><td>**Assassin Cross**</td><td align="right">1.10</td><td align="right">5</td><td align="right">7,473\*</td><td align="right">**74.74**</td></tr><tr><td>**Rogue**</td><td align="right">0.85</td><td align="right">5</td><td align="right">4,739</td><td align="right">**47.39**</td></tr><tr><td>**Stalker**</td><td align="right">0.85</td><td align="right">5</td><td align="right">5,923\*</td><td align="right">**59.24**</td></tr><tr><td>**Priest**</td><td align="right">0.75</td><td align="right">5</td><td align="right">4,254</td><td align="right">**42.54**</td></tr><tr><td>**High Priest**</td><td align="right">0.75</td><td align="right">5</td><td align="right">5,317\*</td><td align="right">**53.18**</td></tr><tr><td>**Monk**</td><td align="right">0.90</td><td align="right">6.5</td><td align="right">5,137\*</td><td align="right">**51.38**</td></tr><tr><td>**Champion**</td><td align="right">0.90</td><td align="right">6.5</td><td align="right">6,421\*</td><td align="right">**64.22**</td></tr><tr><td>**Blacksmith**</td><td align="right">0.90</td><td align="right">5</td><td align="right">4,989</td><td align="right">**49.89**</td></tr><tr><td>**Whitesmith**</td><td align="right">0.90</td><td align="right">5</td><td align="right">6,236\*</td><td align="right">**62.36**</td></tr><tr><td>**Alchemist**</td><td align="right">0.90</td><td align="right">5</td><td align="right">4,989</td><td align="right">**49.89**</td></tr><tr><td>**Creator**</td><td align="right">0.90</td><td align="right">5</td><td align="right">6,236\*</td><td align="right">**62.36**</td></tr><tr><td>**Wizard**</td><td align="right">0.55</td><td align="right">5</td><td align="right">3,254</td><td align="right">**32.54**</td></tr><tr><td>**High Wizard**</td><td align="right">0.55</td><td align="right">5</td><td align="right">4,067\*</td><td align="right">**40.68**</td></tr><tr><td>**Sage**</td><td align="right">0.75</td><td align="right">5</td><td align="right">4,254</td><td align="right">**42.54**</td></tr><tr><td>**Professor**</td><td align="right">0.75</td><td align="right">5</td><td align="right">5,317\*</td><td align="right">**53.18**</td></tr><tr><td>**TaeKwon Kid**</td><td align="right">0.70</td><td align="right">5</td><td align="right">3,997</td><td align="right">**39.97**</td></tr><tr><td>**TaeKwon Master / Star Gladiator**</td><td align="right">0.90</td><td align="right">6.5</td><td align="right">5,137\*</td><td align="right">**51.38**</td></tr><tr><td>**Soul Linker**</td><td align="right">0.75</td><td align="right">5</td><td align="right">4,254</td><td align="right">**42.54**</td></tr><tr><td>**Ninja**</td><td align="right">0.80</td><td align="right">0</td><td align="right">3,994</td><td align="right">**39.94**</td></tr><tr><td>**Gunslinger**</td><td align="right">0.75</td><td align="right">0</td><td align="right">3,759</td><td align="right">**37.59**</td></tr></tbody></table>

</details>#### **INT — Intelligence**

INT is the primary **magic and SP stat**. It raises MATK, increases Soft MDEF, gives **+1% Max SP per INT**, improves SP-item recovery, and increases natural SP regeneration. Pre-Renewal MATK also has important breakpoints: minimum MATK gets a bonus every **7 INT**, while maximum MATK gets a bonus every **5 INT**.

#### **DEX — Dexterity**

DEX primarily controls **accuracy and casting speed**. Each point gives **+1 HIT** and reduces classic variable cast time by **1/150**, making **150 DEX instant cast** for skills governed by that formula. DEX also raises the minimum damage of weapons, reducing damage variance, contributes slightly to ASPD, and replaces STR as the primary physical damage stat for **bows, guns, instruments, and whips**.

#### **LUK — Luck**

LUK is the miscellaneous offensive/defensive stat. Each point gives about **+0.3 CRIT** and **+0.1 Perfect Dodge**, while every **5 LUK gives +1 ATK**. It also reduces an enemy's chance to critically hit you and provides varying resistance to several status effects. LUK also affects crafting systems such as Blacksmith forging and Alchemist brewing, but **does not increase item drop rates**.

### **Compound Attributes**

**ATK** is your physical attack power. It is built from your stats, weapon ATK, refinement, flat ATK bonuses, and other effects, then feeds into the physical damage formula before modifiers like skill damage, enemy DEF, element, race, size, and cards are applied. In Pre-Renewal, STR is the main contributor for melee weapons, while DEX fills that role for ranged weapons.

**MATK** is your magical attack power and determines the base damage range of most offensive magic. In Pre-Renewal it is driven primarily by INT, with separate minimum and maximum MATK values, so spell damage naturally varies between casts. Rods and some equipment can also increase MATK by a percentage.

**HIT** determines your chance to successfully land normal physical attacks and most physical skills. It is primarily increased by DEX and your Base Level, and is compared against the target's FLEE. Higher HIT is particularly important against high-AGI monsters and evasive players.

**Critical** determines your chance to perform a critical physical attack. CRIT is primarily increased by LUK, equipment, cards, and skills. Critical hits automatically connect regardless of normal HIT/FLEE and, in Pre-Renewal, ignore both Hard DEF and VIT/Soft DEF, making them especially effective against heavily armored targets.

**DEF** reduces incoming physical damage. Pre-Renewal has two forms: **Hard DEF**, mainly from equipment, reduces physical damage by a percentage; and **Soft DEF**, mainly derived from VIT, subtracts a flat amount afterward. Critical attacks bypass both forms of DEF.

Here is a more in depth description of your defense compound attribute

<details id="bkmrk-in-wro%2C-the-two-def-"><summary></summary>

In **wRO**, the two DEF numbers work very differently. In your status window it shows your DEF like this:

**DEF 40 + 35**

the **40** is **Equipment DEF / Hard DEF**, while the **35** is **VIT DEF / Soft DEF**. Hard DEF is percentage-based; Soft DEF is flat/subtractive.

The basic physical damage calculation is essentially:

<span aria-label="\text{Damage} = (\text{Incoming Damage} \times (1-\text{Hard DEF}/100))-\text{Soft DEF}" data-client-katex-layout="" data-end="460" data-math-source="\text{Damage} = (\text{Incoming Damage} \times (1-\text{Hard DEF}/100))-\text{Soft DEF}" data-start="367" role="math"><span class="katex-display"><span class="katex"><span aria-hidden="true" class="katex-html"><span class="base"><span class="mord text"><span class="mord">Damage</span></span><span class="mrel">=</span></span><span class="base"><span class="mopen">(</span><span class="mord text"><span class="mord">Incoming Damage</span></span><span class="mbin">×</span></span><span class="base"><span class="mopen">(</span><span class="mord">1</span><span class="mbin">−</span></span><span class="base"><span class="mord text"><span class="mord">Hard DEF</span></span><span class="mord">/100</span><span class="mclose">))</span><span class="mbin">−</span></span><span class="base"><span class="mord text"><span class="mord">Soft DEF</span></span></span></span></span></span></span>

So **Hard DEF happens first**, then **VIT DEF gets subtracted afterward**.

##### Example: 40 + 35 DEF

Suppose a monster's attack reaches the DEF stage at **1,000 damage**.

Your **40 Hard DEF** removes 40%:

<span aria-label="1000\times(1-0.40)=600" data-client-katex-layout="" data-end="736" data-math-source="1000\times(1-0.40)=600" data-start="708" role="math"><span class="katex-display"><span class="katex"><span aria-hidden="true" class="katex-html"><span class="base"><span class="mord">1000</span><span class="mbin">×</span></span><span class="base"><span class="mopen">(</span><span class="mord">1</span><span class="mbin">−</span></span><span class="base"><span class="mord">0.40</span><span class="mclose">)</span><span class="mrel">=</span></span><span class="base"><span class="mord">600</span></span></span></span></span></span>

Then your **35 Soft DEF** is subtracted:

<span aria-label="600-35=\boxed{565}" data-client-katex-layout="" data-end="804" data-math-source="600-35=\boxed{565}" data-start="780" role="math"><span class="katex-display"><span class="katex"><span aria-hidden="true" class="katex-html"><span class="base"><span class="mord">600</span><span class="mbin">−</span></span><span class="base"><span class="mord">35</span><span class="mrel">=</span></span><span class="base"><span class="mord"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist"><span class="boxpad">565</span></span><span class="vlist-s">​</span></span></span></span></span></span></span></span></span>

So you take about **565 damage**.

</details>**MDEF** reduces incoming magical damage. Like DEF, Pre-Renewal separates it into **Hard MDEF** from equipment, which provides percentage-based magic reduction, and **Soft MDEF** derived largely from INT and VIT, which subtracts additional damage after the percentage reduction.

**FLEE** determines your chance to evade most physical attacks. It is primarily increased by AGI and Base Level and is compared against the attacker's HIT. Normal avoidance is capped at a 95% success rate, and Pre-Renewal applies a significant FLEE penalty when multiple enemies are attacking you simultaneously.

**ASPD** determines how quickly you can perform normal attacks. It depends on your class, equipped weapon type, AGI, DEX, and attack-speed modifiers from skills, consumables, and equipment. AGI contributes much more strongly than DEX, and because ASPD represents decreasing delay between attacks, gains at higher ASPD values produce increasingly large increases in attacks per second.

ASPD Formula again

<details id="bkmrk-for-wro%2C-the-basic-a-1"><summary></summary>

For **wRO**, the basic ASPD formula is:

<div class="text-base my-auto mx-auto pb-8 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)"><div class="[--thread-content-max-width:40rem] @w-lg/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn" data-conversation-screenshot-content=""><div class="flex max-w-full flex-col gap-4 grow"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&]:mt-1" data-message-author-role="assistant" data-message-id="91d37d95-9edc-4aec-b9ae-992ac44123ef" data-message-model-slug="gpt-5-6-thinking" data-turn-start-message="true" dir="auto" tabindex="0"><div class="flex w-full flex-col gap-1 empty:hidden"><div class="markdown prose dark:prose-invert wrap-break-word w-full dark markdown-new-styling"><span aria-label="\boxed{
ASPD = 200-\left(WD-\frac{(WD\times AGI/25)+(WD\times DEX/100)}{10}\right)\times(1-SM)
}" data-client-katex-layout="" data-end="151" data-math-source="\boxed{
ASPD = 200-\left(WD-\frac{(WD\times AGI/25)+(WD\times DEX/100)}{10}\right)\times(1-SM)
}" data-start="49" role="math"><span class="katex-display"><span class="katex"><span aria-hidden="true" class="katex-html"><span class="base"><span class="mord"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist"><span class="boxpad"><span class="mord mathnormal">A</span><span class="mord mathnormal">SP</span><span class="mord mathnormal">D</span><span class="mrel">=</span>200<span class="mbin">−</span><span class="minner"><span class="mopen delimcenter"><span class="delimsizing size3">(</span></span><span class="mord mathnormal">W</span><span class="mord mathnormal">D</span><span class="mbin">−</span><span class="mfrac">10<span class="mopen">(</span><span class="mord mathnormal">W</span><span class="mord mathnormal">D</span><span class="mbin">×</span><span class="mord mathnormal">A</span><span class="mord mathnormal">G</span><span class="mord mathnormal">I</span>/25<span class="mclose">)</span><span class="mbin">+</span><span class="mopen">(</span><span class="mord mathnormal">W</span><span class="mord mathnormal">D</span><span class="mbin">×</span><span class="mord mathnormal">D</span><span class="mord mathnormal">EX</span>/100<span class="mclose">)</span><span class="vlist-s">​</span></span><span class="mclose delimcenter"><span class="delimsizing size3">)</span></span></span><span class="mbin">×</span><span class="mopen">(</span>1<span class="mbin">−</span><span class="mord mathnormal">SM</span><span class="mclose">)</span></span></span><span class="vlist-s">​</span></span></span></span></span></span></span></span></span></div></div></div></div></div></div>Where:

<div class="text-base my-auto mx-auto pb-8 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)"><div class="[--thread-content-max-width:40rem] @w-lg/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn" data-conversation-screenshot-content=""><div class="flex max-w-full flex-col gap-4 grow"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&]:mt-1" data-message-author-role="assistant" data-message-id="91d37d95-9edc-4aec-b9ae-992ac44123ef" data-message-model-slug="gpt-5-6-thinking" data-turn-start-message="true" dir="auto" tabindex="0"><div class="flex w-full flex-col gap-1 empty:hidden"><div class="markdown prose dark:prose-invert wrap-break-word w-full dark markdown-new-styling">- **WD** = Weapon Delay, based on your **class + weapon type**
- **AGI** = your total AGI
- **DEX** = your total DEX
- **SM** = ASPD speed modifiers from things like **potions and skills**

</div></div></div></div></div></div>In simple terms, **your class and weapon determine your starting attack delay**, then **AGI does most of the work reducing that delay**, while **DEX contributes about one-quarter as much as AGI**. ASPD buffs then reduce the remaining delay further. This is why the same AGI/DEX can produce different ASPD on different classes or weapon types.

</details>These are fairly straight forward straight-forward descriptions for all your base attributes and compound attributes in your Attributes window (Alt+A)