If you are not in any party,
you will get your own exp and will not share with anyone:
Mobexp * Damage% * 0.8
or
Mobexp * Damage% * 0.8 + Mobexp * 0.2
if last hit

Now if you are in party,
you don't get your own exp alone, instead, you share the exp both to yourself and to the other party members in the same map, basing on how much damage you've contributed.

Exp sharing table
Exp Sharer Exp Receiver
yourself
Attacker
≥ -5 mob level
or
< -5 mob level
≥ -5 sharer level
Leecher
≥ -5 mob level
or
< -5 mob level
≥ -5 sharer level
Attacker/Leecher
< -5 mob level
< -5 sharer level
Attacker
≥ -29 mob level
Mobexp * Damage% * P * 2 Mobexp * Damage% * P Mobexp * Damage% * P * L x
Attacker
< -29 mob level
x x x x
* Mobexp = Original exp * 3.2 (Server rate), stored in float point
Damage%  =  damage mob max hp + regened hp + healed hp


Party size modifier (P): how many eligible exp receivers (n) for this exp share?
* A dead player will not be an eligible receiver (thus decreases n) but still can be a sharer
* Holy Symbol on receiver will x1.5 the exp share for the receiver if n ≥ 2 , x1.1 otherwise
P = { 0.5 if   n = 1 1.1 + 0.05 * n n + 1 if   n 2

or P = 0.5, 0.4, 0.3125, 0.26, 0.225, 0.2 when n = 1, 2, 3, 4, 5, 6


Party level modifier (L) L   =   Min ( Receiver level Floor(Average level of eligible receivers) , 1 )
* Floor ( exp ) for each result


* minimum leech level: -34 mob level when there's an attacker at -29 mob level
Global modifiers
Event bonus / coupon