[][src]Enum evtclib::event::EventKind

pub enum EventKind {
    EnterCombat {
        agent_addr: u64,
        subgroup: u64,
    },
    ExitCombat {
        agent_addr: u64,
    },
    ChangeUp {
        agent_addr: u64,
    },
    ChangeDown {
        agent_addr: u64,
    },
    ChangeDead {
        agent_addr: u64,
    },
    Spawn {
        agent_addr: u64,
    },
    Despawn {
        agent_addr: u64,
    },
    HealthUpdate {
        agent_addr: u64,
        health: u16,
    },
    LogStart {
        server_timestamp: u32,
        local_timestamp: u32,
    },
    LogEnd {
        server_timestamp: u32,
        local_timestamp: u32,
    },
    WeaponSwap {
        agent_addr: u64,
        set: WeaponSet,
    },
    MaxHealthUpdate {
        agent_addr: u64,
        max_health: u64,
    },
    PointOfView {
        agent_addr: u64,
    },
    Language {
        language: Language,
    },
    Build {
        build: u64,
    },
    ShardId {
        shard_id: u64,
    },
    Reward {
        reward_id: u64,
        reward_type: i32,
    },
    SkillUse {
        source_agent_addr: u64,
        skill_id: u32,
        activation: Activation,
    },
    ConditionTick {
        source_agent_addr: u64,
        destination_agent_addr: u64,
        condition_id: u32,
        damage: i32,
    },
    InvulnTick {
        source_agent_addr: u64,
        destination_agent_addr: u64,
        condition_id: u32,
    },
    Physical {
        source_agent_addr: u64,
        destination_agent_addr: u64,
        skill_id: u32,
        damage: i32,
        result: CbtResult,
    },
    BuffApplication {
        source_agent_addr: u64,
        destination_agent_addr: u64,
        buff_id: u32,
        duration: i32,
        overstack: u32,
    },
    BuffRemove {
        source_agent_addr: u64,
        destination_agent_addr: u64,
        buff_id: u32,
        total_duration: i32,
        longest_stack: i32,
        removal: CbtBuffRemove,
    },
    Position {
        agent_addr: u64,
        x: f32,
        y: f32,
        z: f32,
    },
    Velocity {
        agent_addr: u64,
        x: f32,
        y: f32,
        z: f32,
    },
    Facing {
        agent_addr: u64,
        x: f32,
        y: f32,
    },
    TeamChange {
        agent_addr: u64,
        team_id: u64,
    },
    AttackTarget {
        agent_addr: u64,
        parent_agent_addr: u64,
        targetable: bool,
    },
    Targetable {
        agent_addr: u64,
        targetable: bool,
    },
    MapId {
        map_id: u64,
    },
    Guild {
        source_agent_addr: u64,
        raw_bytes: [u8; 16],
        api_guild_id: Option<String>,
    },
    Error {
        text: String,
    },
}

A rusty enum for all possible combat events.

This makes dealing with CbtEvent a bit saner (and safer).

Variants

EnterCombat

The agent has entered combat.

Fields of EnterCombat

agent_addr: u64subgroup: u64
ExitCombat

The agent has left combat.

Fields of ExitCombat

agent_addr: u64
ChangeUp

The agent is now alive.

Fields of ChangeUp

agent_addr: u64
ChangeDown

The agent is now downed.

Fields of ChangeDown

agent_addr: u64
ChangeDead

The agent is now dead.

Fields of ChangeDead

agent_addr: u64
Spawn

The agent is now in tracking range.

Fields of Spawn

agent_addr: u64
Despawn

The agent has left the tracking range.

Fields of Despawn

agent_addr: u64
HealthUpdate

The agent has reached a health treshold.

Fields of HealthUpdate

agent_addr: u64health: u16

The new health, as percentage multiplied by 10000.

LogStart

The logging has started.

Fields of LogStart

server_timestamp: u32local_timestamp: u32
LogEnd

The logging has finished.

Fields of LogEnd

server_timestamp: u32local_timestamp: u32
WeaponSwap

The agent has swapped the weapon set.

Fields of WeaponSwap

agent_addr: u64set: WeaponSet
MaxHealthUpdate

The given agent has its max health changed.

Fields of MaxHealthUpdate

agent_addr: u64max_health: u64
PointOfView

The given agent is the point-of-view.

Fields of PointOfView

agent_addr: u64
Language

The given language is the text language.

Fields of Language

language: Language
Build

The log was made with the given game build.

Fields of Build

build: u64
ShardId

The shard id of the server.

Fields of ShardId

shard_id: u64
Reward

A reward has been awarded.

Fields of Reward

reward_id: u64reward_type: i32
SkillUse

A skill has been used.

Fields of SkillUse

source_agent_addr: u64skill_id: u32activation: Activation
ConditionTick

Condition damage tick.

Fields of ConditionTick

source_agent_addr: u64destination_agent_addr: u64condition_id: u32damage: i32
InvulnTick

Condition damage tick that was negated by invulnerability.

Fields of InvulnTick

source_agent_addr: u64destination_agent_addr: u64condition_id: u32
Physical

Physical damage.

Fields of Physical

source_agent_addr: u64destination_agent_addr: u64skill_id: u32damage: i32result: CbtResult
BuffApplication

Buff applied.

Fields of BuffApplication

source_agent_addr: u64destination_agent_addr: u64buff_id: u32duration: i32overstack: u32
BuffRemove

Buff removed.

Fields of BuffRemove

source_agent_addr: u64destination_agent_addr: u64buff_id: u32total_duration: i32longest_stack: i32removal: CbtBuffRemove
Position

Position of the agent has changed.

Fields of Position

agent_addr: u64x: f32y: f32z: f32
Velocity

Velocity of the agent has changed.

Fields of Velocity

agent_addr: u64x: f32y: f32z: f32
Facing

The agent is facing in the given direction.

Fields of Facing

agent_addr: u64x: f32y: f32
TeamChange

The given agent changed their team.

Fields of TeamChange

agent_addr: u64team_id: u64
AttackTarget

Establishes an "attack target" relationship between two agents.

Attack targets are somewhat not really documented, but the gist seems to be that some agents act as an "attack target" for other agents. This is mainly for the purpose of some status update events, such as Targetable or MaxHealthUpdate.

Damage events seem to not have attack targets as their target, so if your only goal is to calculate the damage dealt, you should be fine ignoring attack targets.

Further sources:

Fields of AttackTarget

agent_addr: u64parent_agent_addr: u64targetable: bool
Targetable

Updates the targetable state for the given agent.

Fields of Targetable

agent_addr: u64targetable: bool
MapId

Information about the map id.

Fields of MapId

map_id: u64
Guild

Guild identification

Fields of Guild

source_agent_addr: u64raw_bytes: [u8; 16]api_guild_id: Option<String>
Error

An error was reported by arcdps.

Fields of Error

text: String

Trait Implementations

impl Clone for EventKind[src]

impl Debug for EventKind[src]

impl PartialEq<EventKind> for EventKind[src]

impl StructuralPartialEq for EventKind[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.