Saltearse al contenido

Tipos de Dano

Descripcion General

Los tipos de dano forman una jerarquia de herencia utilizada por el sistema de combate para determinar resistencias, efectos y penalizaciones. Cada archivo de tipo de dano puede declarar un campo Parent y un campo Inherits para extender las propiedades de otro tipo. Los tipos hoja (por ejemplo, Fire, Slashing) son los que las armas y habilidades realmente infligen; los tipos raiz (Physical, Elemental, Environment) existen unicamente para definir el comportamiento compartido de los subtipos.

Ubicacion de Archivos

Assets/Server/Entity/Damage/

Un archivo JSON por tipo de dano:

Assets/Server/Entity/Damage/
Physical.json
Elemental.json
Environment.json
Environmental.json
Bludgeoning.json (implicito — sin archivo independiente; definido en linea)
Slashing.json
Fire.json
Ice.json
Poison.json
Projectile.json
Fall.json
Drowning.json
Suffocation.json
OutOfWorld.json
Command.json

Esquema

CampoTipoRequeridoPor defectoDescripcion
ParentstringNoEl ID del tipo de dano padre del cual hereda este tipo.
InheritsstringNoDeclaracion de herencia adicional (generalmente refleja Parent).
DurabilityLossbooleanNofalseSi los golpes de este tipo causan perdida de durabilidad en el equipo.
StaminaLossbooleanNofalseSi los golpes de este tipo agotan la resistencia del objetivo.
BypassResistancesbooleanNofalseSi es true, este tipo de dano ignora todos los calculos de resistencia.
DamageTextColorstringNoColor hexadecimal usado para los numeros de dano flotantes (por ejemplo, "#00FF00" para veneno).
$CommentstringNoCadena de comentario interno, no utilizada en tiempo de ejecucion.

Jerarquia

(raiz)
├── Physical DurabilityLoss: true, StaminaLoss: true
│ ├── Slashing Parent: Physical
│ ├── Bludgeoning (heredado de Physical)
│ └── Piercing (heredado de Physical)
├── Elemental (tipo base para subtipos elementales)
│ ├── Fire Parent: Elemental
│ ├── Ice Parent: Elemental
│ └── Poison DamageTextColor: #00FF00
├── Projectile DurabilityLoss: true, StaminaLoss: false
├── Environment (tipo base)
│ ├── Fall Parent: Environment
│ └── Drowning Parent: Environment
├── Environmental DurabilityLoss: true, StaminaLoss: true, BypassResistances: false
│ (peligros ambientales: espinas, cactus, etc.)
├── Suffocation
├── OutOfWorld
└── Command DurabilityLoss: false, StaminaLoss: false, BypassResistances: true

Descripciones de Tipos

TipoPadreDurabilityLossStaminaLossBypassResistancesNotas
PhysicaltruetruefalseTipo fisico raiz; facilita los subtipos.
SlashingPhysicaltruetruefalseDano de espada, hacha.
ElementalfalsefalsefalseTipo elemental raiz; facilita los subtipos.
FireElementalfalsefalsefalseDano de hechizo de fuego e ignicion.
IceElementalfalsefalsefalseDano de hechizo de hielo.
PoisonfalsefalsefalseTexto de dano verde (#00FF00).
ProjectiletruefalsefalseImpactos de flechas y proyectiles lanzados.
EnvironmentTipo raiz para dano ambiental.
FallEnvironmentDano por caida.
DrowningEnvironmentAsfixia en el agua.
EnvironmentaltruetruefalsePeligros de plantas (espinas, cactus).
CommandfalsefalsetrueDano aplicado por admin/script; ignora todas las resistencias.

Ejemplos

Physical (Assets/Server/Entity/Damage/Physical.json):

{
"$Comment": "This damage type exists to facilitate sub types",
"DurabilityLoss": true,
"StaminaLoss": true
}

Slashing (Assets/Server/Entity/Damage/Slashing.json):

{
"Parent": "Physical",
"Inherits": "Physical"
}

Poison (Assets/Server/Entity/Damage/Poison.json):

{
"DamageTextColor": "#00FF00"
}

Command (Assets/Server/Entity/Damage/Command.json):

{
"DurabilityLoss": false,
"StaminaLoss": false,
"BypassResistances": true
}

Environmental (Assets/Server/Entity/Damage/Environmental.json):

{
"$Comment": "Damage type for environmental hazards like plants (bushes, cactus, etc.)",
"DurabilityLoss": true,
"StaminaLoss": true,
"BypassResistances": false
}

Paginas Relacionadas