# ShowEQ Import Notes:
# ZERO THE FILE first
# perl -pi -e 's/0x[0-9a-fA-F]{4}/0x0000/g' opcodes.conf
# Unknown Mapping:
# OP_Action2 -> OP_Damage
# OP_EnvDamage -> OP_Damage ---> might have been a one time mistake
# Name Differences:
# OP_CancelInvite -> OP_GroupCancelInvite
# OP_GMFind -> OP_FindPersonRequest
# OP_CommonMessage -> OP_ChannelMessage

OP_Unknown=0x0000
OP_ExploreUnknown=0x0000 used for unknown explorer

# world packets
# Required to reach Char Select:
OP_SendLoginInfo=0x5e9e
OP_ApproveWorld=0x5a47
OP_LogServer=0x0c30
OP_SendCharInfo=0x03cc
OP_ExpansionInfo=0x3c7a
OP_GuildsList=0x12bc
OP_EnterWorld=0x74de
OP_PostEnterWorld=0x6e03
OP_World_Client_CRC1=0x2625
OP_World_Client_CRC2=0x0799
OP_SendSpellChecksum=0x0000
OP_SendSkillCapsChecksum=0x0000

# Character Select Related:
OP_SendMaxCharacters=0x11be
OP_SendMembership=0x76f8
OP_SendMembershipDetails=0x7475
OP_CharacterCreateRequest=0x37c2
OP_CharacterCreate=0x56aa
OP_DeleteCharacter=0x4572
OP_RandomNameGenerator=0x045b
OP_ApproveName=0x077e
OP_MOTD=0x4c33
OP_SetChatServer=0x5b4c
OP_SetChatServer2=0x70b3
OP_ZoneServerInfo=0x559f
OP_WorldComplete=0x0d7c
OP_WorldUnknown001=0x0b85
OP_FloatListThing=0x15f4

# Reasons for Disconnect:
OP_ZoneUnavail=0x4a6f
OP_WorldClientReady=0x27f4
OP_CharacterStillInZone=0x0000
OP_WorldChecksumFailure=0x0000
OP_WorldLoginFailed=0x0000
OP_WorldLogout=0x0000
OP_WorldLevelTooHigh=0x0000
OP_CharInacessable=0x0000
OP_UserCompInfo=0x0000
OP_SendExeChecksum=0x0000
OP_SendBaseDataChecksum=0x0000

# Zone in opcodes
OP_AckPacket=0x5ee8
OP_ZoneEntry=0x2cbe
OP_ReqNewZone=0x724c
OP_NewZone=0x082d
OP_ZoneSpawns=0x173c
OP_PlayerProfile=0x6725
OP_TimeOfDay=0x2d98
OP_LevelUpdate=0x698e
OP_Stamina=0x54fb
OP_RequestClientZoneChange=0x029d
OP_ZoneChange=0x499e
OP_LockoutTimerInfo=0x0000
OP_ZoneServerReady=0x0000
OP_ZoneInUnknown=0x0000
OP_LogoutReply=0x0000
OP_PreLogoutReply=0x0000

# Required to fully log in
OP_SpawnAppearance=0x6087
OP_ChangeSize=0x0aad
OP_TributeUpdate=0x5026
OP_TributeTimer=0x2027
OP_SendTributes=0x38ef
OP_SendGuildTributes=0x115f
OP_TributeInfo=0x7097
OP_Weather=0x1a00
OP_ReqClientSpawn=0x6cd1
OP_SpawnDoor=0x0e70
OP_GroundSpawn=0x11ef
OP_SendZonepoints=0x0a1d
OP_BlockedBuffs=0x6095
OP_RemoveBlockedBuffs=0x02cc
OP_ClearBlockedBuffs=0x1b26
OP_WorldObjectsSent=0x3f13
OP_SendExpZonein=0x7303
OP_SendAATable=0x6b93
OP_RespondAA=0x5a5c
OP_UpdateAA=0x1820
OP_SendAAStats=0x6c5d
OP_AAExpUpdate=0x0eae
OP_ExpUpdate=0x7814
OP_HPUpdate=0x069e
OP_ManaChange=0x0a79
OP_TGB=0x2f0a
OP_SpecialMesg=0x7d12
OP_GuildMemberList=0x210b
OP_GuildMOTD=0x7864
OP_CharInventory=0x4cd2
OP_WearChange=0x6a1a
OP_ClientUpdate=0x6cc2
OP_ClientReady=0x2bd4				# 0x422d
OP_SetServerFilter=0x59ab

# Guild Opcodes - Disabled until crashes are resolved in RoF
OP_GetGuildMOTD=0x58dd				# Was 0x35dc
OP_GetGuildMOTDReply=0x45d5			# Was 0x4586
OP_GuildMemberUpdate=0x6719			# Was 0x5643
OP_GuildInvite=0x37d8
OP_GuildRemove=0x0e16
OP_GuildPeace=0x25c1
OP_SetGuildMOTD=0x0b26
OP_GuildList=0x0000
OP_GuildWar=0x56fd
OP_GuildLeader=0x38cf
OP_GuildDelete=0x7135
OP_GuildInviteAccept=0x3277
OP_GuildDemote=0x3798
OP_GuildPublicNote=0x36e2
OP_GuildManageBanker=0x3ff3			# Was 0x0737
OP_GuildBank=0x372e					# Was 0x10c3
OP_SetGuildRank=0x3d22
OP_GuildUpdateURLAndChannel=0x6f0c
OP_GuildStatus=0x423b
OP_GuildCreate=0x057e				# or maybe 0x086e
OP_GuildMemberLevelUpdate=0x0000	# Unused?
OP_ZoneGuildList=0x0000				# Unused?
OP_GetGuildsList=0x0000				# Unused?
OP_LFGuild=0x0000
OP_GuildManageRemove=0x0000
OP_GuildManageAdd=0x0000
OP_GuildManageStatus=0x0000

# GM/Guide Opcodes
OP_GMServers=0x362a
OP_GMBecomeNPC=0x783b
OP_GMZoneRequest=0x6028
OP_GMZoneRequest2=0x4cc5
OP_GMGoto=0x4234
OP_GMSearchCorpse=0x0ac5
OP_GMHideMe=0x39a2
OP_GMDelCorpse=0x2885
OP_GMApproval=0x5e62
OP_GMToggle=0x1c2c
OP_GMSummon=0x1b2a			# Was 0x684f
OP_GMEmoteZone=0x54da		# Was 0x0655
OP_GMEmoteWorld=0x32ee		# Was 0x1935
OP_GMFind=0x3f2c
OP_GMKick=0x4bd5
OP_GMKill=0x2591
OP_GMNameChange=0x1e00		# Was 0x4434
OP_GMLastName=0x0c17		# Was 0x3077

# Misc Opcodes
OP_InspectRequest=0x5440
OP_InspectAnswer=0x31e3
OP_InspectMessageUpdate=0x351a
OP_BeginCast=0x0b2b
OP_BuffFadeMsg=0x0076
OP_ConsentResponse=0x7903
OP_MemorizeSpell=0x5dbc
OP_SwapSpell=0x2642
OP_CastSpell=0x0e18
OP_Consider=0x0fcd
OP_FormattedMessage=0x748e
OP_SimpleMessage=0x3ecd
OP_Buff=0x1a9b
OP_Illusion=0x359a
OP_MoneyOnCorpse=0x1107
OP_RandomReply=0x5cc5
OP_DenyResponse=0x3c2d
OP_SkillUpdate=0x7eb4
OP_GMTrainSkillConfirm=0x157c	# 0x3960
OP_RandomReq=0x4fd0
OP_Death=0x62bd
OP_GMTraining=0x6f12
OP_GMEndTraining=0x6f0a
OP_GMTrainSkill=0x2082
OP_Animation=0x62f1
OP_Begging=0x1a49
OP_Consent=0x5b9e
OP_ConsentDeny=0x56ae
OP_AutoFire=0x479d
OP_PetCommands=0x46a0
OP_DeleteSpell=0x27da
OP_Surname=0x5dd0
OP_ClearSurname=0x5900
OP_FaceChange=0x474e
OP_SenseHeading=0x2a34
OP_Action=0x16a5
OP_ConsiderCorpse=0x1683
OP_HideCorpse=0x1102
OP_CorpseDrag=0x32cc
OP_CorpseDrop=0x1224
OP_Bug=0x41ac
OP_Feedback=0x3c4a
OP_Report=0x1b2f
OP_Damage=0x1375
OP_ChannelMessage=0x0cf4
OP_Assist=0x50c5
OP_AssistGroup=0x7f67
OP_MoveCoin=0x6928
OP_ZonePlayerToBind=0x5a82
OP_KeyRing=0x566e
OP_WhoAllRequest=0x0033
OP_WhoAllResponse=0x68f6
OP_FriendsWho=0x5988
OP_ConfirmDelete=0x51d3
OP_Logout=0x627f
OP_Rewind=0x29c7
OP_TargetCommand=0x6952
OP_Hide=0x5d4d
OP_Jump=0x7611
OP_Camp=0x4863
OP_Emote=0x0bff
OP_SetRunMode=0x26b3
OP_BankerChange=0x36a6
OP_TargetMouse=0x02f7
OP_MobHealth=0x217a
OP_InitialMobHealth=0x0000	# Unused?
OP_TargetHoTT=0x1fd6
OP_XTargetResponse=0x6d47
OP_XTargetRequest=0x2603
OP_XTargetAutoAddHaters=0x5fe3
OP_TargetBuffs=0x4c77
OP_BuffCreate=0x20ee
OP_BuffRemoveRequest=0x7ca3
OP_DeleteSpawn=0x0ead
OP_AutoAttack=0x12fb
OP_AutoAttack2=0x1763
OP_Consume=0x6aa6
OP_MoveItem=0x68a2
OP_DeleteItem=0x46c4
OP_DeleteCharge=0x6933
OP_ItemPacket=0x5ae8
OP_ItemLinkResponse=0x2d88
OP_ItemLinkClick=0x7404
OP_ItemPreview=0x198c
OP_NewSpawn=0x56e9
OP_Track=0x3089
OP_TrackTarget=0x31d4
OP_TrackUnknown=0x50b2
OP_ClickDoor=0x0cc4
OP_MoveDoor=0x3162
OP_RemoveAllDoors=0x0712
OP_EnvDamage=0x4a49
OP_BoardBoat=0x10b0
OP_Forage=0x02ed
OP_LeaveBoat=0x398e
OP_ControlBoat=0x1793
OP_SafeFallSuccess=0x1c7e
OP_RezzComplete=0x62d6
OP_RezzRequest=0x095b
OP_RezzAnswer=0x4b2c
OP_Shielding=0x2b69
OP_RequestDuel=0x24d4
OP_MobRename=0x7658
OP_AugmentItem=0x7ba5	 	# Was 0x37cb
OP_WeaponEquip1=0x34bc
OP_WeaponEquip2=0x6f7e		# Was 0x6022
OP_WeaponUnequip2=0x1343	# Was 0x0110
OP_ApplyPoison=0x7d23
OP_Save=0x27d9
OP_TestBuff=0x61f9			# Was 0x3772
OP_CustomTitles=0x475f
OP_Split=0x5e9a
OP_YellForHelp=0x0696
OP_LoadSpellSet=0x6208
OP_Bandolier=0x7cf8
OP_PotionBelt=0x3cf9		# Was 0x4d3b
OP_DuelResponse=0x4f58
OP_DuelResponse2=0x3455
OP_SaveOnZoneReq=0x0070
OP_ReadBook=0x25b0
OP_Dye=0x11a8
OP_InterruptCast=0x14b2
OP_AAAction=0x183b
OP_LeadershipExpToggle=0x75b0
OP_LeadershipExpUpdate=0x0e8f
OP_PurchaseLeadershipAA=0x4269
OP_UpdateLeadershipAA=0x4fc0
OP_MarkNPC=0x13d3
OP_ClearNPCMarks=0x1593
OP_DelegateAbility=0x100f
OP_SetGroupTarget=0x2de8
OP_Charm=0x5978
OP_Stun=0x04bd
OP_SendFindableNPCs=0x7b8a
OP_FindPersonRequest=0x5d79
OP_FindPersonReply=0x2b23
OP_Sound=0x03fa
OP_PetBuffWindow=0x1e1c
OP_LevelAppearance=0x0442
OP_Translocate=0x2e84
OP_Sacrifice=0x0d88
OP_PopupResponse=0x04f7
OP_OnLevelMessage=0x6a6b
OP_AugmentInfo=0x1fce
OP_Petition=0x152e
OP_SomeItemPacketMaybe=0x6ce8
OP_PVPStats=0x125a				# Unsure
OP_PVPLeaderBoardRequest=0x673e
OP_PVPLeaderBoardReply=0x66fd
OP_PVPLeaderBoardDetailsRequest=0x6bbf
OP_PVPLeaderBoardDetailsReply=0x78bd
OP_RestState=0x0812
OP_RespawnWindow=0x3594
OP_LDoNButton=0x1071
OP_SetStartCity=0x2f81			# Was 0x2d1b
OP_VoiceMacroIn=0x7ed5
OP_VoiceMacroOut=0x72ed
OP_ItemViewUnknown=0x1915
OP_VetRewardsAvaliable=0xbdf1
OP_VetClaimRequest=0x1711
OP_VetClaimReply=0x7497
OP_DisciplineUpdate=0x594d		# Was 0x2f05
OP_DisciplineTimer=0x2dab		# Was 0x5e3f
OP_BecomeCorpse=0x0000			# Unused?
OP_Action2=0x0000				# Unused?
OP_MobUpdate=0x282a
OP_NPCMoveUpdate=0x7342
OP_CameraEffect=0x1cee
OP_SpellEffect=0x2a61
OP_RemoveNimbusEffect=0x4f63
OP_AltCurrency=0x0852
OP_AltCurrencyMerchantRequest=0x2efc
OP_AltCurrencyMerchantReply=0x13fb
OP_AltCurrencyPurchase=0x3e5a
OP_AltCurrencySell=0x24b3
OP_AltCurrencySellSelection=0x0019
OP_AltCurrencyReclaim=0x7f65
OP_CrystalCountUpdate=0x0a13	# Was 0x3f60
OP_CrystalCreate=0x1e17			# Was 0x5a82
OP_CrystalReclaim=0x22f6		# Was 0x7616
OP_Untargetable=0x46e0
OP_IncreaseStats=0x598c
OP_Weblink=0x6f7f
#OP_OpenInventory=0x0000			# Likely does not exist in RoF -U
OP_OpenContainer=0x0000

OP_DzQuit=0x4839
OP_DzListTimers=0x0e73
OP_DzAddPlayer=0x3b05
OP_DzRemovePlayer=0x68e7
OP_DzSwapPlayer=0x75ee
OP_DzMakeLeader=0x7703
OP_DzPlayerList=0x76bb
OP_DzJoinExpeditionConfirm=0x3c5b
OP_DzJoinExpeditionReply=0x7410
OP_DzExpeditionInfo=0x6ba0
OP_DzExpeditionList=0x1d95
OP_DzMemberStatus=0x23b6
OP_DzLeaderStatus=0x6835
OP_DzExpeditionEndsWarning=0x75ea
OP_DzMemberList=0x1a45
OP_DzCompass=0x188f		# Was 0x4f09
OP_DzChooseZone=0x0000	# Maybe 0x29d6

# New Opcodes
OP_SpawnPositionUpdate=0x0000	# Actually OP_MobUpdate ?
OP_ManaUpdate=0x0396
OP_EnduranceUpdate=0x7b61
OP_MobManaUpdate=0x0247
OP_MobEnduranceUpdate=0x7902

# Mercenary Opcodes
OP_MercenaryDataUpdateRequest=0x65fc
OP_MercenaryDataUpdate=0x23de
OP_MercenaryDataRequest=0x306a
OP_MercenaryDataResponse=0xbdb8
OP_MercenaryHire=0x0453
OP_MercenaryDismiss=0x3cfc
OP_MercenaryTimerRequest=0x1357
OP_MercenaryTimer=0x54f5
OP_MercenaryUnknown1=0x319c
OP_MercenaryCommand=0x6d04
OP_MercenarySuspendRequest=0x3a36
OP_MercenarySuspendResponse=0x4f8a
OP_MercenaryUnsuspendResponse=0x295a

# Looting
OP_LootRequest=0x27fb
OP_EndLootRequest=0x29e7
OP_LootItem=0x1aea
OP_LootComplete=0x917c

# bazaar trader stuff:
OP_BazaarSearch=0x4fa8
OP_TraderDelItem=0x0000
OP_BecomeTrader=0x6a33
OP_TraderShop=0x1faa
OP_Trader=0x27c6	# Was 0x6790
OP_TraderBuy=0x0000
OP_Barter=0x760c
OP_ShopItem=0x0000
OP_BazaarInspect=0x0000
OP_Bazaar=0x0000
OP_TraderItemUpdate=0x0000

# pc/npc trading
OP_TradeRequest=0x0b3f
OP_TradeAcceptClick=0x1ac5
OP_TradeRequestAck=0x3aa1
OP_TradeCoins=0x0ef7
OP_FinishTrade=0x0e46
OP_CancelTrade=0x7edb
OP_TradeMoneyUpdate=0x3755
OP_MoneyUpdate=0x325f
OP_TradeBusy=0x31c2

# Sent after canceling trade or after closing tradeskill object
OP_FinishWindow=0x3b51
OP_FinishWindow2=0x0f8e

# Sent on Live for what seems to be item existance verification
# Ex. Before Right Click Effect happens from items
OP_ItemVerifyRequest=0x6089
OP_ItemVerifyReply=0x73fc

# merchant stuff
OP_ShopPlayerSell=0x1456
OP_ShopRequest=0x1799
OP_ShopEnd=0x1a56
OP_ShopEndConfirm=0x5628
OP_ShopPlayerBuy=0xad00
OP_ShopDelItem=0x4420

# tradeskill stuff:
OP_ClickObject=0x7f78
OP_ClickObjectAction=0x7283
OP_ClearObject=0x10ea
OP_RecipeDetails=0x2251
OP_RecipesFavorite=0x1665
OP_RecipesSearch=0x11d6
OP_RecipeReply=0x1045
OP_RecipeAutoCombine=0x588f
OP_TradeSkillCombine=0x556b

# Tribute Packets:
OP_OpenGuildTributeMaster=0x57e4
OP_OpenTributeMaster=0x472d # Was 0x40f5
OP_SelectTribute=0x75e3
OP_TributeItem=0x5789
OP_TributeMoney=0x7d50 # Was 0x6fed
OP_TributeToggle=0x0e59
OP_TributePointUpdate=0x0dff
OP_TributeNPC=0x0000
OP_GuildTributeInfo=0x0000
OP_OpenTributeReply=0x0000
OP_GuildTributeStatus=0x0000

# Adventure packets:
OP_LeaveAdventure=0x7d78
OP_AdventureFinish=0x2ddc
OP_AdventureInfoRequest=0x1780
OP_AdventureInfo=0x099a
OP_AdventureRequest=0x101b
OP_AdventureDetails=0x3a56
OP_AdventureData=0x18d0
OP_AdventureUpdate=0x255c
OP_AdventureMerchantRequest=0x4383 # Was 654d
OP_AdventureMerchantResponse=0x0975 # Was 7949
OP_AdventureMerchantPurchase=0x2681 # Was 155a
OP_AdventureMerchantSell=0x0529 # Was 389c
OP_AdventurePointsUpdate=0x75cb # Was 7589
OP_AdventureStatsRequest=0x7451
OP_AdventureStatsReply=0x1595
OP_AdventureLeaderboardRequest=0x1099
OP_AdventureLeaderboardReply=0x1f56

# Group Opcodes
OP_GroupDisband=0x351e
OP_GroupInvite=0x7cd7
OP_GroupFollow=0x352b
OP_GroupUpdate=0x2244
OP_GroupUpdateB=0x20d5
OP_GroupCancelInvite=0x0000
OP_GroupAcknowledge=0x3391
OP_GroupDelete=0x3e4c
OP_CancelInvite=0x5e6d
OP_GroupFollow2=0x63b4
OP_GroupInvite2=0x33e8
OP_GroupDisbandYou=0x79d6
OP_GroupDisbandOther=0x65c0
OP_GroupLeaderChange=0x626d
OP_GroupRoles=0x3438
OP_GroupMakeLeader=0x3188
OP_DoGroupLeadershipAbility=0x302d
OP_GroupLeadershipAAUpdate=0x71bd

# LFG/LFP Opcodes
OP_LFGCommand=0x4fed
OP_LFGGetMatchesRequest=0x236c
OP_LFGGetMatchesResponse=0x18fb
OP_LFPGetMatchesRequest=0x1a28
OP_LFPGetMatchesResponse=0x5daa
OP_LFPCommand=0x6751
OP_LFGAppearance=0x0000
OP_LFGResponse=0x0000

# Raid Opcodes
OP_RaidInvite=0x7383
OP_RaidUpdate=0x0594
OP_RaidJoin=0x0000

# Button-push commands
OP_Taunt=0x56df
OP_CombatAbility=0x31f9
OP_SenseTraps=0x555b			# Was 0x2ee0
OP_PickPocket=0x3f61
OP_DisarmTraps=0x0000
OP_Disarm=0x0efe
OP_Sneak=0x4631
OP_Fishing=0x46e3
OP_InstillDoubt=0x2980
OP_FeignDeath=0x6a76
OP_Mend=0x54fe
OP_Bind_Wound=0x5066
OP_LDoNOpen=0x0173

# Task packets
OP_TaskDescription=0x0736
OP_TaskActivity=0x74a1
OP_CompletedTasks=0x7392
OP_TaskActivityComplete=0x44a6
OP_AcceptNewTask=0x1bbf
OP_CancelTask=0x590b
OP_TaskMemberList=0x0e5c		# Was 0x1656
OP_OpenNewTasksWindow=0x22ac	# Was 0x11de
OP_AvaliableTask=0x12cd			# Was 0x2377
OP_TaskHistoryRequest=0x1489
OP_TaskHistoryReply=0x2d43
OP_DeclineAllTasks=0x0000

# Title opcodes
OP_NewTitlesAvailable=0x21d0
OP_RequestTitles=0x6b48
OP_SendTitleList=0x6af1
OP_SetTitle=0x6d7b
OP_SetTitleReply=0x41ef

# mail opcodes
OP_Command=0x0000
OP_MailboxHeader=0x0000
OP_MailHeader=0x0000
OP_MailBody=0x0000
OP_NewMail=0x0000
OP_SentConfirm=0x0000

########### Below this point should not be needed ###########

# This section are all unknown in Titanium
OP_ForceFindPerson=0x0000
OP_LocInfo=0x0000
OP_ReloadUI=0x0000
OP_ItemName=0x0000
OP_ItemLinkText=0x0000
OP_MultiLineMsg=0x0000
OP_MendHPUpdate=0x0000
OP_TargetReject=0x0000
OP_SafePoint=0x0000
OP_ApproveZone=0x0000
OP_ZoneComplete=0x0000
OP_ClientError=0x0000
OP_DumpName=0x0000
OP_Heartbeat=0x0000
OP_CrashDump=0x0000
OP_LoginComplete=0x0000

# discovered opcodes not yet used:
OP_PickLockSuccess=0x0000
OP_PlayMP3=0x0000
OP_ReclaimCrystals=0x0000
OP_DynamicWall=0x0000
OP_OpenDiscordMerchant=0x0000
OP_DiscordMerchantInventory=0x0000
OP_GiveMoney=0x0000
OP_RequestKnowledgeBase=0x0000
OP_KnowledgeBase=0x0000
OP_SlashAdventure=0x0000 # /adventure
OP_BecomePVPPrompt=0x0000
OP_MoveLogRequest=0x0000 # gone I think
OP_MoveLogDisregard=0x0000 # gone I think

# named unknowns, to make looking for real unknown easier
OP_AnnoyingZoneUnknown=0x0000
OP_Some6ByteHPUpdate=0x0000 seems to happen when you target group members
OP_QueryResponseThing=0x0000


# realityincarnate: these are just here to stop annoying several thousand byte packet dumps
#OP_LoginUnknown1=0x46d3 # OP_SendSpellChecksum
#OP_LoginUnknown2=0x040b # OP_SendSkillCapsChecksum

# Petition Opcodes
OP_PetitionSearch=0x0000 search term for petition
OP_PetitionSearchResults=0x0000 (list of?) matches from search
OP_PetitionSearchText=0x0000 text results of search

OP_PetitionUpdate=0x0000
OP_PetitionCheckout=0x0000
OP_PetitionCheckIn=0x0000
OP_PetitionQue=0x0000
OP_PetitionUnCheckout=0x0000
OP_PetitionDelete=0x0000
OP_DeletePetition=0x0000
OP_PetitionResolve=0x0000
OP_PDeletePetition=0x0000
OP_PetitionBug=0x0000
OP_PetitionRefresh=0x0000
OP_PetitionCheckout2=0x0000
OP_PetitionViewPetition=0x0000

# Login opcodes
OP_SessionReady=0x0000
OP_Login=0x0000
OP_ServerListRequest=0x0000
OP_PlayEverquestRequest=0x0000
OP_PlayEverquestResponse=0x0000
OP_ChatMessage=0x0000
OP_LoginAccepted=0x0000
OP_ServerListResponse=0x0000
OP_Poll=0x0000
OP_EnterChat=0x0000
OP_PollResponse=0x0000

# raw opcodes
OP_RAWSessionRequest=0x0000
OP_RAWSessionResponse=0x0000
OP_RAWCombined=0x0000
OP_RAWSessionDisconnect=0x0000
OP_RAWKeepAlive=0x0000
OP_RAWSessionStatRequest=0x0000
OP_RAWSessionStatResponse=0x0000
OP_RAWPacket=0x0000
OP_RAWFragment=0x0000
OP_RAWOutOfOrderAck=0x0000
OP_RAWAck=0x0000
OP_RAWAppCombined=0x0000
OP_RAWOutOfSession=0x0000

# we need to document the differences between these packets to make identifying them easier
OP_Some3ByteHPUpdate=0x0000 # initial HP update for mobs
OP_InitialHPUpdate=0x0000
