Implement bazaar item identity and offline trading rework

This commit is contained in:
Vayle
2026-03-19 22:18:32 -04:00
90 changed files with 5379 additions and 2165 deletions
+34 -11
View File
@@ -229,10 +229,12 @@
#define ServerOP_LSPlayerJoinWorld 0x3007
#define ServerOP_LSPlayerZoneChange 0x3008
#define ServerOP_UsertoWorldReqLeg 0xAB00
#define ServerOP_UsertoWorldRespLeg 0xAB01
#define ServerOP_UsertoWorldReq 0xAB02
#define ServerOP_UsertoWorldResp 0xAB03
#define ServerOP_UsertoWorldReqLeg 0xAB00
#define ServerOP_UsertoWorldRespLeg 0xAB01
#define ServerOP_UsertoWorldReq 0xAB02
#define ServerOP_UsertoWorldResp 0xAB03
#define ServerOP_UsertoWorldCancelOfflineRequest 0xAB04
#define ServerOP_UsertoWorldCancelOfflineResponse 0xAB05
#define ServerOP_LauncherConnectInfo 0x3000
#define ServerOP_LauncherZoneRequest 0x3001
@@ -360,14 +362,24 @@ enum { QSG_LFGuild_PlayerMatches = 0, QSG_LFGuild_UpdatePlayerInfo, QSG_LFGuild_
enum {
UserToWorldStatusWorldUnavail = 0,
UserToWorldStatusSuccess = 1,
UserToWorldStatusSuspended = -1,
UserToWorldStatusBanned = -2,
UserToWorldStatusWorldAtCapacity = -3,
UserToWorldStatusAlreadyOnline = -4
UserToWorldStatusWorldUnavail = 0,
UserToWorldStatusSuccess = 1,
UserToWorldStatusSuspended = -1,
UserToWorldStatusBanned = -2,
UserToWorldStatusWorldAtCapacity = -3,
UserToWorldStatusAlreadyOnline = -4,
UserToWorldStatusOffilineTraderBuyer = -5
};
enum {
BazaarPurchaseFailed = 0,
BazaarPurchaseSuccess = 1,
BazaarPurchaseBuyerCompleteSendToSeller = 2,
BazaarPurchaseSellerCompleteSendToBuyer = 3,
BazaarPurchaseBuyerFailed = 4,
BazaarPurchaseBuyerSuccess = 5,
BazaarPurchaseTraderFailed = 6
};
/************ PACKET RELATED STRUCT ************/
class ServerPacket
{
@@ -559,6 +571,9 @@ struct ServerClientList_Struct {
uint8 LFGToLevel;
bool LFGMatchFilter;
char LFGComments[64];
bool trader;
bool buyer;
bool offline;
};
struct ServerClientListKeepAlive_Struct {
@@ -1022,6 +1037,7 @@ struct ServerGuildMemberUpdate_Struct {
char member_name[64];
uint32 zone_id;
uint32 last_seen;
uint32 offline_mode;
};
struct ServerGuildPermissionUpdate_Struct {
@@ -1776,8 +1792,15 @@ struct BazaarPurchaseMessaging_Struct {
uint32 item_aug_5;
uint32 item_aug_6;
uint32 buyer_id;
uint32 item_quantity_available;
uint32 item_quantity;
int16 item_charges;
uint32 id;
uint32 trader_zone_id;
uint32 trader_zone_instance_id;
uint32 buyer_zone_id;
uint32 buyer_zone_instance_id;
uint32 transaction_status;
bool offline_purchase;
};
#pragma pack(pop)