mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-21 18:31:30 +00:00
1254 lines
35 KiB
Protocol Buffer
1254 lines
35 KiB
Protocol Buffer
syntax = "proto3";
|
|
package eqproto;
|
|
|
|
option cc_enable_arenas = true;
|
|
option optimize_for = SPEED;
|
|
|
|
message ChannelMessage {
|
|
MessageType number = 1;
|
|
int32 language = 2;
|
|
string from = 3;
|
|
string to = 4;
|
|
string message = 5;
|
|
int32 guilddbid = 6;
|
|
string deliverto = 7;
|
|
int32 type = 8;
|
|
int32 minstatus = 9;
|
|
int32 fromadmin = 10;
|
|
bool noreply = 11;
|
|
bool is_emote = 12; //Is message considered an emote?
|
|
int32 queued = 13; //only used on channel_message.out events. (*.in uses response_message): 0 not queued, 1 queued, 2 queue full, 3 offline
|
|
int32 from_entity_id = 16; //(Only in zone requests) Entity to send message from
|
|
EntityType from_entity_type = 17; //(Only in zone requests) Entity type the message is from
|
|
float distance = 18; //(optional, only in zone requests) how far should the message travel? (e.g. say)
|
|
bool skip_sender = 19; //(optional, only in zone requests) should we skip sender?
|
|
string response_message = 20; //Human-readable response message of request.
|
|
int32 response_value = 21; //Response value. In cases where a single value is returned, this is utilized (like an entity id)
|
|
ErrorType response_error = 22; //error (if any), ERR_OK (0) is default
|
|
string response_type = 23; //defines what message type the response_payload is
|
|
bytes response_payload = 24; //binary payload to be parsed using response_type
|
|
}
|
|
|
|
message CommandMessage {
|
|
string author = 1; //Author of command. This can typically be ignored
|
|
string command = 2; //command to request
|
|
repeated string params = 3; //Parameters are an array of strings.
|
|
string response_message = 4; //Human-readable response message of request.
|
|
int32 response_value = 5; //Response value. In cases where a single value is returned, this is utilized (like an entity id)
|
|
ErrorType response_error = 6; //error (if any), ERR_OK (0) is default
|
|
string response_type = 7; //defines what message type the response_payload is
|
|
bytes response_payload = 8; //binary payload to be parsed using response_type
|
|
}
|
|
|
|
//Entity is full of entity data.
|
|
message Entity {
|
|
int32 id = 1; //Entity: Unique entity identifier for zone.
|
|
string name = 2; //Entity: Name of entity
|
|
EntityType type = 3; //Type of entity
|
|
int32 hp = 4; //Mob: Current health
|
|
int32 level = 5; //Mob: Current level
|
|
Position position = 6; //Mob, Door: Position
|
|
int32 race = 7; //Mob: Race
|
|
int32 class = 8; //Mob: Class
|
|
int32 max_hp = 9; //Mob: Maximum Hitpoints
|
|
int64 spawn_timestamp = 10; //Entity: When entity was spawned
|
|
//SpecialAbility special_ability = 11; //Mob: Special abilities mob contains
|
|
//AuraInfo aura_info = 12; //Mob: Aura information
|
|
string lastname = 13; //Mob: Last name. Surname for clients
|
|
GenderType gender = 14; //Mob: Gender
|
|
BodyType bodytype = 15; //Mob: Body Type
|
|
DeityType deity = 16; //Mob: Deity
|
|
uint32 npctype_id = 17; //Mob: When npc was spawned from db, this is it's entry for npctype
|
|
float size = 18; //Mob, Door: size of mob
|
|
float runspeed = 19; //Mob: runspeed
|
|
//int32 light = 20; //Mob: Light level
|
|
int32 texture = 21; //Mob: texture
|
|
int32 helmtexture = 22; //Mob: helm texture
|
|
int32 ac = 23; //Mob: Armor class
|
|
int32 atk = 24; //Mob: Attack
|
|
int32 str = 25; //Mob: Strength
|
|
int32 sta = 26; //Mob: Stamina
|
|
int32 dex = 27; //Mob: Dexterity
|
|
int32 agi = 28; //Mob: Agility
|
|
int32 int = 29; //Mob: Intelligence
|
|
int32 wis = 30; //Mob: Wisdom
|
|
int32 cha = 31; //Mob: Charisma
|
|
int32 haircolor = 32; //Mob: Hair color
|
|
int32 beardcolor = 33; //Mob: beard color
|
|
int32 eyecolor1 = 34; //Mob: eye color left?
|
|
int32 eyecolor2 = 35; //Mob: eye color right?
|
|
/*uint8 in_eyecolor2,
|
|
uint8 in_hairstyle,
|
|
uint8 in_luclinface,
|
|
uint8 in_beard,
|
|
uint32 in_drakkin_heritage,
|
|
uint32 in_drakkin_tattoo,
|
|
uint32 in_drakkin_details,
|
|
EQEmu::TintProfile in_armor_tint,
|
|
uint8 in_aa_title,
|
|
uint8 in_see_invis, // see through invis
|
|
uint8 in_see_invis_undead, // see through invis vs. undead
|
|
uint8 in_see_hide,
|
|
uint8 in_see_improved_hide,
|
|
int32 in_hp_regen,
|
|
int32 in_mana_regen,
|
|
uint8 in_qglobal,
|
|
uint8 in_maxlevel,
|
|
uint32 in_scalerate,
|
|
uint8 in_armtexture,
|
|
uint8 in_bracertexture,
|
|
uint8 in_handtexture,
|
|
uint8 in_legtexture,
|
|
uint8 in_feettexture
|
|
*/
|
|
|
|
|
|
//DOOR
|
|
|
|
uint32 door_db_id = 100; //Door: databse ID of door
|
|
uint32 door_id = 101; //Door: Unique ID of door
|
|
//string door_zone_name = 102; //Door: zone name of door not needed?
|
|
string door_name = 103; //Door: name
|
|
int32 door_incline = 104; //Door: Incline
|
|
uint32 door_opentype = 105; //Door: Open type
|
|
uint32 door_guild_id = 106; //Door: Guild ID
|
|
uint32 door_lockpick = 107; //Door: Lockpick
|
|
uint32 door_keyitem = 108; //Door: Key item
|
|
uint32 door_nokeyring = 109; //Door: No key ring
|
|
uint32 door_trigger_door_id = 110; //Door: trigger door
|
|
uint32 door_trigger_type = 111; //Door: trigger type
|
|
uint32 door_param = 112; //Door: parameter
|
|
int32 door_invert_state = 113; //Door: invert state
|
|
bool door_disable_timer = 114; //Door: is timer disabled?
|
|
bool door_is_open = 115; //Door: is it currently open?
|
|
//string door_destination_zone = 116; //Door: destination zone TODO: not exposed
|
|
//int32 door_destination_instance_id = 117; //Door: destination instance TODO: not exposed
|
|
//Position door_destination_position = 118; //Door: destination position TODO: not exposed
|
|
uint32 door_is_ldon = 119; //Door: is it ldon?
|
|
uint32 door_client_version_mask = 120; //Door: client version mask
|
|
}
|
|
|
|
message Entities {
|
|
repeated Entity entities = 1;
|
|
}
|
|
|
|
message Position {
|
|
float x = 1;
|
|
float y = 2;
|
|
float z = 3;
|
|
float h = 4;
|
|
}
|
|
|
|
message TextureProfile {
|
|
Texture Head = 1;
|
|
Texture Chest = 2;
|
|
Texture Arms = 3;
|
|
Texture Wrist = 4;
|
|
Texture Hands = 5;
|
|
Texture Legs = 6;
|
|
Texture Feet = 7;
|
|
Texture Primary = 8;
|
|
Texture Secondary = 9;
|
|
}
|
|
|
|
message Texture {
|
|
uint32 material = 1;
|
|
uint32 unknown1 = 2;
|
|
uint32 EliteModel = 3;
|
|
uint32 HerosForgeModel = 4;
|
|
uint32 Unknown2 = 5;
|
|
}
|
|
|
|
message TintProfile {
|
|
Tint Head = 1;
|
|
Tint Chest = 2;
|
|
Tint Arms = 3;
|
|
Tint Wrist = 4;
|
|
Tint Hands = 5;
|
|
Tint Legs = 6;
|
|
Tint Feet = 7;
|
|
Tint Primary = 8;
|
|
Tint Secondary = 9;
|
|
}
|
|
|
|
message Tint {
|
|
uint32 Blue = 1;
|
|
uint32 Green = 2;
|
|
uint32 Red = 3;
|
|
uint32 UseTint = 4; // if there's a tint, this is FF
|
|
uint32 Color = 5;
|
|
}
|
|
|
|
message Event {
|
|
OpCode op = 1; //opcode enum
|
|
bytes payload = 2; //unmarshal based on opcode
|
|
uint32 entity_id = 3; //target entity_id of event
|
|
}
|
|
|
|
//OP_Death
|
|
message DeathEvent {
|
|
uint32 spawn_id = 1;
|
|
uint32 killer_id = 2;
|
|
uint32 corpse_id = 3;
|
|
uint32 bind_zone_id = 4;
|
|
uint32 spell_id = 5;
|
|
uint32 attack_skill_id = 6;
|
|
uint32 damage = 7;
|
|
uint32 unknown028 = 8;
|
|
}
|
|
|
|
//OP_Damage
|
|
message DamageEvent {
|
|
uint32 target = 1;
|
|
uint32 source = 2;
|
|
uint32 type = 3; //slashing, etc. 231 (0xE7) for spells
|
|
uint32 spellid = 4;
|
|
uint32 damage = 5;
|
|
float force = 6;
|
|
float meleepush_xy = 7; // see above notes in Action_Struct
|
|
float meleepush_z = 8;
|
|
}
|
|
|
|
//OP_Assist OP_Camp
|
|
message EntityEvent {
|
|
uint32 entity_id = 1; //source of event trigger.
|
|
uint32 target_id = 2; //target or other/source/target entity
|
|
}
|
|
|
|
//OP_ChannelMessage
|
|
message ChannelMessageEvent {
|
|
string target_name = 1; // Tell recipient
|
|
string sender = 2; // The senders name (len might be wrong)
|
|
uint32 language = 3; // Language
|
|
MessageType number = 4; // Channel number
|
|
uint32 cm_unknown4 = 5; // ***Placeholder
|
|
uint32 skill_in_language = 6; // The players skill in this language? might be wrong
|
|
string message = 7; // Variable length message
|
|
}
|
|
|
|
|
|
//OP_SpecialMesg
|
|
message SpecialMessageEvent {
|
|
string header = 1; // 04 04 00 <-- for #emote style msg
|
|
MessageType number = 2; // Color of text (see *** below)
|
|
uint32 target_spawn_id = 3; // Who is it being said to?
|
|
string sayer = 4; // Who is the source of the info
|
|
uint32 unknown12 = 5;
|
|
string message = 6; // What is being said?
|
|
}
|
|
|
|
//OP_NewZone
|
|
message NewZoneEvent {
|
|
string char_name = 1; // Character Name
|
|
string zone_short_name = 2; // Zone Short Name
|
|
string zone_long_name = 3; // Zone Long Name
|
|
uint32 ztype = 4; // Zone type (usually FF)
|
|
uint32 fog_red = 5; // Zone fog (red)
|
|
uint32 fog_green = 6; // Zone fog (green)
|
|
uint32 fog_blue = 7; // Zone fog (blue)
|
|
uint32 unknown323 = 8;
|
|
float fog_minclip = 9;
|
|
float fog_maxclip = 10;
|
|
float gravity = 11;
|
|
uint32 time_type = 12;
|
|
uint32 rain_chance = 13;
|
|
uint32 rain_duration = 14;
|
|
uint32 snow_chance = 15;
|
|
uint32 snow_duration = 16;
|
|
uint32 unknown360 = 17;
|
|
uint32 sky = 18; // Sky Type
|
|
uint32 unknown331 = 19; // ***Placeholder
|
|
float zone_exp_multiplier = 20; // Experience Multiplier
|
|
float safe_y = 21; // Zone Safe Y
|
|
float safe_x = 22; // Zone Safe X
|
|
float safe_z = 23; // Zone Safe Z
|
|
float max_z = 24; // Guessed
|
|
float underworld = 25; // Underworld, min z (Not Sure?)
|
|
float minclip = 26; // Minimum View Distance
|
|
float maxclip = 27; // Maximum View DIstance
|
|
uint32 unknown_end = 28; // ***Placeholder
|
|
string zone_short_name2 = 29;
|
|
string unknown672 = 30;
|
|
uint32 zone_id = 31;
|
|
uint32 zone_instance = 32;
|
|
uint32 unknown688 = 33;
|
|
uint32 unknown692 = 34;
|
|
float fog_density = 35;
|
|
uint32 suspend_buffs = 36;
|
|
}
|
|
|
|
//OP_WearChange
|
|
message WearChangeEvent {
|
|
uint32 spawn_id = 1;
|
|
uint32 material = 2;
|
|
uint32 unknown06 = 3;
|
|
uint32 elite_material = 4; // 1 for Drakkin Elite Material
|
|
uint32 hero_forge_model = 5; // New to VoA
|
|
uint32 unknown18 = 6; // New to RoF
|
|
Tint color = 7;
|
|
uint32 wear_slot_id = 8;
|
|
}
|
|
|
|
//OP_DeleteSpawn
|
|
message DeleteSpawnEvent {
|
|
uint32 spawn_id = 1; // Spawn ID to delete
|
|
uint32 decay = 2; // 0 = vanish immediately, 1 = 'Decay' sparklies for corpses.
|
|
}
|
|
|
|
//OP_MobHealth, OP_HPUpdate
|
|
message HPEvent {
|
|
uint32 spawn_id = 1;
|
|
uint32 cur_hp = 2;
|
|
uint32 max_hp = 3;
|
|
}
|
|
|
|
//OP_ClientUpdate
|
|
message PlayerPositionUpdateEvent {
|
|
uint32 spawn_id = 1;
|
|
int32 delta_heading = 2; // change in heading
|
|
int32 x_pos = 3; // x coord
|
|
int32 padding0002 = 4; // ***Placeholder
|
|
int32 y_pos = 5; // y coord
|
|
int32 animation = 6; // animation
|
|
int32 padding0006 = 7; // ***Placeholder
|
|
int32 z_pos = 8; // z coord
|
|
int32 delta_y = 9; // change in y
|
|
int32 delta_x = 10; // change in x
|
|
int32 heading = 11; // heading
|
|
int32 padding0014 = 12; // ***Placeholder
|
|
int32 delta_z = 13; // change in z
|
|
int32 padding0018 = 14; // ***Placeholder
|
|
}
|
|
|
|
//OP_Animation
|
|
message AnimationEvent {
|
|
uint32 spawnid = 1;
|
|
uint32 speed = 2;
|
|
uint32 action = 3;
|
|
}
|
|
|
|
//OP_ZoneEntry OP_NewSpawn
|
|
message SpawnEvent {
|
|
uint32 unknown0000= 1;
|
|
uint32 gm = 2; // 0=no, 1=gm
|
|
uint32 unknown0003 = 3;
|
|
uint32 aaitle = 4; // 0=none, 1=general, 2=archtype, 3=class
|
|
uint32 unknown0004 = 5;
|
|
uint32 anon = 6; // 0=normal, 1=anon, 2=roleplay
|
|
uint32 face = 7; // Face id for players
|
|
string name = 8; // Player's Name
|
|
uint32 deity = 9; // Player's Deity
|
|
uint32 unknown0073 = 10;
|
|
float size = 11; // Model size
|
|
uint32 unknown0079 = 12;
|
|
uint32 NPC = 13; // 0=player,1=npc,2=pc corpse,3=npc corpse,a
|
|
uint32 invis = 14; // Invis (0=not, 1=invis)
|
|
uint32 haircolor = 15; // Hair color
|
|
uint32 curHp = 16; // Current hp %%% wrong
|
|
uint32 max_hp = 17; // (name prolly wrong)takes on the value 100 for players, 100 or 110 for NPCs and 120 for PC corpses...
|
|
uint32 findable = 18; // 0=can't be found, 1=can be found
|
|
uint32 unknown0089 = 19;
|
|
int32 deltaHeading = 20; // change in heading
|
|
int32 x = 21; // x coord
|
|
int32 padding0054 = 22; // ***Placeholder
|
|
int32 y = 23; // y coord
|
|
int32 animation = 24; // animation
|
|
int32 padding0058 = 25; // ***Placeholder
|
|
int32 z = 26; // z coord
|
|
int32 deltaY = 27; // change in y
|
|
int32 deltaX = 28; // change in x
|
|
uint32 heading = 29; // heading
|
|
int32 padding0066 = 30; // ***Placeholder
|
|
int32 deltaZ = 31; // change in z
|
|
int32 padding0070 = 32; // ***Placeholder
|
|
uint32 eyecolor1 = 33; // Player's left eye color
|
|
uint32 unknown0115 = 34; // Was [24]
|
|
uint32 StandState = 35; // stand state for SoF+ 0x64 for normal animation
|
|
uint32 drakkin_heritage = 36; // Added for SoF
|
|
uint32 drakkin_tattoo = 37; // Added for SoF
|
|
uint32 drakkin_details = 38; // Added for SoF
|
|
uint32 showhelm = 39; // 0=no, 1=yes
|
|
uint32 unknown0140 = 40;
|
|
uint32 is_npc = 41; // 0=no, 1=yes
|
|
uint32 hairstyle = 42; // Hair style
|
|
uint32 beard = 43; // Beard style (not totally, sure but maybe!)
|
|
uint32 unknown0147 = 44;
|
|
uint32 level = 45; // Spawn Level
|
|
uint32 PlayerState = 46; // Controls animation stuff // None = 0, Open = 1, WeaponSheathed = 2, Aggressive = 4, ForcedAggressive = 8, InstrumentEquipped = 16, Stunned = 32, PrimaryWeaponEquipped = 64, SecondaryWeaponEquipped = 128
|
|
uint32 beardcolor = 47; // Beard color
|
|
string suffix = 48; // Player's suffix (of Veeshan, etc.)
|
|
uint32 petOwnerId = 49; // If this is a pet, the spawn id of owner
|
|
uint32 guildrank = 50; // 0=normal, 1=officer, 2=leader
|
|
uint32 unknown0194 = 51;
|
|
TextureProfile equipment = 52;
|
|
float runspeed = 53; // Speed when running
|
|
uint32 afk = 54; // 0=no, 1=afk
|
|
uint32 guildID = 55; // Current guild
|
|
string title = 56; // Title
|
|
uint32 unknown0274 = 57; // non-zero prefixes name with '!'
|
|
uint32 set_to_0xFF = 58; // ***Placeholder (all ff)
|
|
uint32 helm = 59; // Helm texture
|
|
uint32 race = 60; // Spawn race
|
|
uint32 unknown0288 = 61;
|
|
string lastName = 62; // Player's Lastname
|
|
float walkspeed = 63; // Speed when walking
|
|
uint32 unknown0328 = 64;
|
|
uint32 is_pet = 65; // 0=no, 1=yes
|
|
uint32 light = 66; // Spawn's lightsource %%% wrong
|
|
uint32 class_ = 67; // Player's class
|
|
uint32 eyecolor2 = 68; // Left eye color
|
|
uint32 flymode = 69;
|
|
uint32 gender = 70; // Gender (0=male, 1=female)
|
|
uint32 bodytype = 71; // Bodytype
|
|
uint32 unknown0336 = 72;
|
|
//union
|
|
uint32 equip_chest2 = 73; // Second place in packet for chest texture (usually 0xFF in live packets) // Not sure why there are 2 of them, but it effects chest texture!
|
|
uint32 mount_color = 74; // drogmor: 0=white, 1=black, 2=green, 3=red horse: 0=brown, 1=white, 2=black, 3=tan
|
|
//endunion
|
|
uint32 spawnId = 75; // Spawn Id
|
|
uint32 unknown0344 = 76;
|
|
uint32 IsMercenary = 77;
|
|
TintProfile equipment_tint = 78;
|
|
uint32 lfg = 79; // 0=off, 1=lfg on
|
|
bool DestructibleObject = 80; // Only used to flag as a destrible object
|
|
string DestructibleModel = 82; // Model of the Destructible Object - Required - Seen "DEST_TNT_G"
|
|
string DestructibleName2 = 83; // Secondary name - Not Required - Seen "a_tent"
|
|
string DestructibleString = 84; // Unknown - Not Required - Seen "ZoneActor_01186"
|
|
uint32 DestructibleAppearance = 85; // Damage Appearance
|
|
uint32 DestructibleUnk1 = 86;
|
|
uint32 DestructibleID1 = 87;
|
|
uint32 DestructibleID2 = 88;
|
|
uint32 DestructibleID3 = 89;
|
|
uint32 DestructibleID4 = 90;
|
|
uint32 DestructibleUnk2 = 91;
|
|
uint32 DestructibleUnk3 = 92;
|
|
uint32 DestructibleUnk4 = 93;
|
|
uint32 DestructibleUnk5 = 94;
|
|
uint32 DestructibleUnk6 = 95;
|
|
uint32 DestructibleUnk7 = 96;
|
|
uint32 DestructibleUnk8 = 97;
|
|
uint32 DestructibleUnk9 = 98;
|
|
bool targetable_with_hotkey = 99;
|
|
bool show_name= 100;
|
|
}
|
|
|
|
message AlternateAdvancementStatsEvent {
|
|
uint32 experience = 1;
|
|
uint32 unspent = 2;
|
|
uint32 unknown006 = 3;
|
|
uint32 percentage = 4;
|
|
uint32 unknown009 = 5;
|
|
}
|
|
|
|
message ZoneCompleteEvent {
|
|
|
|
}
|
|
|
|
message UseAAEvent {
|
|
uint32 begin = 1;
|
|
uint32 ability = 2;
|
|
uint32 end = 3;
|
|
uint32 action = 4;
|
|
uint32 target_id = 5;
|
|
uint32 exp_value = 6;
|
|
}
|
|
|
|
|
|
enum ErrorType {
|
|
ERR_OK = 0; //OK, No error provided
|
|
ERR_Request = 1; //Request data has something wrong. See response_message for more details.
|
|
ERR_Internal = 2; //Internal server error. See response message for mode details
|
|
ERR_Failed = 3; //Failed request. This is when the request succeeds, there are no internal server errors, but the response is a failure.
|
|
}
|
|
|
|
//EntityType will attempt to identify an entity to it's upper-most type by default
|
|
enum EntityType {
|
|
NPC = 0; //Inherits mob
|
|
Client = 1; //Inherits mob
|
|
Mob = 2; //Inherits entity
|
|
Mercenary = 3; //Inherits NPC
|
|
Corpse = 4; //Inherits mob
|
|
Door = 5; //Inherits entity
|
|
Object = 6; //Inherits entity
|
|
Trap = 7; //Inherits entity
|
|
Beacon = 9; //Inherits mob
|
|
Encounter = 10; //Inherits mob
|
|
}
|
|
|
|
enum DeityType {
|
|
Unknown = 0;
|
|
Agnostic_LB = 140;
|
|
Bertoxxulous = 201;
|
|
BrellSirilis = 202;
|
|
CazicThule = 203;
|
|
ErollisiMarr = 204;
|
|
Bristlebane = 205;
|
|
Innoruuk = 206;
|
|
Karana = 207;
|
|
MithanielMarr = 208;
|
|
Prexus = 209;
|
|
Quellious = 210;
|
|
RallosZek = 211;
|
|
RodcetNife = 212;
|
|
SolusekRo = 213;
|
|
TheTribunal = 214;
|
|
Tunare = 215;
|
|
Veeshan = 216;
|
|
Agnostic = 396;
|
|
}
|
|
|
|
enum DeityTypeBit {
|
|
bit_DeityNone = 0x00000000;
|
|
bit_DeityAgnostic = 0x00000001;
|
|
bit_DeityBertoxxulous = 0x00000002;
|
|
bit_DeityBrellSirilis = 0x00000004;
|
|
bit_DeityCazicThule = 0x00000008;
|
|
bit_DeityErollisiMarr = 0x00000010;
|
|
bit_DeityBristlebane = 0x00000020;
|
|
bit_DeityInnoruuk = 0x00000040;
|
|
bit_DeityKarana = 0x00000080;
|
|
bit_DeityMithanielMarr = 0x00000100;
|
|
bit_DeityPrexus = 0x00000200;
|
|
bit_DeityQuellious = 0x00000400;
|
|
bit_DeityRallosZek = 0x00000800;
|
|
bit_DeityRodcetNife = 0x00001000;
|
|
bit_DeitySolusekRo = 0x00002000;
|
|
bit_DeityTheTribunal = 0x00004000;
|
|
bit_DeityTunare = 0x00008000;
|
|
bit_DeityVeeshan = 0x00010000;
|
|
bit_DeityAll = 0xFFFFFFF;
|
|
}
|
|
|
|
|
|
enum MessageType {
|
|
//option allow_alias = true;
|
|
Auction = 0;
|
|
Group = 2; // FF|F0F0F0
|
|
Shout = 3;
|
|
Auction4 = 4;
|
|
OOC = 5;
|
|
Broadcast = 6;
|
|
Tell = 7;
|
|
Say = 8;
|
|
Tell14 = 14;
|
|
Raid = 15;
|
|
Guild = 17;
|
|
GMSayWeird18 = 18;
|
|
LocalEmote20 = 20;
|
|
Fellowship = 21;
|
|
Emote = 22;
|
|
Say256 = 256;
|
|
Tell257 = 257;
|
|
Group258 = 258;
|
|
Shout259 = 259;
|
|
Auction260 = 260;
|
|
OOC261 = 261;
|
|
Broadcast262 = 262;
|
|
Tell263 = 263;
|
|
Say264 = 264;
|
|
YouHitOther = 265;
|
|
OtherHitsYou = 266;
|
|
YouMissOther = 267;
|
|
OtherMissesYou = 268;
|
|
Skills = 270;
|
|
Disciplines = 271;
|
|
Guild273 = 273;
|
|
GMSay = 274;
|
|
MerchantOffer = 275;
|
|
MerchantBuySell = 276;
|
|
Fellowship277 = 277;
|
|
Emote278 = 278;
|
|
OtherHits = 279;
|
|
OtherMisses = 280;
|
|
Who = 281;
|
|
YellForHelp = 282;
|
|
NonMelee = 283;
|
|
WornOff = 284;
|
|
MoneySplit = 285;
|
|
LootMessages = 286;
|
|
DiceRoll = 287;
|
|
OtherSpells = 288;
|
|
SpellFailure = 289;
|
|
Chat = 290;
|
|
Channel1 = 291;
|
|
Channel2 = 292;
|
|
Channel3 = 293;
|
|
Channel4 = 294;
|
|
Channel5 = 295;
|
|
Channel6 = 296;
|
|
Channel7 = 297;
|
|
Channel8 = 298;
|
|
Channel9 = 299;
|
|
Channel10 = 300;
|
|
CritMelee = 301;
|
|
SpellCrits = 302;
|
|
TooFarAway = 303;
|
|
NPCRampage = 304;
|
|
NPCFlurry = 305;
|
|
NPCEnrage = 306;
|
|
SayEcho = 307;
|
|
TellEcho = 308;
|
|
GroupEcho = 309;
|
|
GuildEcho = 310;
|
|
OOCEcho = 311;
|
|
Auction2 = 312;
|
|
ShoutECho = 313;
|
|
EmoteEcho = 314;
|
|
Chat1Echo = 315;
|
|
Chat2Echo = 316;
|
|
Chat3Echo = 317;
|
|
Chat4Echo = 318;
|
|
Chat5Echo = 319;
|
|
Chat6Echo = 320;
|
|
Chat7Echo = 321;
|
|
Chat8Echo = 322;
|
|
Chat9Echo = 323;
|
|
Chat10Echo = 324;
|
|
DoTDamage = 325;
|
|
ItemLink = 326;
|
|
RaidSay = 327;
|
|
MyPet = 328;
|
|
DS = 329;
|
|
Leadership = 330;
|
|
PetFlurry = 331;
|
|
PetCrit = 332;
|
|
FocusEffect = 333;
|
|
Experience = 334;
|
|
System = 335;
|
|
PetSpell = 336;
|
|
PetResponse = 337;
|
|
ItemSpeech = 338;
|
|
StrikeThrough = 339;
|
|
Stun = 340;
|
|
}
|
|
|
|
enum BodyType {
|
|
//option allow_alias = true;
|
|
BodyType_Unknown = 0;
|
|
BodyType_Humanoid = 1;
|
|
BodyType_Lycanthrope = 2;
|
|
BodyType_Undead = 3;
|
|
BodyType_Giant = 4;
|
|
BodyType_Construct = 5;
|
|
BodyType_Extraplanar = 6;
|
|
BodyType_Magical = 7; //this name might be a bit off
|
|
BodyType_SummonedUndead = 8;
|
|
BodyType_RaidGiant = 9;
|
|
|
|
BodyType_NoTarget = 11; //no name; can't target this bodytype
|
|
BodyType_Vampire = 12;
|
|
BodyType_Atenha_Ra = 13;
|
|
BodyType_Greater_Akheva = 14;
|
|
BodyType_Khati_Sha = 15;
|
|
BodyType_Seru = 16; //not confirmed....
|
|
BodyType_Draz_Nurakk = 18;
|
|
BodyType_Zek = 19;
|
|
BodyType_Luggald = 20;
|
|
BodyType_Animal = 21;
|
|
BodyType_Insect = 22;
|
|
BodyType_Monster = 23;
|
|
BodyType_Summoned = 24; //Elemental?
|
|
BodyType_Plant = 25;
|
|
BodyType_Dragon = 26;
|
|
BodyType_Summoned2 = 27;
|
|
BodyType_Summoned3 = 28;
|
|
|
|
BodyType_VeliousDragon = 30; //might not be a tight set
|
|
|
|
BodyType_Dragon3 = 32;
|
|
BodyType_Boxes = 33;
|
|
BodyType_Muramite = 34; //tribal dudes
|
|
|
|
BodyType_NoTarget2 = 60;
|
|
|
|
BodyType_SwarmPet = 63; //is this valid; or made up?
|
|
|
|
BodyType_InvisMan = 66; //no name; seen on 'InvisMan'; can be /targeted
|
|
BodyType_Special = 67;
|
|
}
|
|
|
|
enum GenderType {
|
|
Male = 0;
|
|
Female = 1;
|
|
Neutral = 2;
|
|
}
|
|
|
|
enum OpCode {
|
|
//option allow_alias = true;
|
|
OP_Unknown = 0;
|
|
OP_ExploreUnknown = 1; //Not used
|
|
OP_0x0193 = 2; //Not used
|
|
OP_ZoneCompleted = 3; //supported, internally OP_0x0347
|
|
OP_AAAction = 4; //supported
|
|
OP_AAExpUpdate = 5; //supported
|
|
OP_AcceptNewTask = 6;
|
|
OP_AckPacket = 7;
|
|
OP_Action = 8;
|
|
OP_Action2 = 9;
|
|
OP_AddNimbusEffect = 10;
|
|
OP_AdventureData = 11;
|
|
OP_AdventureDetails = 12;
|
|
OP_AdventureFinish = 13;
|
|
OP_AdventureInfo = 14;
|
|
OP_AdventureInfoRequest = 15;
|
|
OP_AdventureLeaderboardReply = 16;
|
|
OP_AdventureLeaderboardRequest = 17;
|
|
OP_AdventureMerchantPurchase = 18;
|
|
OP_AdventureMerchantRequest = 19;
|
|
OP_AdventureMerchantResponse = 20;
|
|
OP_AdventureMerchantSell = 21;
|
|
OP_AdventurePointsUpdate = 22;
|
|
OP_AdventureRequest = 23;
|
|
OP_AdventureStatsReply = 24;
|
|
OP_AdventureStatsRequest = 25;
|
|
OP_AdventureUpdate = 26;
|
|
OP_AggroMeterLockTarget = 27;
|
|
OP_AggroMeterTargetInfo = 28;
|
|
OP_AggroMeterUpdate = 29;
|
|
OP_AltCurrency = 30;
|
|
OP_AltCurrencyMerchantReply = 31;
|
|
OP_AltCurrencyMerchantRequest = 32;
|
|
OP_AltCurrencyPurchase = 33;
|
|
OP_AltCurrencyReclaim = 34;
|
|
OP_AltCurrencySell = 35;
|
|
OP_AltCurrencySellSelection = 36;
|
|
OP_Animation = 37; //supported
|
|
OP_AnnoyingZoneUnknown = 38;
|
|
OP_ApplyPoison = 39;
|
|
OP_ApproveName = 40;
|
|
OP_ApproveWorld = 41;
|
|
OP_ApproveZone = 42;
|
|
OP_Assist = 43; //supported
|
|
OP_AssistGroup = 44;
|
|
OP_AugmentInfo = 45;
|
|
OP_AugmentItem = 46;
|
|
OP_AutoAttack = 47;
|
|
OP_AutoAttack2 = 48;
|
|
OP_AutoFire = 49;
|
|
OP_Bandolier = 50;
|
|
OP_BankerChange = 51;
|
|
OP_Barter = 52;
|
|
OP_Bazaar = 53;
|
|
OP_BazaarInspect = 54;
|
|
OP_BazaarSearch = 55;
|
|
OP_BecomeCorpse = 56;
|
|
OP_BecomeTrader = 57;
|
|
OP_Begging = 58;
|
|
OP_BeginCast = 59;
|
|
OP_Bind_Wound = 60;
|
|
OP_BlockedBuffs = 61;
|
|
OP_BoardBoat = 62;
|
|
OP_Buff = 63;
|
|
OP_BuffCreate = 64;
|
|
OP_BuffRemoveRequest = 65;
|
|
OP_Bug = 66;
|
|
OP_CameraEffect = 67;
|
|
OP_Camp = 68; //supported
|
|
OP_CancelSneakHide = 69;
|
|
OP_CancelTask = 70;
|
|
OP_CancelTrade = 71;
|
|
OP_CastSpell = 72;
|
|
OP_ChangeSize = 73;
|
|
OP_ChannelMessage = 74;
|
|
OP_CharacterCreate = 75;
|
|
OP_CharacterCreateRequest = 76;
|
|
OP_CharInventory = 77; //uses outbuffer, may not be worth working with
|
|
OP_Charm = 78;
|
|
OP_ChatMessage = 79; //used by lua
|
|
OP_ClearAA = 80;
|
|
OP_ClearBlockedBuffs = 81;
|
|
OP_ClearLeadershipAbilities = 82;
|
|
OP_ClearNPCMarks = 83;
|
|
OP_ClearObject = 84;
|
|
OP_ClearSurname = 85;
|
|
OP_ClickDoor = 86;
|
|
OP_ClickObject = 87;
|
|
OP_ClickObjectAction = 88;
|
|
OP_ClientError = 89;
|
|
OP_ClientReady = 90;
|
|
OP_ClientTimeStamp = 91;
|
|
OP_ClientUpdate = 92; //supported
|
|
OP_CloseContainer = 93;
|
|
OP_CloseTributeMaster = 94;
|
|
OP_ColoredText = 95;
|
|
OP_CombatAbility = 96;
|
|
OP_Command = 97;
|
|
OP_CompletedTasks = 98;
|
|
OP_ConfirmDelete = 99;
|
|
OP_Consent = 100;
|
|
OP_ConsentDeny = 101;
|
|
OP_ConsentResponse = 102;
|
|
OP_Consider = 103;
|
|
OP_ConsiderCorpse = 104;
|
|
OP_Consume = 105;
|
|
OP_ControlBoat = 106;
|
|
OP_CorpseDrag = 107;
|
|
OP_CorpseDrop = 108;
|
|
OP_CrashDump = 109;
|
|
OP_CrystalCountUpdate = 110;
|
|
OP_CrystalCreate = 111;
|
|
OP_CrystalReclaim = 112;
|
|
OP_CustomTitles = 113;
|
|
OP_Damage = 114; //supported
|
|
OP_Death = 115; //supported
|
|
OP_DelegateAbility = 116;
|
|
OP_DeleteCharacter = 117;
|
|
OP_DeleteCharge = 118;
|
|
OP_DeleteItem = 119;
|
|
OP_DeletePetition = 120;
|
|
OP_DeleteSpawn = 121; //supported
|
|
OP_DeleteSpell = 122;
|
|
OP_DenyResponse = 123;
|
|
OP_Disarm = 124;
|
|
OP_DisarmTraps = 125;
|
|
OP_DisciplineTimer = 126;
|
|
OP_DisciplineUpdate = 127;
|
|
OP_DiscordMerchantInventory = 128;
|
|
OP_DoGroupLeadershipAbility = 129;
|
|
OP_DuelResponse = 130;
|
|
OP_DuelResponse2 = 131;
|
|
OP_DumpName = 132;
|
|
OP_Dye = 133;
|
|
OP_DynamicWall = 134;
|
|
OP_DzAddPlayer = 135;
|
|
OP_DzChooseZone = 136;
|
|
OP_DzCompass = 137;
|
|
OP_DzExpeditionEndsWarning = 138;
|
|
OP_DzExpeditionInfo = 139;
|
|
OP_DzExpeditionList = 140;
|
|
OP_DzJoinExpeditionConfirm = 141;
|
|
OP_DzJoinExpeditionReply = 142;
|
|
OP_DzLeaderStatus = 143;
|
|
OP_DzListTimers = 144;
|
|
OP_DzMakeLeader = 145;
|
|
OP_DzMemberList = 146;
|
|
OP_DzMemberStatus = 147;
|
|
OP_DzPlayerList = 148;
|
|
OP_DzQuit = 149;
|
|
OP_DzRemovePlayer = 150;
|
|
OP_DzSwapPlayer = 151;
|
|
OP_Emote = 152;
|
|
OP_EndLootRequest = 153;
|
|
OP_EnduranceUpdate = 154;
|
|
OP_EnterChat = 155;
|
|
OP_EnterWorld = 156;
|
|
OP_EnvDamage = 157;
|
|
OP_ExpansionInfo = 158;
|
|
OP_ExpUpdate = 159;
|
|
OP_FaceChange = 160;
|
|
OP_Feedback = 161;
|
|
OP_FeignDeath = 162;
|
|
OP_FellowshipUpdate = 163;
|
|
OP_FindPersonReply = 164;
|
|
OP_FindPersonRequest = 165;
|
|
OP_FinishTrade = 166;
|
|
OP_FinishWindow = 167;
|
|
OP_FinishWindow2 = 168;
|
|
OP_Fishing = 169;
|
|
OP_Fling = 170;
|
|
OP_FloatListThing = 171;
|
|
OP_Forage = 172;
|
|
OP_ForceFindPerson = 173;
|
|
OP_FormattedMessage = 174;
|
|
OP_FriendsWho = 175;
|
|
OP_GetGuildMOTD = 176;
|
|
OP_GetGuildMOTDReply = 177;
|
|
OP_GetGuildsList = 178;
|
|
OP_GiveMoney = 179;
|
|
OP_GMApproval = 180;
|
|
OP_GMBecomeNPC = 181;
|
|
OP_GMDelCorpse = 182;
|
|
OP_GMEmoteZone = 183;
|
|
OP_GMEndTraining = 184;
|
|
OP_GMEndTrainingResponse = 185;
|
|
OP_GMFind = 186;
|
|
OP_GMGoto = 187;
|
|
OP_GMHideMe = 188;
|
|
OP_GMKick = 189;
|
|
OP_GMKill = 190;
|
|
OP_GMLastName = 191;
|
|
OP_GMNameChange = 192;
|
|
OP_GMSearchCorpse = 193;
|
|
OP_GMServers = 194;
|
|
OP_GMSummon = 195;
|
|
OP_GMToggle = 196;
|
|
OP_GMTraining = 197;
|
|
OP_GMTrainSkill = 198;
|
|
OP_GMTrainSkillConfirm = 199;
|
|
OP_GMZoneRequest = 200;
|
|
OP_GMZoneRequest2 = 201;
|
|
OP_GroundSpawn = 202;
|
|
OP_GroupAcknowledge = 203;
|
|
OP_GroupCancelInvite = 204;
|
|
OP_GroupDelete = 205;
|
|
OP_GroupDisband = 206;
|
|
OP_GroupDisbandOther = 207;
|
|
OP_GroupDisbandYou = 208;
|
|
OP_GroupFollow = 209;
|
|
OP_GroupFollow2 = 210;
|
|
OP_GroupInvite = 211;
|
|
OP_GroupInvite2 = 212;
|
|
OP_GroupLeaderChange = 213;
|
|
OP_GroupLeadershipAAUpdate = 214;
|
|
OP_GroupMakeLeader = 215;
|
|
OP_GroupMentor = 216;
|
|
OP_GroupRoles = 217;
|
|
OP_GroupUpdate = 218;
|
|
OP_GroupUpdateB = 219;
|
|
OP_GroupUpdateLeaderAA = 220;
|
|
OP_GuildBank = 221;
|
|
OP_GuildBankItemList = 222;
|
|
OP_GuildCreate = 223;
|
|
OP_GuildDelete = 224;
|
|
OP_GuildDemote = 225;
|
|
OP_GuildInvite = 226;
|
|
OP_GuildInviteAccept = 227;
|
|
OP_GuildLeader = 228;
|
|
OP_GuildManageAdd = 229;
|
|
OP_GuildManageBanker = 230;
|
|
OP_GuildManageRemove = 231;
|
|
OP_GuildManageStatus = 232;
|
|
OP_GuildMemberLevelUpdate = 233;
|
|
OP_GuildMemberList = 234;
|
|
OP_GuildMemberUpdate = 235;
|
|
OP_GuildMOTD = 236;
|
|
OP_GuildPeace = 237;
|
|
OP_GuildPromote = 238;
|
|
OP_GuildPublicNote = 239;
|
|
OP_GuildRemove = 240;
|
|
OP_GuildsList = 241;
|
|
OP_GuildStatus = 242;
|
|
OP_GuildTributeInfo = 243;
|
|
OP_GuildUpdateURLAndChannel = 244;
|
|
OP_GuildWar = 245;
|
|
OP_Heartbeat = 246;
|
|
OP_Hide = 247;
|
|
OP_HideCorpse = 248;
|
|
OP_HPUpdate = 249; //supported
|
|
OP_Illusion = 250;
|
|
OP_IncreaseStats = 251;
|
|
OP_InitialHPUpdate = 252;
|
|
OP_InitialMobHealth = 253;
|
|
OP_InspectAnswer = 254;
|
|
OP_InspectBuffs = 255;
|
|
OP_InspectMessageUpdate = 256;
|
|
OP_InspectRequest = 257;
|
|
OP_InstillDoubt = 258;
|
|
OP_InterruptCast = 259;
|
|
OP_ItemLinkClick = 260;
|
|
OP_ItemLinkResponse = 261;
|
|
OP_ItemLinkText = 262;
|
|
OP_ItemName = 263;
|
|
OP_ItemPacket = 264;
|
|
OP_ItemPreview = 265;
|
|
OP_ItemRecastDelay = 266;
|
|
OP_ItemVerifyReply = 267;
|
|
OP_ItemVerifyRequest = 268;
|
|
OP_ItemViewUnknown = 269;
|
|
OP_Jump = 270;
|
|
OP_KeyRing = 271;
|
|
OP_KnowledgeBase = 272;
|
|
OP_LDoNButton = 273;
|
|
OP_LDoNDisarmTraps = 274;
|
|
OP_LDoNInspect = 275;
|
|
OP_LDoNOpen = 276;
|
|
OP_LDoNPickLock = 277;
|
|
OP_LDoNSenseTraps = 278;
|
|
OP_LeadershipExpToggle = 279;
|
|
OP_LeadershipExpUpdate = 280;
|
|
OP_LeaveAdventure = 281;
|
|
OP_LeaveBoat = 282;
|
|
OP_LevelAppearance = 283;
|
|
OP_LevelUpdate = 284;
|
|
OP_LFGAppearance = 285;
|
|
OP_LFGCommand = 286;
|
|
OP_LFGGetMatchesRequest = 287;
|
|
OP_LFGGetMatchesResponse = 288;
|
|
OP_LFGResponse = 289;
|
|
OP_LFGuild = 290;
|
|
OP_LFPCommand = 291;
|
|
OP_LFPGetMatchesRequest = 292;
|
|
OP_LFPGetMatchesResponse = 293;
|
|
OP_LinkedReuse = 294;
|
|
OP_LoadSpellSet = 295;
|
|
OP_LocInfo = 296;
|
|
OP_LockoutTimerInfo = 297;
|
|
OP_Login = 298;
|
|
OP_LoginAccepted = 299;
|
|
OP_LoginComplete = 300;
|
|
OP_LoginUnknown1 = 301;
|
|
OP_LoginUnknown2 = 302;
|
|
OP_Logout = 303;
|
|
OP_LogoutReply = 304;
|
|
OP_LogServer = 305;
|
|
OP_LootComplete = 306;
|
|
OP_LootItem = 307;
|
|
OP_LootRequest = 308;
|
|
OP_ManaChange = 309;
|
|
OP_ManaUpdate = 310;
|
|
OP_MarkNPC = 311;
|
|
OP_Marquee = 312;
|
|
OP_MemorizeSpell = 313;
|
|
OP_Mend = 314;
|
|
OP_MendHPUpdate = 315;
|
|
OP_MercenaryAssign = 316;
|
|
OP_MercenaryCommand = 317;
|
|
OP_MercenaryDataRequest = 318;
|
|
OP_MercenaryDataResponse = 319;
|
|
OP_MercenaryDataUpdate = 320;
|
|
OP_MercenaryDataUpdateRequest = 321;
|
|
OP_MercenaryDismiss = 322;
|
|
OP_MercenaryHire = 323;
|
|
OP_MercenarySuspendRequest = 324;
|
|
OP_MercenarySuspendResponse = 325;
|
|
OP_MercenaryTimer = 326;
|
|
OP_MercenaryTimerRequest = 327;
|
|
OP_MercenaryUnknown1 = 328;
|
|
OP_MercenaryUnsuspendResponse = 329;
|
|
OP_MobEnduranceUpdate = 330;
|
|
OP_MobHealth = 331; //supported
|
|
OP_MobManaUpdate = 332;
|
|
OP_MobRename = 333;
|
|
OP_MobUpdate = 334; // not used anymore, here for lecacy reasons eqextractor
|
|
OP_MoneyOnCorpse = 335;
|
|
OP_MoneyUpdate = 336;
|
|
OP_MOTD = 337;
|
|
OP_MoveCoin = 338;
|
|
OP_MoveDoor = 339;
|
|
OP_MoveItem = 340;
|
|
OP_MoveLogDisregard = 341;
|
|
OP_MoveLogRequest = 342;
|
|
OP_MultiLineMsg = 343;
|
|
OP_NewSpawn = 344; //supported
|
|
OP_NewTitlesAvailable = 345;
|
|
OP_NewZone = 346; //supported
|
|
OP_OnLevelMessage = 347;
|
|
OP_OpenContainer = 348;
|
|
OP_OpenDiscordMerchant = 349;
|
|
OP_OpenGuildTributeMaster = 350;
|
|
OP_OpenInventory = 351;
|
|
OP_OpenNewTasksWindow = 352;
|
|
OP_OpenTributeMaster = 353;
|
|
OP_PDeletePetition = 354;
|
|
OP_PetBuffWindow = 355;
|
|
OP_PetCommands = 356;
|
|
OP_PetCommandState = 357;
|
|
OP_PetHoTT = 358;
|
|
OP_Petition = 359;
|
|
OP_PetitionBug = 360;
|
|
OP_PetitionCheckIn = 361;
|
|
OP_PetitionCheckout = 362;
|
|
OP_PetitionCheckout2 = 363;
|
|
OP_PetitionDelete = 364;
|
|
OP_PetitionQue = 365;
|
|
OP_PetitionRefresh = 366;
|
|
OP_PetitionResolve = 367;
|
|
OP_PetitionSearch = 368;
|
|
OP_PetitionSearchResults = 369;
|
|
OP_PetitionSearchText = 370;
|
|
OP_PetitionUnCheckout = 371;
|
|
OP_PetitionUpdate = 372;
|
|
OP_PickPocket = 373;
|
|
OP_PlayerProfile = 374;
|
|
OP_PlayerStateAdd = 375;
|
|
OP_PlayerStateRemove = 376;
|
|
OP_PlayEverquestRequest = 377;
|
|
OP_PlayEverquestResponse = 378;
|
|
OP_PlayMP3 = 379;
|
|
OP_Poll = 380;
|
|
OP_PollResponse = 381;
|
|
OP_PopupResponse = 382;
|
|
OP_PostEnterWorld = 383; //this is really OP_WorldAccessGrant
|
|
OP_PotionBelt = 384;
|
|
OP_PreLogoutReply = 385;
|
|
OP_PurchaseLeadershipAA = 386;
|
|
OP_PVPLeaderBoardDetailsReply = 387;
|
|
OP_PVPLeaderBoardDetailsRequest = 388;
|
|
OP_PVPLeaderBoardReply = 389;
|
|
OP_PVPLeaderBoardRequest = 390;
|
|
OP_PVPStats = 391;
|
|
OP_QueryResponseThing = 392;
|
|
OP_RaidInvite = 393;
|
|
OP_RaidJoin = 394;
|
|
OP_RaidUpdate = 395;
|
|
OP_RandomNameGenerator = 396;
|
|
OP_RandomReply = 397;
|
|
OP_RandomReq = 398;
|
|
OP_ReadBook = 399;
|
|
OP_RecipeAutoCombine = 400;
|
|
OP_RecipeDetails = 401;
|
|
OP_RecipeReply = 402;
|
|
OP_RecipesFavorite = 403;
|
|
OP_RecipesSearch = 404;
|
|
OP_ReclaimCrystals = 405;
|
|
OP_ReloadUI = 406;
|
|
OP_RemoveAllDoors = 407;
|
|
OP_RemoveBlockedBuffs = 408;
|
|
OP_RemoveNimbusEffect = 409;
|
|
OP_RemoveTrap = 410;
|
|
OP_Report = 411;
|
|
OP_ReqClientSpawn = 412;
|
|
OP_ReqNewZone = 413;
|
|
OP_RequestClientZoneChange = 414;
|
|
OP_RequestDuel = 415;
|
|
OP_RequestKnowledgeBase = 416;
|
|
OP_RequestTitles = 417;
|
|
OP_RespawnWindow = 418;
|
|
OP_RespondAA = 419;
|
|
OP_RestState = 420;
|
|
OP_Rewind = 421;
|
|
OP_RezzAnswer = 422;
|
|
OP_RezzComplete = 423;
|
|
OP_RezzRequest = 424;
|
|
OP_Sacrifice = 425;
|
|
OP_SafeFallSuccess = 426;
|
|
OP_SafePoint = 427;
|
|
OP_Save = 428;
|
|
OP_SaveOnZoneReq = 429;
|
|
OP_SelectTribute = 430;
|
|
OP_SendAAStats = 431;
|
|
OP_SendAATable = 432;
|
|
OP_SendCharInfo = 433;
|
|
OP_SendExpZonein = 434;
|
|
OP_SendFindableNPCs = 435;
|
|
OP_SendGuildTributes = 436;
|
|
OP_SendLoginInfo = 437;
|
|
OP_SendMaxCharacters = 438;
|
|
OP_SendMembership = 439;
|
|
OP_SendMembershipDetails = 440;
|
|
OP_SendSystemStats = 441;
|
|
OP_SendTitleList = 442;
|
|
OP_SendTributes = 443;
|
|
OP_SendZonepoints = 444;
|
|
OP_SenseHeading = 445;
|
|
OP_SenseTraps = 446;
|
|
OP_ServerListRequest = 447;
|
|
OP_ServerListResponse = 448;
|
|
OP_SessionReady = 449;
|
|
OP_SetChatServer = 450;
|
|
OP_SetChatServer2 = 451;
|
|
OP_SetGroupTarget = 452;
|
|
OP_SetGuildMOTD = 453;
|
|
OP_SetGuildRank = 454;
|
|
OP_SetRunMode = 455;
|
|
OP_SetServerFilter = 456;
|
|
OP_SetStartCity = 457;
|
|
OP_SetTitle = 458;
|
|
OP_SetTitleReply = 459;
|
|
OP_Shielding = 460;
|
|
OP_ShopDelItem = 461;
|
|
OP_ShopEnd = 462;
|
|
OP_ShopEndConfirm = 463;
|
|
OP_ShopItem = 464;
|
|
OP_ShopPlayerBuy = 465;
|
|
OP_ShopPlayerSell = 466;
|
|
OP_ShopRequest = 467;
|
|
OP_SimpleMessage = 468;
|
|
OP_SkillUpdate = 469;
|
|
OP_Sneak = 470;
|
|
OP_Some3ByteHPUpdate = 471;
|
|
OP_Some6ByteHPUpdate = 472;
|
|
OP_SomeItemPacketMaybe = 473;
|
|
OP_Sound = 474;
|
|
OP_SpawnAppearance = 475;
|
|
OP_SpawnDoor = 476;
|
|
OP_SpawnPositionUpdate = 477;
|
|
OP_SpecialMesg = 478; //supported
|
|
OP_SpellEffect = 479;
|
|
OP_Split = 480;
|
|
OP_Stamina = 481;
|
|
OP_Stun = 482;
|
|
OP_Surname = 483;
|
|
OP_SwapSpell = 484;
|
|
OP_TargetBuffs = 485;
|
|
OP_TargetCommand = 486;
|
|
OP_TargetHoTT = 487;
|
|
OP_TargetMouse = 488;
|
|
OP_TargetReject = 489;
|
|
OP_TaskActivity = 490;
|
|
OP_TaskActivityComplete = 491;
|
|
OP_TaskDescription = 492;
|
|
OP_TaskHistoryReply = 493;
|
|
OP_TaskHistoryRequest = 494;
|
|
OP_TaskMemberList = 495;
|
|
OP_Taunt = 496;
|
|
OP_TestBuff = 497;
|
|
OP_TGB = 498;
|
|
OP_TimeOfDay = 499;
|
|
OP_Track = 500;
|
|
OP_TrackTarget = 501;
|
|
OP_TrackUnknown = 502;
|
|
OP_TradeAcceptClick = 503;
|
|
OP_TradeBusy = 504;
|
|
OP_TradeCoins = 505;
|
|
OP_TradeMoneyUpdate = 506;
|
|
OP_Trader = 507;
|
|
OP_TraderBuy = 508;
|
|
OP_TraderDelItem = 509;
|
|
OP_TradeRequest = 510;
|
|
OP_TradeRequestAck = 511;
|
|
OP_TraderItemUpdate = 512;
|
|
OP_TraderShop = 513;
|
|
OP_TradeSkillCombine = 514;
|
|
OP_Translocate = 515;
|
|
OP_TributeInfo = 516;
|
|
OP_TributeItem = 517;
|
|
OP_TributeMoney = 518;
|
|
OP_TributeNPC = 519;
|
|
OP_TributePointUpdate = 520;
|
|
OP_TributeTimer = 521;
|
|
OP_TributeToggle = 522;
|
|
OP_TributeUpdate = 523;
|
|
OP_Untargetable = 524;
|
|
OP_UpdateAA = 525;
|
|
OP_UpdateAura = 526;
|
|
OP_UpdateLeadershipAA = 527;
|
|
OP_VetClaimReply = 528;
|
|
OP_VetClaimRequest = 529;
|
|
OP_VetRewardsAvaliable = 530;
|
|
OP_VoiceMacroIn = 531;
|
|
OP_VoiceMacroOut = 532;
|
|
OP_WeaponEquip1 = 533;
|
|
OP_WearChange = 534; //supported
|
|
OP_Weather = 535;
|
|
OP_Weblink = 536;
|
|
OP_WhoAllRequest = 537;
|
|
OP_WhoAllResponse = 538;
|
|
OP_World_Client_CRC1 = 539;
|
|
OP_World_Client_CRC2 = 540;
|
|
OP_WorldClientReady = 541;
|
|
OP_WorldComplete = 542;
|
|
OP_WorldLogout = 543;
|
|
OP_WorldObjectsSent = 544;
|
|
OP_WorldUnknown001 = 545;
|
|
OP_XTargetAutoAddHaters = 546;
|
|
OP_XTargetOpen = 547;
|
|
OP_XTargetOpenResponse = 548;
|
|
OP_XTargetRequest = 549;
|
|
OP_XTargetResponse = 550;
|
|
OP_YellForHelp = 551;
|
|
OP_ZoneChange = 552;
|
|
OP_ZoneComplete = 553;
|
|
OP_ZoneEntry = 554; //supported
|
|
OP_ZoneGuildList = 555;
|
|
OP_ZoneInUnknown = 556;
|
|
OP_ZonePlayerToBind = 557;
|
|
OP_ZoneServerInfo = 558;
|
|
OP_ZoneServerReady = 559;
|
|
OP_ZoneSpawns = 560;
|
|
OP_ZoneUnavail = 561;
|
|
OP_ResetAA = 562;
|
|
OP_Buddy = 563;
|
|
OP_ChannelAnnounceJoin = 564;
|
|
OP_ChannelAnnounceLeave = 565;
|
|
OP_Ignore = 566;
|
|
OP_Mail = 567;
|
|
OP_MailboxChange = 568;
|
|
OP_MailDeliveryStatus = 569;
|
|
OP_MailHeader = 570;
|
|
OP_MailHeaderCount = 571;
|
|
OP_MailLogin = 572;
|
|
OP_MailNew = 573;
|
|
OP_MailSendBody = 574;
|
|
|
|
} |