### **Funciones de cálculo de daño**
#### Daño físico y mágico:
1. **Dark Wizard (DW):**
- **`DWPhysiDamageCalculate`**: Calcula el daño físico mínimo y máximo para las dos manos. Depende de la estadística de **Fuerza (Strength)**.
- **`DWMagicDamageCalculate`**: Calcula el daño mágico mínimo y máximo, también incluyendo el daño por **maldiciones**. Basado en la estadística de **Energía (Energy)**.
2. **Dark Knight (DK):**
- **`DKPhysiDamageCalculate`**: Similar al DW, pero con un factor de escalado diferente para la estadística de **Fuerza**.
- **`DKMagicDamageCalculate`**: Calcula daño mágico de manera análoga al DW, aunque el DK no es principalmente una clase mágica.
3. **Fairy Elf (FE):**
- **`FEPhysiDamageCalculate`**: Calcula el daño físico mínimo y máximo, teniendo en cuenta si se usa un arco (Bow) o no. Usa **Fuerza** y **Destreza (Dexterity)** para el cálculo.
- **`FEMagicDamageCalculate`**: Similar al DW, se enfoca en el daño mágico derivado de la **Energía**.
4. **Magic Gladiator (MG):**
- **`MGPhysiDamageCalculate`**: Combina **Fuerza** y **Energía** para determinar el daño físico, destacándose como una clase híbrida.
- **`MGMagicDamageCalculate`**: Calcula el daño mágico de forma similar a las otras clases.
5. **Dark Lord (DL):**
- **`DLPhysiDamageCalculate`**: Usa **Fuerza** y **Energía** para determinar el daño físico, pero con escalado único debido a su rol de líder.
- **`DLMagicDamageCalculate`**: Similar al DW, centrado en la **Energía**.
6. **Summoner (SU):**
- **`SUPhysiDamageCalculate`**: Similar al DW, con daño físico basado en **Fuerza** y **Destreza**.
- **`SUMagicDamageCalculate`**: Basado completamente en **Energía**, como es una clase mágica pura.
7. **Rage Fighter (RF):**
- **`RFPhysiDamageCalculate`**: Combina **Fuerza** y **Vitalidad (Vitality)**, mostrando su rol como una clase cuerpo a cuerpo de alto impacto.
- **`RFMagicDamageCalculate`**: Aunque no es su enfoque principal, usa **Energía** para calcular el daño mágico.
---
### **Funciones de cálculo de tasas de éxito**
Estas funciones determinan la probabilidad de que los ataques tengan éxito, tanto en combates contra monstruos (PvM) como entre jugadores (PvP).
1. **`CalcAttackSuccessRate` (PvM):**
- Depende de estadísticas como **Nivel**, **Destreza**, y **Fuerza**. Cada clase tiene una fórmula específica para reflejar su rol en el juego.
2. **`CalcAttackSuccessRatePvP`:**
- Similar al PvM, pero ajustado para el combate entre jugadores.
---
### **Funciones de cálculo de defensa**
1. **`CalcDefenseSuccessRate` (PvM):**
- Determina qué tan bien un personaje puede evitar recibir daño de monstruos. Basado principalmente en la **Destreza**, pero varía según la clase.
2. **`CalcDefenseSuccessRatePvP`:**
- Similar al PvM, pero enfocado en evitar ataques de otros jugadores.
3. **`CalcDefense`:**
- Calcula el valor de defensa base del personaje, que se combina con la tasa de éxito de defensa.
4. **`CalcBonusDefense`:**
- Añade bonificaciones defensivas según el nivel del set de equipo equipado (+10 a +15).
---
### **Velocidad de ataque**
1. **`CalcAttackSpeed`:**
- Calcula la velocidad de ataque físico y mágico según la **Destreza** del personaje y su clase. Afecta la frecuencia con la que un personaje puede lanzar ataques o hechizos.
---
### **Daño especial y ajustes**
1. **`PhysiDamageRight` y `PhysiDamageLeft`:**
- Ajustan el daño físico para armas específicas (como staffs) que reducen el daño físico a la mitad.
2. **`PhysiDamageSpecial`:**
- Calcula ajustes para personajes que usan dos armas, reduciendo el daño para balancear esta ventaja.
---
### **Usos principales**
- **Balance del juego:** Estas fórmulas permiten ajustar cómo cada clase inflige daño o se defiende, manteniendo un equilibrio en el sistema de combate.
- **Interacción con el cliente:** Los valores calculados en estas funciones se reflejan en el HUD del jugador, mostrando los valores de daño, defensa, éxito de ataque, etc.
- **Optimización del personaje:** Los jugadores pueden usar esta información para distribuir sus puntos de estadísticas de manera óptima.
En resumen, este archivo es crucial para manejar las mecánicas de combate y estadísticas de las diferentes clases en un servidor de **MU Online**, asegurando un juego justo y balanceado.