Code: Select all
# '035F' => ['party_join_request_by_name', 'a24', [qw(partyName)]],
$name = substr ($name, 0, 24) if 24 < length $name;
$name .= "\x00" x (24 - length $name);
Moderators: Moderators, Developers

Code: Select all
# '035F' => ['party_join_request_by_name', 'a24', [qw(partyName)]],
$name = substr ($name, 0, 24) if 24 < length $name;
$name .= "\x00" x (24 - length $name);


035F is the correct packet?EternalHarvest wrote:Just use Z24, like it's used in other pack strings.Code: Select all
# '035F' => ['party_join_request_by_name', 'a24', [qw(partyName)]], $name = substr ($name, 0, 24) if 24 < length $name; $name .= "\x00" x (24 - length $name);
 
														
0802 is PACKET_CZ_PARTY_BOOKING_REQ_REGISTERROX_Leopardo wrote:035F is the correct packet?EternalHarvest wrote:Just use Z24, like it's used in other pack strings.Code: Select all
# '035F' => ['party_join_request_by_name', 'a24', [qw(partyName)]], $name = substr ($name, 0, 24) if 24 < length $name; $name .= "\x00" x (24 - length $name);
I think that is 0802, someone tested it??
Code: Select all
// packet: 0x2c4
// len: 26
struct PACKET_CZ_PARTY_JOIN_REQ {
  /* this+0x0 */ short PacketType
  /* this+0x2 */ char characterName[24]
} Code: Select all
// packet: 0x2c5
// len: 30
struct PACKET_ZC_PARTY_JOIN_REQ_ACK {
  /* this+0x0 */ short PacketType
  /* this+0x2 */ char characterName[24]
  /* this+0x1a */ enum PACKET_ZC_PARTY_JOIN_REQ_ACK::enumAnswer answer // len 4
  /*
    ANSWER_ALREADY_OTHERGROUPM =  0x0,
    ANSWER_MEMBER_OVERSIZE =  0x3,
    ANSWER_JOIN_ACCEPT =  0x2,
    ANSWER_JOIN_REFUSE =  0x1,
    ANSWER_DUPLICATE =  0x4,
    ANSWER_JOINMSG_REFUSE =  0x5,
    ANSWER_UNKNOWN_ERROR =  0x6,
    ANSWER_UNKNOWN_CHARACTER =  0x7,
    ANSWER_INVALID_MAPPROPERTY =  0x8
  */
} 
