# 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

# V = Verified correct
# C = Most likely correct
# U = Unsure, but should be correct or close

# world packets
# Required to reach Char Select:
OP_SendLoginInfo=0x13da				# V
OP_ApproveWorld=0x86c7				# C
OP_LogServer=0x6f79					# C
OP_SendCharInfo=0x4200				# C
OP_ExpansionInfo=0x7e4d				# C
OP_GuildsList=0x5b0b				# C
OP_EnterWorld=0x51b9				# C
OP_PostEnterWorld=0x5d32			# C
OP_World_Client_CRC1=0x3a18			# C
OP_World_Client_CRC2=0x3e50			# C
OP_SendSpellChecksum=0x46d3			# C
OP_SendSkillCapsChecksum=0x040b		# C

# Character Select Related:
OP_DeleteCharacter=0x5ca5			# C
OP_CharacterCreateRequest=0x53a3	# C
OP_CharacterCreate=0x1b85			# C
OP_RandomNameGenerator=0x647a		# C 0x440f
OP_ApproveName=0x4f1f				# C

OP_MOTD=0x7629						# C 0x2b59
OP_SetChatServer=0x7d90				# C 0x0479
OP_SetChatServer2=0x158f			# C 0x158f
OP_ZoneServerInfo=0x1190			# C 0x41c0
OP_WorldComplete=0x441c				# C
OP_WorldUnknown001=0x6f9d			# C 0x77b1
OP_FloatListThing=0x61ba			# V

# Reasons for Disconnect:
OP_ZoneUnavail=0x3288				# C 0x1190
OP_WorldClientReady=0x7d05			# C 0x4786
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=0x3594					# V
OP_ZoneEntry=0x4b61					# V
OP_ReqNewZone=0x4118				# V
OP_NewZone=0x43ac					# V
OP_ZoneSpawns=0x7114				# ?
OP_PlayerProfile=0x6022				# V
OP_TimeOfDay=0x6015					# V
OP_LevelUpdate=0x6a99				# V
OP_Stamina=0x3d86					# V
OP_RequestClientZoneChange=0x18ea	# C
OP_ZoneChange=0x6d37				# C

OP_LockoutTimerInfo=0x0000			#
OP_ZoneServerReady=0x0000			#
OP_ZoneInUnknown=0x0000				#
OP_LogoutReply=0x0000				#
OP_PreLogoutReply=0x0000			#

# Required to fully log in
OP_SpawnAppearance=0x3e17			# V
OP_ChangeSize=0x6942				#
OP_TributeUpdate=0x684c				# V
OP_TributeTimer=0x4895				# C
OP_RequestGuildTributes=0x6124		#
OP_TaskDescription=0x156c			# C
OP_TaskActivity=0x31f3				# C
OP_CompletedTasks=0x687f			# C
OP_Weather=0x4658					# V
OP_SendAATable=0x6ef9				# V
OP_ClearAA=0x2cd4
OP_ClearLeadershipAbilities=0x7b77
OP_UpdateAA=0x7bf6					# V
OP_RespondAA=0x1fbd					# C 0x2bad
OP_ReqClientSpawn=0x69cd			# V
OP_SpawnDoor=0x6f2b					# V
OP_GroundSpawn=0x5c85				# V
OP_SendZonepoints=0x2370			# V
OP_SendAAStats=0x78b9				# C
OP_WorldObjectsSent=0x7b73			# V
OP_BlockedBuffs=0x05d5				# V
OP_RemoveBlockedBuffs=0x37c1			# V
OP_ClearBlockedBuffs=0x5570			# C
OP_SendExpZonein=0x47e7				# V
OP_SendTributes=0x6bfb				# V
OP_TributeInfo=0x5a67				# V
#OP_SendGuildTributes=0x4df0			# C 0x5a01
OP_AAExpUpdate=0x4aa2				# V
OP_ExpUpdate=0x0555					# V
OP_HPUpdate=0x6145					# V
OP_ManaChange=0x569a				# C
OP_TGB=0x42ef						# C
OP_SpecialMesg=0x016c				# V
OP_GuildMemberList=0x51bc			# C
OP_GuildMOTD=0x5658					# V
OP_CharInventory=0x47ae				# V
OP_WearChange=0x0400				# V
OP_ClientUpdate=0x7062				# V
OP_ClientReady=0x6cdc				# V
OP_SetServerFilter=0x2d74			# V

# Guild Opcodes
OP_GetGuildMOTD=0x1899				# C
OP_GetGuildMOTDReply=0x4a5c			# C
OP_GuildMemberUpdate=0x0a53			# C
OP_GuildInvite=0x1a58				# C
OP_GuildRemove=0x3c02				# C
OP_GuildPeace=0x2bff				# C
OP_SetGuildMOTD=0x053a				# C
OP_GuildList=0x5b0b					# C
OP_GuildWar=0x5408					# C
OP_GuildLeader=0x0598				# C
OP_GuildDelete=0x3f55				# C
OP_GuildInviteAccept=0x7b64			# C
OP_GuildDemote=0x457d				# C
OP_GuildPublicNote=0x2dbd			# C
OP_GuildManageBanker=0x1e4c			# C
OP_GuildBank=0x0d8a					# C
OP_SetGuildRank=0x4ffe				# C
OP_GuildUpdate=0x5232	# C
OP_GuildMemberLevelUpdate=0x0000	#
OP_ZoneGuildList=0x0000				#
OP_GetGuildsList=0x0000				#
OP_GuildStatus=0x28c8				#
OP_GuildCreate=0x192d				#
OP_LFGuild=0x7e23				#
OP_GuildMemberLevel=0x4d4e
OP_GuildMemberRankAltBanker=0x4ffe
OP_GuildMemberPublicNote=0x526d
OP_GuildMemberAdd=0x7337
OP_GuildMemberRename=0x5fc7
OP_GuildMemberDelete=0x190c
OP_GuildMemberDetails=0x0a53
OP_GuildRenameGuild=0x480e
OP_GuildDeleteGuild=0x736

# GM/guide opcodes
OP_GMServers=0x6989					# C
OP_GMBecomeNPC=0x56e7				# C
OP_GMZoneRequest=0x3fd2				# C
OP_GMZoneRequest2=0x538f			# C
OP_GMGoto=0x5ebc					# C
OP_GMSearchCorpse=0x5a81			# C
OP_GMHideMe=0x28ef					# C
OP_GMDelCorpse=0x655c				# C
OP_GMApproval=0x7312				# C
OP_GMToggle=0x097f					# C 0x7566
OP_GMSummon=0x712b					# C
OP_GMEmoteZone=0x1ac1				# C
OP_GMEmoteWorld=0x2444				# C
OP_GMFind=0x6e27					# C
OP_GMKick=0x0402					# C
OP_GMKill=0x799c					# C
OP_GMNameChange=0x0f48				# C
OP_GMLastName=0x7bfb				# C

OP_QueryUCSServerStatus=0x4481
OP_InspectAnswer=0x0c2b				# C
OP_BeginCast=0x0d5a					# C
OP_ColoredText=0x71bf				# C
OP_ConsentResponse=0x0e87			# C
OP_MemorizeSpell=0x3887				# C
OP_LinkedReuse=0x1b26
OP_SwapSpell=0x5805					# C
OP_CastSpell=0x50c2					# C
OP_Consider=0x3c2d					# C
OP_FormattedMessage=0x3b52			# C
OP_SimpleMessage=0x1f4d				# C 0x5448
OP_Buff=0x0d1d						# C
OP_Illusion=0x231f					# C
OP_MoneyOnCorpse=0x4a83				# C
OP_RandomReply=0x6d5d				# C
OP_DenyResponse=0x6129				# C
OP_SkillUpdate=0x7f01				# C
OP_GMTrainSkillConfirm=0x3190		# C
OP_RandomReq=0x139d					# C
OP_Death=0x7f9e						# C
OP_Bind_Wound=0x4b1a				# C
OP_GMTraining=0x51fa				# C
OP_GMEndTraining=0x5479				# C
OP_GMTrainSkill=0x2257				# C
OP_Animation=0x4a61					# Was 0x47d3
OP_Begging=0x53f9					# C
OP_Consent=0x6bb9					# C
OP_ConsentDeny=0x4cd1				# C
OP_AutoFire=0x5db5					# C
OP_PetCommands=0x7706				# C
OP_PetCommandState=0x1a79
OP_PetHoTT=0x2528
OP_DeleteSpell=0x0698				# C
OP_Surname=0x44ae					# C
OP_ClearSurname=0x6705				# C
OP_FaceChange=0x37a7				# C
OP_SetFace=0x6cfa
OP_SenseHeading=0x1b8a				# C
OP_Action=0x0f14					# C
OP_ConsiderCorpse=0x0a18			# C
OP_HideCorpse=0x2d08				# C 0x1842
OP_CorpseDrag=0x3331				#
OP_CorpseDrop=0x2e70				#
OP_Bug=0x2369						# C
OP_Feedback=0x7705					# C
OP_Report=0x50d0					# C
OP_Damage=0x631a					# C or OP_Action2?
OP_ChannelMessage=0x2e79			# C
OP_Assist=0x35b1					# C
OP_AssistGroup=0x194f				# C
OP_MoveCoin=0x6024					# C
OP_ZonePlayerToBind=0x382c			# C
OP_KeyRing=0x5c06					# C
OP_WhoAllRequest=0x177a				# C
OP_WhoAllResponse=0x6ffa			# C
OP_FriendsWho=0x6275				# C
OP_ConfirmDelete=0x3edc				# V
OP_Logout=0x224f					# C
OP_Rewind=0x7d63					# C
OP_TargetCommand=0x756c				# C Was 0x5f5e
OP_InspectRequest=0x7c94			# C
OP_Hide=0x3497						# C
OP_Jump=0x083b						# C
OP_Camp=0x5f85						# C
OP_Emote=0x3164						# C
OP_SetRunMode=0x3d06				# C
OP_BankerChange=0x300a				# C
OP_TargetMouse=0x5f5e				# C 0x7bbb
OP_MobHealth=0x15de					# C
OP_InitialMobHealth=0x5cb0			# C
OP_TargetHoTT=0x790c				# C
OP_XTargetResponse=0x6eb5			#
OP_XTargetRequest=0x4750			#
OP_XTargetAutoAddHaters=0x1a28			#
OP_XTargetOpen=0x11ae
OP_XTargetOpenResponse=0x45d3
OP_TargetBuffs=0x3f24				# C
OP_BuffCreate=0x2121                # V
OP_BuffRemoveRequest=0x4065
OP_DeleteSpawn=0x58c5				# C
OP_AutoAttack=0x1df9				# C
OP_AutoAttack2=0x517b				# C
OP_Consume=0x24c5					# V
OP_MoveItem=0x2641					# C
OP_MoveMultipleItems=0x40e8
OP_DeleteItem=0x66e0				# C
OP_DeleteCharge=0x4ca1				# C
OP_ItemPacket=0x7b6e				# C
OP_ItemLinkResponse=0x695c			# C
OP_ItemLinkClick=0x3c66				# C
OP_NewSpawn=0x429b					# C
OP_Track=0x709d						# C
OP_TrackTarget=0x3f49				# C
OP_TrackUnknown=0x03e7				# C
OP_ClickDoor=0x6e97					# C
OP_MoveDoor=0x3154					# C
OP_RemoveAllDoors=0x6215			# C
OP_EnvDamage=0x2730					# C
OP_BoardBoat=0x7554					# C
OP_Forage=0x739b					# C
OP_LeaveBoat=0x7286					# C
OP_ControlBoat=0x7ea8				# C
OP_SafeFallSuccess=0x6df7			# C
OP_RezzComplete=0x30a4				# C
OP_RezzRequest=0x32af				# C
OP_RezzAnswer=0x2d41				# C
OP_Shielding=0x4675					# C
OP_RequestDuel=0x6cfe				# C
OP_MobRename=0x0507					# C
OP_AugmentItem=0x7c87				# C
OP_WeaponEquip1=0x4572				# C
OP_PlayerStateAdd=0x399b				# C
OP_PlayerStateRemove=0x416b			# C
OP_ApplyPoison=0x5cd3				# C
OP_Save=0x6618						# C
OP_TestBuff=0x3415					# C
OP_CustomTitles=0x6a7e				# C
OP_Split=0x1418						# C
OP_YellForHelp=0x55a8				# C
OP_LoadSpellSet=0x6617				# C
OP_Bandolier=0x510c					# C
OP_PotionBelt=0x0651				# C
OP_DuelDecline=0x41a6				# C
OP_DuelAccept=0x6d60				# C
OP_SaveOnZoneReq=0x2913				# C
OP_ReadBook=0x465e					# C
OP_Dye=0x2137						# C
OP_InterruptCast=0x7566				# C
OP_AAAction=0x2bad					# C
OP_LeadershipExpToggle=0x5033		# C
OP_LeadershipExpUpdate=0x074f		# C
OP_PurchaseLeadershipAA=0x5f55		# C
OP_UpdateLeadershipAA=0x77ed		# C
OP_MarkNPC=0x66bf
OP_MarkRaidNPC=0x3ec7				# C
OP_ClearNPCMarks=0x5c29				# C
OP_ClearRaidNPCMarks=0x2af4
OP_DoGroupLeadershipAbility=0x0068	# C
OP_GroupLeadershipAAUpdate=0x167b	# C
OP_DelegateAbility=0x6e58			# C
OP_SetGroupTarget=0x6b9e			# C
OP_Charm=0x1fd5						# C
OP_Stun=0x3d00						# C
OP_SendFindableNPCs=0x6193			# C
OP_FindPersonRequest=0x1e04			# C
OP_FindPersonReply=0x7cae			# C
OP_Sound=0x737a						# C
OP_CashReward=0x039d
OP_PetBuffWindow=0x7b87				# C
OP_LevelAppearance=0x1bd4			# C
OP_Translocate=0x3d9c				# C
OP_Sacrifice=0x301b					# C
OP_PopupResponse=0x6d27				# C
OP_OnLevelMessage=0x24cb			# C
OP_AugmentInfo=0x31b1				# C
OP_Petition=0x31d1					# C
OP_SomeItemPacketMaybe=0x2c27		# C
OP_PVPStats=0x5272					#
OP_PVPLeaderBoardRequest=0x4973		# C
OP_PVPLeaderBoardReply=0x3842		# C
OP_PVPLeaderBoardDetailsRequest=0x6c75	# C
OP_PVPLeaderBoardDetailsReply=0x7fd7	# C
OP_RestState=0x5d24					# C
OP_RespawnWindow=0x107f				# C
OP_DisciplineTimer=0x047c			# C
OP_LDoNButton=0x1031				# C
OP_SetStartCity=0x68f0				# C
OP_VoiceMacroIn=0x1524				# C
OP_VoiceMacroOut=0x1d99				# C
OP_ItemAdvancedLoreText=0x4eb3		# C
OP_VetRewardsAvaliable=0x0baa		# C Mispelled?
OP_VetClaimRequest=0x34f8			# C
OP_VetClaimReply=0x6a5d				# C
OP_CrystalCountUpdate=0x3fc8		# C
OP_DisciplineUpdate=0x6ed3			#
OP_BecomeCorpse=0x0000				#
OP_Action2=0x0000					# C OP_Damage?
OP_MobUpdate=0x4656					# Same as OP_SpawnPositionUpdate
OP_NPCMoveUpdate=0x0f3e				#
OP_CameraEffect=0x6b0e				# V
OP_SpellEffect=0x57a3				# V
OP_AddNimbusEffect=0x6361
OP_RemoveNimbusEffect=0x2c77		# C
OP_AltCurrency=0x659e
OP_AltCurrencyMerchantRequest=0x214C
OP_AltCurrencyMerchantReply=0x4348
OP_AltCurrencyPurchase=0x4ad7
OP_AltCurrencySell=0x14cf
OP_AltCurrencySellSelection=0x322a
OP_AltCurrencyReclaim=0x365d
OP_CrystalReclaim=0x726e
OP_CrystalCreate=0x12f3
OP_Untargetable=0x301d
OP_IncreaseStats=0x4acf
OP_Weblink=0x6840					# C
OP_InspectMessageUpdate=0x7fa1		# C
#OP_OpenInventory=0x0000			# Likely does not exist in UF -U
OP_OpenContainer=0x041a
OP_Marquee=0x3675
OP_Fling=0x51b1
OP_CancelSneakHide=0x7686
OP_UnderWorld=0x2d9d			# clients sends up when they detect an underworld issue, might be useful for cheat detection
OP_BookButton=0x018e

OP_DzQuit=0x1539
OP_DzListTimers=0x21e9
OP_DzAddPlayer=0x3657
OP_DzRemovePlayer=0x054e
OP_DzSwapPlayer=0x4661
OP_DzMakeLeader=0x226f
OP_DzPlayerList=0x74e4
OP_DzExpeditionInvite=0x3c5e
OP_DzExpeditionInviteResponse=0x1154
OP_DzExpeditionInfo=0x1150
OP_DzExpeditionLockoutTimers=0x70d8
OP_DzMemberList=0x15c4
OP_DzMemberListName=0x2d17
OP_DzMemberListStatus=0x0d98
OP_DzSetLeaderName=0x2caf
OP_DzExpeditionEndsWarning=0x6ac2
OP_DzCompass=0x01cb
OP_DzChooseZone=0x65e1
OP_DzChooseZoneReply=0xa682

#shroud
OP_ShroudSelectionWindow=0x72ad
OP_ShroudRequestStats=0x488b
OP_ShroudRespondStats=0x1910
OP_ShroudSelect=0x45d7
OP_ShroudSelectCancel=0x666d
OP_ShroudProgress=0x6016	# This clears current progress and sets
OP_ShroudProgress2=0x66b4	# This just sets progress
OP_Shroud=0x1643

# New Opcodes
OP_SpawnPositionUpdate=0x4656		# C
OP_ManaUpdate=0x0433				# C
OP_EnduranceUpdate=0x6b76			# C
OP_MobManaUpdate=0x7901				# C
OP_MobEnduranceUpdate=0x1912		# C

# Looting
OP_LootRequest=0x6ad7				# C
OP_EndLootRequest=0x6546			# C
OP_LootItem=0x5960					# C
OP_LootComplete=0x604d				# C

# bazaar trader stuff stuff:
OP_BazaarSearch=0x550f				# C
OP_TraderDelItem=0x63c8				# C
OP_BecomeTrader=0x0a1d				# C
OP_TraderShop=0x2881				# C
OP_Trader=0x0c08					# C
OP_TraderBuy=0x3672					# C
OP_Barter=0x6db5					# C
OP_ShopItem=0x0000					#
OP_BazaarInspect=0x0000				#
OP_Bazaar=0x0000					#
OP_TraderItemUpdate=0x0000			#

# pc/npc trading
OP_TradeRequest=0x7113				# C
OP_TradeAcceptClick=0x064a			# C
OP_TradeRequestAck=0x606a			# C
OP_TradeCoins=0x0149				# C
OP_FinishTrade=0x3ff6				# C
OP_CancelTrade=0x527e				# C
OP_TradeMoneyUpdate=0x2a6d			# C
OP_MoneyUpdate=0xd677				# C
OP_TradeBusy=0x5ed3					# C

# Sent after canceling trade or after closing tradeskill object
OP_FinishWindow=0x3c27				# C
OP_FinishWindow2=0x6759				# C

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

# merchant crap
OP_ShopPlayerSell=0x0b27			# C
OP_ShopRequest=0x442a				# C
OP_ShopEnd=0x3753					# C
OP_ShopEndConfirm=0x4578			# C
OP_ShopPlayerBuy=0x436a				# C
OP_ShopDelItem=0x63c8				# C

# tradeskill stuff:
OP_ClickObject=0x33e5				# V
OP_ClickObjectAction=0x41b5			# V
OP_ClearObject=0x71d1				# C
OP_RecipeDetails=0x58d9				# C
OP_RecipesFavorite=0x7770			# C
OP_RecipesSearch=0x6948				# C
OP_RecipeReply=0x521c				# C
OP_RecipeAutoCombine=0x0322			# C
OP_TradeSkillCombine=0x4212			# C

# Tribute Packets:
OP_OpenGuildTributeMaster=0x5e79	# C
OP_OpenTributeMaster=0x7c24			# C
OP_SelectTribute=0x0c98				# C
OP_TributeItem=0x0b89				# C
OP_TributeMoney=0x314f				# C
OP_TributeToggle=0x6dc3				# C
OP_TributePointUpdate=0x15a7		# C
OP_TributeNPC=0x0000				#
OP_GuildTributeInfo=0x0000			#
OP_OpenTributeReply=0x0000			#
# OP_GuildTributeStatus=0x0000		#
OP_OpenGuildTributeMaster=0x4933
OP_GuildSaveActiveTributes=0x322f
OP_GuildSendActiveTributes=0x5a01	#  
OP_GuildTributeToggleReq=0x7880
OP_GuildTributeToggleReply=0x7d66	#
OP_GuildTributeFavorAndTimer=0x4df0
OP_GuildTributeDonateItem=0x3683
OP_GuildTributeDonatePlat=0x5e79
OP_GuildSelectTribute=0x3bef
OP_GuildModifyBenefits=0x3a1b
OP_GuildOptInOut=0x5a6f
OP_SendGuildTributes=0x45b3

# Adventure packets:
OP_LeaveAdventure=0x3ed4			# C
OP_AdventureFinish=0x6acc			# C
OP_AdventureInfoRequest=0x3541		# C
OP_AdventureInfo=0x5cea				# C
OP_AdventureRequest=0x2c03			# C
OP_AdventureDetails=0x1d40			# C
OP_AdventureData=0x34f2				# C
OP_AdventureUpdate=0x771f			# C
OP_AdventureMerchantRequest=0x4e22	# C
OP_AdventureMerchantResponse=0x4dd5	# C
OP_AdventureMerchantPurchase=0x7b7f	# C
OP_AdventureMerchantSell=0x179d		# C
OP_AdventurePointsUpdate=0x7537		# C
OP_AdventureStatsRequest=0x4786		# C
OP_AdventureStatsReply=0x38b0		# C
OP_AdventureLeaderboardRequest=0x4cc6	# C
OP_AdventureLeaderboardReply=0x4423	# C

# Group Opcodes
OP_GroupDisband=0x54e8				# C
OP_GroupInvite=0x4f60				# C
OP_GroupFollow=0x7f2b				# C
OP_GroupUpdate=0x5331				# C
OP_GroupUpdateB=0x0786				# C
OP_GroupCancelInvite=0x2736			# C - Same as OP_CancelInvite?
OP_GroupAcknowledge=0x3e22			# C
OP_GroupDelete=0x58e6				#
OP_CancelInvite=0x2736				# C
OP_GroupFollow2=0x6c16				# C
OP_GroupInvite2=0x5251				# C
OP_GroupDisbandYou=0x0bd0			# C
OP_GroupDisbandOther=0x49f6			# C
OP_GroupLeaderChange=0x0c33			# C
OP_GroupRoles=0x116d				# C
OP_GroupMakeLeader=0x5851
OP_GroupMentor=0x292f
OP_InspectBuffs=0x105b

# LFG/LFP Opcodes
OP_LFGCommand=0x2c38				# C
OP_LFGGetMatchesRequest=0x28d4		# C
OP_LFGGetMatchesResponse=0x7a16		# C
OP_LFPGetMatchesRequest=0x189e		# C
OP_LFPGetMatchesResponse=0x589f		# C
OP_LFPCommand=0x7429				# C
OP_LFGAppearance=0x0000				#
OP_LFGResponse=0x0000				#

# Raid Opcodes
OP_RaidInvite=0x60b5				# C
OP_RaidUpdate=0x4d8b				# C
OP_RaidJoin=0x0000					#
OP_RaidDelegateAbility=0x0297
OP_RaidClearNPCMarks=0x2af4

# Button-push commands
OP_Taunt=0x30e2						# C
OP_CombatAbility=0x36f8				# C
OP_SenseTraps=0x7e45				# C
OP_PickPocket=0x5821				# C
OP_DisarmTraps=0x0000				#
OP_Disarm=0x6def					# C
OP_Sneak=0x1d22						# C
OP_Fishing=0x7093					# C
OP_InstillDoubt=0x221a				# C
OP_FeignDeath=0x002b					# C
OP_Mend=0x10a6						# C
OP_LDoNOpen=0x032b					# C
OP_LDoNDisarmTraps=0x1a84
OP_LDoNPickLock=0x0370
OP_LDoNInspect=0x0aaa

# Task packets
OP_TaskActivityComplete=0x5832		# C
OP_AvaliableTask=0x6255				# C Mispelled?
OP_AcceptNewTask=0x17d5				# C
OP_TaskHistoryRequest=0x547c		# C
OP_TaskHistoryReply=0x4524			# C
OP_CancelTask=0x3bf5				# C
OP_DeclineAllTasks=0x0000			#
OP_TaskRequestTimer=0x719e
OP_TaskSelectWindow=0x7309

# Shared Tasks
OP_SharedTaskMemberList=0x584e      #
OP_SharedTaskRemovePlayer=0x18e2    # /taskremoveplayer
OP_SharedTaskAddPlayer=0x6255       # /taskaddplayer
OP_SharedTaskMakeLeader=0x5933      # /taskmakeleader
OP_SharedTaskInvite=0x55f4          # Dialog window
OP_SharedTaskInviteResponse=0x26e5  # Dialog window response
OP_SharedTaskAcceptNew=0x6ded       # Not sure why this has a separate handler
OP_SharedTaskMemberChange=0x1402    # Not sure yet?
OP_TaskTimers=0x09b4                # /tasktimers
OP_SharedTaskQuit=0x6aba            # /taskquit
OP_SharedTaskSelectWindow=0x98f6
OP_SharedTaskPlayerList=0x66ba      # /taskplayerlist

# Title opcodes
OP_NewTitlesAvailable=0x4b49		# C
OP_RequestTitles=0x4d3e				# C
OP_SendTitleList=0x0d96				# C
OP_SetTitle=0x675c					# C
OP_SetTitleReply=0x75f5				# C

# Mercenary Opcodes
OP_MercenaryDataRequest=0x3015		#
OP_MercenaryDataResponse=0x0eaa		#
OP_MercenaryHire=0x099e				#
OP_MercenaryTimer=0x0cae			#
OP_MercenaryAssign=0x2538			#
OP_MercenaryUnknown1=0x367f			#
OP_MercenaryDataUpdate=0x57f2		#
OP_MercenaryCommand=0x50c1			#
OP_MercenarySuspendRequest=0x3c58	#
OP_MercenarySuspendResponse=0x4b82	#
OP_MercenaryUnsuspendResponse=0x5fe3
OP_MercenaryDataUpdateRequest=0x05f1
OP_MercenaryDismiss=0x319a			#
OP_MercenaryTimerRequest=0x184e		#

# 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=0x7f72					#
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			# U OP_SendSpellChecksum
#OP_LoginUnknown2=0x040b			# U 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=0x0001				#
OP_Login=0x0002						#
OP_ServerListRequest=0x0004			#
OP_PlayEverquestRequest=0x000d		#
OP_PlayEverquestResponse=0x0021		#
OP_ChatMessage=0x0016				#
OP_LoginAccepted=0x0017				#
OP_ServerListResponse=0x0018		#
OP_Poll=0x0029						#
OP_EnterChat=0x000f					#
OP_PollResponse=0x0011				#

# 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			#

OP_ItemRecastDelay=0x82d7

# unhandled
OP_ShieldGroup=0x23a1

#aura related
OP_UpdateAura=0x2480
OP_RemoveTrap=0x0115
