Merge branch 'master' into random

This commit is contained in:
Michael Cook (mackal)
2014-12-04 13:07:32 -05:00
19 changed files with 15342 additions and 13 deletions
+13 -1
View File
@@ -72,6 +72,7 @@ SET(common_sources
patches/sod.cpp
patches/sof.cpp
patches/rof.cpp
patches/rof2.cpp
patches/titanium.cpp
patches/underfoot.cpp
SocketLib/Base64.cpp
@@ -217,6 +218,11 @@ SET(common_headers
patches/rof_itemfields.h
patches/rof_ops.h
patches/rof_structs.h
patches/rof2.h
patches/rof2_constants.h
patches/rof2_itemfields.h
patches/rof2_ops.h
patches/rof2_structs.h
patches/titanium.h
patches/titanium_constants.h
patches/titanium_itemfields.h
@@ -270,6 +276,11 @@ SOURCE_GROUP(Patches FILES
patches/rof_ops.h
patches/rof_constants.h
patches/rof_structs.h
patches/rof2.h
patches/rof2_itemfields.h
patches/rof2_ops.h
patches/rof2_constants.h
patches/rof2_structs.h
patches/titanium.h
patches/titanium_itemfields.h
patches/titanium_ops.h
@@ -285,6 +296,7 @@ SOURCE_GROUP(Patches FILES
patches/sod.cpp
patches/sof.cpp
patches/rof.cpp
patches/rof2.cpp
patches/titanium.cpp
patches/underfoot.cpp
)
@@ -336,7 +348,7 @@ ADD_LIBRARY(common ${common_sources} ${common_headers})
IF(UNIX)
ADD_DEFINITIONS(-fPIC)
SET_SOURCE_FILES_PROPERTIES("SocketLib/Mime.cpp" PROPERTY COMPILE_FLAGS -Wno-unused-result)
SET_SOURCE_FILES_PROPERTIES("patches/sod.cpp" "patches/sof.cpp" "patches/rof.cpp" "patches/underfoot.cpp" PROPERTIES COMPILE_FLAGS -O0)
SET_SOURCE_FILES_PROPERTIES("patches/sod.cpp" "patches/sof.cpp" "patches/rof.cpp" "patches/rof2.cpp" "patches/underfoot.cpp" PROPERTIES COMPILE_FLAGS -O0)
ENDIF(UNIX)
+1 -1
View File
@@ -32,7 +32,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#include "../common/patches/sod_constants.h"
#include "../common/patches/underfoot_constants.h"
#include "../common/patches/rof_constants.h"
//#include "../common/patches/rof2_constants.h"
#include "../common/patches/rof2_constants.h"
// *** DO NOT CHANGE without a full understanding of the consequences..the server is set up to use these settings explicitly!! ***
// *** You will cause compilation failures and corrupt your database if partial or incorrect attempts to change them are made!! ***
+3 -1
View File
@@ -8,7 +8,7 @@
#include "sof.h"
#include "sod.h"
#include "rof.h"
//#include "rof2.h"
#include "rof2.h"
void RegisterAllPatches(EQStreamIdentifier &into) {
Client62::Register(into);
@@ -17,6 +17,7 @@ void RegisterAllPatches(EQStreamIdentifier &into) {
SoD::Register(into);
Underfoot::Register(into);
RoF::Register(into);
// Uncomment the line below to enable RoF2 Client
//RoF2::Register(into);
}
@@ -27,5 +28,6 @@ void ReloadAllPatches() {
SoD::Reload();
Underfoot::Reload();
RoF::Reload();
// Uncomment the line below to enable RoF2 Client
//RoF2::Reload();
}
File diff suppressed because it is too large Load Diff
+37
View File
@@ -0,0 +1,37 @@
#ifndef RoF2_H_
#define RoF2_H_
#include "../struct_strategy.h"
class EQStreamIdentifier;
namespace RoF2 {
//these are the only public member of this namespace.
extern void Register(EQStreamIdentifier &into);
extern void Reload();
//you should not directly access anything below..
//I just dont feel like making a seperate header for it.
class Strategy : public StructStrategy {
public:
Strategy();
protected:
virtual std::string Describe() const;
virtual const EQClientVersion ClientVersion() const;
//magic macro to declare our opcode processors
#include "ss_declare.h"
#include "rof2_ops.h"
};
};
#endif /*RoF2_H_*/
+216
View File
@@ -0,0 +1,216 @@
/*
EQEMu: Everquest Server Emulator
Copyright (C) 2001-2014 EQEMu Development Team (http://eqemulator.net)
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY except by those people which sell it, which
are required to give you total support for your newly bought product;
without even the implied warranty of MERCHANTABILITY or FITNESS FOR
A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef RoF2_CONSTANTS_H_
#define RoF2_CONSTANTS_H_
#include "../types.h"
namespace RoF2 {
namespace maps {
typedef enum : int16 {
MapPossessions = 0,
MapBank,
MapSharedBank,
MapTrade,
MapWorld,
MapLimbo,
MapTribute,
MapTrophyTribute,
MapGuildTribute,
MapMerchant,
MapDeleted,
MapCorpse,
MapBazaar,
MapInspect,
MapRealEstate,
MapViewMODPC,
MapViewMODBank,
MapViewMODSharedBank,
MapViewMODLimbo,
MapAltStorage,
MapArchived,
MapMail,
MapGuildTrophyTribute,
MapOther,
_MapCount
} InventoryMaps;
}
namespace slots {
typedef enum : int16 {
MainCharm = 0,
MainEar1,
MainHead,
MainFace,
MainEar2,
MainNeck,
MainShoulders,
MainArms,
MainBack,
MainWrist1,
MainWrist2,
MainRange,
MainHands,
MainPrimary,
MainSecondary,
MainFinger1,
MainFinger2,
MainChest,
MainLegs,
MainFeet,
MainWaist,
MainPowerSource,
MainAmmo,
MainGeneral1,
MainGeneral2,
MainGeneral3,
MainGeneral4,
MainGeneral5,
MainGeneral6,
MainGeneral7,
MainGeneral8,
MainGeneral9,
MainGeneral10,
MainCursor,
_MainCount,
_MainEquipmentBegin = MainCharm,
_MainEquipmentEnd = MainAmmo,
_MainEquipmentCount = (_MainEquipmentEnd - _MainEquipmentBegin + 1),
_MainGeneralBegin = MainGeneral1,
_MainGeneralEnd = MainGeneral10,
_MainGeneralCount = (_MainGeneralEnd - _MainGeneralBegin + 1)
} EquipmentSlots;
}
namespace consts {
static const uint16 MAP_POSSESSIONS_SIZE = slots::_MainCount;
static const uint16 MAP_BANK_SIZE = 24;
static const uint16 MAP_SHARED_BANK_SIZE = 2;
static const uint16 MAP_TRADE_SIZE = 8;
static const uint16 MAP_WORLD_SIZE = 10;
static const uint16 MAP_LIMBO_SIZE = 36;
static const uint16 MAP_TRIBUTE_SIZE = 0; //?
static const uint16 MAP_TROPHY_TRIBUTE_SIZE = 0;
static const uint16 MAP_GUILD_TRIBUTE_SIZE = 0;
static const uint16 MAP_MERCHANT_SIZE = 0;
static const uint16 MAP_DELETED_SIZE = 0;
static const uint16 MAP_CORPSE_SIZE = slots::_MainCount;
static const uint16 MAP_BAZAAR_SIZE = 200;
static const uint16 MAP_INSPECT_SIZE = slots::_MainEquipmentCount;
static const uint16 MAP_REAL_ESTATE_SIZE = 0;
static const uint16 MAP_VIEW_MOD_PC_SIZE = MAP_POSSESSIONS_SIZE;
static const uint16 MAP_VIEW_MOD_BANK_SIZE = MAP_BANK_SIZE;
static const uint16 MAP_VIEW_MOD_SHARED_BANK_SIZE = MAP_SHARED_BANK_SIZE;
static const uint16 MAP_VIEW_MOD_LIMBO_SIZE = MAP_LIMBO_SIZE;
static const uint16 MAP_ALT_STORAGE_SIZE = 0;
static const uint16 MAP_ARCHIVED_SIZE = 0;
static const uint16 MAP_MAIL_SIZE = 0;
static const uint16 MAP_GUILD_TROPHY_TRIBUTE_SIZE = 0;
static const uint16 MAP_KRONO_SIZE = NOT_USED;
static const uint16 MAP_OTHER_SIZE = 0;
// most of these definitions will go away with the structure-based system..this maintains compatibility for now
// (bag slots and main slots beyond Possessions are assigned for compatibility with current server coding)
static const int16 EQUIPMENT_BEGIN = slots::MainCharm;
static const int16 EQUIPMENT_END = slots::MainAmmo;
static const uint16 EQUIPMENT_SIZE = slots::_MainEquipmentCount;
static const int16 GENERAL_BEGIN = slots::MainGeneral1;
static const int16 GENERAL_END = slots::MainGeneral10;
static const uint16 GENERAL_SIZE = slots::_MainGeneralCount;
static const int16 GENERAL_BAGS_BEGIN = 251;
static const int16 GENERAL_BAGS_END_OFFSET = 99;
static const int16 GENERAL_BAGS_END = GENERAL_BAGS_BEGIN + GENERAL_BAGS_END_OFFSET;
static const int16 CURSOR = slots::MainCursor;
static const int16 CURSOR_BAG_BEGIN = 351;
static const int16 CURSOR_BAG_END_OFFSET = 9;
static const int16 CURSOR_BAG_END = CURSOR_BAG_BEGIN + CURSOR_BAG_END_OFFSET;
static const int16 BANK_BEGIN = 2000;
static const int16 BANK_END = 2023;
static const int16 BANK_BAGS_BEGIN = 2031;
static const int16 BANK_BAGS_END_OFFSET = 239;
static const int16 BANK_BAGS_END = BANK_BAGS_BEGIN + BANK_BAGS_END_OFFSET;
static const int16 SHARED_BANK_BEGIN = 2500;
static const int16 SHARED_BANK_END = 2501;
static const int16 SHARED_BANK_BAGS_BEGIN = 2531;
static const int16 SHARED_BANK_BAGS_END_OFFSET = 19;
static const int16 SHARED_BANK_BAGS_END = SHARED_BANK_BAGS_BEGIN + SHARED_BANK_BAGS_END_OFFSET;
static const int16 TRADE_BEGIN = 3000;
static const int16 TRADE_END = 3007;
static const int16 TRADE_NPC_END = 3003;
static const int16 TRADE_BAGS_BEGIN = 3031;
static const int16 TRADE_BAGS_END_OFFSET = 79;
static const int16 TRADE_BAGS_END = TRADE_BAGS_BEGIN + TRADE_BAGS_END_OFFSET;
static const int16 WORLD_BEGIN = 4000;
static const int16 WORLD_END = 4009;
static const int16 TRIBUTE_BEGIN = 400;
static const int16 TRIBUTE_END = 404;
static const int16 CORPSE_BEGIN = slots::MainGeneral1;
static const int16 CORPSE_END = slots::MainGeneral1 + slots::MainCursor;
static const uint16 ITEM_COMMON_SIZE = 6;
static const uint16 ITEM_CONTAINER_SIZE = 255; // 255; (server max will be 255..unsure what actual client is - test)
static const uint32 BANDOLIERS_COUNT = 20; // count = number of bandolier instances
static const uint32 BANDOLIER_SIZE = 4; // size = number of equipment slots in bandolier instance
static const uint32 POTION_BELT_SIZE = 5;
}
namespace limits {
static const bool ALLOWS_EMPTY_BAG_IN_BAG = true;
static const bool ALLOWS_CLICK_CAST_FROM_BAG = true;
static const bool COIN_HAS_WEIGHT = false;
}
}; //end namespace RoF2
#endif /*RoF2_CONSTANTS_H_*/
/*
RoF2 Notes:
** Structure-based inventory **
ok Possessions: ( 0, { 0 .. 33 }, -1, -1 ) (Corpse: { 23 .. 56 } [Offset 23])
ok [Equipment: ( 0, { 0 .. 22 }, -1, -1 )]
ok [General: ( 0, { 23 .. 32 }, -1, -1 )]
ok [Cursor: ( 0, 33, -1, -1 )]
General Bags: ( 0, { 23 .. 32 }, { 0 .. (maxsize - 1) }, -1 )
Cursor Bags: ( 0, 33, { 0 .. (maxsize - 1) }, -1 )
Bank: ( 1, { 0 .. 23 }, -1, -1 )
Bank Bags: ( 1, { 0 .. 23 }, { 0 .. (maxsize - 1)}, -1 )
Shared Bank: ( 2, { 0 .. 1 }, -1, -1 )
Shared Bank Bags: ( 2, { 0 .. 1 }, { 0 .. (maxsize - 1) }, -1 )
Trade: ( 3, { 0 .. 8 }, -1, -1 )
(Trade Bags: 3031 - 3110 -- server values)
World: ( 4, { 0 .. 10 }, -1, -1 )
*/
+439
View File
@@ -0,0 +1,439 @@
/*
These fields must be in the order of how they are serialized!
*/
#define NEW_TRY
#ifdef NEW_TRY
//* 000 */ I(ItemClass) // Leave this one off on purpose
/* 001 */ S(Name)
/* 002 */ S(Lore)
//* 003 */ C("")//lorefile - Newly Added - Field is Null
/* 004 */ S(IDFile)
/* 005 */ I(ID)
/* 006 */ I(Weight)
/* 007 */ I(NoRent)
/* 008 */ I(NoDrop)
/* 009 */ I(Size)
/* 010 */ I(Slots)
/* 011 */ I(Price)
/* 012 */ I(Icon)
/* 013 */ C("0")//UNK013
/* 014 */ C("0")//UNK014
/* 015 */ I(BenefitFlag)
/* 016 */ I(Tradeskills)
/* 017 */ I(CR)
/* 018 */ I(DR)
/* 019 */ I(PR)
/* 020 */ I(MR)
/* 021 */ I(FR)
/* 022 */ C("0")//svcorruption - Newly Added
/* 023 */ I(AStr)
/* 024 */ I(ASta)
/* 025 */ I(AAgi)
/* 026 */ I(ADex)
/* 027 */ I(ACha)
/* 028 */ I(AInt)
/* 029 */ I(AWis)
/* 030 */ I(HP)
/* 031 */ I(Mana)
/* 032 */ I(Endur) //endur - Relocated
/* 033 */ I(AC)
/* 034 */ I(Classes)//classes - Relocated
/* 035 */ I(Races)//races - Relocated
/* 036 */ I(Deity)
/* 037 */ I(SkillModValue)
/* 038 */ C("0")//UNK038 - Default is 0
/* 039 */ I(SkillModType)
/* 040 */ I(BaneDmgRace)
/* 041 */ I(BaneDmgBody)//banedmgbody - Relocated
/* 042 */ I(BaneDmgRaceAmt)//banedmgraceamt - Relocated
/* 043 */ I(BaneDmgAmt)//banedmgamt - Relocated
/* 044 */ I(Magic)
/* 045 */ I(CastTime_)
/* 046 */ I(ReqLevel)
/* 047 */ I(RecLevel)//reclevel - Relocated
/* 048 */ I(RecSkill)//recskill - Relocated
/* 049 */ I(BardType)
/* 050 */ I(BardValue)
/* 051 */ I(Light)
/* 052 */ I(Delay)
/* 053 */ I(ElemDmgType)
/* 054 */ I(ElemDmgAmt)
/* 055 */ I(Range)
/* 056 */ I(Damage)
/* 057 */ I(Color)
/* 058 */ I(ItemType)
/* 059 */ I(Material)
/* 060 */ C("0")//UNK060 - Default is 0
/* 061 */ C("0")//UNK061 - Default is 0
/* 062 */ F(SellRate)
/* 063 */ I(CombatEffects)
/* 064 */ I(Shielding)
/* 065 */ I(StunResist)
/* 066 */ I(StrikeThrough)
/* 067 */ I(ExtraDmgSkill)
/* 068 */ I(ExtraDmgAmt)
/* 069 */ I(SpellShield)
/* 070 */ I(Avoidance)
/* 071 */ I(Accuracy)
/* 072 */ I(CharmFileID)
/* 073 */ I(FactionMod1)//Swapped these so Faction Amt comes after each Faction Mod
/* 074 */ I(FactionAmt1)//Swapped these so Faction Amt comes after each Faction Mod
/* 075 */ I(FactionMod2)//Swapped these so Faction Amt comes after each Faction Mod
/* 076 */ I(FactionAmt2)//Swapped these so Faction Amt comes after each Faction Mod
/* 077 */ I(FactionMod3)//Swapped these so Faction Amt comes after each Faction Mod
/* 078 */ I(FactionAmt3)//Swapped these so Faction Amt comes after each Faction Mod
/* 079 */ I(FactionMod4)//Swapped these so Faction Amt comes after each Faction Mod
/* 080 */ I(FactionAmt4)//Swapped these so Faction Amt comes after each Faction Mod
/* 081 */ S(CharmFile)
/* 082 */ I(AugType)
/* 083 */ I(AugRestrict)//augrestrict - Relocated
/* 084 */ I(AugDistiller)//augdistiller - Relocated
/* 085 */ I(AugSlotType[0])
/* 086 */ I(AugSlotVisible[0])//augslot1visible - Default 1
/* 087 */ C("0")//augslot1unk2 - Newly Added - Default 0
/* 088 */ I(AugSlotType[1])
/* 089 */ I(AugSlotVisible[1])
/* 090 */ C("0")//augslot2unk2 - Newly Added
/* 091 */ I(AugSlotType[2])
/* 092 */ I(AugSlotVisible[2])
/* 093 */ C("0")//augslot3unk2 - Newly Added
/* 094 */ I(AugSlotType[3])
/* 095 */ I(AugSlotVisible[3])
/* 096 */ C("0")//augslot4unk2 - Newly Added
/* 097 */ I(AugSlotType[4])
/* 098 */ I(AugSlotVisible[4])
/* 099 */ C("0")//augslot5unk2 - Newly Added
/* 100 */ I(PointType)//pointtype - Relocated
/* 101 */ I(LDoNTheme)
/* 102 */ I(LDoNPrice)
/* 103 */ C("70")//UNK098 - Newly Added - Default 70, but some are set to 0
/* 104 */ I(LDoNSold)
/* 105 */ I(BagType)
/* 106 */ I(BagSlots)
/* 107 */ I(BagSize)
/* 108 */ I(BagWR)
/* 109 */ I(Book)
/* 110 */ I(BookType)
/* 111 */ S(Filename)
/* 112 */ I(LoreGroup)
/* 113 */ I(ArtifactFlag)
/* 114 */ C("0")//I(PendingLoreFlag)?//UNK109 - Default 0, but a few are 1
/* 115 */ I(Favor)
/* 116 */ I(GuildFavor)//guildfavor - Relocated
/* 117 */ I(FVNoDrop)
/* 118 */ I(DotShielding)
/* 119 */ I(Attack)
/* 120 */ I(Regen)
/* 121 */ I(ManaRegen)
/* 122 */ I(EnduranceRegen)
/* 123 */ I(Haste)
/* 124 */ I(DamageShield)
/* 125 */ C("-1") //UNK120 - Default is -1
/* 126 */ C("0") //UNK121 - Default is 0
/* 127 */ I(Attuneable)
/* 128 */ I(NoPet)
/* 129 */ C("0") //UNK124 - Default 0, but a few are 1
/* 130 */ I(PotionBelt)
/* 131 */ C("0") //potionbeltslots - Default 0, but a few are 1
/* 132 */ I(StackSize)
/* 133 */ I(NoTransfer)
/* 134 */ I(Stackable)//UNK129 - Default is 0, but some are much higher
/* 135 */ I(QuestItemFlag)//questitemflag - Default is 0 (off), flag on = 1
/* 136 */ C("0")//UNK131 - Default is 0, but there is an item set to 1
/* 137 */ C("0")//UNK132 - Default is 0? 0000000000000000000?
/* 138 */ I(Click.Effect)
/* 139 */ I(Click.Type)
/* 140 */ I(Click.Level2)
/* 141 */ I(Click.Level)
/* 142 */ I(MaxCharges)//maxcharges - Relocated
/* 143 */ I(CastTime_)//casttime - Relocated - Note Duplicate Entries for CastTime_ and none for CastTime
/* 144 */ I(RecastDelay)//recastdelay - Relocated
/* 145 */ I(RecastType)//recasttype - Relocated
/* 146 */ C("0")//clickunk5 - Newly Added - Default is 0
/* 147 */ C("")//clickname - Newly Added - Default is Null
/* 148 */ C("-1")//clickunk7 - Newly Added - Default is -1, but some set to 0 and some much higher
/* 149 */ I(Proc.Effect)
/* 150 */ I(Proc.Type)
/* 151 */ I(Proc.Level2)
/* 152 */ I(Proc.Level)
/* 153 */ C("0")//procunk1 - Newly Added - Default is 0, but some set to -1 and 1
/* 154 */ C("0")//procunk2 - Newly Added - Default is 0
/* 155 */ C("0")//procunk3 - Newly Added - Default is 0
/* 156 */ C("0")//procunk4 - Newly Added - Default is 0
/* 157 */ I(ProcRate)//procrate - Relocated
/* 158 */ C("")//procname - Newly Added - Default is Null
/* 159 */ C("-1")//procunk7 - Newly Added - Default is -1, but some set to 0
/* 160 */ I(Worn.Effect)
/* 161 */ I(Worn.Type)
/* 162 */ I(Worn.Level2)
/* 163 */ I(Worn.Level)
/* 164 */ C("0")//wornunk1 - Newly Added - Default is 0
/* 165 */ C("0")//wornunk2 - Newly Added - Default is 0
/* 166 */ C("0")//wornunk3 - Newly Added - Default is 0
/* 167 */ C("0")//wornunk4 - Newly Added - Default is 0
/* 168 */ C("0")//wornunk5 - Newly Added - Default is 0
/* 169 */ C("")//wornname - Newly Added - Default is Null
/* 170 */ C("-1")//wornunk7 - Newly Added - Default is -1, but some set to 0
/* 171 */ I(Focus.Effect)
/* 172 */ I(Focus.Type)
/* 173 */ I(Focus.Level2)
/* 174 */ I(Focus.Level)
/* 175 */ C("0")//focusunk1 - Newly Added - Default is 0
/* 176 */ C("0")//focusunk2 - Newly Added - Default is 0
/* 177 */ C("0")//focusunk3 - Newly Added - Default is 0
/* 178 */ C("0")//focusunk4 - Newly Added - Default is 0
/* 179 */ C("0")//focusunk5 - Newly Added - Default is 0
/* 180 */ C("")//focusname - Newly Added - Default is Null
/* 181 */ C("-1")//focusunk7 - Newly Added - Default is -1, but some set to 0
/* 182 */ I(Scroll.Effect)
/* 183 */ I(Scroll.Type)
/* 184 */ I(Scroll.Level2)
/* 185 */ I(Scroll.Level)
/* 186 */ C("0")//scrollunk1 - Renumber this***
/* 187 */ C("0")//scrollunk2 - Newly Added - Default is 0
/* 188 */ C("0")//scrollunk3 - Newly Added - Default is 0
/* 189 */ C("0")//scrollunk4 - Newly Added - Default is 0
/* 190 */ C("0")//scrollunk5 - Newly Added - Default is 0
/* 191 */ C("")//scrollname - Newly Added - Default is Null
/* 192 */ C("-1")//scrollunk7 - Newly Added - Default is -1, but some set to 0
/* 193 */ C("0")//UNK193 - Default is 0
/* 194 */ C("0")//purity - Newly Added - Default is 0, but some go up to 75
/* 195 */ C("0")//dsmitigation - Newly Added - Default is 0, but some are up to 2
/* 196 */ C("0")//heroic_str - Newly Added - Default is 0
/* 197 */ C("0")//heroic_int - Newly Added - Default is 0
/* 198 */ C("0")//heroic_wis - Newly Added - Default is 0
/* 199 */ C("0")//heroic_agi - Newly Added - Default is 0
/* 200 */ C("0")//heroic_dex - Newly Added - Default is 0
/* 201 */ C("0")//heroic_sta - Newly Added - Default is 0
/* 202 */ C("0")//heroic_cha - Newly Added - Default is 0
/* 203 */ C("0")//HeroicSvPoison - Newly Added - Default is 0
/* 204 */ C("0")//HeroicSvMagic - Newly Added - Default is 0
/* 205 */ C("0")//HeroicSvFire - Newly Added - Default is 0
/* 206 */ C("0")//HeroicSvDisease - Newly Added - Default is 0
/* 207 */ C("0")//HeroicSvCold - Newly Added - Default is 0
/* 208 */ C("0")//HeroicSvCorruption - Newly Added - Default is 0
/* 209 */ C("0")//healamt - Newly Added - Default is 0, but some are up to 9
/* 210 */ C("0")//spelldmg - Newly Added - Default is 0, but some are up to 9
/* 211 */ C("0")//clairvoyance - Newly Added - Default is 0, but some are up to 10
/* 212 */ C("0")//backstabdmg - Newly Added - Default is 0, but some are up to 65
//* 213 */ C("0")//evolvinglevel - Newly Added - Default is 0, but some are up to 7
//* 214 */ C("0")//MaxPower - Newly Added
//* 215 */ C("0")//Power - Newly Added
//This doesn't appear to be used /* 102 */ S(verified)//verified
//This doesn't appear to be used /* 102 */ S(serialized)//created
//Unsure where this goes right now (or if it is even used) /* 108 */ I(SummonedFlag)
#else
/* 000 */ //I(ItemClass) Leave this one off on purpose
/* 001 */ S(Name)
/* 002 */ S(Lore)
/* 003 */ C("") //LoreFile?
/* 003 */ S(IDFile)
/* 004 */ I(ID)
/* 005 */ I(Weight)
/* 006 */ I(NoRent)
/* 007 */ I(NoDrop)
/* 008 */ I(Size)
/* 009 */ I(Slots)
/* 010 */ I(Price)
/* 011 */ I(Icon)
/* 013 */ C("0")
/* 014 */ C("0")
/* 014 */ I(BenefitFlag)
/* 015 */ I(Tradeskills)
/* 016 */ I(CR)
/* 017 */ I(DR)
/* 018 */ I(PR)
/* 019 */ I(MR)
/* 020 */ I(FR)
C("0") //svcorruption
/* 021 */ I(AStr)
/* 022 */ I(ASta)
/* 023 */ I(AAgi)
/* 024 */ I(ADex)
/* 025 */ I(ACha)
/* 026 */ I(AInt)
/* 027 */ I(AWis)
/* 028 */ I(HP)
/* 029 */ I(Mana)
I(Endur)
/* 030 */ I(AC)
/* 052 */ I(Classes)
/* 053 */ I(Races)
/* 031 */ I(Deity)
/* 032 */ I(SkillModValue)
/* 033 */ C("0")
/* 034 */ I(SkillModType)
/* 035 */ I(BaneDmgRace)
/* 037 */ I(BaneDmgBody)
/* 036 */ I(BaneDmgRaceAmt)
/* 036 */ I(BaneDmgAmt)
/* 038 */ I(Magic)
/* 039 */ I(CastTime_)
/* 040 */ I(ReqLevel)
/* 045 */ I(RecLevel)
/* 046 */ I(RecSkill)
/* 041 */ I(BardType)
/* 042 */ I(BardValue)
/* 043 */ I(Light)
/* 044 */ I(Delay)
/* 047 */ I(ElemDmgType)
/* 048 */ I(ElemDmgAmt)
/* 049 */ I(Range)
/* 050 */ I(Damage)
/* 051 */ I(Color)
/* 056 */ I(ItemType)
/* 057 */ I(Material)
/* 060 */ C("0")
/* 061 */ C("0")
/* 058 */ F(SellRate)
/* 063 */ I(CombatEffects)
/* 064 */ I(Shielding)
/* 065 */ I(StunResist)
/* 059 */ //C("0")
/* 061 */ //C("0")
/* 066 */ I(StrikeThrough)
/* 067 */ I(ExtraDmgSkill)
/* 068 */ I(ExtraDmgAmt)
/* 069 */ I(SpellShield)
/* 070 */ I(Avoidance)
/* 071 */ I(Accuracy)
/* 072 */ I(CharmFileID)
/* 073 */ I(FactionMod1)
/* 077 */ I(FactionAmt1)
/* 074 */ I(FactionMod2)
/* 078 */ I(FactionAmt2)
/* 075 */ I(FactionMod3)
/* 079 */ I(FactionAmt3)
/* 076 */ I(FactionMod4)
/* 080 */ I(FactionAmt4)
/* 081 */ S(CharmFile)
/* 082 */ I(AugType)
/* 082 */ I(AugRestrict)
/* 082 */ I(AugDistiller)
/* 083 */ I(AugSlotType[0])
/* 084 */ I(AugSlotVisible[0])
/* 084 */ I(AugSlotUnk2[0])
/* 085 */ I(AugSlotType[1])
/* 086 */ I(AugSlotVisible[1])
/* 086 */ I(AugSlotUnk2[1])
/* 087 */ I(AugSlotType[2])
/* 088 */ I(AugSlotVisible[2])
/* 088 */ I(AugSlotUnk2[2])
/* 089 */ I(AugSlotType[3])
/* 090 */ I(AugSlotVisible[3])
/* 090 */ I(AugSlotUnk2[3])
/* 091 */ I(AugSlotType[4])
/* 092 */ I(AugSlotVisible[4])
/* 092 */ I(AugSlotUnk2[4])
/* 093 */ I(PointType)
/* 093 */ I(LDoNTheme)
/* 094 */ I(LDoNPrice)
/* 094 */ C("0")
/* 095 */ I(LDoNSold)
/* 096 */ I(BagType)
/* 097 */ I(BagSlots)
/* 098 */ I(BagSize)
/* 099 */ I(BagWR)
/* 100 */ I(Book)
/* 101 */ I(BookType)
/* 102 */ S(Filename)
/* 105 */ I(LoreGroup)
/* 106 */ //I(PendingLoreFlag)
/* 107 */ I(ArtifactFlag)
/* 094 */ C("0")
/* 108 */ //I(SummonedFlag)
/* 109 */ I(Favor)
/* 121 */ I(GuildFavor)
/* 110 */ I(FVNoDrop)
/* 112 */ I(DotShielding)
/* 113 */ I(Attack)
/* 114 */ I(Regen)
/* 115 */ I(ManaRegen)
/* 116 */ I(EnduranceRegen)
/* 117 */ I(Haste)
/* 118 */ I(DamageShield)
/* 120 */ C("0")
/* 121 */ C("0")
/* 125 */ I(Attuneable)
/* 126 */ I(NoPet)
/* 124 */ C("0")
/* 129 */ I(PotionBelt)
/* 130 */ I(PotionBeltSlots)
/* 131 */ I(StackSize)
/* 132 */ I(NoTransfer)
/* 129 */ C("0")
/* 132 */ I(QuestItemFlag)
/* 131 */ C("0")
/* 132 */ C("00000000000000000000000000000000000000")
/* 134 */ I(Click.Effect)
/* 135 */ I(Click.Type)
/* 136 */ I(Click.Level2)
/* 137 */ I(Click.Level)
/* 055 */ I(MaxCharges)
/* 060 */ I(CastTime)
/* 119 */ I(RecastDelay)
/* 120 */ I(RecastType)
/* 138 */ C("0") //clickunk5 (prolly ProcRate)
/* 138 */ C("") //clickunk6
/* 138 */ C("-1") //clickunk7
/* 139 */ I(Proc.Effect)
/* 140 */ I(Proc.Type)
/* 141 */ I(Proc.Level2)
/* 142 */ I(Proc.Level)
/* 143 */ C("0") //procunk1 (prolly MaxCharges)
/* 143 */ C("0") //procunk2 (prolly CastTime)
/* 143 */ C("0") //procunk3 (prolly RecastDelay)
/* 143 */ C("0") //procunk4 (prolly RecastType)
/* 062 */ I(ProcRate)
/* 143 */ C("") //procunk6
/* 143 */ C("-1") //procunk7
/* 144 */ I(Worn.Effect)
/* 145 */ I(Worn.Type)
/* 146 */ I(Worn.Level2)
/* 147 */ I(Worn.Level)
/* 143 */ C("0") //wornunk1 (prolly MaxCharges)
/* 143 */ C("0") //wornunk2 (prolly CastTime)
/* 143 */ C("0") //wornunk3 (prolly RecastDelay)
/* 143 */ C("0") //wornunk4 (prolly RecastType)
/* 143 */ C("0") //wornunk5 (prolly ProcRate)
/* 143 */ C("") //wornunk6
/* 143 */ C("-1") //wornunk7
/* 149 */ I(Focus.Effect)
/* 150 */ I(Focus.Type)
/* 151 */ I(Focus.Level2)
/* 152 */ I(Focus.Level)
/* 143 */ C("0") //focusunk1 (prolly MaxCharges)
/* 143 */ C("0") //focusunk2 (prolly CastTime)
/* 143 */ C("0") //focusunk3 (prolly RecastDelay)
/* 143 */ C("0") //focusunk4 (prolly RecastType)
/* 143 */ C("0") //focusunk5 (prolly ProcRate)
/* 143 */ C("") //focusunk6
/* 143 */ C("-1") //focusunk7
/* 154 */ I(Scroll.Effect)
/* 155 */ I(Scroll.Type)
/* 156 */ I(Scroll.Level2)
/* 157 */ I(Scroll.Level)
/* 143 */ C("0") //scrollunk1 (prolly MaxCharges)
/* 143 */ C("0") //scrollunk2 (prolly CastTime)
/* 143 */ C("0") //scrollunk3 (prolly RecastDelay)
/* 143 */ C("0") //scrollunk4 (prolly RecastType)
/* 143 */ C("0") //scrollunk5 (prolly ProcRate)
/* 143 */ C("") //scrollunk6
/* 143 */ C("-1") //scrollunk7
/* 193 */ C("0") //Power Source Capacity
/* 194 */ C("0") //purity
#endif
#undef I
#undef C
#undef S
#undef F
+173
View File
@@ -0,0 +1,173 @@
// out-going packets that require an ENCODE translation:
// Begin RoF2 Encodes
// incoming packets that require a DECODE translation:
// Begin RoF2 Decodes
// End RoF2 Encodes/Decodes
// These require Encodes/Decodes for RoF, so they do for RoF2 as well
// Begin RoF Encodes
E(OP_Action)
E(OP_AdventureMerchantSell)
E(OP_AltCurrency)
E(OP_AltCurrencySell)
E(OP_Animation)
E(OP_ApplyPoison)
E(OP_AugmentInfo)
E(OP_Barter)
E(OP_BazaarSearch)
E(OP_BeginCast)
E(OP_BlockedBuffs)
E(OP_Buff)
E(OP_BuffCreate)
E(OP_CancelTrade)
E(OP_CastSpell)
E(OP_ChannelMessage)
E(OP_CharInventory)
E(OP_ClickObjectAction)
E(OP_ClientUpdate)
E(OP_Consider)
E(OP_Damage)
E(OP_DeleteCharge)
E(OP_DeleteItem)
E(OP_DeleteSpawn)
E(OP_DisciplineUpdate)
E(OP_DzCompass)
E(OP_DzExpeditionEndsWarning)
E(OP_DzExpeditionInfo)
E(OP_DzExpeditionList)
E(OP_DzJoinExpeditionConfirm)
E(OP_DzLeaderStatus)
E(OP_DzMemberList)
E(OP_ExpansionInfo)
E(OP_GMLastName)
E(OP_GMTrainSkillConfirm)
E(OP_GroundSpawn)
E(OP_GroupCancelInvite)
E(OP_GroupFollow)
E(OP_GroupFollow2)
E(OP_GroupInvite)
E(OP_GroupUpdate)
E(OP_GuildMemberList)
E(OP_GuildMemberUpdate)
E(OP_GuildsList)
E(OP_HPUpdate)
E(OP_Illusion)
E(OP_InspectBuffs)
E(OP_InspectRequest)
E(OP_InterruptCast)
E(OP_ItemLinkResponse)
E(OP_ItemPacket)
E(OP_ItemVerifyReply)
E(OP_LeadershipExpUpdate)
E(OP_LogServer)
E(OP_LootItem)
E(OP_ManaChange)
E(OP_MercenaryDataResponse)
E(OP_MercenaryDataUpdate)
E(OP_MoveItem)
E(OP_NewSpawn)
E(OP_NewZone)
E(OP_OnLevelMessage)
//E(OP_OpenNewTasksWindow)
E(OP_PetBuffWindow)
E(OP_PlayerProfile)
E(OP_RaidJoin)
E(OP_RaidUpdate)
E(OP_ReadBook)
E(OP_RecipeAutoCombine)
E(OP_RemoveBlockedBuffs)
E(OP_RequestClientZoneChange)
E(OP_RespondAA)
E(OP_RezzRequest)
E(OP_SendAATable)
E(OP_SendCharInfo)
E(OP_SendMembership)
E(OP_SendZonepoints)
E(OP_SetGuildRank)
E(OP_ShopPlayerBuy)
E(OP_ShopPlayerSell)
E(OP_ShopRequest)
E(OP_SkillUpdate)
E(OP_SomeItemPacketMaybe)
E(OP_SpawnAppearance)
E(OP_SpawnDoor)
E(OP_Stun)
E(OP_TargetBuffs)
E(OP_TaskDescription)
E(OP_TaskHistoryReply)
E(OP_Track)
E(OP_Trader)
E(OP_TraderBuy)
E(OP_TributeInfo)
E(OP_TributeItem)
E(OP_VetRewardsAvaliable)
E(OP_WearChange)
E(OP_WhoAllResponse)
E(OP_ZoneChange)
E(OP_ZoneEntry)
E(OP_ZonePlayerToBind)
E(OP_ZoneServerInfo)
E(OP_ZoneSpawns)
// Begin RoF Decodes
D(OP_AdventureMerchantSell)
D(OP_AltCurrencySell)
D(OP_AltCurrencySellSelection)
D(OP_ApplyPoison)
D(OP_AugmentInfo)
D(OP_AugmentItem)
D(OP_BazaarSearch)
D(OP_BlockedBuffs)
D(OP_Buff)
D(OP_BuffRemoveRequest)
D(OP_CastSpell)
D(OP_ChannelMessage)
D(OP_CharacterCreate)
D(OP_ClientUpdate)
D(OP_Consider)
D(OP_ConsiderCorpse)
D(OP_Consume)
D(OP_Damage)
D(OP_DeleteItem)
D(OP_EnvDamage)
D(OP_FaceChange)
D(OP_FindPersonRequest)
D(OP_GMLastName)
D(OP_GroupCancelInvite)
D(OP_GroupDisband)
D(OP_GroupFollow)
D(OP_GroupFollow2)
D(OP_GroupInvite)
D(OP_GroupInvite2)
D(OP_GuildDemote)
D(OP_GuildRemove)
D(OP_GuildStatus)
D(OP_InspectRequest)
D(OP_ItemLinkClick)
D(OP_ItemVerifyRequest)
D(OP_LoadSpellSet)
D(OP_LootItem)
D(OP_MoveItem)
D(OP_PetCommands)
D(OP_RaidInvite)
D(OP_ReadBook)
D(OP_RecipeAutoCombine)
D(OP_RemoveBlockedBuffs)
D(OP_RezzAnswer)
D(OP_Save)
D(OP_SetServerFilter)
D(OP_ShopPlayerBuy)
D(OP_ShopPlayerSell)
D(OP_ShopRequest)
D(OP_Trader)
D(OP_TraderBuy)
D(OP_TradeSkillCombine)
D(OP_TributeItem)
D(OP_WhoAllRequest)
D(OP_ZoneChange)
D(OP_ZoneEntry)
// End RoF Encodes/Decodes
#undef E
#undef D
File diff suppressed because it is too large Load Diff