Mod Tools
These are only sent to / received from users with staff permissions.
C→S 31 - ModtoolPreferences
Nitro:
MODTOOL_PREFERENCESNote: No Arcturus handler - Nitro only. Source:ModToolPreferencesComposer
| Field | Type | Notes |
|---|---|---|
| k | int | Preference value 1 |
| _arg_2 | int | Preference value 2 |
| _arg_3 | int | Preference value 3 |
| _arg_4 | int | Preference value 4 |
Requests the current moderator tool window preferences (position, size).
C→S 3295 - ModToolRequestUserInfo
Nitro:
MOD_TOOL_USER_INFO- Naming convention only. Source:ModToolRequestUserInfoEvent,GetModeratorUserInfoMessageComposer
Requests account and moderation history information for a specific user by account ID.
Body: (empty)
C→S 707 - ModToolRequestRoomInfo
Nitro:
MODTOOL_REQUEST_ROOM_INFOSource:
ModToolRequestRoomInfoEvent,GetModeratorRoomInfoMessageComposer
| Field | Type | Notes |
|---|---|---|
| roomId | int | ID of the room to fetch info for |
Requests room information for the mod tool panel (occupants, owner, name, tags).
C→S 211 - ModToolRequestIssueChatlog
Nitro:
GET_CFH_CHATLOGSource:
ModToolRequestIssueChatlogEvent,GetCfhChatlogMessageComposer
| Field | Type | Notes |
|---|---|---|
| ticketId | int | ID of the CFH ticket whose chatlog to retrieve |
Requests the chatlog associated with a specific CFH issue.
C→S 1391 - ModToolRequestUserChatlog
Nitro:
MODTOOL_REQUEST_USER_CHATLOGSource:
ModToolRequestUserChatlogEvent,GetUserChatlogMessageComposer
| Field | Type | Notes |
|---|---|---|
| userId | int | Account ID of the user whose chatlog to retrieve |
Requests the recent chat history for a specific user across rooms.
C→S 2587 - ModToolRequestRoomChatlog
Nitro:
MODTOOL_REQUEST_ROOM_CHATLOGSource:
ModToolRequestRoomChatlogEvent,GetRoomChatlogMessageComposer
| Field | Type | Notes |
|---|---|---|
| unknown | int | Read but ignored (padding) |
| roomId | int | ID of the room whose chatlog to retrieve |
Requests the current room's chat history for a specific room ID.
C→S 3526 - ModToolRequestRoomVisits
Nitro:
MODTOOL_REQUEST_USER_ROOMSSource:
ModToolRequestRoomVisitsEvent,GetRoomVisitsMessageComposer
| Field | Type | Notes |
|---|---|---|
| userId | int | Account ID of the user whose room visit history to retrieve |
Requests the recent room visit history for a specific user.
C→S 15 - ModToolPickTicket
Nitro:
PICK_ISSUESSource:
ModToolPickTicketEvent,PickIssuesMessageComposer
| Field | Type | Notes |
|---|---|---|
| unknown | int | Read but ignored (padding) |
| ticketId | int | ID of the CFH ticket to pick up |
Claims (picks up) a CFH issue ticket for the moderator to handle.
C→S 1572 - ModToolReleaseTicket
Nitro:
RELEASE_ISSUESSource:
ModToolReleaseTicketEvent,ReleaseIssuesMessageComposer
| Field | Type | Notes |
|---|---|---|
| count | int | Number of ticket IDs that follow |
| ticketIds[] | int[] | Ticket IDs to release |
Releases a CFH issue ticket back to the pool.
C→S 2067 - ModToolCloseTicket
Nitro:
CLOSE_ISSUESSource:
ModToolCloseTicketEvent,CloseIssuesMessageComposer
| Field | Type | Notes |
|---|---|---|
| state | int | Resolution state |
| unknown | int | Unknown purpose |
| ticketId | int | ID of the ticket to close |
Closes a CFH issue ticket with a selected resolution.
C→S 1392 - ModToolIssueChangeTopic
Nitro:
MODTOOL_SANCTIONSource:
ModToolIssueChangeTopicEvent,ModToolSanctionComposer
| Field | Type | Notes |
|---|---|---|
| ticketId | int | ID of the ticket |
| unknownInt | int | Unknown purpose |
| categoryId | int | New CFH category ID |
Changes the category/topic of an open CFH issue.
C→S 2717 - ModToolIssueDefaultSanction
Nitro:
CLOSE_ISSUE_DEFAULT_ACTIONSource:
ModToolIssueDefaultSanctionEvent,CloseIssueDefaultActionMessageComposer
| Field | Type | Notes |
|---|---|---|
| issueId | int | ID of the issue to close with default sanction |
| unknown | int | Unknown purpose |
| category | int | CFH category ID |
Applies the default sanction for the issue type to the reported user.
C→S 1840 - ModToolAlert
Nitro:
MODTOOL_ALERTEVENT- Naming convention only. Source:ModToolAlertEvent,ModMessageMessageComposer
Sends a moderator alert message to a specific user by account ID.
Body:
message: string
C→S 229 - ModToolSanctionAlert
Nitro:
MODTOOL_SANCTION_ALERTSource:
ModToolSanctionAlertEvent,ModAlertMessageComposer
| Field | Type | Notes |
|---|---|---|
| message | string | Alert message to send to the user |
Sends a moderation alert message to a user without issuing a ban or mute.
C→S 3842 - ModToolRoomAlert
Nitro:
MODTOOL_ROOM_ALERTSource:
ModToolRoomAlertEvent,ModeratorActionMessageComposer
| Field | Type | Notes |
|---|---|---|
| message | string | Alert message to broadcast to the entire room |
Sends a moderation alert message to all users in a specific room.
C→S 1945 - ModToolSanctionMute
Nitro:
MODTOOL_SANCTION_MUTESource:
ModToolSanctionMuteEvent,ModMuteMessageComposer
| Field | Type | Notes |
|---|---|---|
| message | string | Reason for the mute |
Mutes a user for a specified duration as a moderation action.
C→S 2766 - ModToolSanctionBan
Nitro:
MODTOOL_SANCTION_BANSource:
ModToolSanctionBanEvent,ModBanMessageComposer
| Field | Type | Notes |
|---|---|---|
| message | string | Ban reason message |
| unknown | boolean | Unknown flag |
Bans a user (by account or IP) for a specified duration.
C→S 3742 - ModToolSanctionTradeLock
Nitro:
MODTOOL_SANCTION_TRADELOCKSource:
ModToolSanctionTradeLockEvent,ModTradingLockMessageComposer
| Field | Type | Notes |
|---|---|---|
| userId | int | Account ID of the user to trade-lock |
| message | string | Reason for the trade lock |
| duration | int | Lock duration (likely in hours or days) |
| cfhTopic | int | CFH topic ID for logging |
Applies a trade lock to a user as a moderation sanction.
C→S 2582 - ModToolKick
Nitro:
MODTOOL_SANCTION_KICKSource:
ModToolKickEvent,ModKickMessageComposer
| Field | Type | Notes |
|---|---|---|
| userId | int | Account ID of the user to kick |
| reason | string | Kick reason message |
Kicks a user from their current room.
C→S 3260 - ModToolChangeRoomSettings
Nitro:
MODTOOL_CHANGE_ROOM_SETTINGSSource:
ModToolChangeRoomSettingsEvent,ModerateRoomMessageComposer
| Field | Type | Notes |
|---|---|---|
| roomId | int | ID of the room to modify |
| lockDoor | int | 1 = lock door, 0 = leave |
| changeTitle | int | 1 = change title, 0 = leave |
| kickUsers | int | 1 = kick all users, 0 = leave |
Modifies room settings from the mod tool: lock door, change title, or kick all users.
C→S 3267 - RequestReportRoom
Nitro:
GET_PENDING_CALLS_FOR_HELPSource:
RequestReportRoomEvent,GetPendingCallsForHelpMessageComposer
| Field | Type | Notes |
|---|---|---|
| (empty) | - | No body fields read |
Notes: Requests the current pending CFH issue list for the mod tool panel.
Requests the list of pending CFH calls for the mod tool.
C→S 1681 - DefaultSanction
Nitro:
DEFAULT_SANCTIONNote: No Arcturus handler - Nitro only. Source:DefaultSanctionMessageComposer
| Field | Type | Notes |
|---|---|---|
| k | int | User ID of the sanctioned user |
| _arg_2 | int | Sanction type code |
| _arg_3 | string | Reason / comment string |
| _arg_4 | int | (optional) Issue ID; omitted when equal to ModBanMessageComposer.NO_ISSUE_ID |
Applies a default sanction to a user (Nitro-only flow). Nitro-only; no Arcturus handler.
C→S 3605 - DeletePendingCallsForHelp
Nitro:
DELETE_PENDING_CALLS_FOR_HELPNote: No Arcturus handler - Nitro only. Source:DeletePendingCallsForHelpMessageComposer
Body: (empty)
Requests deletion of all pending CFH (Call for Help) submissions. No parameters.
Requests deletion of all pending Call-for-Help submissions by the current user. Nitro-only.
S→C 2696 - ModTool (staff panel initialization)
Source:
ModToolComposer,ModeratorInitMessageEvent
Initialises the moderator tool panel on login, delivering the moderator's ticket statistics (total, resolved, abusive count and percentage).
Body:
ticketCount: int
ticketResolved: int
abusiveCount: int
S→C 325 - CfhTopicsMessage
Nitro:
CFH_TOPICSSource:
CfhTopicsMessageComposer,CfhTopicsInitEvent
| Field | Type | Notes |
|---|---|---|
| categoryCount | int | Number of CFH categories |
| categories[] | repeated | Per category: name:string, topicCount:int, topics[]: (name:string, id:int, action:string) |
Delivers the CFH category and topic tree used to populate the report dialog.
S→C 2866 - ModToolUserInfo
Source:
ModToolUserInfoComposer,ModeratorUserInfoEvent
Delivers account details for a user in the mod tool: registration date, last access, CFH history, trade lock status, and email.
Body:
userId: int
username: string
look: string
registrationDate: int Unix timestamp
lastAccess: int
online: boolean
cfhCount: int
abuseCfhCount: int
tradingLocked: boolean
tradingLockExpiry: string
email: string
S→C 1333 - ModToolRoomInfo
Nitro:
MODTOOL_ROOM_INFOSource:
ModToolRoomInfoComposer,ModeratorRoomInfoEvent
| Field | Type | Notes |
|---|---|---|
| roomId | int | ID of the room |
| occupantCount | int | Current number of users in room |
| ownerOnline | boolean | Whether the room owner is currently in the room |
| ownerId | int | Account ID of the room owner |
| ownerName | string | Username of the room owner |
| unknown | boolean | Always true |
| roomName | string | Room name |
| description | string | Room description |
| tagCount | int | Number of room tags |
| tags[] | string[] | Room tags |
Delivers room information for the mod tool: occupant count, owner, name, description, tags.
S→C 1752 - ModToolUserRoomVisits
Nitro:
MODTOOL_VISITED_ROOMS_USERSource:
ModToolUserRoomVisitsComposer,RoomVisitsEvent
| Field | Type | Notes |
|---|---|---|
| userId | int | Account ID of the user |
| username | string | Username |
| visitCount | int | Number of room visit entries |
| visits[] | repeated | Per visit: roomId:int, roomName:string, hour:int, minute:int |
Delivers a user's recent room visit history for the mod tool.
S→C 607 - ModToolIssueChatlog
Nitro:
CFH_CHATLOGSource:
ModToolIssueChatlogComposer,CfhChatlogEvent
| Field | Type | Notes |
|---|---|---|
| issueId | int | ID of the CFH issue |
| senderId | int | Account ID of the reporter |
| reportedId | int | Account ID of the reported user |
| roomId | int | Room ID where the incident occurred |
| reportType | byte | Type: 1=user, 2=room, 3=forum comment |
| type-specific header | varies | For user: senderId:short(1)+int; for forum: groupId+threadId+commentId; for photo: roomName+photoItemId |
| chatlogCount | short | Number of chat lines |
| chatLines[] | repeated | Per line: timestamp:string, userId:int, username:string, message:string, unknown:boolean(false) |
Notes: The header section after
reportTypediffers significantly based on report type - this is a significant discrepancy between report types that Nitro must handle.
Delivers the chatlog associated with a CFH issue, including reporter, reported user, and chat lines.
S→C 3377 - ModToolUserChatlog
Nitro:
MODTOOL_USER_CHATLOGSource:
ModToolUserChatlogComposer,UserChatlogEvent
| Field | Type | Notes |
|---|---|---|
| userId | int | Account ID of the user |
| username | string | Username |
| roomCount | int | Number of room visit blocks |
| rooms[] | repeated | Per room: metadata header (roomName:string, roomId:int via TLV shorts), chatCount:short, chatLines[]: (timestamp:string, userId:int, username:string, message:string, unknown:boolean) |
Notes: Uses a TLV (type-length-value) encoding for room metadata: byte(1), short(2), string("roomName"), byte(2), string(roomName), string("roomId"), byte(1), int(roomId).
Delivers a user's recent cross-room chat history for the mod tool.
S→C 3434 - ModToolRoomChatlog
Nitro:
MODTOOL_ROOM_CHATLOGSource:
ModToolRoomChatlogComposer,RoomChatlogEvent
| Field | Type | Notes |
|---|---|---|
| metaByte | byte | Always 1 |
| keyCount | short | Always 2 |
| key1 | string | "roomName" |
| type1 | byte | 2 (string type) |
| value1 | string | Actual room name |
| key2 | string | "roomId" |
| type2 | byte | 1 (int type) |
| value2 | int | Room ID |
| chatCount | short | Number of chat lines |
| chatLines[] | repeated | Per line: timestamp:string, userId:int, username:string, message:string, unknown:boolean(false) |
Notes: Same TLV metadata encoding as
MODTOOL_USER_CHATLOG.
Delivers the current room's chat history for the mod tool.
S→C 3192 - ModToolIssueHandled
Nitro:
ISSUE_DELETEDSource:
ModToolComposerOne,IssueDeletedMessageEvent
| Field | Type | Notes |
|---|---|---|
| code | int | Result code |
| message | string | Status message |
Notifies the moderator that an issue has been handled (picked/closed by another mod or auto-resolved).
S→C 2030 - ModToolIssueResponseAlert
Nitro:
MODERATOR_MESSAGESource:
StaffAlertWithLinkComposer,ModeratorMessageEvent
| Field | Type | Notes |
|---|---|---|
| message | string | The moderator's response message shown to the user |
Delivers a moderator's text response message to a user who filed a CFH.
S→C 3609 - ReportRoomForm
Nitro:
ISSUE_INFOSource:
ModToolIssueInfoComposer,IssueInfoMessageEvent
| Field | Type | Notes |
|---|---|---|
| pendingCount | int | Number of pending CFH issues |
| issues[] | repeated | Per issue: id:string, timestamp:string, message:string |
Delivers the pending CFH issue list for the mod tool report panel.
S→C 77 - CfhPendingCallsDeleted
Nitro:
CFH_PENDING_CALLS_DELETEDNote: No Arcturus composer - Nitro only. Source:UnknownHelperComposer,CallForHelpPendingCallsDeletedMessageEvent
(no Arcturus composer)
Sent to clear the pending CFH (Call For Help) calls list on the client.
Confirms that all pending CFH calls have been cleared from the client's list. Nitro-only.
Body: (empty)
S→C 1121 - CfhPendingCalls
Nitro:
CFH_PENDING_CALLSNote: No Arcturus composer - Nitro only. Source:ReportRoomFormComposer,CallForHelpPendingCallsMessageEvent
(no Arcturus composer)
Delivers the full list of pending CFH (Call For Help) calls.
| Field | Type | Notes |
|---|---|---|
| count | int | Number of pending call entries |
| [count × call] | PendingCall | Pending call data (issueId, type, reporter, roomId, etc.) |
Delivers the full list of pending CFH calls. Nitro-only; no Arcturus composer.
S→C 934 - IssueCloseNotification
Nitro:
ISSUE_CLOSE_NOTIFICATIONNote: No Arcturus composer - Nitro only. Source:ModToolIssueHandledComposer,IssueCloseNotificationMessageEvent
| Field | Type | Notes |
|---|---|---|
| closeReason | int | Reason code for why the ticket was closed |
| messageText | string | Message text shown to the user |
Notifies the user that their CFH ticket was closed, with reason and message text. Nitro-only.
S→C 3150 - IssuePickFailed
Nitro:
ISSUE_PICK_FAILEDNote: No Arcturus composer - Nitro only. Source:ModToolIssueUpdateComposer,IssuePickFailedMessageEvent
(no Arcturus composer)
Sent when picking an issue failed.
Notifies the client that picking (claiming) a moderation issue failed. Nitro-only.
Body: (empty)
S→C 3635 - CfhResultMessage
Nitro:
CFH_RESULT_MESSAGENote: No Arcturus composer - Nitro only. Source:ModToolReportReceivedAlertComposer,CallForHelpResultMessageEvent
(no Arcturus composer)
CFH result message. Body is parsed by
CallForHelpReplyMessageEvent.
Delivers the resolution message for a CFH call (e.g. action taken or dismissed). Nitro-only.
Body: (empty)
S→C 2782 - CfhSanction
Nitro:
CFH_SANCTIONNote: No Arcturus composer - Nitro only. Source:ModToolSanctionDataComposer,CfhSanctionMessageEvent
| Field | Type | Notes |
|---|---|---|
| issueId | int | CFH issue ID |
| accountId | int | Account ID of the sanctioned user |
| sanctionType.sanctionCode | string | Sanction code (e.g. "MUTE") |
| sanctionType.lengthHours | int | Sanction length in hours |
| sanctionType.muteType | string | Mute type string |
| (more CfhSanctionTypeData fields) | - | Parsed by CfhSanctionMessageParser |
Delivers CFH sanction data (type, duration, mute type) for a sanctioned user. Nitro-only.
S→C 1576 - ModeratorToolPreferences
Nitro:
MODERATOR_TOOL_PREFERENCESNote: No Arcturus composer - Nitro only. Source:ModToolIssueHandlerDimensionsComposer,ModeratorToolPreferencesEvent
(no Arcturus composer)
| Field | Type | Notes |
|---|---|---|
| windowX | int | Mod tool window X position |
| windowY | int | Mod tool window Y position |
| windowWidth | int | Mod tool window width |
| windowHeight | int | Mod tool window height |
Delivers saved mod tool window position and size preferences. Nitro-only.
S→C 1651 - ModerationReportDisabled
Nitro:
MODERATION_REPORT_DISABLEDNote: No Arcturus composer - Nitro only. Source:HelperRequestDisabledComposer,CallForHelpDisabledNotifyMessageEvent
(no Arcturus composer)
Sent to inform the client that moderation/reporting is disabled.
Notifies the client that the moderation/reporting system is currently disabled. Nitro-only.
Body: (empty)
S→C 1683 - UserBanned
Nitro:
USER_BANNEDNote: No Arcturus composer - Nitro only. Source:StaffAlertAndOpenHabboWayComposer,UserBannedMessageEvent
(no Arcturus composer)
Sent when the user is banned from the hotel.
| Field | Type | Notes |
|---|---|---|
| message | string | Ban reason / message text shown to the user |
Delivers a ban notification to the banned user with the reason message. Nitro-only.
S→C 1890 - ModerationCaution
Nitro:
MODERATION_CAUTIONNote: No Arcturus composer - Nitro only. Source:StaffAlertWIthLinkAndOpenHabboWayComposer,ModeratorCautionEvent
(no Arcturus composer)
Caution message sent by a moderator.
| Field | Type | Notes |
|---|---|---|
| message | string | Caution message text |
| url | string | Optional URL (empty string if none) |
Delivers a moderator caution message with optional link URL. Nitro-only.
S→C 2221 - CfhSanctionStatus
Nitro:
CFH_SANCTION_STATUSNote: No Arcturus composer - Nitro only. Source:ModToolSanctionInfoComposer,SanctionStatusEvent
(no Arcturus composer)
CFH sanction status for the current user.
| Field | Type | Notes |
|---|---|---|
| isSanctionNew | boolean | Whether this is a newly applied sanction |
| isSanctionActive | boolean | Whether a sanction is currently active |
| sanctionName | string | Sanction type name |
| sanctionLengthHours | int | Duration of sanction in hours |
| _unknown | int | Unused int (always 0) |
| sanctionReason | string | Reason string |
| sanctionCreationTime | string | Creation date string |
| probationHoursLeft | int | Hours remaining in probation period |
| nextSanctionName | string | Next escalation sanction name |
| nextSanctionLengthHours | int | Next escalation duration |
| _unknown2 | int | Unused int |
| hasCustomMute | boolean | Whether a custom mute is applied |
| tradeLockExpiryTime | string | Trade lock expiry date (optional) |
Delivers the full active sanction status (type, duration, probation, trade lock) for the current user. Nitro-only.
S→C 2335 - ModeratorActionResult
Nitro:
MODERATOR_ACTION_RESULTNote: No Arcturus composer - Nitro only. Source:ModeratorActionResultMessageEvent
(no Arcturus composer)
| Field | Type | Notes |
|---|---|---|
| userId | int | Target user account ID |
| success | boolean | Whether the moderation action succeeded |
Reports the outcome of a moderator action (success/failure) back to the staff member. Nitro-only.