Difference between revisions of "ChatRoomList"
From SWGANH Wiki
(→Struct) |
(→Variable Descriptions) |
||
Line 43: | Line 43: | ||
Opcode = '''70DEB197''' | Opcode = '''70DEB197''' | ||
---- | ---- | ||
+ | |||
+ | * '''RoomListSize''': | ||
+ | :A list of ChatRoom Objects, this is the count of rooms to display. | ||
+ | |||
+ | * '''RoomID''': | ||
+ | :The unique ID number assigned to identify this Room. Generated on room creation. | ||
+ | |||
+ | * '''PrivateFlag''': | ||
+ | :An INTEGER flag used to mark the room as private or public. Private rooms require invitation from owner or moderators to enter. | ||
+ | ::00000001 = Private | ||
+ | ::00000000 = Public | ||
+ | |||
+ | * '''ModeratedFlag''': | ||
+ | :A BYTE flag used to mark the room as being moderated. | ||
+ | ::01 = Moderated | ||
+ | ::00 = Open | ||
+ | :Note: Moderated Rooms means that no one BUT moderators can talk. Its more like a "Muted" Room. You can still have moderators in an OPEN room. So avoid this confusion. | ||
+ | |||
+ | * '''RoomPathName''': | ||
+ | :The full ChatServer path and name for the room including the RoomName specified on creation. | ||
+ | :Example: "SWG.TestCenter.Chat.tcpa" | ||
+ | |||
+ | * '''Game''': | ||
+ | :The name of the game ("SWG") this player is on. | ||
+ | :Part of ChatAvatarId: 3 ASTRINGs representing the player on the ChatServer. "Game.Server.name" name is the lowercase of the first name for the player. | ||
+ | |||
+ | * '''Server''': | ||
+ | :The name of the server (Galaxy) this player is on. Part of ChatAvatarId object. | ||
+ | |||
+ | * '''Owner''': | ||
+ | :The firstname of the player who current owns the chatroom. Must be only firstname and lowercase. Part of ChatAvatarId object. | ||
+ | |||
+ | * '''Creator''': | ||
+ | :The firstname of the player who originally created the chatroom. Must be only firstname and lowercase. Part of ChatAvatarId object. | ||
+ | |||
+ | * '''RoomTitle''': | ||
+ | :The unicode string containing the Title of the chatroom to display. | ||
+ | :Note: This is the more descriptive text displayed and not the name used in the RoomPathName of the ChatServer. | ||
+ | |||
+ | * '''ModeratorList''': | ||
+ | :A list containing ChatAvatarId's of the moderators for this room. Note: This list does NOT get used to display the information. So it is better to send a blank (NULL/0) list and use the QueryRoom construct, since it actually gets displayed. This will save TONS of bandwidth. | ||
+ | |||
+ | * '''UserList''': | ||
+ | :A list containing ChatAvatarId's of the users current in the room. Note: This list does NOT get used to display the information. So it is better to send a blank (NULL/0) list and use the QueryRoom construct, since it actually gets displayed. This will save TONS of bandwidth. | ||
+ | |||
+ | * '''Additional Info''': | ||
+ | :Use to initialize the list, and then to add to the list. (There is no need to repeat the data) | ||
+ | |||
|valign=top| | |valign=top| | ||
Latest revision as of 01:41, 11 May 2008
Server Packet - CharRoomList (70DEB197)
SWGANH Wiki is a repository of Star Wars Galaxies Developer information. This site is only meant to be used by SWGANH Developer team.
StructSHORT: OperandCount INT: Opcode INT: RoomListSize { INT: RoomID INT: PrivateFlag BYTE: ModeratedFlag ASTRING: RoomPathName ASTRING: Game ASTRING: Server ASTRING: Owner ASTRING: Game ASTRING: Server ASTRING: Creator USTRING: RoomTitle INT: ModeratorListSize { ASTRING: Game ASTRING: Server ASTRING: ModeratorName } INT: UserListSize { ASTRING: Game ASTRING: Server ASTRING: UserName } } Variable DescriptionsOpperand_Count = 2 Opcode = 70DEB197
|
Tags
|
Sample Packet
02 00 97 B1 DE 70 // ChatRoomList 01 00 00 00 // Numberof_Chatrooms 5D 0A 72 02 // ChatRoom_ID 01 00 00 00 // NumberOf_RoomNames 00 // byte flag 27 00 // string count 53 57 47 2E 47 6F 72 61 74 68 // SWG.Gorath 2E 67 72 6F 75 70 2E // .group. 31 36 31 34 31 38 33 30 39 32 32 31 2E // 161418309221. 47 72 6F 75 70 43 68 61 74 // GroupChat 03 00 // string count 53 57 47 // SWG 06 00 // string count 47 6F 72 61 74 68 // Gorath 06 00 // string count 73 79 73 74 65 6D // system 03 00 // string count 53 57 47 // SWG 06 00 // string count 47 6F 72 61 74 68 // Gorath 06 00 // string count 73 79 73 74 65 6D // system 0C 00 00 00 // u-string count 31 00 36 00 31 00 34 00 31 00 38 00 33 00 30 // 161418309221 00 39 00 32 00 32 00 31 00 01 00 00 00 // moderator count 03 00 // string count 53 57 47 // SWG 06 00 // string count 47 6F 72 61 74 68 // Gorath 06 00 // string count 73 79 73 74 65 6D // system 02 00 00 00 // user count 03 00 // string count 53 57 47 // SWG 06 00 // string count 47 6F 72 61 74 68 // Gorath 08 00 // string count 70 61 74 72 69 7A 69 61 // patrizia 03 00 // string count 53 57 47 // SWG 06 00 // string count 47 6F 72 61 74 68 // Gorath 06 00 // string count 73 79 73 74 65 6D // system