From b248fa17ede77ca1b26677a6f27faa05a0087d69 Mon Sep 17 00:00:00 2001 From: Casper Warden <216465704+casperwardensl@users.noreply.github.com> Date: Mon, 6 Jan 2020 12:10:40 +0000 Subject: [PATCH] Significant tidy-up. Update msg_template and add new ObjectAnimation message. Tidy up imports. Added buffer overrun check to the packet decoders since the message template doesn't seem to always correspond with what we receive (Specifically, MapBlockReply's new Size parameter) --- README.md | 2 +- lib/Bot.ts | 69 +- lib/LoginHandler.ts | 10 +- lib/classes/Agent.ts | 48 +- lib/classes/BVH.ts | 7 +- lib/classes/BVHJoint.ts | 8 +- lib/classes/BVHJointKeyframe.ts | 4 +- lib/classes/Caps.ts | 19 +- lib/classes/Circuit.ts | 40 +- lib/classes/ClientCommands.ts | 28 +- lib/classes/ClientEvents.ts | 52 +- lib/classes/Color4.ts | 4 +- lib/classes/Comms.ts | 63 +- lib/classes/EventQueueClient.ts | 27 +- lib/classes/GroupBan.ts | 2 +- lib/classes/GroupMember.ts | 4 +- lib/classes/GroupRole.ts | 4 +- lib/classes/Inventory.ts | 20 +- lib/classes/InventoryFolder.ts | 11 +- lib/classes/InventoryItem.ts | 9 +- lib/classes/LLWearable.ts | 6 +- lib/classes/LoginResponse.ts | 17 +- lib/classes/MapBlock.ts | 4 +- lib/classes/MessageBase.ts | 4 +- lib/classes/MessageClasses.ts | 6 +- lib/classes/ObjectStoreFull.ts | 48 +- lib/classes/ObjectStoreLite.ts | 72 +- lib/classes/Packet.ts | 10 +- lib/classes/ParticleSystem.ts | 11 +- lib/classes/Quaternion.ts | 5 +- lib/classes/Region.ts | 9 +- lib/classes/TextureEntry.ts | 8 +- lib/classes/TextureEntryFace.ts | 12 +- lib/classes/UUID.ts | 4 +- lib/classes/Utils.ts | 6 +- lib/classes/Vector2.ts | 4 +- lib/classes/Vector3.ts | 4 +- lib/classes/Vector4.ts | 4 +- lib/classes/Wearable.ts | 4 +- lib/classes/commands/AgentCommands.ts | 23 +- lib/classes/commands/AssetCommands.ts | 36 +- lib/classes/commands/CommandsBase.ts | 8 +- .../commands/CommunicationsCommands.ts | 24 +- lib/classes/commands/FriendCommands.ts | 64 +- lib/classes/commands/GridCommands.ts | 43 +- lib/classes/commands/GroupCommands.ts | 3 +- lib/classes/commands/InventoryCommands.ts | 19 +- lib/classes/commands/NetworkCommands.ts | 6 +- lib/classes/commands/ParcelCommands.ts | 19 +- lib/classes/commands/RegionCommands.ts | 70 +- lib/classes/commands/TeleportCommands.ts | 23 +- lib/classes/interfaces/IGameObjectData.ts | 36 +- lib/classes/interfaces/IObjectStore.ts | 6 +- lib/classes/interfaces/ITreeBoundingBox.ts | 4 +- lib/classes/messages/AbortXfer.ts | 8 +- lib/classes/messages/AcceptCallingCard.ts | 12 +- lib/classes/messages/AcceptFriendship.ts | 12 +- lib/classes/messages/ActivateGestures.ts | 12 +- lib/classes/messages/ActivateGroup.ts | 8 +- lib/classes/messages/AddCircuitCode.ts | 8 +- lib/classes/messages/AgentAlertMessage.ts | 8 +- lib/classes/messages/AgentAnimation.ts | 16 +- lib/classes/messages/AgentCachedTexture.ts | 12 +- .../messages/AgentCachedTextureResponse.ts | 12 +- lib/classes/messages/AgentDataUpdate.ts | 10 +- .../messages/AgentDataUpdateRequest.ts | 8 +- lib/classes/messages/AgentDropGroup.ts | 8 +- lib/classes/messages/AgentFOV.ts | 8 +- lib/classes/messages/AgentGroupDataUpdate.ts | 14 +- lib/classes/messages/AgentHeightWidth.ts | 8 +- lib/classes/messages/AgentIsNowWearing.ts | 12 +- lib/classes/messages/AgentMovementComplete.ts | 12 +- lib/classes/messages/AgentPause.ts | 8 +- lib/classes/messages/AgentQuitCopy.ts | 8 +- lib/classes/messages/AgentRequestSit.ts | 10 +- lib/classes/messages/AgentResume.ts | 8 +- lib/classes/messages/AgentSetAppearance.ts | 18 +- lib/classes/messages/AgentSit.ts | 8 +- lib/classes/messages/AgentThrottle.ts | 8 +- lib/classes/messages/AgentUpdate.ts | 12 +- lib/classes/messages/AgentWearablesRequest.ts | 8 +- lib/classes/messages/AgentWearablesUpdate.ts | 12 +- lib/classes/messages/AlertMessage.ts | 16 +- lib/classes/messages/AssetUploadComplete.ts | 8 +- lib/classes/messages/AssetUploadRequest.ts | 8 +- lib/classes/messages/AtomicPassObject.ts | 8 +- lib/classes/messages/AttachedSound.ts | 8 +- .../messages/AttachedSoundGainChange.ts | 8 +- lib/classes/messages/AvatarAnimation.ts | 20 +- lib/classes/messages/AvatarAppearance.ts | 22 +- lib/classes/messages/AvatarClassifiedReply.ts | 12 +- lib/classes/messages/AvatarGroupsReply.ts | 14 +- lib/classes/messages/AvatarInterestsReply.ts | 8 +- lib/classes/messages/AvatarInterestsUpdate.ts | 8 +- lib/classes/messages/AvatarNotesReply.ts | 8 +- lib/classes/messages/AvatarNotesUpdate.ts | 8 +- lib/classes/messages/AvatarPickerReply.ts | 12 +- lib/classes/messages/AvatarPickerRequest.ts | 8 +- .../messages/AvatarPickerRequestBackend.ts | 8 +- lib/classes/messages/AvatarPicksReply.ts | 12 +- lib/classes/messages/AvatarPropertiesReply.ts | 8 +- .../messages/AvatarPropertiesRequest.ts | 8 +- .../AvatarPropertiesRequestBackend.ts | 8 +- .../messages/AvatarPropertiesUpdate.ts | 8 +- lib/classes/messages/AvatarSitResponse.ts | 12 +- lib/classes/messages/AvatarTextureUpdate.ts | 16 +- lib/classes/messages/BulkUpdateInventory.ts | 16 +- lib/classes/messages/BuyObjectInventory.ts | 8 +- lib/classes/messages/CameraConstraint.ts | 8 +- lib/classes/messages/CancelAuction.ts | 12 +- .../messages/ChangeInventoryItemFlags.ts | 12 +- lib/classes/messages/ChangeUserRights.ts | 12 +- lib/classes/messages/ChatFromSimulator.ts | 10 +- lib/classes/messages/ChatFromViewer.ts | 8 +- lib/classes/messages/ChatPass.ts | 10 +- lib/classes/messages/CheckParcelAuctions.ts | 12 +- lib/classes/messages/CheckParcelSales.ts | 12 +- lib/classes/messages/ChildAgentAlive.ts | 10 +- lib/classes/messages/ChildAgentDying.ts | 8 +- .../messages/ChildAgentPositionUpdate.ts | 12 +- lib/classes/messages/ChildAgentUnknown.ts | 8 +- lib/classes/messages/ChildAgentUpdate.ts | 46 +- lib/classes/messages/ClassifiedDelete.ts | 8 +- lib/classes/messages/ClassifiedGodDelete.ts | 8 +- lib/classes/messages/ClassifiedInfoReply.ts | 10 +- lib/classes/messages/ClassifiedInfoRequest.ts | 8 +- lib/classes/messages/ClassifiedInfoUpdate.ts | 10 +- .../messages/ClearFollowCamProperties.ts | 8 +- lib/classes/messages/CloseCircuit.ts | 6 +- lib/classes/messages/CoarseLocationUpdate.ts | 16 +- lib/classes/messages/CompleteAgentMovement.ts | 8 +- lib/classes/messages/CompleteAuction.ts | 12 +- lib/classes/messages/CompletePingCheck.ts | 6 +- lib/classes/messages/ConfirmAuctionStart.ts | 8 +- .../messages/ConfirmEnableSimulator.ts | 8 +- lib/classes/messages/ConfirmXferPacket.ts | 8 +- .../messages/CopyInventoryFromNotecard.ts | 12 +- lib/classes/messages/CopyInventoryItem.ts | 12 +- lib/classes/messages/CreateGroupReply.ts | 8 +- lib/classes/messages/CreateGroupRequest.ts | 8 +- .../messages/CreateGroupRequestExtended.ts | 8 +- lib/classes/messages/CreateInventoryFolder.ts | 8 +- lib/classes/messages/CreateInventoryItem.ts | 8 +- .../messages/CreateLandmarkForEvent.ts | 8 +- .../messages/CreateNewOutfitAttachments.ts | 12 +- lib/classes/messages/CreateTrustedCircuit.ts | 8 +- lib/classes/messages/CrossedRegion.ts | 14 +- lib/classes/messages/DataHomeLocationReply.ts | 12 +- .../messages/DataHomeLocationRequest.ts | 8 +- lib/classes/messages/DataServerLogout.ts | 10 +- lib/classes/messages/DeRezAck.ts | 8 +- lib/classes/messages/DeRezObject.ts | 12 +- lib/classes/messages/DeactivateGestures.ts | 12 +- lib/classes/messages/DeclineCallingCard.ts | 8 +- lib/classes/messages/DeclineFriendship.ts | 8 +- lib/classes/messages/DenyTrustedCircuit.ts | 8 +- lib/classes/messages/DerezContainer.ts | 8 +- .../messages/DetachAttachmentIntoInv.ts | 8 +- lib/classes/messages/DirClassifiedQuery.ts | 8 +- .../messages/DirClassifiedQueryBackend.ts | 8 +- lib/classes/messages/DirClassifiedReply.ts | 16 +- lib/classes/messages/DirEventsReply.ts | 16 +- lib/classes/messages/DirFindQuery.ts | 8 +- lib/classes/messages/DirFindQueryBackend.ts | 8 +- lib/classes/messages/DirGroupsReply.ts | 12 +- lib/classes/messages/DirLandQuery.ts | 8 +- lib/classes/messages/DirLandQueryBackend.ts | 8 +- lib/classes/messages/DirLandReply.ts | 12 +- lib/classes/messages/DirPeopleReply.ts | 12 +- lib/classes/messages/DirPlacesQuery.ts | 8 +- lib/classes/messages/DirPlacesQueryBackend.ts | 8 +- lib/classes/messages/DirPlacesReply.ts | 20 +- lib/classes/messages/DirPopularQuery.ts | 8 +- .../messages/DirPopularQueryBackend.ts | 8 +- lib/classes/messages/DirPopularReply.ts | 12 +- lib/classes/messages/DisableSimulator.ts | 6 +- lib/classes/messages/EconomyData.ts | 6 +- lib/classes/messages/EconomyDataRequest.ts | 6 +- lib/classes/messages/EdgeDataPacket.ts | 6 +- lib/classes/messages/EjectGroupMemberReply.ts | 8 +- .../messages/EjectGroupMemberRequest.ts | 12 +- lib/classes/messages/EjectUser.ts | 8 +- lib/classes/messages/EmailMessageReply.ts | 8 +- lib/classes/messages/EmailMessageRequest.ts | 8 +- lib/classes/messages/EnableSimulator.ts | 10 +- lib/classes/messages/Error.ts | 8 +- lib/classes/messages/EstateCovenantReply.ts | 8 +- lib/classes/messages/EstateCovenantRequest.ts | 8 +- lib/classes/messages/EstateOwnerMessage.ts | 12 +- lib/classes/messages/EventGodDelete.ts | 8 +- lib/classes/messages/EventInfoReply.ts | 10 +- lib/classes/messages/EventInfoRequest.ts | 8 +- lib/classes/messages/EventLocationReply.ts | 10 +- lib/classes/messages/EventLocationRequest.ts | 8 +- .../messages/EventNotificationAddRequest.ts | 8 +- .../EventNotificationRemoveRequest.ts | 8 +- lib/classes/messages/FeatureDisabled.ts | 8 +- lib/classes/messages/FetchInventory.ts | 12 +- .../messages/FetchInventoryDescendents.ts | 8 +- lib/classes/messages/FetchInventoryReply.ts | 12 +- lib/classes/messages/FindAgent.ts | 14 +- lib/classes/messages/ForceObjectSelect.ts | 10 +- .../messages/ForceScriptControlRelease.ts | 8 +- lib/classes/messages/FormFriendship.ts | 8 +- lib/classes/messages/FreezeUser.ts | 8 +- lib/classes/messages/GenericMessage.ts | 12 +- lib/classes/messages/GetScriptRunning.ts | 8 +- lib/classes/messages/GodKickUser.ts | 8 +- lib/classes/messages/GodUpdateRegionInfo.ts | 14 +- lib/classes/messages/GodlikeMessage.ts | 12 +- lib/classes/messages/GrantGodlikePowers.ts | 8 +- lib/classes/messages/GrantUserRights.ts | 12 +- .../messages/GroupAccountDetailsReply.ts | 12 +- .../messages/GroupAccountDetailsRequest.ts | 8 +- .../messages/GroupAccountSummaryReply.ts | 8 +- .../messages/GroupAccountSummaryRequest.ts | 8 +- .../messages/GroupAccountTransactionsReply.ts | 12 +- .../GroupAccountTransactionsRequest.ts | 8 +- .../messages/GroupActiveProposalItemReply.ts | 12 +- .../messages/GroupActiveProposalsRequest.ts | 8 +- lib/classes/messages/GroupDataUpdate.ts | 14 +- lib/classes/messages/GroupMembersReply.ts | 14 +- lib/classes/messages/GroupMembersRequest.ts | 8 +- lib/classes/messages/GroupNoticeAdd.ts | 8 +- lib/classes/messages/GroupNoticeRequest.ts | 8 +- lib/classes/messages/GroupNoticesListReply.ts | 12 +- .../messages/GroupNoticesListRequest.ts | 8 +- lib/classes/messages/GroupProfileReply.ts | 10 +- lib/classes/messages/GroupProfileRequest.ts | 8 +- lib/classes/messages/GroupProposalBallot.ts | 8 +- lib/classes/messages/GroupRoleChanges.ts | 12 +- lib/classes/messages/GroupRoleDataReply.ts | 14 +- lib/classes/messages/GroupRoleDataRequest.ts | 8 +- lib/classes/messages/GroupRoleMembersReply.ts | 12 +- .../messages/GroupRoleMembersRequest.ts | 8 +- lib/classes/messages/GroupRoleUpdate.ts | 14 +- lib/classes/messages/GroupTitleUpdate.ts | 8 +- lib/classes/messages/GroupTitlesReply.ts | 12 +- lib/classes/messages/GroupTitlesRequest.ts | 8 +- .../messages/GroupVoteHistoryItemReply.ts | 12 +- .../messages/GroupVoteHistoryRequest.ts | 8 +- lib/classes/messages/HealthMessage.ts | 6 +- lib/classes/messages/ImageData.ts | 8 +- lib/classes/messages/ImageNotInDatabase.ts | 8 +- lib/classes/messages/ImagePacket.ts | 8 +- .../messages/ImprovedInstantMessage.ts | 10 +- .../messages/ImprovedTerseObjectUpdate.ts | 12 +- lib/classes/messages/InitiateDownload.ts | 8 +- lib/classes/messages/InternalScriptMail.ts | 8 +- .../messages/InventoryAssetResponse.ts | 8 +- lib/classes/messages/InventoryDescendents.ts | 16 +- lib/classes/messages/InviteGroupRequest.ts | 12 +- lib/classes/messages/InviteGroupResponse.ts | 8 +- lib/classes/messages/JoinGroupReply.ts | 8 +- lib/classes/messages/JoinGroupRequest.ts | 8 +- .../messages/JoinGroupRequestExtended.ts | 8 +- lib/classes/messages/KickUser.ts | 10 +- lib/classes/messages/KickUserAck.ts | 8 +- lib/classes/messages/KillChildAgents.ts | 8 +- lib/classes/messages/KillObject.ts | 10 +- lib/classes/messages/LandStatReply.ts | 12 +- lib/classes/messages/LandStatRequest.ts | 8 +- lib/classes/messages/LayerData.ts | 6 +- lib/classes/messages/LeaveGroupReply.ts | 8 +- lib/classes/messages/LeaveGroupRequest.ts | 8 +- lib/classes/messages/LinkInventoryItem.ts | 8 +- lib/classes/messages/LiveHelpGroupReply.ts | 8 +- lib/classes/messages/LiveHelpGroupRequest.ts | 8 +- lib/classes/messages/LoadURL.ts | 8 +- lib/classes/messages/LogDwellTime.ts | 8 +- .../messages/LogFailedMoneyTransaction.ts | 10 +- lib/classes/messages/LogParcelChanges.ts | 14 +- lib/classes/messages/LogTextMessage.ts | 12 +- lib/classes/messages/LogoutReply.ts | 12 +- lib/classes/messages/LogoutRequest.ts | 8 +- lib/classes/messages/MapBlockReply.ts | 52 +- lib/classes/messages/MapBlockRequest.ts | 8 +- lib/classes/messages/MapItemReply.ts | 12 +- lib/classes/messages/MapItemRequest.ts | 10 +- lib/classes/messages/MapLayerReply.ts | 12 +- lib/classes/messages/MapLayerRequest.ts | 8 +- lib/classes/messages/MapNameRequest.ts | 8 +- lib/classes/messages/MeanCollisionAlert.ts | 12 +- lib/classes/messages/MergeParcel.ts | 12 +- lib/classes/messages/ModifyLand.ts | 16 +- lib/classes/messages/MoneyBalanceReply.ts | 8 +- lib/classes/messages/MoneyBalanceRequest.ts | 8 +- lib/classes/messages/MoneyTransferBackend.ts | 8 +- lib/classes/messages/MoneyTransferRequest.ts | 8 +- lib/classes/messages/MoveInventoryFolder.ts | 12 +- lib/classes/messages/MoveInventoryItem.ts | 12 +- lib/classes/messages/MoveTaskInventory.ts | 8 +- lib/classes/messages/MultipleObjectUpdate.ts | 12 +- lib/classes/messages/MuteListRequest.ts | 8 +- lib/classes/messages/MuteListUpdate.ts | 8 +- lib/classes/messages/NameValuePair.ts | 12 +- .../messages/NearestLandingRegionReply.ts | 8 +- .../messages/NearestLandingRegionRequest.ts | 8 +- .../messages/NearestLandingRegionUpdated.ts | 8 +- lib/classes/messages/NeighborList.ts | 10 +- lib/classes/messages/NetTest.ts | 6 +- lib/classes/messages/ObjectAdd.ts | 12 +- lib/classes/messages/ObjectAnimation.ts | 80 + lib/classes/messages/ObjectAttach.ts | 14 +- lib/classes/messages/ObjectBuy.ts | 12 +- lib/classes/messages/ObjectCategory.ts | 12 +- lib/classes/messages/ObjectClickAction.ts | 12 +- lib/classes/messages/ObjectDeGrab.ts | 14 +- lib/classes/messages/ObjectDelete.ts | 12 +- lib/classes/messages/ObjectDelink.ts | 12 +- lib/classes/messages/ObjectDescription.ts | 12 +- lib/classes/messages/ObjectDeselect.ts | 12 +- lib/classes/messages/ObjectDetach.ts | 12 +- lib/classes/messages/ObjectDrop.ts | 12 +- lib/classes/messages/ObjectDuplicate.ts | 14 +- lib/classes/messages/ObjectDuplicateOnRay.ts | 14 +- lib/classes/messages/ObjectExportSelected.ts | 12 +- lib/classes/messages/ObjectExtraParams.ts | 12 +- lib/classes/messages/ObjectFlagUpdate.ts | 12 +- lib/classes/messages/ObjectGrab.ts | 14 +- lib/classes/messages/ObjectGrabUpdate.ts | 14 +- lib/classes/messages/ObjectGroup.ts | 12 +- lib/classes/messages/ObjectImage.ts | 12 +- lib/classes/messages/ObjectIncludeInSearch.ts | 12 +- lib/classes/messages/ObjectLink.ts | 12 +- lib/classes/messages/ObjectMaterial.ts | 12 +- lib/classes/messages/ObjectName.ts | 12 +- lib/classes/messages/ObjectOwner.ts | 12 +- lib/classes/messages/ObjectPermissions.ts | 12 +- lib/classes/messages/ObjectPosition.ts | 14 +- lib/classes/messages/ObjectProperties.ts | 14 +- .../messages/ObjectPropertiesFamily.ts | 8 +- lib/classes/messages/ObjectRotation.ts | 14 +- lib/classes/messages/ObjectSaleInfo.ts | 12 +- lib/classes/messages/ObjectScale.ts | 14 +- lib/classes/messages/ObjectSelect.ts | 12 +- lib/classes/messages/ObjectShape.ts | 12 +- lib/classes/messages/ObjectSpinStart.ts | 8 +- lib/classes/messages/ObjectSpinStop.ts | 8 +- lib/classes/messages/ObjectSpinUpdate.ts | 10 +- lib/classes/messages/ObjectUpdate.ts | 16 +- lib/classes/messages/ObjectUpdateCached.ts | 12 +- .../messages/ObjectUpdateCompressed.ts | 12 +- lib/classes/messages/OfferCallingCard.ts | 8 +- lib/classes/messages/OfflineNotification.ts | 12 +- lib/classes/messages/OnlineNotification.ts | 12 +- lib/classes/messages/OpenCircuit.ts | 8 +- lib/classes/messages/PacketAck.ts | 10 +- lib/classes/messages/ParcelAccessListReply.ts | 12 +- .../messages/ParcelAccessListRequest.ts | 8 +- .../messages/ParcelAccessListUpdate.ts | 12 +- lib/classes/messages/ParcelAuctions.ts | 12 +- lib/classes/messages/ParcelBuy.ts | 8 +- lib/classes/messages/ParcelBuyPass.ts | 8 +- lib/classes/messages/ParcelClaim.ts | 12 +- lib/classes/messages/ParcelDeedToGroup.ts | 8 +- lib/classes/messages/ParcelDisableObjects.ts | 16 +- lib/classes/messages/ParcelDivide.ts | 8 +- lib/classes/messages/ParcelDwellReply.ts | 8 +- lib/classes/messages/ParcelDwellRequest.ts | 8 +- lib/classes/messages/ParcelGodForceOwner.ts | 8 +- .../messages/ParcelGodMarkAsContent.ts | 8 +- lib/classes/messages/ParcelInfoReply.ts | 8 +- lib/classes/messages/ParcelInfoRequest.ts | 8 +- lib/classes/messages/ParcelJoin.ts | 8 +- .../messages/ParcelMediaCommandMessage.ts | 6 +- lib/classes/messages/ParcelMediaUpdate.ts | 8 +- .../messages/ParcelObjectOwnersReply.ts | 12 +- .../messages/ParcelObjectOwnersRequest.ts | 8 +- lib/classes/messages/ParcelOverlay.ts | 6 +- lib/classes/messages/ParcelProperties.ts | 10 +- .../messages/ParcelPropertiesRequest.ts | 8 +- .../messages/ParcelPropertiesRequestByID.ts | 8 +- .../messages/ParcelPropertiesUpdate.ts | 10 +- lib/classes/messages/ParcelReclaim.ts | 8 +- lib/classes/messages/ParcelRelease.ts | 8 +- lib/classes/messages/ParcelRename.ts | 12 +- lib/classes/messages/ParcelReturnObjects.ts | 16 +- lib/classes/messages/ParcelSales.ts | 12 +- lib/classes/messages/ParcelSelectObjects.ts | 12 +- .../messages/ParcelSetOtherCleanTime.ts | 8 +- lib/classes/messages/PayPriceReply.ts | 12 +- lib/classes/messages/PickDelete.ts | 8 +- lib/classes/messages/PickGodDelete.ts | 8 +- lib/classes/messages/PickInfoReply.ts | 10 +- lib/classes/messages/PickInfoUpdate.ts | 10 +- lib/classes/messages/PlacesQuery.ts | 8 +- lib/classes/messages/PlacesReply.ts | 12 +- lib/classes/messages/PreloadSound.ts | 12 +- .../messages/PurgeInventoryDescendents.ts | 8 +- lib/classes/messages/RebakeAvatarTextures.ts | 8 +- lib/classes/messages/Redo.ts | 12 +- lib/classes/messages/RegionHandleRequest.ts | 8 +- lib/classes/messages/RegionHandshake.ts | 14 +- lib/classes/messages/RegionHandshakeReply.ts | 8 +- .../messages/RegionIDAndHandleReply.ts | 10 +- lib/classes/messages/RegionInfo.ts | 14 +- .../messages/RegionPresenceRequestByHandle.ts | 12 +- .../RegionPresenceRequestByRegionID.ts | 12 +- .../messages/RegionPresenceResponse.ts | 16 +- lib/classes/messages/RemoveAttachment.ts | 8 +- lib/classes/messages/RemoveInventoryFolder.ts | 12 +- lib/classes/messages/RemoveInventoryItem.ts | 12 +- .../messages/RemoveInventoryObjects.ts | 16 +- lib/classes/messages/RemoveMuteListEntry.ts | 8 +- lib/classes/messages/RemoveNameValuePair.ts | 12 +- lib/classes/messages/RemoveParcel.ts | 12 +- lib/classes/messages/RemoveTaskInventory.ts | 8 +- lib/classes/messages/ReplyTaskInventory.ts | 8 +- lib/classes/messages/ReportAutosaveCrash.ts | 6 +- lib/classes/messages/RequestGodlikePowers.ts | 8 +- lib/classes/messages/RequestImage.ts | 12 +- lib/classes/messages/RequestInventoryAsset.ts | 8 +- .../messages/RequestMultipleObjects.ts | 12 +- .../messages/RequestObjectPropertiesFamily.ts | 8 +- lib/classes/messages/RequestParcelTransfer.ts | 8 +- lib/classes/messages/RequestPayPrice.ts | 8 +- lib/classes/messages/RequestRegionInfo.ts | 8 +- lib/classes/messages/RequestTaskInventory.ts | 8 +- lib/classes/messages/RequestTrustedCircuit.ts | 6 +- lib/classes/messages/RequestXfer.ts | 10 +- lib/classes/messages/RetrieveIMsExtended.ts | 8 +- .../messages/RetrieveInstantMessages.ts | 8 +- lib/classes/messages/RevokePermissions.ts | 8 +- .../messages/RezMultipleAttachmentsFromInv.ts | 12 +- lib/classes/messages/RezObject.ts | 10 +- lib/classes/messages/RezObjectFromNotecard.ts | 14 +- lib/classes/messages/RezRestoreToWorld.ts | 8 +- lib/classes/messages/RezScript.ts | 8 +- .../messages/RezSingleAttachmentFromInv.ts | 8 +- .../messages/RoutedMoneyBalanceReply.ts | 10 +- lib/classes/messages/RpcChannelReply.ts | 8 +- lib/classes/messages/RpcChannelRequest.ts | 8 +- lib/classes/messages/RpcScriptReplyInbound.ts | 8 +- .../messages/RpcScriptRequestInbound.ts | 8 +- .../RpcScriptRequestInboundForward.ts | 10 +- .../messages/SaveAssetIntoInventory.ts | 8 +- lib/classes/messages/ScriptAnswerYes.ts | 8 +- lib/classes/messages/ScriptControlChange.ts | 10 +- lib/classes/messages/ScriptDataReply.ts | 12 +- lib/classes/messages/ScriptDataRequest.ts | 12 +- lib/classes/messages/ScriptDialog.ts | 16 +- lib/classes/messages/ScriptDialogReply.ts | 8 +- .../messages/ScriptMailRegistration.ts | 8 +- lib/classes/messages/ScriptQuestion.ts | 8 +- lib/classes/messages/ScriptReset.ts | 8 +- lib/classes/messages/ScriptRunningReply.ts | 8 +- lib/classes/messages/ScriptSensorReply.ts | 16 +- lib/classes/messages/ScriptSensorRequest.ts | 14 +- lib/classes/messages/ScriptTeleportRequest.ts | 8 +- lib/classes/messages/SendPostcard.ts | 10 +- lib/classes/messages/SendXferPacket.ts | 8 +- lib/classes/messages/SetAlwaysRun.ts | 8 +- lib/classes/messages/SetCPURatio.ts | 6 +- .../messages/SetFollowCamProperties.ts | 12 +- lib/classes/messages/SetGroupAcceptNotices.ts | 8 +- lib/classes/messages/SetGroupContribution.ts | 8 +- lib/classes/messages/SetScriptRunning.ts | 8 +- .../messages/SetSimPresenceInDatabase.ts | 8 +- .../messages/SetSimStatusInDatabase.ts | 8 +- lib/classes/messages/SetStartLocation.ts | 12 +- .../messages/SetStartLocationRequest.ts | 10 +- lib/classes/messages/SimCrashed.ts | 12 +- lib/classes/messages/SimStats.ts | 16 +- lib/classes/messages/SimStatus.ts | 8 +- lib/classes/messages/SimWideDeletes.ts | 8 +- lib/classes/messages/SimulatorLoad.ts | 10 +- lib/classes/messages/SimulatorMapUpdate.ts | 6 +- .../messages/SimulatorPresentAtLocation.ts | 16 +- lib/classes/messages/SimulatorReady.ts | 10 +- lib/classes/messages/SimulatorSetMap.ts | 10 +- .../messages/SimulatorShutdownRequest.ts | 6 +- .../messages/SimulatorViewerTimeMessage.ts | 10 +- lib/classes/messages/SoundTrigger.ts | 12 +- lib/classes/messages/StartAuction.ts | 8 +- lib/classes/messages/StartGroupProposal.ts | 8 +- lib/classes/messages/StartLure.ts | 12 +- lib/classes/messages/StartPingCheck.ts | 6 +- lib/classes/messages/StateSave.ts | 8 +- lib/classes/messages/SubscribeLoad.ts | 6 +- lib/classes/messages/SystemKickUser.ts | 12 +- lib/classes/messages/SystemMessage.ts | 12 +- lib/classes/messages/TallyVotes.ts | 6 +- lib/classes/messages/TelehubInfo.ts | 16 +- lib/classes/messages/TeleportCancel.ts | 8 +- lib/classes/messages/TeleportFailed.ts | 12 +- lib/classes/messages/TeleportFinish.ts | 12 +- .../messages/TeleportLandingStatusChanged.ts | 8 +- .../messages/TeleportLandmarkRequest.ts | 8 +- lib/classes/messages/TeleportLocal.ts | 10 +- .../messages/TeleportLocationRequest.ts | 12 +- lib/classes/messages/TeleportLureRequest.ts | 8 +- lib/classes/messages/TeleportProgress.ts | 8 +- lib/classes/messages/TeleportRequest.ts | 10 +- lib/classes/messages/TeleportStart.ts | 6 +- lib/classes/messages/TerminateFriendship.ts | 8 +- lib/classes/messages/TestMessage.ts | 6 +- lib/classes/messages/TrackAgent.ts | 8 +- lib/classes/messages/TransferAbort.ts | 8 +- lib/classes/messages/TransferInfo.ts | 8 +- lib/classes/messages/TransferInventory.ts | 12 +- lib/classes/messages/TransferInventoryAck.ts | 8 +- lib/classes/messages/TransferPacket.ts | 8 +- lib/classes/messages/TransferRequest.ts | 8 +- lib/classes/messages/UUIDGroupNameReply.ts | 12 +- lib/classes/messages/UUIDGroupNameRequest.ts | 12 +- lib/classes/messages/UUIDNameReply.ts | 12 +- lib/classes/messages/UUIDNameRequest.ts | 12 +- lib/classes/messages/Undo.ts | 12 +- lib/classes/messages/UndoLand.ts | 8 +- lib/classes/messages/UnsubscribeLoad.ts | 6 +- lib/classes/messages/UpdateAttachment.ts | 8 +- .../messages/UpdateCreateInventoryItem.ts | 12 +- lib/classes/messages/UpdateGroupInfo.ts | 8 +- lib/classes/messages/UpdateInventoryFolder.ts | 12 +- lib/classes/messages/UpdateInventoryItem.ts | 12 +- lib/classes/messages/UpdateMuteListEntry.ts | 8 +- lib/classes/messages/UpdateParcel.ts | 12 +- lib/classes/messages/UpdateSimulator.ts | 8 +- lib/classes/messages/UpdateTaskInventory.ts | 8 +- lib/classes/messages/UpdateUserInfo.ts | 8 +- lib/classes/messages/UseCachedMuteList.ts | 8 +- lib/classes/messages/UseCircuitCode.ts | 8 +- lib/classes/messages/UserInfoReply.ts | 8 +- lib/classes/messages/UserInfoRequest.ts | 8 +- lib/classes/messages/UserReport.ts | 10 +- lib/classes/messages/UserReportInternal.ts | 10 +- .../messages/VelocityInterpolateOff.ts | 8 +- lib/classes/messages/VelocityInterpolateOn.ts | 8 +- lib/classes/messages/ViewerEffect.ts | 12 +- lib/classes/messages/ViewerFrozenMessage.ts | 6 +- lib/classes/messages/ViewerStartAuction.ts | 8 +- lib/classes/messages/ViewerStats.ts | 14 +- lib/classes/public/Avatar.ts | 2 +- lib/classes/public/ExtraParams.ts | 19 +- lib/classes/public/FlexibleData.ts | 2 +- lib/classes/public/Friend.ts | 4 +- lib/classes/public/GameObject.ts | 75 +- lib/classes/public/LLMesh.ts | 15 +- lib/classes/public/LightData.ts | 3 +- lib/classes/public/LightImageData.ts | 4 +- lib/classes/public/Material.ts | 4 +- lib/classes/public/MeshData.ts | 4 +- lib/classes/public/Parcel.ts | 7 +- lib/classes/public/RegionEnvironment.ts | 14 +- lib/classes/public/SculptData.ts | 4 +- lib/classes/public/TextureAnim.ts | 3 +- .../public/interfaces/LLPhysicsConvex.ts | 2 +- lib/classes/public/interfaces/LLSkin.ts | 2 +- lib/classes/public/interfaces/LLSubMesh.ts | 4 +- lib/classes/public/interfaces/MapLocation.ts | 4 +- lib/classes/public/interfaces/SkyPreset.ts | 8 +- lib/classes/public/interfaces/WaterPreset.ts | 10 +- lib/enums/Message.ts | 1 + lib/events/AvatarPropertiesReplyEvent.ts | 2 +- lib/events/ChatEvent.ts | 8 +- lib/events/FriendOnlineEvent.ts | 2 +- lib/events/FriendRemovedEvent.ts | 2 +- lib/events/FriendRequestEvent.ts | 2 +- lib/events/FriendResponseEvent.ts | 2 +- lib/events/FriendRightsEvent.ts | 3 +- lib/events/GroupChatEvent.ts | 2 +- lib/events/GroupChatSessionAgentListEvent.ts | 2 +- lib/events/GroupChatSessionJoinEvent.ts | 2 +- lib/events/GroupInviteEvent.ts | 2 +- lib/events/GroupNoticeEvent.ts | 2 +- lib/events/GroupProfileReplyEvent.ts | 3 +- lib/events/InstantMessageEvent.ts | 4 +- lib/events/InventoryOfferedEvent.ts | 4 +- lib/events/LureEvent.ts | 3 +- lib/events/MapInfoRangeReplyEvent.ts | 2 +- lib/events/MapInfoReplyEvent.ts | 4 +- lib/events/NewObjectEvent.ts | 4 +- lib/events/ObjectKilledEvent.ts | 4 +- lib/events/ObjectPhysicsDataEvent.ts | 2 +- lib/events/ObjectUpdatedEvent.ts | 4 +- lib/events/ParcelInfoReplyEvent.ts | 4 +- lib/events/ParcelPropertiesEvent.ts | 5 +- lib/events/RegionInfoReplyEvent.ts | 2 +- lib/events/ScriptDialogEvent.ts | 2 +- lib/events/SelectedObjectEvent.ts | 2 +- lib/events/TeleportEvent.ts | 2 +- lib/index.ts | 190 +- lib/tests/packets.ts | 8 +- lib/tests/uuid.ts | 2 +- lib/tsm/mat2.ts | 2 +- lib/tsm/mat3.ts | 8 +- lib/tsm/mat4.ts | 6 +- lib/tsm/quat.ts | 6 +- lib/tsm/vec2.ts | 6 +- lib/tsm/vec3.ts | 4 +- lib/tsm/vec4.ts | 2 +- tools/msg_template.json | 26252 +++++++++++++++- tools/msg_template.msg | 18289 +++++------ tools/parseMessageTemplate.js | 4 +- tools/writePacketClasses.js | 25 +- 596 files changed, 39133 insertions(+), 11889 deletions(-) create mode 100644 lib/classes/messages/ObjectAnimation.ts diff --git a/README.md b/README.md index d365330..1fb6192 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ bot.login().then((response) => Typescript ```typescript -import {Bot, BotOptionFlags, LoginParameters} from '@caspertech/node-metaverse'; +import { Bot, BotOptionFlags, LoginParameters } from '@caspertech/node-metaverse'; const loginParameters = new LoginParameters(); loginParameters.firstName = 'firstName'; diff --git a/lib/Bot.ts b/lib/Bot.ts index 1651da4..a226898 100644 --- a/lib/Bot.ts +++ b/lib/Bot.ts @@ -1,39 +1,38 @@ -import {LoginHandler} from './LoginHandler'; -import {LoginResponse} from './classes/LoginResponse'; -import {LoginParameters} from './classes/LoginParameters'; -import {Agent} from './classes/Agent'; -import {PacketFlags} from './enums/PacketFlags'; -import {UseCircuitCodeMessage} from './classes/messages/UseCircuitCode'; -import {CompleteAgentMovementMessage} from './classes/messages/CompleteAgentMovement'; -import {Message} from './enums/Message'; -import {Packet} from './classes/Packet'; -import {Region} from './classes/Region'; -import {LogoutRequestMessage} from './classes/messages/LogoutRequest'; -import {Utils} from './classes/Utils'; -import {RegionHandshakeReplyMessage} from './classes/messages/RegionHandshakeReply'; -import {RegionProtocolFlags} from './enums/RegionProtocolFlags'; -import {AgentDataUpdateRequestMessage} from './classes/messages/AgentDataUpdateRequest'; -import {TeleportProgressMessage} from './classes/messages/TeleportProgress'; -import {TeleportStartMessage} from './classes/messages/TeleportStart'; -import {TeleportEvent} from './events/TeleportEvent'; -import {ClientEvents} from './classes/ClientEvents'; -import {TeleportEventType} from './enums/TeleportEventType'; -import {ClientCommands} from './classes/ClientCommands'; -import {DisconnectEvent} from './events/DisconnectEvent'; -import {KickUserMessage} from './classes/messages/KickUser'; -import {StartPingCheckMessage} from './classes/messages/StartPingCheck'; -import {CompletePingCheckMessage} from './classes/messages/CompletePingCheck'; +import { LoginHandler } from './LoginHandler'; +import { LoginResponse } from './classes/LoginResponse'; +import { LoginParameters } from './classes/LoginParameters'; +import { Agent } from './classes/Agent'; +import { PacketFlags } from './enums/PacketFlags'; +import { UseCircuitCodeMessage } from './classes/messages/UseCircuitCode'; +import { CompleteAgentMovementMessage } from './classes/messages/CompleteAgentMovement'; +import { Message } from './enums/Message'; +import { Packet } from './classes/Packet'; +import { Region } from './classes/Region'; +import { LogoutRequestMessage } from './classes/messages/LogoutRequest'; +import { Utils } from './classes/Utils'; +import { RegionHandshakeReplyMessage } from './classes/messages/RegionHandshakeReply'; +import { RegionProtocolFlags } from './enums/RegionProtocolFlags'; +import { AgentDataUpdateRequestMessage } from './classes/messages/AgentDataUpdateRequest'; +import { TeleportProgressMessage } from './classes/messages/TeleportProgress'; +import { TeleportStartMessage } from './classes/messages/TeleportStart'; +import { TeleportEvent } from './events/TeleportEvent'; +import { ClientEvents } from './classes/ClientEvents'; +import { TeleportEventType } from './enums/TeleportEventType'; +import { ClientCommands } from './classes/ClientCommands'; +import { DisconnectEvent } from './events/DisconnectEvent'; +import { KickUserMessage } from './classes/messages/KickUser'; +import { StartPingCheckMessage } from './classes/messages/StartPingCheck'; +import { CompletePingCheckMessage } from './classes/messages/CompletePingCheck'; +import { BotOptionFlags } from './enums/BotOptionFlags'; +import { FilterResponse } from './enums/FilterResponse'; +import { LogoutReplyMessage } from './classes/messages/LogoutReply'; +import { EventQueueStateChangeEvent } from './events/EventQueueStateChangeEvent'; +import { UUID } from './classes/UUID'; +import { Vector3 } from './classes/Vector3'; +import { RegionHandshakeMessage } from './classes/messages/RegionHandshake'; +import { AgentMovementCompleteMessage } from './classes/messages/AgentMovementComplete'; +import { Subscription } from 'rxjs/internal/Subscription'; import Timer = NodeJS.Timer; -import {BotOptionFlags} from './enums/BotOptionFlags'; -import {FilterResponse} from './enums/FilterResponse'; -import {LogoutReplyMessage} from './classes/messages/LogoutReply'; -import {EventQueueStateChangeEvent} from './events/EventQueueStateChangeEvent'; -import {UUID} from './classes/UUID'; -import {Vector3} from './classes/Vector3'; -import {RegionHandshakeMessage} from './classes/messages/RegionHandshake'; -import {AgentMovementCompleteMessage} from './classes/messages/AgentMovementComplete'; -import {Subscription} from 'rxjs/internal/Subscription'; -import Long = require('long'); export class Bot diff --git a/lib/LoginHandler.ts b/lib/LoginHandler.ts index cde3b39..bc01248 100644 --- a/lib/LoginHandler.ts +++ b/lib/LoginHandler.ts @@ -1,10 +1,10 @@ import * as xmlrpc from 'xmlrpc'; import * as crypto from 'crypto'; -import {LoginParameters} from './classes/LoginParameters'; -import {LoginResponse} from './classes/LoginResponse'; -import {ClientEvents} from './classes/ClientEvents'; -import {BotOptionFlags} from './enums/BotOptionFlags'; -const uuid = require('uuid'); +import * as uuid from 'uuid'; +import { LoginParameters } from './classes/LoginParameters'; +import { LoginResponse } from './classes/LoginResponse'; +import { ClientEvents } from './classes/ClientEvents'; +import { BotOptionFlags } from './enums/BotOptionFlags'; export class LoginHandler { diff --git a/lib/classes/Agent.ts b/lib/classes/Agent.ts index 2cea5ad..9a35437 100644 --- a/lib/classes/Agent.ts +++ b/lib/classes/Agent.ts @@ -1,27 +1,31 @@ -import {UUID} from './UUID'; -import {Vector3} from './Vector3'; -import {Inventory} from './Inventory'; -import Long = require('long'); -import {Wearable} from './Wearable'; -import {Region} from './Region'; -import {Message} from '../enums/Message'; -import {Packet} from './Packet'; -import {AvatarAnimationMessage} from './messages/AvatarAnimation'; -import {AgentUpdateMessage} from './messages/AgentUpdate'; -import {Quaternion} from './Quaternion'; -import {AgentState} from '../enums/AgentState'; -import {BuiltInAnimations} from '../enums/BuiltInAnimations'; +import { UUID } from './UUID'; +import { Vector3 } from './Vector3'; +import { Inventory } from './Inventory'; +import { Wearable } from './Wearable'; +import { Region } from './Region'; +import { Message } from '../enums/Message'; +import { Packet } from './Packet'; +import { AvatarAnimationMessage } from './messages/AvatarAnimation'; +import { AgentUpdateMessage } from './messages/AgentUpdate'; +import { Quaternion } from './Quaternion'; +import { AgentState } from '../enums/AgentState'; +import { BuiltInAnimations } from '../enums/BuiltInAnimations'; import * as LLSD from '@caspertech/llsd'; -import {AgentWearablesRequestMessage} from './messages/AgentWearablesRequest'; -import {AgentWearablesUpdateMessage} from './messages/AgentWearablesUpdate'; -import {InventorySortOrder} from '../enums/InventorySortOrder'; -import {RezSingleAttachmentFromInvMessage} from './messages/RezSingleAttachmentFromInv'; -import {AttachmentPoint} from '../enums/AttachmentPoint'; -import {Utils} from './Utils'; -import {ClientEvents} from './ClientEvents'; +import { AgentWearablesRequestMessage } from './messages/AgentWearablesRequest'; +import { AgentWearablesUpdateMessage } from './messages/AgentWearablesUpdate'; +import { InventorySortOrder } from '../enums/InventorySortOrder'; +import { RezSingleAttachmentFromInvMessage } from './messages/RezSingleAttachmentFromInv'; +import { AttachmentPoint } from '../enums/AttachmentPoint'; +import { Utils } from './Utils'; +import { ClientEvents } from './ClientEvents'; +import { GameObject } from './public/GameObject'; +import * as Long from 'long'; import Timer = NodeJS.Timer; -import {ControlFlags, GroupChatSessionAgentListEvent, AgentFlags, PacketFlags, AssetType, FolderType} from '..'; -import {GameObject} from './public/GameObject'; +import { GroupChatSessionAgentListEvent } from '../events/GroupChatSessionAgentListEvent'; +import { AgentFlags } from '../enums/AgentFlags'; +import { ControlFlags } from '../enums/ControlFlags'; +import { PacketFlags } from '../enums/PacketFlags'; +import { FolderType } from '../enums/FolderType'; export class Agent { diff --git a/lib/classes/BVH.ts b/lib/classes/BVH.ts index 576edb1..c27760b 100644 --- a/lib/classes/BVH.ts +++ b/lib/classes/BVH.ts @@ -1,6 +1,5 @@ -import {Utils} from './Utils'; -import {BVHJoint} from './BVHJoint'; -import {BVHJointKeyframe} from './BVHJointKeyframe'; +import { Utils } from './Utils'; +import { BVHJoint } from './BVHJoint'; export class BVH { @@ -58,4 +57,4 @@ export class BVH } return pos; } -} \ No newline at end of file +} diff --git a/lib/classes/BVHJoint.ts b/lib/classes/BVHJoint.ts index efbf634..bc6a814 100644 --- a/lib/classes/BVHJoint.ts +++ b/lib/classes/BVHJoint.ts @@ -1,6 +1,6 @@ -import {Utils} from './Utils'; -import {Vector3} from './Vector3'; -import {BVHJointKeyframe} from './BVHJointKeyframe'; +import { Utils } from './Utils'; +import { Vector3 } from './Vector3'; +import { BVHJointKeyframe } from './BVHJointKeyframe'; export class BVHJoint { @@ -59,4 +59,4 @@ export class BVHJoint } return pos; } -} \ No newline at end of file +} diff --git a/lib/classes/BVHJointKeyframe.ts b/lib/classes/BVHJointKeyframe.ts index 8b30c92..c4c564a 100644 --- a/lib/classes/BVHJointKeyframe.ts +++ b/lib/classes/BVHJointKeyframe.ts @@ -1,7 +1,7 @@ -import {Vector3} from './Vector3'; +import { Vector3 } from './Vector3'; export class BVHJointKeyframe { time: number; transform: Vector3; -} \ No newline at end of file +} diff --git a/lib/classes/Caps.ts b/lib/classes/Caps.ts index b70fc3d..2935ce3 100644 --- a/lib/classes/Caps.ts +++ b/lib/classes/Caps.ts @@ -1,16 +1,15 @@ import * as LLSD from '@caspertech/llsd'; import * as request from 'request'; import * as url from 'url'; -import {Region} from './Region'; -import {Subscription} from 'rxjs/internal/Subscription'; -import {EventQueueClient} from './EventQueueClient'; -import {UUID} from './UUID'; -import {ClientEvents} from './ClientEvents'; -import {Agent} from './Agent'; -import {Subject} from 'rxjs/internal/Subject'; -import {HTTPAssets} from '..'; -import { ParsedUrlQuery } from 'querystring'; +import { Region } from './Region'; +import { Subscription } from 'rxjs/internal/Subscription'; +import { EventQueueClient } from './EventQueueClient'; +import { UUID } from './UUID'; +import { ClientEvents } from './ClientEvents'; +import { Agent } from './Agent'; +import { Subject } from 'rxjs/internal/Subject'; import { ICapResponse } from './interfaces/ICapResponse'; +import { HTTPAssets } from '../enums/HTTPAssets'; export class Caps { @@ -150,7 +149,7 @@ export class Caps }); } - downloadAsset(uuid: UUID, type: HTTPAssets): Promise + async downloadAsset(uuid: UUID, type: HTTPAssets): Promise { return new Promise((resolve, reject) => { diff --git a/lib/classes/Circuit.ts b/lib/classes/Circuit.ts index 74f6ce5..b5fbdef 100644 --- a/lib/classes/Circuit.ts +++ b/lib/classes/Circuit.ts @@ -1,24 +1,26 @@ -import {UUID} from './UUID'; +import { UUID } from './UUID'; import * as dgram from 'dgram'; -import {Socket} from 'dgram'; -import {Packet} from './Packet'; -import {MessageBase} from './MessageBase'; -import {PacketAckMessage} from './messages/PacketAck'; -import {Message} from '../enums/Message'; -import {StartPingCheckMessage} from './messages/StartPingCheck'; -import {CompletePingCheckMessage} from './messages/CompletePingCheck'; -import {Subscription} from 'rxjs/internal/Subscription'; -import {filter} from 'rxjs/operators'; -import {ClientEvents} from './ClientEvents'; -import {FilterResponse} from '../enums/FilterResponse'; -import {Subject} from 'rxjs/internal/Subject'; -import {AssetType, PacketFlags, Utils} from '..'; -import {TimeoutError} from './TimeoutError'; -import {RequestXferMessage} from './messages/RequestXfer'; -import {SendXferPacketMessage} from './messages/SendXferPacket'; -import {ConfirmXferPacketMessage} from './messages/ConfirmXferPacket'; +import { Socket } from 'dgram'; +import { Packet } from './Packet'; +import { MessageBase } from './MessageBase'; +import { PacketAckMessage } from './messages/PacketAck'; +import { Message } from '../enums/Message'; +import { StartPingCheckMessage } from './messages/StartPingCheck'; +import { CompletePingCheckMessage } from './messages/CompletePingCheck'; +import { Subscription } from 'rxjs/internal/Subscription'; +import { filter } from 'rxjs/operators'; +import { ClientEvents } from './ClientEvents'; +import { FilterResponse } from '../enums/FilterResponse'; +import { Subject } from 'rxjs/internal/Subject'; +import { TimeoutError } from './TimeoutError'; +import { RequestXferMessage } from './messages/RequestXfer'; +import { SendXferPacketMessage } from './messages/SendXferPacket'; +import { ConfirmXferPacketMessage } from './messages/ConfirmXferPacket'; +import { AbortXferMessage } from './messages/AbortXfer'; import Timer = NodeJS.Timer; -import {AbortXferMessage} from './messages/AbortXfer'; +import { PacketFlags } from '../enums/PacketFlags'; +import { AssetType } from '../enums/AssetType'; +import { Utils } from './Utils'; export class Circuit { diff --git a/lib/classes/ClientCommands.ts b/lib/classes/ClientCommands.ts index 8672e6d..38da729 100644 --- a/lib/classes/ClientCommands.ts +++ b/lib/classes/ClientCommands.ts @@ -1,17 +1,17 @@ -import {Region} from './Region'; -import {Agent} from './Agent'; -import {Bot} from '../Bot'; -import {NetworkCommands} from './commands/NetworkCommands'; -import {AssetCommands} from './commands/AssetCommands'; -import {TeleportCommands} from './commands/TeleportCommands'; -import {RegionCommands} from './commands/RegionCommands'; -import {GridCommands} from './commands/GridCommands'; -import {CommunicationsCommands} from './commands/CommunicationsCommands'; -import {AgentCommands} from './commands/AgentCommands'; -import {GroupCommands} from './commands/GroupCommands'; -import {InventoryCommands} from './commands/InventoryCommands'; -import {ParcelCommands} from './commands/ParcelCommands'; -import {FriendCommands} from './commands/FriendCommands'; +import { Region } from './Region'; +import { Agent } from './Agent'; +import { Bot } from '../Bot'; +import { NetworkCommands } from './commands/NetworkCommands'; +import { AssetCommands } from './commands/AssetCommands'; +import { TeleportCommands } from './commands/TeleportCommands'; +import { RegionCommands } from './commands/RegionCommands'; +import { GridCommands } from './commands/GridCommands'; +import { CommunicationsCommands } from './commands/CommunicationsCommands'; +import { AgentCommands } from './commands/AgentCommands'; +import { GroupCommands } from './commands/GroupCommands'; +import { InventoryCommands } from './commands/InventoryCommands'; +import { ParcelCommands } from './commands/ParcelCommands'; +import { FriendCommands } from './commands/FriendCommands'; export class ClientCommands { diff --git a/lib/classes/ClientEvents.ts b/lib/classes/ClientEvents.ts index 4bfeda6..70e67ea 100644 --- a/lib/classes/ClientEvents.ts +++ b/lib/classes/ClientEvents.ts @@ -1,30 +1,28 @@ -import { - ChatEvent, - DisconnectEvent, - FriendRequestEvent, - FriendResponseEvent, - GroupChatEvent, - GroupNoticeEvent, - GroupChatSessionAgentListEvent, - GroupChatSessionJoinEvent, - GroupInviteEvent, - InstantMessageEvent, - InventoryOfferedEvent, - LureEvent, - TeleportEvent, - ScriptDialogEvent, - EventQueueStateChangeEvent, - FriendOnlineEvent, - FriendRightsEvent, - FriendRemovedEvent, - ObjectPhysicsDataEvent, - ParcelPropertiesEvent -} from '..'; -import {Subject} from 'rxjs/internal/Subject'; -import {NewObjectEvent} from '../events/NewObjectEvent'; -import {ObjectUpdatedEvent} from '../events/ObjectUpdatedEvent'; -import {ObjectKilledEvent} from '../events/ObjectKilledEvent'; -import {SelectedObjectEvent} from '../events/SelectedObjectEvent'; +import { Subject } from 'rxjs/internal/Subject'; +import { NewObjectEvent } from '../events/NewObjectEvent'; +import { ObjectUpdatedEvent } from '../events/ObjectUpdatedEvent'; +import { ObjectKilledEvent } from '../events/ObjectKilledEvent'; +import { SelectedObjectEvent } from '../events/SelectedObjectEvent'; +import { ChatEvent } from '../events/ChatEvent'; +import { InstantMessageEvent } from '../events/InstantMessageEvent'; +import { GroupInviteEvent } from '../events/GroupInviteEvent'; +import { FriendRequestEvent } from '../events/FriendRequestEvent'; +import { InventoryOfferedEvent } from '../events/InventoryOfferedEvent'; +import { LureEvent } from '../events/LureEvent'; +import { TeleportEvent } from '../events/TeleportEvent'; +import { DisconnectEvent } from '../events/DisconnectEvent'; +import { GroupChatEvent } from '../events/GroupChatEvent'; +import { GroupNoticeEvent } from '../events/GroupNoticeEvent'; +import { GroupChatSessionJoinEvent } from '../events/GroupChatSessionJoinEvent'; +import { GroupChatSessionAgentListEvent } from '../events/GroupChatSessionAgentListEvent'; +import { FriendResponseEvent } from '../events/FriendResponseEvent'; +import { ScriptDialogEvent } from '../events/ScriptDialogEvent'; +import { EventQueueStateChangeEvent } from '../events/EventQueueStateChangeEvent'; +import { FriendOnlineEvent } from '../events/FriendOnlineEvent'; +import { FriendRightsEvent } from '../events/FriendRightsEvent'; +import { FriendRemovedEvent } from '../events/FriendRemovedEvent'; +import { ObjectPhysicsDataEvent } from '../events/ObjectPhysicsDataEvent'; +import { ParcelPropertiesEvent } from '../events/ParcelPropertiesEvent'; export class ClientEvents diff --git a/lib/classes/Color4.ts b/lib/classes/Color4.ts index d95ed0b..ad94e14 100644 --- a/lib/classes/Color4.ts +++ b/lib/classes/Color4.ts @@ -1,5 +1,5 @@ -import {Utils} from './Utils'; -import {XMLNode} from 'xmlbuilder'; +import { Utils } from './Utils'; +import { XMLNode } from 'xmlbuilder'; export class Color4 { diff --git a/lib/classes/Comms.ts b/lib/classes/Comms.ts index acc5ba0..b0e0d4e 100644 --- a/lib/classes/Comms.ts +++ b/lib/classes/Comms.ts @@ -1,30 +1,27 @@ -import {Circuit} from './Circuit'; -import {Agent} from './Agent'; -import {Packet} from './Packet'; -import {Message} from '../enums/Message'; -import {ChatFromSimulatorMessage} from './messages/ChatFromSimulator'; -import {ImprovedInstantMessageMessage} from './messages/ImprovedInstantMessage'; -import {Utils} from './Utils'; -import {InstantMessageDialog} from '../enums/InstantMessageDialog'; -import {AlertMessageMessage} from './messages/AlertMessage'; -import {ClientEvents} from './ClientEvents'; -import { - ChatEvent, - ChatSourceType, - FriendRequestEvent, - FriendResponseEvent, - GroupChatEvent, - GroupNoticeEvent, - GroupInviteEvent, - InstantMessageEvent, - InstantMessageEventFlags, - InventoryOfferedEvent, - LureEvent, - ScriptDialogEvent, - UUID -} from '..'; -import {ScriptDialogMessage} from './messages/ScriptDialog'; -import * as uuid from 'uuid'; +import { Circuit } from './Circuit'; +import { Agent } from './Agent'; +import { Packet } from './Packet'; +import { Message } from '../enums/Message'; +import { ChatFromSimulatorMessage } from './messages/ChatFromSimulator'; +import { ImprovedInstantMessageMessage } from './messages/ImprovedInstantMessage'; +import { Utils } from './Utils'; +import { InstantMessageDialog } from '../enums/InstantMessageDialog'; +import { AlertMessageMessage } from './messages/AlertMessage'; +import { ClientEvents } from './ClientEvents'; +import { ScriptDialogMessage } from './messages/ScriptDialog'; +import { InstantMessageEvent } from '../events/InstantMessageEvent'; +import { ChatSourceType } from '../enums/ChatSourceType'; +import { InstantMessageEventFlags } from '../enums/InstantMessageEventFlags'; +import { GroupInviteEvent } from '../events/GroupInviteEvent'; +import { InventoryOfferedEvent } from '../events/InventoryOfferedEvent'; +import { LureEvent } from '../events/LureEvent'; +import { UUID } from './UUID'; +import { GroupNoticeEvent } from '../events/GroupNoticeEvent'; +import { FriendRequestEvent } from '../events/FriendRequestEvent'; +import { FriendResponseEvent } from '../events/FriendResponseEvent'; +import { GroupChatEvent } from '../events/GroupChatEvent'; +import { ChatEvent } from '../events/ChatEvent'; +import { ScriptDialogEvent } from '../events/ScriptDialogEvent'; export class Comms { @@ -76,12 +73,12 @@ export class Comms case InstantMessageDialog.InventoryOffered: { const fromName = Utils.BufferToStringSimple(im.MessageBlock.FromAgentName); - const message = Utils.BufferToStringSimple(im.MessageBlock.Message); + const inventoryMessage = Utils.BufferToStringSimple(im.MessageBlock.Message); const ioEvent = new InventoryOfferedEvent(); ioEvent.from = im.AgentData.AgentID; ioEvent.fromName = fromName; - ioEvent.message = message; + ioEvent.message = inventoryMessage; ioEvent.requestID = im.MessageBlock.ID; ioEvent.source = ChatSourceType.Agent; this.clientEvents.onInventoryOffered.next(ioEvent); @@ -94,12 +91,12 @@ export class Comms case InstantMessageDialog.TaskInventoryOffered: { const fromName = Utils.BufferToStringSimple(im.MessageBlock.FromAgentName); - const message = Utils.BufferToStringSimple(im.MessageBlock.Message); + const inventoryMessage = Utils.BufferToStringSimple(im.MessageBlock.Message); const ioEvent = new InventoryOfferedEvent(); ioEvent.from = im.AgentData.AgentID; ioEvent.fromName = fromName; - ioEvent.message = message; + ioEvent.message = inventoryMessage; ioEvent.requestID = im.MessageBlock.ID; ioEvent.source = ChatSourceType.Object; ioEvent.type = im.MessageBlock.BinaryBucket.readUInt8(0); @@ -137,6 +134,7 @@ export class Comms case InstantMessageDialog.ConsoleAndChatHistory: break; case InstantMessageDialog.RequestTeleport: + { const lureEvent = new LureEvent(); const extraData = Utils.BufferToStringSimple(im.MessageBlock.BinaryBucket).split('|'); lureEvent.from = im.AgentData.AgentID; @@ -149,6 +147,7 @@ export class Comms lureEvent.gridY = parseInt(extraData[1], 10); this.clientEvents.onLure.next(lureEvent); break; + } case InstantMessageDialog.AcceptTeleport: break; case InstantMessageDialog.DenyTeleport: @@ -160,6 +159,7 @@ export class Comms case InstantMessageDialog.FromTaskAsAlert: break; case InstantMessageDialog.GroupNotice: + { const groupNoticeEvent = new GroupNoticeEvent(); groupNoticeEvent.from = im.AgentData.AgentID; groupNoticeEvent.fromName = Utils.BufferToStringSimple(im.MessageBlock.FromAgentName); @@ -172,6 +172,7 @@ export class Comms } this.clientEvents.onGroupNotice.next(groupNoticeEvent); break; + } case InstantMessageDialog.GroupNoticeInventoryAccepted: break; case InstantMessageDialog.GroupNoticeInventoryDeclined: diff --git a/lib/classes/EventQueueClient.ts b/lib/classes/EventQueueClient.ts index 14ccad5..e8b2df8 100644 --- a/lib/classes/EventQueueClient.ts +++ b/lib/classes/EventQueueClient.ts @@ -1,19 +1,20 @@ -import {Caps} from './Caps'; import * as LLSD from '@caspertech/llsd'; import * as request from 'request'; import * as Long from 'long'; -import {IPAddress} from './IPAddress'; -import {ClientEvents} from './ClientEvents'; -import {TeleportEventType} from '../enums/TeleportEventType'; -import {UUID} from './UUID'; -import {Agent} from './Agent'; -import { - EventQueueStateChangeEvent, - GroupChatEvent, - GroupChatSessionAgentListEvent, - GroupChatSessionJoinEvent, ObjectPhysicsDataEvent, ParcelPropertiesEvent, - TeleportEvent, Vector3 -} from '..'; +import { ClientEvents } from './ClientEvents'; +import { Agent } from './Agent'; +import { Caps } from './Caps'; +import { EventQueueStateChangeEvent } from '../events/EventQueueStateChangeEvent'; +import { ParcelPropertiesEvent } from '../events/ParcelPropertiesEvent'; +import { Vector3 } from './Vector3'; +import { UUID } from './UUID'; +import { TeleportEvent } from '../events/TeleportEvent'; +import { TeleportEventType } from '../enums/TeleportEventType'; +import { GroupChatSessionJoinEvent } from '../events/GroupChatSessionJoinEvent'; +import { GroupChatEvent } from '../events/GroupChatEvent'; +import { GroupChatSessionAgentListEvent } from '../events/GroupChatSessionAgentListEvent'; +import { ObjectPhysicsDataEvent } from '../events/ObjectPhysicsDataEvent'; +import { IPAddress } from './IPAddress'; export class EventQueueClient { diff --git a/lib/classes/GroupBan.ts b/lib/classes/GroupBan.ts index 4d00726..c017954 100644 --- a/lib/classes/GroupBan.ts +++ b/lib/classes/GroupBan.ts @@ -1,4 +1,4 @@ -import {UUID} from './UUID'; +import { UUID } from './UUID'; export class GroupBan { diff --git a/lib/classes/GroupMember.ts b/lib/classes/GroupMember.ts index c619f0a..e3ce88e 100644 --- a/lib/classes/GroupMember.ts +++ b/lib/classes/GroupMember.ts @@ -1,4 +1,4 @@ -import {UUID} from './UUID'; +import { UUID } from './UUID'; import * as Long from 'long'; export class GroupMember @@ -8,4 +8,4 @@ export class GroupMember AgentPowers: Long; Title: string; IsOwner: boolean; -} \ No newline at end of file +} diff --git a/lib/classes/GroupRole.ts b/lib/classes/GroupRole.ts index b52e836..5e8cf98 100644 --- a/lib/classes/GroupRole.ts +++ b/lib/classes/GroupRole.ts @@ -1,4 +1,4 @@ -import {UUID} from './UUID'; +import { UUID } from './UUID'; import * as Long from 'long'; export class GroupRole @@ -9,4 +9,4 @@ export class GroupRole Description: string; Powers: Long; Members: number; -} \ No newline at end of file +} diff --git a/lib/classes/Inventory.ts b/lib/classes/Inventory.ts index df5eaed..3585b45 100644 --- a/lib/classes/Inventory.ts +++ b/lib/classes/Inventory.ts @@ -1,10 +1,10 @@ -import {UUID} from './UUID'; -import {ClientEvents} from './ClientEvents'; -import {InventoryFolder} from './InventoryFolder'; -import {Agent} from './Agent'; -import {AssetType, FolderType} from '..'; +import { UUID } from './UUID'; +import { ClientEvents } from './ClientEvents'; +import { InventoryFolder } from './InventoryFolder'; +import { Agent } from './Agent'; import * as LLSD from '@caspertech/llsd'; -import {InventoryItem} from './InventoryItem'; +import { InventoryItem } from './InventoryItem'; +import { FolderType } from '../enums/FolderType'; export class Inventory { @@ -89,8 +89,9 @@ export class Inventory ] }; const response = await this.agent.currentRegion.caps.capsPostXML('FetchInventory2', params); - for (const receivedItem of response['items']) + if (response['items'].length > 0) { + const receivedItem = response['items'][0]; const invItem = new InventoryItem(); invItem.assetID = new UUID(receivedItem['asset_id'].toString()); invItem.inventoryType = parseInt(receivedItem['inv_type'], 10); @@ -124,6 +125,9 @@ export class Inventory } return invItem; } - return null; + else + { + return null; + } } } diff --git a/lib/classes/InventoryFolder.ts b/lib/classes/InventoryFolder.ts index 4fcd83d..a2d5b17 100644 --- a/lib/classes/InventoryFolder.ts +++ b/lib/classes/InventoryFolder.ts @@ -1,12 +1,11 @@ -import {UUID} from './UUID'; -import {InventoryItem} from './InventoryItem'; +import { UUID } from './UUID'; +import { InventoryItem } from './InventoryItem'; import * as fs from 'fs'; import * as path from 'path'; import * as LLSD from '@caspertech/llsd'; -import {InventorySortOrder} from '../enums/InventorySortOrder'; -import {Agent} from './Agent'; -import {FolderType} from '..'; -import {Inventory} from './Inventory'; +import { InventorySortOrder } from '../enums/InventorySortOrder'; +import { Agent } from './Agent'; +import { FolderType } from '../enums/FolderType'; export class InventoryFolder { diff --git a/lib/classes/InventoryItem.ts b/lib/classes/InventoryItem.ts index 5b47b47..5f173c7 100644 --- a/lib/classes/InventoryItem.ts +++ b/lib/classes/InventoryItem.ts @@ -1,7 +1,8 @@ -import {UUID} from './UUID'; -import {InventoryType} from '../enums/InventoryType'; -import {PermissionMask} from '../enums/PermissionMask'; -import {AssetType, InventoryItemFlags} from '..'; +import { UUID } from './UUID'; +import { InventoryType } from '../enums/InventoryType'; +import { PermissionMask } from '../enums/PermissionMask'; +import { InventoryItemFlags } from '../enums/InventoryItemFlags'; +import { AssetType } from '../enums/AssetType'; export class InventoryItem { diff --git a/lib/classes/LLWearable.ts b/lib/classes/LLWearable.ts index 4a653be..e5507cd 100644 --- a/lib/classes/LLWearable.ts +++ b/lib/classes/LLWearable.ts @@ -1,6 +1,6 @@ -import {UUID} from './UUID'; -import {WearableType} from '../enums/WearableType'; -import {SaleType} from '../enums/SaleType'; +import { UUID } from './UUID'; +import { WearableType } from '../enums/WearableType'; +import { SaleType } from '../enums/SaleType'; export class LLWearable { diff --git a/lib/classes/LoginResponse.ts b/lib/classes/LoginResponse.ts index ba5e7c9..962c475 100644 --- a/lib/classes/LoginResponse.ts +++ b/lib/classes/LoginResponse.ts @@ -1,11 +1,12 @@ -import {UUID} from './UUID'; -import {Agent} from './Agent'; -import {Region} from './Region'; -import {Vector3} from './Vector3'; -import Long = require('long'); -import {ClientEvents} from './ClientEvents'; -import {InventoryFolder} from './InventoryFolder'; -import {BotOptionFlags, LoginFlags} from '..'; +import { UUID } from './UUID'; +import { Agent } from './Agent'; +import { Region } from './Region'; +import { Vector3 } from './Vector3'; +import * as Long from 'long'; +import { ClientEvents } from './ClientEvents'; +import { InventoryFolder } from './InventoryFolder'; +import { LoginFlags } from '../enums/LoginFlags'; +import { BotOptionFlags } from '../enums/BotOptionFlags'; export class LoginResponse { diff --git a/lib/classes/MapBlock.ts b/lib/classes/MapBlock.ts index 85666db..bd1522d 100644 --- a/lib/classes/MapBlock.ts +++ b/lib/classes/MapBlock.ts @@ -1,5 +1,5 @@ -import {UUID} from './UUID'; -import { RegionFlags } from '..'; +import { UUID } from './UUID'; +import { RegionFlags } from '../enums/RegionFlags'; export class MapBlock { diff --git a/lib/classes/MessageBase.ts b/lib/classes/MessageBase.ts index ffcea3c..3960681 100644 --- a/lib/classes/MessageBase.ts +++ b/lib/classes/MessageBase.ts @@ -1,5 +1,5 @@ -import {Message} from '../enums/Message'; -import {MessageFlags} from '..'; +import { Message } from '../enums/Message'; +import { MessageFlags } from '../enums/MessageFlags'; export interface MessageBase { diff --git a/lib/classes/MessageClasses.ts b/lib/classes/MessageClasses.ts index 7704632..d64a237 100644 --- a/lib/classes/MessageClasses.ts +++ b/lib/classes/MessageClasses.ts @@ -1,4 +1,4 @@ -// This file has been automatically generated by writeMessageClasses.js +// This file has been automatically generated by writePacketClasses.js export * from './messages/TestMessage'; export * from './messages/PacketAck'; @@ -379,6 +379,7 @@ export * from './messages/SoundTrigger'; export * from './messages/AttachedSound'; export * from './messages/AttachedSoundGainChange'; export * from './messages/PreloadSound'; +export * from './messages/ObjectAnimation'; export * from './messages/AssetUploadRequest'; export * from './messages/AssetUploadComplete'; export * from './messages/EmailMessageRequest'; @@ -478,7 +479,7 @@ export * from './messages/LinkInventoryItem'; export * from './messages/RetrieveIMsExtended'; export * from './messages/JoinGroupRequestExtended'; export * from './messages/CreateGroupRequestExtended'; -import {Message} from '../enums/Message'; +import { Message } from '../enums/Message'; const messages: {[index: number]: string} = {}; messages[Message.TestMessage] = 'TestMessageMessage'; @@ -860,6 +861,7 @@ messages[Message.SoundTrigger] = 'SoundTriggerMessage'; messages[Message.AttachedSound] = 'AttachedSoundMessage'; messages[Message.AttachedSoundGainChange] = 'AttachedSoundGainChangeMessage'; messages[Message.PreloadSound] = 'PreloadSoundMessage'; +messages[Message.ObjectAnimation] = 'ObjectAnimationMessage'; messages[Message.AssetUploadRequest] = 'AssetUploadRequestMessage'; messages[Message.AssetUploadComplete] = 'AssetUploadCompleteMessage'; messages[Message.EmailMessageRequest] = 'EmailMessageRequestMessage'; diff --git a/lib/classes/ObjectStoreFull.ts b/lib/classes/ObjectStoreFull.ts index d7659e1..7014637 100644 --- a/lib/classes/ObjectStoreFull.ts +++ b/lib/classes/ObjectStoreFull.ts @@ -1,26 +1,28 @@ -import {Circuit} from './Circuit'; -import {ObjectUpdateMessage} from './messages/ObjectUpdate'; -import {ObjectUpdateCachedMessage} from './messages/ObjectUpdateCached'; -import {ObjectUpdateCompressedMessage} from './messages/ObjectUpdateCompressed'; -import {ImprovedTerseObjectUpdateMessage} from './messages/ImprovedTerseObjectUpdate'; -import {RequestMultipleObjectsMessage} from './messages/RequestMultipleObjects'; -import {Agent} from './Agent'; -import {UUID} from './UUID'; -import {Quaternion} from './Quaternion'; -import {Vector3} from './Vector3'; -import {Utils} from './Utils'; -import {ClientEvents} from './ClientEvents'; -import {IObjectStore} from './interfaces/IObjectStore'; -import {BotOptionFlags, CompressedFlags, PacketFlags, PCode} from '..'; -import {RBush3D} from 'rbush-3d/dist'; -import {Vector4} from './Vector4'; -import {TextureEntry} from './TextureEntry'; -import {Color4} from './Color4'; -import {ParticleSystem} from './ParticleSystem'; -import {GameObject} from './public/GameObject'; -import {ObjectStoreLite} from './ObjectStoreLite'; -import {TextureAnim} from './public/TextureAnim'; -import {ExtraParams} from './public/ExtraParams'; +import { Circuit } from './Circuit'; +import { ObjectUpdateMessage } from './messages/ObjectUpdate'; +import { ObjectUpdateCachedMessage } from './messages/ObjectUpdateCached'; +import { ObjectUpdateCompressedMessage } from './messages/ObjectUpdateCompressed'; +import { ImprovedTerseObjectUpdateMessage } from './messages/ImprovedTerseObjectUpdate'; +import { RequestMultipleObjectsMessage } from './messages/RequestMultipleObjects'; +import { Agent } from './Agent'; +import { UUID } from './UUID'; +import { Quaternion } from './Quaternion'; +import { Vector3 } from './Vector3'; +import { Utils } from './Utils'; +import { ClientEvents } from './ClientEvents'; +import { IObjectStore } from './interfaces/IObjectStore'; +import { RBush3D } from 'rbush-3d/dist'; +import { Vector4 } from './Vector4'; +import { TextureEntry } from './TextureEntry'; +import { Color4 } from './Color4'; +import { ParticleSystem } from './ParticleSystem'; +import { GameObject } from './public/GameObject'; +import { ObjectStoreLite } from './ObjectStoreLite'; +import { TextureAnim } from './public/TextureAnim'; +import { ExtraParams } from './public/ExtraParams'; +import { CompressedFlags } from '../enums/CompressedFlags'; +import { PCode } from '../enums/PCode'; +import { BotOptionFlags } from '../enums/BotOptionFlags'; export class ObjectStoreFull extends ObjectStoreLite implements IObjectStore { diff --git a/lib/classes/ObjectStoreLite.ts b/lib/classes/ObjectStoreLite.ts index f3d34de..445a5ab 100644 --- a/lib/classes/ObjectStoreLite.ts +++ b/lib/classes/ObjectStoreLite.ts @@ -1,40 +1,38 @@ -import {Circuit} from './Circuit'; -import {Packet} from './Packet'; -import {Message} from '../enums/Message'; -import {ObjectUpdateMessage} from './messages/ObjectUpdate'; -import {ObjectUpdateCachedMessage} from './messages/ObjectUpdateCached'; -import {ObjectUpdateCompressedMessage} from './messages/ObjectUpdateCompressed'; -import {ImprovedTerseObjectUpdateMessage} from './messages/ImprovedTerseObjectUpdate'; -import {RequestMultipleObjectsMessage} from './messages/RequestMultipleObjects'; -import {Agent} from './Agent'; -import {UUID} from './UUID'; -import {Utils} from './Utils'; -import {ClientEvents} from './ClientEvents'; -import {KillObjectMessage} from './messages/KillObject'; -import {IObjectStore} from './interfaces/IObjectStore'; -import {NameValue} from './NameValue'; -import { - BotOptionFlags, - CompressedFlags, - NewObjectEvent, - ObjectPhysicsDataEvent, - ObjectUpdatedEvent, - PacketFlags, - PCode, - PrimFlags, - Vector3 -} from '..'; -import {GameObject} from './public/GameObject'; -import {RBush3D} from 'rbush-3d/dist'; -import {ITreeBoundingBox} from './interfaces/ITreeBoundingBox'; -import {FilterResponse} from '../enums/FilterResponse'; -import {ObjectSelectMessage} from './messages/ObjectSelect'; -import {ObjectDeselectMessage} from './messages/ObjectDeselect'; -import {Quaternion} from './Quaternion'; -import {Subscription} from 'rxjs/internal/Subscription'; -import {ExtraParams} from './public/ExtraParams'; -import {ObjectPropertiesMessage} from './messages/ObjectProperties'; -import {SelectedObjectEvent} from '../events/SelectedObjectEvent'; +import { Circuit } from './Circuit'; +import { Packet } from './Packet'; +import { Message } from '../enums/Message'; +import { ObjectUpdateMessage } from './messages/ObjectUpdate'; +import { ObjectUpdateCachedMessage } from './messages/ObjectUpdateCached'; +import { ObjectUpdateCompressedMessage } from './messages/ObjectUpdateCompressed'; +import { ImprovedTerseObjectUpdateMessage } from './messages/ImprovedTerseObjectUpdate'; +import { RequestMultipleObjectsMessage } from './messages/RequestMultipleObjects'; +import { Agent } from './Agent'; +import { UUID } from './UUID'; +import { Utils } from './Utils'; +import { ClientEvents } from './ClientEvents'; +import { KillObjectMessage } from './messages/KillObject'; +import { IObjectStore } from './interfaces/IObjectStore'; +import { NameValue } from './NameValue'; +import { GameObject } from './public/GameObject'; +import { RBush3D } from 'rbush-3d/dist'; +import { ITreeBoundingBox } from './interfaces/ITreeBoundingBox'; +import { FilterResponse } from '../enums/FilterResponse'; +import { ObjectSelectMessage } from './messages/ObjectSelect'; +import { ObjectDeselectMessage } from './messages/ObjectDeselect'; +import { Quaternion } from './Quaternion'; +import { Subscription } from 'rxjs/internal/Subscription'; +import { ExtraParams } from './public/ExtraParams'; +import { ObjectPropertiesMessage } from './messages/ObjectProperties'; +import { SelectedObjectEvent } from '../events/SelectedObjectEvent'; +import { PrimFlags } from '../enums/PrimFlags'; +import { PacketFlags } from '../enums/PacketFlags'; +import { PCode } from '../enums/PCode'; +import { BotOptionFlags } from '../enums/BotOptionFlags'; +import { NewObjectEvent } from '../events/NewObjectEvent'; +import { ObjectUpdatedEvent } from '../events/ObjectUpdatedEvent'; +import { CompressedFlags } from '../enums/CompressedFlags'; +import { Vector3 } from './Vector3'; +import { ObjectPhysicsDataEvent } from '../events/ObjectPhysicsDataEvent'; export class ObjectStoreLite implements IObjectStore { diff --git a/lib/classes/Packet.ts b/lib/classes/Packet.ts index 2cba019..d2e4008 100644 --- a/lib/classes/Packet.ts +++ b/lib/classes/Packet.ts @@ -1,8 +1,10 @@ -import {MessageBase} from './MessageBase'; -import {Zerocoder} from './Zerocoder'; -import {nameFromID} from './MessageClasses'; +import { MessageBase } from './MessageBase'; +import { Zerocoder } from './Zerocoder'; import * as MessageClass from './MessageClasses'; -import {DecodeFlags, MessageFlags, PacketFlags} from '..'; +import { nameFromID } from './MessageClasses'; +import { MessageFlags } from '../enums/MessageFlags'; +import { PacketFlags } from '../enums/PacketFlags'; +import { DecodeFlags } from '../enums/DecodeFlags'; export class Packet { diff --git a/lib/classes/ParticleSystem.ts b/lib/classes/ParticleSystem.ts index 9d20c0d..df734f3 100644 --- a/lib/classes/ParticleSystem.ts +++ b/lib/classes/ParticleSystem.ts @@ -1,7 +1,10 @@ -import {Vector3} from './Vector3'; -import {UUID} from './UUID'; -import {Color4} from './Color4'; -import {BlendFunc, ParticleDataFlags, SourcePattern, Utils} from '..'; +import { Vector3 } from './Vector3'; +import { UUID } from './UUID'; +import { Color4 } from './Color4'; +import { ParticleDataFlags } from '../enums/ParticleDataFlags'; +import { Utils } from './Utils'; +import { BlendFunc } from '../enums/BlendFunc'; +import { SourcePattern } from '../enums/SourcePattern'; export class ParticleSystem { diff --git a/lib/classes/Quaternion.ts b/lib/classes/Quaternion.ts index 8bc2e0d..215b201 100644 --- a/lib/classes/Quaternion.ts +++ b/lib/classes/Quaternion.ts @@ -1,5 +1,6 @@ -import {quat} from '../tsm/quat'; -import {XMLNode} from 'xmlbuilder'; +import { quat } from '../tsm/quat'; +import { XMLNode } from 'xmlbuilder'; + export class Quaternion extends quat { static getIdentity(): Quaternion diff --git a/lib/classes/Region.ts b/lib/classes/Region.ts index d93b561..2a03c96 100644 --- a/lib/classes/Region.ts +++ b/lib/classes/Region.ts @@ -6,7 +6,6 @@ import { ClientEvents } from './ClientEvents'; import { IObjectStore } from './interfaces/IObjectStore'; import { ObjectStoreFull } from './ObjectStoreFull'; import { ObjectStoreLite } from './ObjectStoreLite'; -import { BotOptionFlags, PacketFlags, ParcelPropertiesEvent, RegionFlags, UUID, Vector2, Vector3 } from '..'; import { RequestRegionInfoMessage } from './messages/RequestRegionInfo'; import { RegionInfoMessage } from './messages/RegionInfo'; import { Message } from '../enums/Message'; @@ -39,8 +38,14 @@ import { ParcelOverlayMessage } from './messages/ParcelOverlay'; import { ILandBlock } from './interfaces/ILandBlock'; import { LandFlags } from '../enums/LandFlags'; import { ParcelPropertiesRequestMessage } from './messages/ParcelPropertiesRequest'; -import { ParcelPropertiesMessage } from './messages/ParcelProperties'; import Timer = NodeJS.Timer; +import { UUID } from './UUID'; +import { RegionFlags } from '../enums/RegionFlags'; +import { BotOptionFlags } from '../enums/BotOptionFlags'; +import { ParcelPropertiesEvent } from '../events/ParcelPropertiesEvent'; +import { PacketFlags } from '../enums/PacketFlags'; +import { Vector3 } from './Vector3'; +import { Vector2 } from './Vector2'; export class Region { diff --git a/lib/classes/TextureEntry.ts b/lib/classes/TextureEntry.ts index 33b0ddc..9f5fca1 100644 --- a/lib/classes/TextureEntry.ts +++ b/lib/classes/TextureEntry.ts @@ -1,7 +1,7 @@ -import {TextureEntryFace} from './TextureEntryFace'; -import {UUID} from './UUID'; -import {Color4} from './Color4'; -import {Utils} from './Utils'; +import { TextureEntryFace } from './TextureEntryFace'; +import { UUID } from './UUID'; +import { Color4 } from './Color4'; +import { Utils } from './Utils'; export class TextureEntry { diff --git a/lib/classes/TextureEntryFace.ts b/lib/classes/TextureEntryFace.ts index 0f478db..a77d435 100644 --- a/lib/classes/TextureEntryFace.ts +++ b/lib/classes/TextureEntryFace.ts @@ -1,9 +1,9 @@ -import {UUID} from './UUID'; -import {Color4} from './Color4'; -import {TextureFlags} from '../enums/TextureFlags'; -import {Bumpiness} from '../enums/Bumpiness'; -import {Shininess} from '../enums/Shininess'; -import {MappingType} from '../enums/MappingType'; +import { UUID } from './UUID'; +import { Color4 } from './Color4'; +import { TextureFlags } from '../enums/TextureFlags'; +import { Bumpiness } from '../enums/Bumpiness'; +import { Shininess } from '../enums/Shininess'; +import { MappingType } from '../enums/MappingType'; export class TextureEntryFace { diff --git a/lib/classes/UUID.ts b/lib/classes/UUID.ts index fe77a57..fd16fba 100644 --- a/lib/classes/UUID.ts +++ b/lib/classes/UUID.ts @@ -1,7 +1,7 @@ import * as validator from 'validator'; import * as Long from 'long'; -import {XMLNode} from 'xmlbuilder'; -const uuid = require('uuid'); +import { XMLNode } from 'xmlbuilder'; +import * as uuid from 'uuid'; export class UUID { diff --git a/lib/classes/Utils.ts b/lib/classes/Utils.ts index cab10bb..a0fd4a3 100644 --- a/lib/classes/Utils.ts +++ b/lib/classes/Utils.ts @@ -1,6 +1,8 @@ import * as Long from 'long'; -import {GlobalPosition, HTTPAssets, Vector3} from '..'; -import {Quaternion} from './Quaternion'; +import { Quaternion } from './Quaternion'; +import { GlobalPosition } from './public/interfaces/GlobalPosition'; +import { HTTPAssets } from '../enums/HTTPAssets'; +import { Vector3 } from './Vector3'; export class Utils { diff --git a/lib/classes/Vector2.ts b/lib/classes/Vector2.ts index 010f91b..4793e95 100644 --- a/lib/classes/Vector2.ts +++ b/lib/classes/Vector2.ts @@ -1,5 +1,5 @@ -import {vec2} from '../tsm/vec2'; -import {XMLNode} from 'xmlbuilder'; +import { vec2 } from '../tsm/vec2'; +import { XMLNode } from 'xmlbuilder'; export class Vector2 extends vec2 { diff --git a/lib/classes/Vector3.ts b/lib/classes/Vector3.ts index 4d65ee6..a304253 100644 --- a/lib/classes/Vector3.ts +++ b/lib/classes/Vector3.ts @@ -1,5 +1,5 @@ -import {vec3} from '../tsm/vec3'; -import {XMLNode} from 'xmlbuilder'; +import { vec3 } from '../tsm/vec3'; +import { XMLNode } from 'xmlbuilder'; export class Vector3 extends vec3 { diff --git a/lib/classes/Vector4.ts b/lib/classes/Vector4.ts index 8cb68f3..e9fb417 100644 --- a/lib/classes/Vector4.ts +++ b/lib/classes/Vector4.ts @@ -1,5 +1,5 @@ -import {vec4} from '../tsm/vec4'; -import {XMLNode} from 'xmlbuilder'; +import { vec4 } from '../tsm/vec4'; +import { XMLNode } from 'xmlbuilder'; export class Vector4 extends vec4 { diff --git a/lib/classes/Wearable.ts b/lib/classes/Wearable.ts index 814bc2e..d3fd92d 100644 --- a/lib/classes/Wearable.ts +++ b/lib/classes/Wearable.ts @@ -1,8 +1,8 @@ -import {UUID} from './UUID'; +import { UUID } from './UUID'; export class Wearable { itemID: UUID; assetID: UUID; wearableType: number; -} \ No newline at end of file +} diff --git a/lib/classes/commands/AgentCommands.ts b/lib/classes/commands/AgentCommands.ts index 343c0fa..611a649 100644 --- a/lib/classes/commands/AgentCommands.ts +++ b/lib/classes/commands/AgentCommands.ts @@ -1,15 +1,14 @@ -import {UUID} from '../UUID'; -import {AgentAnimationMessage} from '../messages/AgentAnimation'; -import {PacketFlags} from '../../enums/PacketFlags'; -import {CommandsBase} from './CommandsBase'; -import {Vector3} from '../Vector3'; -import {Message} from '../../enums/Message'; -import {Packet} from '../Packet'; -import {Utils} from '../Utils'; -import {FilterResponse} from '../../enums/FilterResponse'; -import {AvatarPropertiesReplyMessage} from '../messages/AvatarPropertiesReply'; -import {AvatarPropertiesReplyEvent} from '../..'; -import {AvatarPropertiesRequestMessage} from '../messages/AvatarPropertiesRequest'; +import { UUID } from '../UUID'; +import { AgentAnimationMessage } from '../messages/AgentAnimation'; +import { PacketFlags } from '../../enums/PacketFlags'; +import { CommandsBase } from './CommandsBase'; +import { Vector3 } from '../Vector3'; +import { Message } from '../../enums/Message'; +import { Utils } from '../Utils'; +import { FilterResponse } from '../../enums/FilterResponse'; +import { AvatarPropertiesReplyMessage } from '../messages/AvatarPropertiesReply'; +import { AvatarPropertiesRequestMessage } from '../messages/AvatarPropertiesRequest'; +import { AvatarPropertiesReplyEvent } from '../../events/AvatarPropertiesReplyEvent'; export class AgentCommands extends CommandsBase { diff --git a/lib/classes/commands/AssetCommands.ts b/lib/classes/commands/AssetCommands.ts index ba5a932..cd8cdf5 100644 --- a/lib/classes/commands/AssetCommands.ts +++ b/lib/classes/commands/AssetCommands.ts @@ -1,20 +1,26 @@ -import {CommandsBase} from './CommandsBase'; -import {UUID} from '../UUID'; +import { CommandsBase } from './CommandsBase'; +import { UUID } from '../UUID'; import * as LLSD from '@caspertech/llsd'; -import {Utils} from '../Utils'; -import {AssetType, FolderType, HTTPAssets, LLMesh, Material, PacketFlags, TransferStatus} from '../..'; -import {PermissionMask} from '../../enums/PermissionMask'; +import { Utils } from '../Utils'; +import { PermissionMask } from '../../enums/PermissionMask'; import * as zlib from 'zlib'; -import {ZlibOptions} from 'zlib'; -import {Color4} from '../Color4'; -import {TransferRequestMessage} from '../messages/TransferRequest'; -import {TransferChannelType} from '../../enums/TransferChannelType'; -import {TransferSourceType} from '../../enums/TransferSourceTypes'; -import {TransferInfoMessage} from '../messages/TransferInfo'; -import {Message} from '../../enums/Message'; -import {Packet} from '../Packet'; -import {TransferPacketMessage} from '../messages/TransferPacket'; -import {TransferAbortMessage} from '../messages/TransferAbort'; +import { ZlibOptions } from 'zlib'; +import { Color4 } from '../Color4'; +import { TransferRequestMessage } from '../messages/TransferRequest'; +import { TransferChannelType } from '../../enums/TransferChannelType'; +import { TransferSourceType } from '../../enums/TransferSourceTypes'; +import { TransferInfoMessage } from '../messages/TransferInfo'; +import { Message } from '../../enums/Message'; +import { Packet } from '../Packet'; +import { TransferPacketMessage } from '../messages/TransferPacket'; +import { TransferAbortMessage } from '../messages/TransferAbort'; +import { AssetType } from '../../enums/AssetType'; +import { PacketFlags } from '../../enums/PacketFlags'; +import { TransferStatus } from '../../enums/TransferStatus'; +import { Material } from '../public/Material'; +import { LLMesh } from '../public/LLMesh'; +import { FolderType } from '../../enums/FolderType'; +import { HTTPAssets } from '../../enums/HTTPAssets'; export class AssetCommands extends CommandsBase { diff --git a/lib/classes/commands/CommandsBase.ts b/lib/classes/commands/CommandsBase.ts index 6abbdba..77cbc44 100644 --- a/lib/classes/commands/CommandsBase.ts +++ b/lib/classes/commands/CommandsBase.ts @@ -1,7 +1,7 @@ -import {Region} from '../Region'; -import {Bot} from '../../Bot'; -import {Agent} from '../Agent'; -import {Circuit} from '../Circuit'; +import { Region } from '../Region'; +import { Bot } from '../../Bot'; +import { Agent } from '../Agent'; +import { Circuit } from '../Circuit'; export class CommandsBase { diff --git a/lib/classes/commands/CommunicationsCommands.ts b/lib/classes/commands/CommunicationsCommands.ts index 639ea06..db51fa4 100644 --- a/lib/classes/commands/CommunicationsCommands.ts +++ b/lib/classes/commands/CommunicationsCommands.ts @@ -1,15 +1,17 @@ -import {CommandsBase} from './CommandsBase'; -import {UUID} from '../UUID'; -import {Utils} from '../Utils'; -import {ImprovedInstantMessageMessage} from '../messages/ImprovedInstantMessage'; -import {Vector3} from '../Vector3'; -import {ChatFromViewerMessage} from '../messages/ChatFromViewer'; -import {ChatType} from '../../enums/ChatType'; -import {InstantMessageDialog} from '../../enums/InstantMessageDialog'; +import { CommandsBase } from './CommandsBase'; +import { UUID } from '../UUID'; +import { Utils } from '../Utils'; +import { ImprovedInstantMessageMessage } from '../messages/ImprovedInstantMessage'; +import { Vector3 } from '../Vector3'; +import { ChatFromViewerMessage } from '../messages/ChatFromViewer'; +import { ChatType } from '../../enums/ChatType'; +import { InstantMessageDialog } from '../../enums/InstantMessageDialog'; +import { ScriptDialogReplyMessage } from '../messages/ScriptDialogReply'; +import * as LLSD from '@caspertech/llsd'; +import { PacketFlags } from '../../enums/PacketFlags'; +import { GroupChatSessionJoinEvent } from '../../events/GroupChatSessionJoinEvent'; +import { ScriptDialogEvent } from '../../events/ScriptDialogEvent'; import Timer = NodeJS.Timer; -import {GroupChatSessionJoinEvent, PacketFlags, ScriptDialogEvent} from '../..'; -import {ScriptDialogReplyMessage} from '../messages/ScriptDialogReply'; -import * as LLSD from "@caspertech/llsd"; export class CommunicationsCommands extends CommandsBase { diff --git a/lib/classes/commands/FriendCommands.ts b/lib/classes/commands/FriendCommands.ts index 548a78c..69ceb2b 100644 --- a/lib/classes/commands/FriendCommands.ts +++ b/lib/classes/commands/FriendCommands.ts @@ -1,36 +1,34 @@ -import {CommandsBase} from './CommandsBase'; -import {Region} from '../Region'; -import {Agent} from '../Agent'; -import {Bot} from '../../Bot'; -import {Subscription} from 'rxjs/internal/Subscription'; -import {Message} from '../../enums/Message'; -import {Packet} from '../Packet'; -import {OnlineNotificationMessage} from '../messages/OnlineNotification'; -import {OfflineNotificationMessage} from '../messages/OfflineNotification'; -import {TerminateFriendshipMessage} from '../messages/TerminateFriendship'; -import { - FolderType, - Friend, - FriendOnlineEvent, - FriendRemovedEvent, - FriendRequestEvent, - FriendRightsEvent, - MapLocation, - PacketFlags, - RightsFlags, - UUID, - Vector3 -} from '../..'; -import {AcceptFriendshipMessage} from '../messages/AcceptFriendship'; -import {ImprovedInstantMessageMessage} from '../messages/ImprovedInstantMessage'; -import {InstantMessageDialog} from '../../enums/InstantMessageDialog'; -import {Utils} from '../Utils'; -import {DeclineFriendshipMessage} from '../messages/DeclineFriendship'; -import {ChangeUserRightsMessage} from '../messages/ChangeUserRights'; -import {FindAgentMessage} from '../messages/FindAgent'; -import {IPAddress} from '../IPAddress'; -import {FilterResponse} from '../../enums/FilterResponse'; -import {GrantUserRightsMessage} from '../messages/GrantUserRights'; +import { CommandsBase } from './CommandsBase'; +import { Region } from '../Region'; +import { Agent } from '../Agent'; +import { Bot } from '../../Bot'; +import { Subscription } from 'rxjs/internal/Subscription'; +import { Message } from '../../enums/Message'; +import { Packet } from '../Packet'; +import { OnlineNotificationMessage } from '../messages/OnlineNotification'; +import { OfflineNotificationMessage } from '../messages/OfflineNotification'; +import { TerminateFriendshipMessage } from '../messages/TerminateFriendship'; +import { AcceptFriendshipMessage } from '../messages/AcceptFriendship'; +import { ImprovedInstantMessageMessage } from '../messages/ImprovedInstantMessage'; +import { InstantMessageDialog } from '../../enums/InstantMessageDialog'; +import { Utils } from '../Utils'; +import { DeclineFriendshipMessage } from '../messages/DeclineFriendship'; +import { ChangeUserRightsMessage } from '../messages/ChangeUserRights'; +import { FindAgentMessage } from '../messages/FindAgent'; +import { IPAddress } from '../IPAddress'; +import { FilterResponse } from '../../enums/FilterResponse'; +import { GrantUserRightsMessage } from '../messages/GrantUserRights'; +import { Friend } from '../public/Friend'; +import { RightsFlags } from '../../enums/RightsFlags'; +import { FriendOnlineEvent } from '../../events/FriendOnlineEvent'; +import { FriendRemovedEvent } from '../../events/FriendRemovedEvent'; +import { FriendRightsEvent } from '../../events/FriendRightsEvent'; +import { UUID } from '../UUID'; +import { PacketFlags } from '../../enums/PacketFlags'; +import { MapLocation } from '../public/interfaces/MapLocation'; +import { FriendRequestEvent } from '../../events/FriendRequestEvent'; +import { FolderType } from '../../enums/FolderType'; +import { Vector3 } from '../Vector3'; export class FriendCommands extends CommandsBase { diff --git a/lib/classes/commands/GridCommands.ts b/lib/classes/commands/GridCommands.ts index 7a1462f..69581d0 100644 --- a/lib/classes/commands/GridCommands.ts +++ b/lib/classes/commands/GridCommands.ts @@ -1,23 +1,28 @@ import * as Long from 'long'; -import {MapItemReplyMessage} from '../messages/MapItemReply'; -import {Message} from '../../enums/Message'; -import {MapBlockReplyMessage} from '../messages/MapBlockReply'; -import {MapBlockRequestMessage} from '../messages/MapBlockRequest'; -import {UUID} from '../UUID'; -import {MapItemRequestMessage} from '../messages/MapItemRequest'; -import {Utils} from '../Utils'; -import {GridItemType} from '../../enums/GridItemType'; -import {CommandsBase} from './CommandsBase'; -import {AvatarPickerRequestMessage} from '../messages/AvatarPickerRequest'; -import {AvatarPickerReplyMessage} from '../messages/AvatarPickerReply'; -import {FilterResponse} from '../../enums/FilterResponse'; -import {MapNameRequestMessage} from '../messages/MapNameRequest'; -import {GridLayerType} from '../../enums/GridLayerType'; -import {MapBlock} from '../MapBlock'; -import {Avatar, MapInfoRangeReplyEvent, MapInfoReplyEvent, PacketFlags, RegionInfoReplyEvent, Vector2} from '../..'; -import {TimeoutError} from '../TimeoutError'; -import {UUIDNameRequestMessage} from '../messages/UUIDNameRequest'; -import {UUIDNameReplyMessage} from '../messages/UUIDNameReply'; +import { MapItemReplyMessage } from '../messages/MapItemReply'; +import { Message } from '../../enums/Message'; +import { MapBlockReplyMessage } from '../messages/MapBlockReply'; +import { MapBlockRequestMessage } from '../messages/MapBlockRequest'; +import { UUID } from '../UUID'; +import { MapItemRequestMessage } from '../messages/MapItemRequest'; +import { Utils } from '../Utils'; +import { GridItemType } from '../../enums/GridItemType'; +import { CommandsBase } from './CommandsBase'; +import { AvatarPickerRequestMessage } from '../messages/AvatarPickerRequest'; +import { AvatarPickerReplyMessage } from '../messages/AvatarPickerReply'; +import { FilterResponse } from '../../enums/FilterResponse'; +import { MapNameRequestMessage } from '../messages/MapNameRequest'; +import { GridLayerType } from '../../enums/GridLayerType'; +import { MapBlock } from '../MapBlock'; +import { TimeoutError } from '../TimeoutError'; +import { UUIDNameRequestMessage } from '../messages/UUIDNameRequest'; +import { UUIDNameReplyMessage } from '../messages/UUIDNameReply'; +import { RegionInfoReplyEvent } from '../../events/RegionInfoReplyEvent'; +import { MapInfoReplyEvent } from '../../events/MapInfoReplyEvent'; +import { PacketFlags } from '../../enums/PacketFlags'; +import { Vector2 } from '../Vector2'; +import { MapInfoRangeReplyEvent } from '../../events/MapInfoRangeReplyEvent'; +import { Avatar } from '../public/Avatar'; export class GridCommands extends CommandsBase { diff --git a/lib/classes/commands/GroupCommands.ts b/lib/classes/commands/GroupCommands.ts index 0e23648..50a9fa4 100644 --- a/lib/classes/commands/GroupCommands.ts +++ b/lib/classes/commands/GroupCommands.ts @@ -13,12 +13,13 @@ import { GroupRoleDataReplyMessage } from '../messages/GroupRoleDataReply'; import { GroupMember } from '../GroupMember'; import { FilterResponse } from '../../enums/FilterResponse'; import * as LLSD from '@caspertech/llsd'; -import { GroupInviteEvent, GroupProfileReplyEvent } from '../..'; import { EjectGroupMemberRequestMessage } from '../messages/EjectGroupMemberRequest'; import { GroupProfileRequestMessage } from '../messages/GroupProfileRequest'; import { GroupProfileReplyMessage } from '../messages/GroupProfileReply'; import { GroupBanAction } from '../../enums/GroupBanAction'; import { GroupBan } from '../GroupBan'; +import { GroupInviteEvent } from '../../events/GroupInviteEvent'; +import { GroupProfileReplyEvent } from '../../events/GroupProfileReplyEvent'; export class GroupCommands extends CommandsBase { diff --git a/lib/classes/commands/InventoryCommands.ts b/lib/classes/commands/InventoryCommands.ts index 1fe9ff8..cafd7e6 100644 --- a/lib/classes/commands/InventoryCommands.ts +++ b/lib/classes/commands/InventoryCommands.ts @@ -1,11 +1,14 @@ -import {CommandsBase} from './CommandsBase'; -import {InventoryFolder} from '../InventoryFolder'; -import {AssetType, ChatSourceType, InventoryOfferedEvent, PacketFlags, UUID, Vector3} from '../..'; -import {InstantMessageDialog} from '../../enums/InstantMessageDialog'; -import {ImprovedInstantMessageMessage} from '../messages/ImprovedInstantMessage'; -import {Utils} from '../Utils'; -import {InventoryType} from '../../enums/InventoryType'; -import {FolderType} from '../../enums/FolderType'; +import { CommandsBase } from './CommandsBase'; +import { InventoryFolder } from '../InventoryFolder'; +import { InstantMessageDialog } from '../../enums/InstantMessageDialog'; +import { ImprovedInstantMessageMessage } from '../messages/ImprovedInstantMessage'; +import { Utils } from '../Utils'; +import { FolderType } from '../../enums/FolderType'; +import { InventoryOfferedEvent } from '../../events/InventoryOfferedEvent'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { PacketFlags } from '../../enums/PacketFlags'; +import { ChatSourceType } from '../../enums/ChatSourceType'; export class InventoryCommands extends CommandsBase { diff --git a/lib/classes/commands/NetworkCommands.ts b/lib/classes/commands/NetworkCommands.ts index 49db1b4..e24c444 100644 --- a/lib/classes/commands/NetworkCommands.ts +++ b/lib/classes/commands/NetworkCommands.ts @@ -1,6 +1,6 @@ -import {CommandsBase} from './CommandsBase'; -import {PacketFlags} from '../../enums/PacketFlags'; -import {AgentThrottleMessage} from '../messages/AgentThrottle'; +import { CommandsBase } from './CommandsBase'; +import { PacketFlags } from '../../enums/PacketFlags'; +import { AgentThrottleMessage } from '../messages/AgentThrottle'; export class NetworkCommands extends CommandsBase { diff --git a/lib/classes/commands/ParcelCommands.ts b/lib/classes/commands/ParcelCommands.ts index f2f4d5f..7a24d45 100644 --- a/lib/classes/commands/ParcelCommands.ts +++ b/lib/classes/commands/ParcelCommands.ts @@ -1,12 +1,13 @@ -import {CommandsBase} from './CommandsBase'; -import {ParcelInfoRequestMessage} from '../messages/ParcelInfoRequest'; -import {UUID} from '../UUID'; -import {Message} from '../../enums/Message'; -import {ParcelInfoReplyMessage} from '../messages/ParcelInfoReply'; -import {Packet} from '../Packet'; -import {FilterResponse} from '../../enums/FilterResponse'; -import {Utils} from '../Utils'; -import {PacketFlags, ParcelInfoReplyEvent, Vector3} from '../..'; +import { CommandsBase } from './CommandsBase'; +import { ParcelInfoRequestMessage } from '../messages/ParcelInfoRequest'; +import { UUID } from '../UUID'; +import { Message } from '../../enums/Message'; +import { ParcelInfoReplyMessage } from '../messages/ParcelInfoReply'; +import { FilterResponse } from '../../enums/FilterResponse'; +import { Utils } from '../Utils'; +import { ParcelInfoReplyEvent } from '../../events/ParcelInfoReplyEvent'; +import { PacketFlags } from '../../enums/PacketFlags'; +import { Vector3 } from '../Vector3'; // This class was added to provide a new "Category" of commands, since we don't have any parcel specific functionality yet. diff --git a/lib/classes/commands/RegionCommands.ts b/lib/classes/commands/RegionCommands.ts index 1e90ab1..255a1f8 100644 --- a/lib/classes/commands/RegionCommands.ts +++ b/lib/classes/commands/RegionCommands.ts @@ -1,42 +1,40 @@ -import {CommandsBase} from './CommandsBase'; -import {UUID} from '../UUID'; +import { CommandsBase } from './CommandsBase'; +import { UUID } from '../UUID'; +import { RegionHandleRequestMessage } from '../messages/RegionHandleRequest'; +import { Message } from '../../enums/Message'; +import { FilterResponse } from '../../enums/FilterResponse'; +import { RegionIDAndHandleReplyMessage } from '../messages/RegionIDAndHandleReply'; +import { ObjectGrabMessage } from '../messages/ObjectGrab'; +import { ObjectDeGrabMessage } from '../messages/ObjectDeGrab'; +import { ObjectGrabUpdateMessage } from '../messages/ObjectGrabUpdate'; +import { ObjectSelectMessage } from '../messages/ObjectSelect'; +import { ObjectPropertiesMessage } from '../messages/ObjectProperties'; +import { Utils } from '../Utils'; +import { ObjectDeselectMessage } from '../messages/ObjectDeselect'; +import { RequestTaskInventoryMessage } from '../messages/RequestTaskInventory'; +import { ReplyTaskInventoryMessage } from '../messages/ReplyTaskInventory'; +import { InventoryItem } from '../InventoryItem'; +import { AssetTypeLL } from '../../enums/AssetTypeLL'; +import { SaleTypeLL } from '../../enums/SaleTypeLL'; +import { InventoryTypeLL } from '../../enums/InventoryTypeLL'; +import { ObjectAddMessage } from '../messages/ObjectAdd'; +import { Quaternion } from '../Quaternion'; +import { RezObjectMessage } from '../messages/RezObject'; +import { PermissionMask } from '../../enums/PermissionMask'; +import { SelectedObjectEvent } from '../../events/SelectedObjectEvent'; +import Timer = NodeJS.Timer; +import { PacketFlags } from '../../enums/PacketFlags'; +import { GameObject } from '../public/GameObject'; +import { PCode } from '../../enums/PCode'; +import { PrimFlags } from '../../enums/PrimFlags'; +import { AssetType } from '../../enums/AssetType'; +import { NewObjectEvent } from '../../events/NewObjectEvent'; +import { Vector3 } from '../Vector3'; +import { Parcel } from '../public/Parcel'; + import * as Long from 'long'; -import {RegionHandleRequestMessage} from '../messages/RegionHandleRequest'; -import {Message} from '../../enums/Message'; -import {FilterResponse} from '../../enums/FilterResponse'; -import {RegionIDAndHandleReplyMessage} from '../messages/RegionIDAndHandleReply'; -import { - AssetType, - GameObject, - InventoryItemFlags, - NewObjectEvent, - PacketFlags, - Parcel, - PCode, - PrimFlags, - Vector3 -} from '../..'; -import {ObjectGrabMessage} from '../messages/ObjectGrab'; -import {ObjectDeGrabMessage} from '../messages/ObjectDeGrab'; -import {ObjectGrabUpdateMessage} from '../messages/ObjectGrabUpdate'; -import {ObjectSelectMessage} from '../messages/ObjectSelect'; -import {ObjectPropertiesMessage} from '../messages/ObjectProperties'; -import {Utils} from '../Utils'; -import {ObjectDeselectMessage} from '../messages/ObjectDeselect'; import * as micromatch from 'micromatch'; import * as LLSD from '@caspertech/llsd'; -import {RequestTaskInventoryMessage} from '../messages/RequestTaskInventory'; -import {ReplyTaskInventoryMessage} from '../messages/ReplyTaskInventory'; -import {InventoryItem} from '../InventoryItem'; -import {AssetTypeLL} from '../../enums/AssetTypeLL'; -import {SaleTypeLL} from '../../enums/SaleTypeLL'; -import {InventoryTypeLL} from '../../enums/InventoryTypeLL'; -import {ObjectAddMessage} from '../messages/ObjectAdd'; -import {Quaternion} from '../Quaternion'; -import Timer = NodeJS.Timer; -import {RezObjectMessage} from '../messages/RezObject'; -import {PermissionMask} from '../../enums/PermissionMask'; -import {SelectedObjectEvent} from '../../events/SelectedObjectEvent'; export class RegionCommands extends CommandsBase { diff --git a/lib/classes/commands/TeleportCommands.ts b/lib/classes/commands/TeleportCommands.ts index 36e42b8..5a835da 100644 --- a/lib/classes/commands/TeleportCommands.ts +++ b/lib/classes/commands/TeleportCommands.ts @@ -1,13 +1,18 @@ -import {CommandsBase} from './CommandsBase'; -import {Region} from '../Region'; -import {TeleportEventType} from '../../enums/TeleportEventType'; -import {TeleportLureRequestMessage} from '../messages/TeleportLureRequest'; -import {Vector3} from '../Vector3'; -import {TeleportLocationRequestMessage} from '../messages/TeleportLocationRequest'; +import { CommandsBase } from './CommandsBase'; +import { Region } from '../Region'; +import { TeleportEventType } from '../../enums/TeleportEventType'; +import { TeleportLureRequestMessage } from '../messages/TeleportLureRequest'; +import { Vector3 } from '../Vector3'; +import { TeleportLocationRequestMessage } from '../messages/TeleportLocationRequest'; import * as Long from 'long'; -import {LureEvent, PacketFlags, RegionInfoReplyEvent, TeleportEvent, TeleportFlags, Bot} from '../..'; -import {Agent} from '../Agent'; -import {Subscription} from 'rxjs/internal/Subscription'; +import { Agent } from '../Agent'; +import { Subscription } from 'rxjs/internal/Subscription'; +import { TeleportEvent } from '../../events/TeleportEvent'; +import { LureEvent } from '../../events/LureEvent'; +import { TeleportFlags } from '../../enums/TeleportFlags'; +import { PacketFlags } from '../../enums/PacketFlags'; +import { RegionInfoReplyEvent } from '../../events/RegionInfoReplyEvent'; +import { Bot } from '../../Bot'; export class TeleportCommands extends CommandsBase { diff --git a/lib/classes/interfaces/IGameObjectData.ts b/lib/classes/interfaces/IGameObjectData.ts index 2b5a9ec..144bb2e 100644 --- a/lib/classes/interfaces/IGameObjectData.ts +++ b/lib/classes/interfaces/IGameObjectData.ts @@ -1,20 +1,20 @@ -import {UUID} from '../UUID'; -import * as Long from 'long'; -import {NameValue} from '../NameValue'; -import {Vector3} from '../Vector3'; -import {TextureEntry} from '../TextureEntry'; -import {Color4} from '../Color4'; -import {Quaternion} from '../Quaternion'; -import {Vector4} from '../Vector4'; -import {Tree} from '../../enums/Tree'; -import {PCode, SoundFlags} from '../..'; -import {ParticleSystem} from '../ParticleSystem'; -import {GameObject} from '../public/GameObject'; -import {FlexibleData} from '../public/FlexibleData'; -import {LightData} from '../public/LightData'; -import {LightImageData} from '../public/LightImageData'; -import {SculptData} from '../public/SculptData'; -import {MeshData} from '../public/MeshData'; +import { PCode } from '../../enums/PCode'; +import { SoundFlags } from '../../enums/SoundFlags'; +import { GameObject } from '../public/GameObject'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { Color4 } from '../Color4'; +import { Quaternion } from '../Quaternion'; +import { Vector4 } from '../Vector4'; +import { Tree } from '../../enums/Tree'; +import { ParticleSystem } from '../ParticleSystem'; +import { NameValue } from '../NameValue'; +import { TextureEntry } from '../TextureEntry'; +import { FlexibleData } from '../public/FlexibleData'; +import { LightData } from '../public/LightData'; +import { LightImageData } from '../public/LightImageData'; +import { SculptData } from '../public/SculptData'; +import { MeshData } from '../public/MeshData'; export interface IGameObjectData { @@ -115,4 +115,4 @@ export interface IGameObjectData gravityMultiplier?: number; physicsShapeType?: number; restitution?: number; -} \ No newline at end of file +} diff --git a/lib/classes/interfaces/IObjectStore.ts b/lib/classes/interfaces/IObjectStore.ts index 84e1c9f..07bf431 100644 --- a/lib/classes/interfaces/IObjectStore.ts +++ b/lib/classes/interfaces/IObjectStore.ts @@ -1,6 +1,6 @@ -import {RBush3D} from 'rbush-3d/dist'; -import {UUID} from '../UUID'; -import {GameObject} from '../public/GameObject'; +import { RBush3D } from 'rbush-3d/dist'; +import { UUID } from '../UUID'; +import { GameObject } from '../public/GameObject'; export interface IObjectStore { diff --git a/lib/classes/interfaces/ITreeBoundingBox.ts b/lib/classes/interfaces/ITreeBoundingBox.ts index 2db70fd..4f1552f 100644 --- a/lib/classes/interfaces/ITreeBoundingBox.ts +++ b/lib/classes/interfaces/ITreeBoundingBox.ts @@ -1,5 +1,5 @@ -import {BBox} from 'rbush-3d/dist'; -import {GameObject} from '../public/GameObject'; +import { BBox } from 'rbush-3d/dist'; +import { GameObject } from '../public/GameObject'; export interface ITreeBoundingBox extends BBox { diff --git a/lib/classes/messages/AbortXfer.ts b/lib/classes/messages/AbortXfer.ts index 63f1f33..098fca7 100644 --- a/lib/classes/messages/AbortXfer.ts +++ b/lib/classes/messages/AbortXfer.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AbortXferMessage implements MessageBase { diff --git a/lib/classes/messages/AcceptCallingCard.ts b/lib/classes/messages/AcceptCallingCard.ts index 8686b4e..a11494e 100644 --- a/lib/classes/messages/AcceptCallingCard.ts +++ b/lib/classes/messages/AcceptCallingCard.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AcceptCallingCardMessage implements MessageBase { @@ -70,6 +70,10 @@ export class AcceptCallingCardMessage implements MessageBase newObjTransactionBlock['TransactionID'] = new UUID(buf, pos); pos += 16; this.TransactionBlock = newObjTransactionBlock; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.FolderData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AcceptFriendship.ts b/lib/classes/messages/AcceptFriendship.ts index 5884b7f..1a3b57f 100644 --- a/lib/classes/messages/AcceptFriendship.ts +++ b/lib/classes/messages/AcceptFriendship.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AcceptFriendshipMessage implements MessageBase { @@ -70,6 +70,10 @@ export class AcceptFriendshipMessage implements MessageBase newObjTransactionBlock['TransactionID'] = new UUID(buf, pos); pos += 16; this.TransactionBlock = newObjTransactionBlock; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.FolderData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ActivateGestures.ts b/lib/classes/messages/ActivateGestures.ts index 4d02641..f01cd8c 100644 --- a/lib/classes/messages/ActivateGestures.ts +++ b/lib/classes/messages/ActivateGestures.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ActivateGesturesMessage implements MessageBase { @@ -70,6 +70,10 @@ export class ActivateGesturesMessage implements MessageBase newObjAgentData['Flags'] = buf.readUInt32LE(pos); pos += 4; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Data = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ActivateGroup.ts b/lib/classes/messages/ActivateGroup.ts index d2ededf..ae3fce8 100644 --- a/lib/classes/messages/ActivateGroup.ts +++ b/lib/classes/messages/ActivateGroup.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ActivateGroupMessage implements MessageBase { diff --git a/lib/classes/messages/AddCircuitCode.ts b/lib/classes/messages/AddCircuitCode.ts index cfd7260..71530a9 100644 --- a/lib/classes/messages/AddCircuitCode.ts +++ b/lib/classes/messages/AddCircuitCode.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AddCircuitCodeMessage implements MessageBase { diff --git a/lib/classes/messages/AgentAlertMessage.ts b/lib/classes/messages/AgentAlertMessage.ts index b0ad3d1..af33ba6 100644 --- a/lib/classes/messages/AgentAlertMessage.ts +++ b/lib/classes/messages/AgentAlertMessage.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentAlertMessageMessage implements MessageBase { diff --git a/lib/classes/messages/AgentAnimation.ts b/lib/classes/messages/AgentAnimation.ts index d5adc43..cb06e74 100644 --- a/lib/classes/messages/AgentAnimation.ts +++ b/lib/classes/messages/AgentAnimation.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentAnimationMessage implements MessageBase { @@ -80,6 +80,10 @@ export class AgentAnimationMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.AnimationList = []; for (let i = 0; i < count; i++) @@ -96,6 +100,10 @@ export class AgentAnimationMessage implements MessageBase newObjAnimationList['StartAnim'] = (buf.readUInt8(pos++) === 1); this.AnimationList.push(newObjAnimationList); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.PhysicalAvatarEventList = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AgentCachedTexture.ts b/lib/classes/messages/AgentCachedTexture.ts index fd11fe4..bd67525 100644 --- a/lib/classes/messages/AgentCachedTexture.ts +++ b/lib/classes/messages/AgentCachedTexture.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentCachedTextureMessage implements MessageBase { @@ -66,6 +66,10 @@ export class AgentCachedTextureMessage implements MessageBase newObjAgentData['SerialNum'] = buf.readInt32LE(pos); pos += 4; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.WearableData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AgentCachedTextureResponse.ts b/lib/classes/messages/AgentCachedTextureResponse.ts index c57146a..a7e6b6a 100644 --- a/lib/classes/messages/AgentCachedTextureResponse.ts +++ b/lib/classes/messages/AgentCachedTextureResponse.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentCachedTextureResponseMessage implements MessageBase { @@ -80,6 +80,10 @@ export class AgentCachedTextureResponseMessage implements MessageBase newObjAgentData['SerialNum'] = buf.readInt32LE(pos); pos += 4; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.WearableData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AgentDataUpdate.ts b/lib/classes/messages/AgentDataUpdate.ts index 3dc92ea..59853d8 100644 --- a/lib/classes/messages/AgentDataUpdate.ts +++ b/lib/classes/messages/AgentDataUpdate.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentDataUpdateMessage implements MessageBase { diff --git a/lib/classes/messages/AgentDataUpdateRequest.ts b/lib/classes/messages/AgentDataUpdateRequest.ts index db018fb..836c72e 100644 --- a/lib/classes/messages/AgentDataUpdateRequest.ts +++ b/lib/classes/messages/AgentDataUpdateRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentDataUpdateRequestMessage implements MessageBase { diff --git a/lib/classes/messages/AgentDropGroup.ts b/lib/classes/messages/AgentDropGroup.ts index 368e12a..be60f47 100644 --- a/lib/classes/messages/AgentDropGroup.ts +++ b/lib/classes/messages/AgentDropGroup.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentDropGroupMessage implements MessageBase { diff --git a/lib/classes/messages/AgentFOV.ts b/lib/classes/messages/AgentFOV.ts index 21ae392..45d77dc 100644 --- a/lib/classes/messages/AgentFOV.ts +++ b/lib/classes/messages/AgentFOV.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentFOVMessage implements MessageBase { diff --git a/lib/classes/messages/AgentGroupDataUpdate.ts b/lib/classes/messages/AgentGroupDataUpdate.ts index 9586ce0..69890ea 100644 --- a/lib/classes/messages/AgentGroupDataUpdate.ts +++ b/lib/classes/messages/AgentGroupDataUpdate.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentGroupDataUpdateMessage implements MessageBase { @@ -78,6 +78,10 @@ export class AgentGroupDataUpdateMessage implements MessageBase newObjAgentData['AgentID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.GroupData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AgentHeightWidth.ts b/lib/classes/messages/AgentHeightWidth.ts index ed2c0fc..a63c23b 100644 --- a/lib/classes/messages/AgentHeightWidth.ts +++ b/lib/classes/messages/AgentHeightWidth.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentHeightWidthMessage implements MessageBase { diff --git a/lib/classes/messages/AgentIsNowWearing.ts b/lib/classes/messages/AgentIsNowWearing.ts index f7e781f..dc75431 100644 --- a/lib/classes/messages/AgentIsNowWearing.ts +++ b/lib/classes/messages/AgentIsNowWearing.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentIsNowWearingMessage implements MessageBase { @@ -59,6 +59,10 @@ export class AgentIsNowWearingMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.WearableData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AgentMovementComplete.ts b/lib/classes/messages/AgentMovementComplete.ts index bb40632..759ede5 100644 --- a/lib/classes/messages/AgentMovementComplete.ts +++ b/lib/classes/messages/AgentMovementComplete.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentMovementCompleteMessage implements MessageBase { diff --git a/lib/classes/messages/AgentPause.ts b/lib/classes/messages/AgentPause.ts index d8a81bb..58e90a5 100644 --- a/lib/classes/messages/AgentPause.ts +++ b/lib/classes/messages/AgentPause.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentPauseMessage implements MessageBase { diff --git a/lib/classes/messages/AgentQuitCopy.ts b/lib/classes/messages/AgentQuitCopy.ts index 37306f3..d445e11 100644 --- a/lib/classes/messages/AgentQuitCopy.ts +++ b/lib/classes/messages/AgentQuitCopy.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentQuitCopyMessage implements MessageBase { diff --git a/lib/classes/messages/AgentRequestSit.ts b/lib/classes/messages/AgentRequestSit.ts index 1958182..29ce34c 100644 --- a/lib/classes/messages/AgentRequestSit.ts +++ b/lib/classes/messages/AgentRequestSit.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentRequestSitMessage implements MessageBase { diff --git a/lib/classes/messages/AgentResume.ts b/lib/classes/messages/AgentResume.ts index 960cdf8..b535c6c 100644 --- a/lib/classes/messages/AgentResume.ts +++ b/lib/classes/messages/AgentResume.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentResumeMessage implements MessageBase { diff --git a/lib/classes/messages/AgentSetAppearance.ts b/lib/classes/messages/AgentSetAppearance.ts index b69d0e1..0c041e6 100644 --- a/lib/classes/messages/AgentSetAppearance.ts +++ b/lib/classes/messages/AgentSetAppearance.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentSetAppearanceMessage implements MessageBase { @@ -90,6 +90,10 @@ export class AgentSetAppearanceMessage implements MessageBase newObjAgentData['Size'] = new Vector3(buf, pos, false); pos += 12; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.WearableData = []; for (let i = 0; i < count; i++) @@ -116,6 +120,10 @@ export class AgentSetAppearanceMessage implements MessageBase newObjObjectData['TextureEntry'] = buf.slice(pos, pos + varLength); pos += varLength; this.ObjectData = newObjObjectData; + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.VisualParam = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AgentSit.ts b/lib/classes/messages/AgentSit.ts index 5dc5c61..e3a8a10 100644 --- a/lib/classes/messages/AgentSit.ts +++ b/lib/classes/messages/AgentSit.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentSitMessage implements MessageBase { diff --git a/lib/classes/messages/AgentThrottle.ts b/lib/classes/messages/AgentThrottle.ts index 29f2014..1f18de9 100644 --- a/lib/classes/messages/AgentThrottle.ts +++ b/lib/classes/messages/AgentThrottle.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentThrottleMessage implements MessageBase { diff --git a/lib/classes/messages/AgentUpdate.ts b/lib/classes/messages/AgentUpdate.ts index d3d01a9..b1b7091 100644 --- a/lib/classes/messages/AgentUpdate.ts +++ b/lib/classes/messages/AgentUpdate.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {Quaternion} from '../Quaternion'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { Quaternion } from '../Quaternion'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentUpdateMessage implements MessageBase { diff --git a/lib/classes/messages/AgentWearablesRequest.ts b/lib/classes/messages/AgentWearablesRequest.ts index 2b5f4f9..16a033e 100644 --- a/lib/classes/messages/AgentWearablesRequest.ts +++ b/lib/classes/messages/AgentWearablesRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentWearablesRequestMessage implements MessageBase { diff --git a/lib/classes/messages/AgentWearablesUpdate.ts b/lib/classes/messages/AgentWearablesUpdate.ts index 1221c1e..26292e6 100644 --- a/lib/classes/messages/AgentWearablesUpdate.ts +++ b/lib/classes/messages/AgentWearablesUpdate.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AgentWearablesUpdateMessage implements MessageBase { @@ -69,6 +69,10 @@ export class AgentWearablesUpdateMessage implements MessageBase newObjAgentData['SerialNum'] = buf.readUInt32LE(pos); pos += 4; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.WearableData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AlertMessage.ts b/lib/classes/messages/AlertMessage.ts index 84cef06..2dd6139 100644 --- a/lib/classes/messages/AlertMessage.ts +++ b/lib/classes/messages/AlertMessage.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AlertMessageMessage implements MessageBase { @@ -77,6 +77,10 @@ export class AlertMessageMessage implements MessageBase newObjAlertData['Message'] = buf.slice(pos, pos + varLength); pos += varLength; this.AlertData = newObjAlertData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.AlertInfo = []; for (let i = 0; i < count; i++) @@ -96,6 +100,10 @@ export class AlertMessageMessage implements MessageBase pos += varLength; this.AlertInfo.push(newObjAlertInfo); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.AgentInfo = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AssetUploadComplete.ts b/lib/classes/messages/AssetUploadComplete.ts index 3a7ad10..3e216c5 100644 --- a/lib/classes/messages/AssetUploadComplete.ts +++ b/lib/classes/messages/AssetUploadComplete.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AssetUploadCompleteMessage implements MessageBase { diff --git a/lib/classes/messages/AssetUploadRequest.ts b/lib/classes/messages/AssetUploadRequest.ts index eec2b55..b1737ee 100644 --- a/lib/classes/messages/AssetUploadRequest.ts +++ b/lib/classes/messages/AssetUploadRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AssetUploadRequestMessage implements MessageBase { diff --git a/lib/classes/messages/AtomicPassObject.ts b/lib/classes/messages/AtomicPassObject.ts index 5f4e16a..217207b 100644 --- a/lib/classes/messages/AtomicPassObject.ts +++ b/lib/classes/messages/AtomicPassObject.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AtomicPassObjectMessage implements MessageBase { diff --git a/lib/classes/messages/AttachedSound.ts b/lib/classes/messages/AttachedSound.ts index cc94450..768ea9d 100644 --- a/lib/classes/messages/AttachedSound.ts +++ b/lib/classes/messages/AttachedSound.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AttachedSoundMessage implements MessageBase { diff --git a/lib/classes/messages/AttachedSoundGainChange.ts b/lib/classes/messages/AttachedSoundGainChange.ts index d59a2f0..8b2398e 100644 --- a/lib/classes/messages/AttachedSoundGainChange.ts +++ b/lib/classes/messages/AttachedSoundGainChange.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AttachedSoundGainChangeMessage implements MessageBase { diff --git a/lib/classes/messages/AvatarAnimation.ts b/lib/classes/messages/AvatarAnimation.ts index 026179d..f2cec99 100644 --- a/lib/classes/messages/AvatarAnimation.ts +++ b/lib/classes/messages/AvatarAnimation.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarAnimationMessage implements MessageBase { @@ -84,6 +84,10 @@ export class AvatarAnimationMessage implements MessageBase newObjSender['ID'] = new UUID(buf, pos); pos += 16; this.Sender = newObjSender; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.AnimationList = []; for (let i = 0; i < count; i++) @@ -101,6 +105,10 @@ export class AvatarAnimationMessage implements MessageBase pos += 4; this.AnimationList.push(newObjAnimationList); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.AnimationSourceList = []; for (let i = 0; i < count; i++) @@ -114,6 +122,10 @@ export class AvatarAnimationMessage implements MessageBase pos += 16; this.AnimationSourceList.push(newObjAnimationSourceList); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.PhysicalAvatarEventList = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AvatarAppearance.ts b/lib/classes/messages/AvatarAppearance.ts index e381809..f087599 100644 --- a/lib/classes/messages/AvatarAppearance.ts +++ b/lib/classes/messages/AvatarAppearance.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarAppearanceMessage implements MessageBase { @@ -97,6 +97,10 @@ export class AvatarAppearanceMessage implements MessageBase newObjObjectData['TextureEntry'] = buf.slice(pos, pos + varLength); pos += varLength; this.ObjectData = newObjObjectData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.VisualParam = []; for (let i = 0; i < count; i++) @@ -109,6 +113,10 @@ export class AvatarAppearanceMessage implements MessageBase newObjVisualParam['ParamValue'] = buf.readUInt8(pos++); this.VisualParam.push(newObjVisualParam); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.AppearanceData = []; for (let i = 0; i < count; i++) @@ -129,6 +137,10 @@ export class AvatarAppearanceMessage implements MessageBase pos += 4; this.AppearanceData.push(newObjAppearanceData); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.AppearanceHover = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AvatarClassifiedReply.ts b/lib/classes/messages/AvatarClassifiedReply.ts index 093af88..cd85f7d 100644 --- a/lib/classes/messages/AvatarClassifiedReply.ts +++ b/lib/classes/messages/AvatarClassifiedReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarClassifiedReplyMessage implements MessageBase { @@ -71,6 +71,10 @@ export class AvatarClassifiedReplyMessage implements MessageBase newObjAgentData['TargetID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Data = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AvatarGroupsReply.ts b/lib/classes/messages/AvatarGroupsReply.ts index 8bdf215..a309ec5 100644 --- a/lib/classes/messages/AvatarGroupsReply.ts +++ b/lib/classes/messages/AvatarGroupsReply.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarGroupsReplyMessage implements MessageBase { @@ -90,6 +90,10 @@ export class AvatarGroupsReplyMessage implements MessageBase newObjAgentData['AvatarID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.GroupData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AvatarInterestsReply.ts b/lib/classes/messages/AvatarInterestsReply.ts index dd624c2..613d210 100644 --- a/lib/classes/messages/AvatarInterestsReply.ts +++ b/lib/classes/messages/AvatarInterestsReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarInterestsReplyMessage implements MessageBase { diff --git a/lib/classes/messages/AvatarInterestsUpdate.ts b/lib/classes/messages/AvatarInterestsUpdate.ts index cea6238..4dc9788 100644 --- a/lib/classes/messages/AvatarInterestsUpdate.ts +++ b/lib/classes/messages/AvatarInterestsUpdate.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarInterestsUpdateMessage implements MessageBase { diff --git a/lib/classes/messages/AvatarNotesReply.ts b/lib/classes/messages/AvatarNotesReply.ts index feddbfc..f7e2ac5 100644 --- a/lib/classes/messages/AvatarNotesReply.ts +++ b/lib/classes/messages/AvatarNotesReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarNotesReplyMessage implements MessageBase { diff --git a/lib/classes/messages/AvatarNotesUpdate.ts b/lib/classes/messages/AvatarNotesUpdate.ts index adb235c..523f059 100644 --- a/lib/classes/messages/AvatarNotesUpdate.ts +++ b/lib/classes/messages/AvatarNotesUpdate.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarNotesUpdateMessage implements MessageBase { diff --git a/lib/classes/messages/AvatarPickerReply.ts b/lib/classes/messages/AvatarPickerReply.ts index 96e8be6..2d27723 100644 --- a/lib/classes/messages/AvatarPickerReply.ts +++ b/lib/classes/messages/AvatarPickerReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarPickerReplyMessage implements MessageBase { @@ -75,6 +75,10 @@ export class AvatarPickerReplyMessage implements MessageBase newObjAgentData['QueryID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Data = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AvatarPickerRequest.ts b/lib/classes/messages/AvatarPickerRequest.ts index f9c5c24..76bb799 100644 --- a/lib/classes/messages/AvatarPickerRequest.ts +++ b/lib/classes/messages/AvatarPickerRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarPickerRequestMessage implements MessageBase { diff --git a/lib/classes/messages/AvatarPickerRequestBackend.ts b/lib/classes/messages/AvatarPickerRequestBackend.ts index 45e1f12..0325778 100644 --- a/lib/classes/messages/AvatarPickerRequestBackend.ts +++ b/lib/classes/messages/AvatarPickerRequestBackend.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarPickerRequestBackendMessage implements MessageBase { diff --git a/lib/classes/messages/AvatarPicksReply.ts b/lib/classes/messages/AvatarPicksReply.ts index 94135d3..1d3eb9e 100644 --- a/lib/classes/messages/AvatarPicksReply.ts +++ b/lib/classes/messages/AvatarPicksReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarPicksReplyMessage implements MessageBase { @@ -71,6 +71,10 @@ export class AvatarPicksReplyMessage implements MessageBase newObjAgentData['TargetID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Data = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/AvatarPropertiesReply.ts b/lib/classes/messages/AvatarPropertiesReply.ts index 4f3d068..203a110 100644 --- a/lib/classes/messages/AvatarPropertiesReply.ts +++ b/lib/classes/messages/AvatarPropertiesReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarPropertiesReplyMessage implements MessageBase { diff --git a/lib/classes/messages/AvatarPropertiesRequest.ts b/lib/classes/messages/AvatarPropertiesRequest.ts index e329919..74408bc 100644 --- a/lib/classes/messages/AvatarPropertiesRequest.ts +++ b/lib/classes/messages/AvatarPropertiesRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarPropertiesRequestMessage implements MessageBase { diff --git a/lib/classes/messages/AvatarPropertiesRequestBackend.ts b/lib/classes/messages/AvatarPropertiesRequestBackend.ts index d96f2c7..85e79b3 100644 --- a/lib/classes/messages/AvatarPropertiesRequestBackend.ts +++ b/lib/classes/messages/AvatarPropertiesRequestBackend.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarPropertiesRequestBackendMessage implements MessageBase { diff --git a/lib/classes/messages/AvatarPropertiesUpdate.ts b/lib/classes/messages/AvatarPropertiesUpdate.ts index 7b392d2..88dad20 100644 --- a/lib/classes/messages/AvatarPropertiesUpdate.ts +++ b/lib/classes/messages/AvatarPropertiesUpdate.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarPropertiesUpdateMessage implements MessageBase { diff --git a/lib/classes/messages/AvatarSitResponse.ts b/lib/classes/messages/AvatarSitResponse.ts index f4386b6..2f4fed8 100644 --- a/lib/classes/messages/AvatarSitResponse.ts +++ b/lib/classes/messages/AvatarSitResponse.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {Quaternion} from '../Quaternion'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { Quaternion } from '../Quaternion'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarSitResponseMessage implements MessageBase { diff --git a/lib/classes/messages/AvatarTextureUpdate.ts b/lib/classes/messages/AvatarTextureUpdate.ts index 3de8d3c..d066ab6 100644 --- a/lib/classes/messages/AvatarTextureUpdate.ts +++ b/lib/classes/messages/AvatarTextureUpdate.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class AvatarTextureUpdateMessage implements MessageBase { @@ -81,6 +81,10 @@ export class AvatarTextureUpdateMessage implements MessageBase pos += 16; newObjAgentData['TexturesChanged'] = (buf.readUInt8(pos++) === 1); this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.WearableData = []; for (let i = 0; i < count; i++) @@ -102,6 +106,10 @@ export class AvatarTextureUpdateMessage implements MessageBase pos += varLength; this.WearableData.push(newObjWearableData); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.TextureData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/BulkUpdateInventory.ts b/lib/classes/messages/BulkUpdateInventory.ts index d877849..d337880 100644 --- a/lib/classes/messages/BulkUpdateInventory.ts +++ b/lib/classes/messages/BulkUpdateInventory.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class BulkUpdateInventoryMessage implements MessageBase { @@ -147,6 +147,10 @@ export class BulkUpdateInventoryMessage implements MessageBase newObjAgentData['TransactionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.FolderData = []; for (let i = 0; i < count; i++) @@ -172,6 +176,10 @@ export class BulkUpdateInventoryMessage implements MessageBase pos += varLength; this.FolderData.push(newObjFolderData); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.ItemData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/BuyObjectInventory.ts b/lib/classes/messages/BuyObjectInventory.ts index 344da6f..dfc123f 100644 --- a/lib/classes/messages/BuyObjectInventory.ts +++ b/lib/classes/messages/BuyObjectInventory.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class BuyObjectInventoryMessage implements MessageBase { diff --git a/lib/classes/messages/CameraConstraint.ts b/lib/classes/messages/CameraConstraint.ts index 23f6eb9..670dc97 100644 --- a/lib/classes/messages/CameraConstraint.ts +++ b/lib/classes/messages/CameraConstraint.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {Vector4} from '../Vector4'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { Vector4 } from '../Vector4'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CameraConstraintMessage implements MessageBase { diff --git a/lib/classes/messages/CancelAuction.ts b/lib/classes/messages/CancelAuction.ts index 812d656..c8607bd 100644 --- a/lib/classes/messages/CancelAuction.ts +++ b/lib/classes/messages/CancelAuction.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CancelAuctionMessage implements MessageBase { @@ -37,6 +37,10 @@ export class CancelAuctionMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ParcelData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ChangeInventoryItemFlags.ts b/lib/classes/messages/ChangeInventoryItemFlags.ts index 7e0aadd..963a547 100644 --- a/lib/classes/messages/ChangeInventoryItemFlags.ts +++ b/lib/classes/messages/ChangeInventoryItemFlags.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ChangeInventoryItemFlagsMessage implements MessageBase { @@ -60,6 +60,10 @@ export class ChangeInventoryItemFlagsMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.InventoryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ChangeUserRights.ts b/lib/classes/messages/ChangeUserRights.ts index d549011..d88b422 100644 --- a/lib/classes/messages/ChangeUserRights.ts +++ b/lib/classes/messages/ChangeUserRights.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ChangeUserRightsMessage implements MessageBase { @@ -53,6 +53,10 @@ export class ChangeUserRightsMessage implements MessageBase newObjAgentData['AgentID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Rights = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ChatFromSimulator.ts b/lib/classes/messages/ChatFromSimulator.ts index 3bac422..e73f617 100644 --- a/lib/classes/messages/ChatFromSimulator.ts +++ b/lib/classes/messages/ChatFromSimulator.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ChatFromSimulatorMessage implements MessageBase { diff --git a/lib/classes/messages/ChatFromViewer.ts b/lib/classes/messages/ChatFromViewer.ts index c7b8306..f46e06f 100644 --- a/lib/classes/messages/ChatFromViewer.ts +++ b/lib/classes/messages/ChatFromViewer.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ChatFromViewerMessage implements MessageBase { diff --git a/lib/classes/messages/ChatPass.ts b/lib/classes/messages/ChatPass.ts index b32f661..6d1e8b8 100644 --- a/lib/classes/messages/ChatPass.ts +++ b/lib/classes/messages/ChatPass.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ChatPassMessage implements MessageBase { diff --git a/lib/classes/messages/CheckParcelAuctions.ts b/lib/classes/messages/CheckParcelAuctions.ts index 0bf7f5f..e821f7c 100644 --- a/lib/classes/messages/CheckParcelAuctions.ts +++ b/lib/classes/messages/CheckParcelAuctions.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CheckParcelAuctionsMessage implements MessageBase { @@ -39,6 +39,10 @@ export class CheckParcelAuctionsMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.RegionData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/CheckParcelSales.ts b/lib/classes/messages/CheckParcelSales.ts index 53134ed..50fdd5d 100644 --- a/lib/classes/messages/CheckParcelSales.ts +++ b/lib/classes/messages/CheckParcelSales.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CheckParcelSalesMessage implements MessageBase { @@ -39,6 +39,10 @@ export class CheckParcelSalesMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.RegionData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ChildAgentAlive.ts b/lib/classes/messages/ChildAgentAlive.ts index 4000cb1..cf65d32 100644 --- a/lib/classes/messages/ChildAgentAlive.ts +++ b/lib/classes/messages/ChildAgentAlive.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ChildAgentAliveMessage implements MessageBase { diff --git a/lib/classes/messages/ChildAgentDying.ts b/lib/classes/messages/ChildAgentDying.ts index 489ecfc..1414cac 100644 --- a/lib/classes/messages/ChildAgentDying.ts +++ b/lib/classes/messages/ChildAgentDying.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ChildAgentDyingMessage implements MessageBase { diff --git a/lib/classes/messages/ChildAgentPositionUpdate.ts b/lib/classes/messages/ChildAgentPositionUpdate.ts index a18e2be..581fbc7 100644 --- a/lib/classes/messages/ChildAgentPositionUpdate.ts +++ b/lib/classes/messages/ChildAgentPositionUpdate.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ChildAgentPositionUpdateMessage implements MessageBase { diff --git a/lib/classes/messages/ChildAgentUnknown.ts b/lib/classes/messages/ChildAgentUnknown.ts index 87aa4fa..51cdb03 100644 --- a/lib/classes/messages/ChildAgentUnknown.ts +++ b/lib/classes/messages/ChildAgentUnknown.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ChildAgentUnknownMessage implements MessageBase { diff --git a/lib/classes/messages/ChildAgentUpdate.ts b/lib/classes/messages/ChildAgentUpdate.ts index 932f8e0..b99a27e 100644 --- a/lib/classes/messages/ChildAgentUpdate.ts +++ b/lib/classes/messages/ChildAgentUpdate.ts @@ -1,12 +1,12 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import Long = require('long'); -import {Quaternion} from '../Quaternion'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import * as Long from 'long'; +import { Quaternion } from '../Quaternion'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ChildAgentUpdateMessage implements MessageBase { @@ -321,6 +321,10 @@ export class ChildAgentUpdateMessage implements MessageBase newObjAgentData['ActiveGroupID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.GroupData = []; for (let i = 0; i < count; i++) @@ -341,6 +345,10 @@ export class ChildAgentUpdateMessage implements MessageBase newObjGroupData['AcceptNotices'] = (buf.readUInt8(pos++) === 1); this.GroupData.push(newObjGroupData); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.AnimationData = []; for (let i = 0; i < count; i++) @@ -358,6 +366,10 @@ export class ChildAgentUpdateMessage implements MessageBase pos += 16; this.AnimationData.push(newObjAnimationData); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.GranterBlock = []; for (let i = 0; i < count; i++) @@ -371,6 +383,10 @@ export class ChildAgentUpdateMessage implements MessageBase pos += 16; this.GranterBlock.push(newObjGranterBlock); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.NVPairData = []; for (let i = 0; i < count; i++) @@ -386,6 +402,10 @@ export class ChildAgentUpdateMessage implements MessageBase pos += varLength; this.NVPairData.push(newObjNVPairData); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.VisualParam = []; for (let i = 0; i < count; i++) @@ -398,6 +418,10 @@ export class ChildAgentUpdateMessage implements MessageBase newObjVisualParam['ParamValue'] = buf.readUInt8(pos++); this.VisualParam.push(newObjVisualParam); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.AgentAccess = []; for (let i = 0; i < count; i++) @@ -413,6 +437,10 @@ export class ChildAgentUpdateMessage implements MessageBase newObjAgentAccess['AgentMaxAccess'] = buf.readUInt8(pos++); this.AgentAccess.push(newObjAgentAccess); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.AgentInfo = []; for (let i = 0; i < count; i++) @@ -426,6 +454,10 @@ export class ChildAgentUpdateMessage implements MessageBase pos += 4; this.AgentInfo.push(newObjAgentInfo); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.AgentInventoryHost = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ClassifiedDelete.ts b/lib/classes/messages/ClassifiedDelete.ts index 0c217a6..42d780a 100644 --- a/lib/classes/messages/ClassifiedDelete.ts +++ b/lib/classes/messages/ClassifiedDelete.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ClassifiedDeleteMessage implements MessageBase { diff --git a/lib/classes/messages/ClassifiedGodDelete.ts b/lib/classes/messages/ClassifiedGodDelete.ts index 79bcac7..de81187 100644 --- a/lib/classes/messages/ClassifiedGodDelete.ts +++ b/lib/classes/messages/ClassifiedGodDelete.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ClassifiedGodDeleteMessage implements MessageBase { diff --git a/lib/classes/messages/ClassifiedInfoReply.ts b/lib/classes/messages/ClassifiedInfoReply.ts index d0ce998..0a3b40f 100644 --- a/lib/classes/messages/ClassifiedInfoReply.ts +++ b/lib/classes/messages/ClassifiedInfoReply.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ClassifiedInfoReplyMessage implements MessageBase { diff --git a/lib/classes/messages/ClassifiedInfoRequest.ts b/lib/classes/messages/ClassifiedInfoRequest.ts index 87e85a6..879659a 100644 --- a/lib/classes/messages/ClassifiedInfoRequest.ts +++ b/lib/classes/messages/ClassifiedInfoRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ClassifiedInfoRequestMessage implements MessageBase { diff --git a/lib/classes/messages/ClassifiedInfoUpdate.ts b/lib/classes/messages/ClassifiedInfoUpdate.ts index 9b7960e..64a9a85 100644 --- a/lib/classes/messages/ClassifiedInfoUpdate.ts +++ b/lib/classes/messages/ClassifiedInfoUpdate.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ClassifiedInfoUpdateMessage implements MessageBase { diff --git a/lib/classes/messages/ClearFollowCamProperties.ts b/lib/classes/messages/ClearFollowCamProperties.ts index 4f64de1..c7075e7 100644 --- a/lib/classes/messages/ClearFollowCamProperties.ts +++ b/lib/classes/messages/ClearFollowCamProperties.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ClearFollowCamPropertiesMessage implements MessageBase { diff --git a/lib/classes/messages/CloseCircuit.ts b/lib/classes/messages/CloseCircuit.ts index 214f97c..d6cc080 100644 --- a/lib/classes/messages/CloseCircuit.ts +++ b/lib/classes/messages/CloseCircuit.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CloseCircuitMessage implements MessageBase { diff --git a/lib/classes/messages/CoarseLocationUpdate.ts b/lib/classes/messages/CoarseLocationUpdate.ts index 3175ef8..bcfba1f 100644 --- a/lib/classes/messages/CoarseLocationUpdate.ts +++ b/lib/classes/messages/CoarseLocationUpdate.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CoarseLocationUpdateMessage implements MessageBase { @@ -58,6 +58,10 @@ export class CoarseLocationUpdateMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.Location = []; for (let i = 0; i < count; i++) @@ -88,6 +92,10 @@ export class CoarseLocationUpdateMessage implements MessageBase newObjIndex['Prey'] = buf.readInt16LE(pos); pos += 2; this.Index = newObjIndex; + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.AgentData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/CompleteAgentMovement.ts b/lib/classes/messages/CompleteAgentMovement.ts index 9865341..48f2da2 100644 --- a/lib/classes/messages/CompleteAgentMovement.ts +++ b/lib/classes/messages/CompleteAgentMovement.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CompleteAgentMovementMessage implements MessageBase { diff --git a/lib/classes/messages/CompleteAuction.ts b/lib/classes/messages/CompleteAuction.ts index 7e83474..302a28b 100644 --- a/lib/classes/messages/CompleteAuction.ts +++ b/lib/classes/messages/CompleteAuction.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CompleteAuctionMessage implements MessageBase { @@ -37,6 +37,10 @@ export class CompleteAuctionMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ParcelData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/CompletePingCheck.ts b/lib/classes/messages/CompletePingCheck.ts index 5ffa241..d7674a5 100644 --- a/lib/classes/messages/CompletePingCheck.ts +++ b/lib/classes/messages/CompletePingCheck.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CompletePingCheckMessage implements MessageBase { diff --git a/lib/classes/messages/ConfirmAuctionStart.ts b/lib/classes/messages/ConfirmAuctionStart.ts index 453a113..4121d6b 100644 --- a/lib/classes/messages/ConfirmAuctionStart.ts +++ b/lib/classes/messages/ConfirmAuctionStart.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ConfirmAuctionStartMessage implements MessageBase { diff --git a/lib/classes/messages/ConfirmEnableSimulator.ts b/lib/classes/messages/ConfirmEnableSimulator.ts index 83ad4d4..c5f86ea 100644 --- a/lib/classes/messages/ConfirmEnableSimulator.ts +++ b/lib/classes/messages/ConfirmEnableSimulator.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ConfirmEnableSimulatorMessage implements MessageBase { diff --git a/lib/classes/messages/ConfirmXferPacket.ts b/lib/classes/messages/ConfirmXferPacket.ts index e325a3b..7244c7a 100644 --- a/lib/classes/messages/ConfirmXferPacket.ts +++ b/lib/classes/messages/ConfirmXferPacket.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ConfirmXferPacketMessage implements MessageBase { diff --git a/lib/classes/messages/CopyInventoryFromNotecard.ts b/lib/classes/messages/CopyInventoryFromNotecard.ts index 44494ef..17b1427 100644 --- a/lib/classes/messages/CopyInventoryFromNotecard.ts +++ b/lib/classes/messages/CopyInventoryFromNotecard.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CopyInventoryFromNotecardMessage implements MessageBase { @@ -80,6 +80,10 @@ export class CopyInventoryFromNotecardMessage implements MessageBase newObjNotecardData['ObjectID'] = new UUID(buf, pos); pos += 16; this.NotecardData = newObjNotecardData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.InventoryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/CopyInventoryItem.ts b/lib/classes/messages/CopyInventoryItem.ts index 28ef304..dfeb5f9 100644 --- a/lib/classes/messages/CopyInventoryItem.ts +++ b/lib/classes/messages/CopyInventoryItem.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CopyInventoryItemMessage implements MessageBase { @@ -80,6 +80,10 @@ export class CopyInventoryItemMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.InventoryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/CreateGroupReply.ts b/lib/classes/messages/CreateGroupReply.ts index 69976bf..aee165d 100644 --- a/lib/classes/messages/CreateGroupReply.ts +++ b/lib/classes/messages/CreateGroupReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CreateGroupReplyMessage implements MessageBase { diff --git a/lib/classes/messages/CreateGroupRequest.ts b/lib/classes/messages/CreateGroupRequest.ts index 4138a53..f72ca39 100644 --- a/lib/classes/messages/CreateGroupRequest.ts +++ b/lib/classes/messages/CreateGroupRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CreateGroupRequestMessage implements MessageBase { diff --git a/lib/classes/messages/CreateGroupRequestExtended.ts b/lib/classes/messages/CreateGroupRequestExtended.ts index 43db175..3f33fbf 100644 --- a/lib/classes/messages/CreateGroupRequestExtended.ts +++ b/lib/classes/messages/CreateGroupRequestExtended.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CreateGroupRequestExtendedMessage implements MessageBase { diff --git a/lib/classes/messages/CreateInventoryFolder.ts b/lib/classes/messages/CreateInventoryFolder.ts index ddaf70a..ff77e97 100644 --- a/lib/classes/messages/CreateInventoryFolder.ts +++ b/lib/classes/messages/CreateInventoryFolder.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CreateInventoryFolderMessage implements MessageBase { diff --git a/lib/classes/messages/CreateInventoryItem.ts b/lib/classes/messages/CreateInventoryItem.ts index 0452d56..caa61b4 100644 --- a/lib/classes/messages/CreateInventoryItem.ts +++ b/lib/classes/messages/CreateInventoryItem.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CreateInventoryItemMessage implements MessageBase { diff --git a/lib/classes/messages/CreateLandmarkForEvent.ts b/lib/classes/messages/CreateLandmarkForEvent.ts index 9dc268f..93b3c95 100644 --- a/lib/classes/messages/CreateLandmarkForEvent.ts +++ b/lib/classes/messages/CreateLandmarkForEvent.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CreateLandmarkForEventMessage implements MessageBase { diff --git a/lib/classes/messages/CreateNewOutfitAttachments.ts b/lib/classes/messages/CreateNewOutfitAttachments.ts index b1ef1e2..8aec4ff 100644 --- a/lib/classes/messages/CreateNewOutfitAttachments.ts +++ b/lib/classes/messages/CreateNewOutfitAttachments.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CreateNewOutfitAttachmentsMessage implements MessageBase { @@ -73,6 +73,10 @@ export class CreateNewOutfitAttachmentsMessage implements MessageBase newObjHeaderData['NewFolderID'] = new UUID(buf, pos); pos += 16; this.HeaderData = newObjHeaderData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/CreateTrustedCircuit.ts b/lib/classes/messages/CreateTrustedCircuit.ts index 3d33985..defdde3 100644 --- a/lib/classes/messages/CreateTrustedCircuit.ts +++ b/lib/classes/messages/CreateTrustedCircuit.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CreateTrustedCircuitMessage implements MessageBase { diff --git a/lib/classes/messages/CrossedRegion.ts b/lib/classes/messages/CrossedRegion.ts index 4527cbd..e49b4f1 100644 --- a/lib/classes/messages/CrossedRegion.ts +++ b/lib/classes/messages/CrossedRegion.ts @@ -1,12 +1,12 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {IPAddress} from '../IPAddress'; -import {Vector3} from '../Vector3'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { IPAddress } from '../IPAddress'; +import { Vector3 } from '../Vector3'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class CrossedRegionMessage implements MessageBase { diff --git a/lib/classes/messages/DataHomeLocationReply.ts b/lib/classes/messages/DataHomeLocationReply.ts index cea0caa..424f754 100644 --- a/lib/classes/messages/DataHomeLocationReply.ts +++ b/lib/classes/messages/DataHomeLocationReply.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DataHomeLocationReplyMessage implements MessageBase { diff --git a/lib/classes/messages/DataHomeLocationRequest.ts b/lib/classes/messages/DataHomeLocationRequest.ts index 7841efc..5d74be3 100644 --- a/lib/classes/messages/DataHomeLocationRequest.ts +++ b/lib/classes/messages/DataHomeLocationRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DataHomeLocationRequestMessage implements MessageBase { diff --git a/lib/classes/messages/DataServerLogout.ts b/lib/classes/messages/DataServerLogout.ts index a56c215..bd93efb 100644 --- a/lib/classes/messages/DataServerLogout.ts +++ b/lib/classes/messages/DataServerLogout.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {IPAddress} from '../IPAddress'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { IPAddress } from '../IPAddress'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DataServerLogoutMessage implements MessageBase { diff --git a/lib/classes/messages/DeRezAck.ts b/lib/classes/messages/DeRezAck.ts index 9ee0456..911c491 100644 --- a/lib/classes/messages/DeRezAck.ts +++ b/lib/classes/messages/DeRezAck.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DeRezAckMessage implements MessageBase { diff --git a/lib/classes/messages/DeRezObject.ts b/lib/classes/messages/DeRezObject.ts index 25db630..434236a 100644 --- a/lib/classes/messages/DeRezObject.ts +++ b/lib/classes/messages/DeRezObject.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DeRezObjectMessage implements MessageBase { @@ -99,6 +99,10 @@ export class DeRezObjectMessage implements MessageBase newObjAgentBlock['PacketCount'] = buf.readUInt8(pos++); newObjAgentBlock['PacketNumber'] = buf.readUInt8(pos++); this.AgentBlock = newObjAgentBlock; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/DeactivateGestures.ts b/lib/classes/messages/DeactivateGestures.ts index c7da0a1..7c84df3 100644 --- a/lib/classes/messages/DeactivateGestures.ts +++ b/lib/classes/messages/DeactivateGestures.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DeactivateGesturesMessage implements MessageBase { @@ -67,6 +67,10 @@ export class DeactivateGesturesMessage implements MessageBase newObjAgentData['Flags'] = buf.readUInt32LE(pos); pos += 4; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Data = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/DeclineCallingCard.ts b/lib/classes/messages/DeclineCallingCard.ts index 1de9ce7..2fc2aa3 100644 --- a/lib/classes/messages/DeclineCallingCard.ts +++ b/lib/classes/messages/DeclineCallingCard.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DeclineCallingCardMessage implements MessageBase { diff --git a/lib/classes/messages/DeclineFriendship.ts b/lib/classes/messages/DeclineFriendship.ts index b1c7ed9..4c20afc 100644 --- a/lib/classes/messages/DeclineFriendship.ts +++ b/lib/classes/messages/DeclineFriendship.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DeclineFriendshipMessage implements MessageBase { diff --git a/lib/classes/messages/DenyTrustedCircuit.ts b/lib/classes/messages/DenyTrustedCircuit.ts index 4650e47..1b26f9f 100644 --- a/lib/classes/messages/DenyTrustedCircuit.ts +++ b/lib/classes/messages/DenyTrustedCircuit.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DenyTrustedCircuitMessage implements MessageBase { diff --git a/lib/classes/messages/DerezContainer.ts b/lib/classes/messages/DerezContainer.ts index 76b9b8c..f170424 100644 --- a/lib/classes/messages/DerezContainer.ts +++ b/lib/classes/messages/DerezContainer.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DerezContainerMessage implements MessageBase { diff --git a/lib/classes/messages/DetachAttachmentIntoInv.ts b/lib/classes/messages/DetachAttachmentIntoInv.ts index 8e35051..a899439 100644 --- a/lib/classes/messages/DetachAttachmentIntoInv.ts +++ b/lib/classes/messages/DetachAttachmentIntoInv.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DetachAttachmentIntoInvMessage implements MessageBase { diff --git a/lib/classes/messages/DirClassifiedQuery.ts b/lib/classes/messages/DirClassifiedQuery.ts index 6658ef6..d2b3b8a 100644 --- a/lib/classes/messages/DirClassifiedQuery.ts +++ b/lib/classes/messages/DirClassifiedQuery.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirClassifiedQueryMessage implements MessageBase { diff --git a/lib/classes/messages/DirClassifiedQueryBackend.ts b/lib/classes/messages/DirClassifiedQueryBackend.ts index 99526d3..13cf43e 100644 --- a/lib/classes/messages/DirClassifiedQueryBackend.ts +++ b/lib/classes/messages/DirClassifiedQueryBackend.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirClassifiedQueryBackendMessage implements MessageBase { diff --git a/lib/classes/messages/DirClassifiedReply.ts b/lib/classes/messages/DirClassifiedReply.ts index 1d5ec1e..ec50592 100644 --- a/lib/classes/messages/DirClassifiedReply.ts +++ b/lib/classes/messages/DirClassifiedReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirClassifiedReplyMessage implements MessageBase { @@ -98,6 +98,10 @@ export class DirClassifiedReplyMessage implements MessageBase newObjQueryData['QueryID'] = new UUID(buf, pos); pos += 16; this.QueryData = newObjQueryData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.QueryReplies = []; for (let i = 0; i < count; i++) @@ -131,6 +135,10 @@ export class DirClassifiedReplyMessage implements MessageBase pos += 4; this.QueryReplies.push(newObjQueryReplies); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.StatusData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/DirEventsReply.ts b/lib/classes/messages/DirEventsReply.ts index 92fa708..248b190 100644 --- a/lib/classes/messages/DirEventsReply.ts +++ b/lib/classes/messages/DirEventsReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirEventsReplyMessage implements MessageBase { @@ -100,6 +100,10 @@ export class DirEventsReplyMessage implements MessageBase newObjQueryData['QueryID'] = new UUID(buf, pos); pos += 16; this.QueryData = newObjQueryData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.QueryReplies = []; for (let i = 0; i < count; i++) @@ -135,6 +139,10 @@ export class DirEventsReplyMessage implements MessageBase pos += 4; this.QueryReplies.push(newObjQueryReplies); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.StatusData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/DirFindQuery.ts b/lib/classes/messages/DirFindQuery.ts index cc1df1e..d3b5939 100644 --- a/lib/classes/messages/DirFindQuery.ts +++ b/lib/classes/messages/DirFindQuery.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirFindQueryMessage implements MessageBase { diff --git a/lib/classes/messages/DirFindQueryBackend.ts b/lib/classes/messages/DirFindQueryBackend.ts index 9e0d64d..850a217 100644 --- a/lib/classes/messages/DirFindQueryBackend.ts +++ b/lib/classes/messages/DirFindQueryBackend.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirFindQueryBackendMessage implements MessageBase { diff --git a/lib/classes/messages/DirGroupsReply.ts b/lib/classes/messages/DirGroupsReply.ts index aae7aee..0ee5c50 100644 --- a/lib/classes/messages/DirGroupsReply.ts +++ b/lib/classes/messages/DirGroupsReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirGroupsReplyMessage implements MessageBase { @@ -83,6 +83,10 @@ export class DirGroupsReplyMessage implements MessageBase newObjQueryData['QueryID'] = new UUID(buf, pos); pos += 16; this.QueryData = newObjQueryData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.QueryReplies = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/DirLandQuery.ts b/lib/classes/messages/DirLandQuery.ts index c47d323..dc1363e 100644 --- a/lib/classes/messages/DirLandQuery.ts +++ b/lib/classes/messages/DirLandQuery.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirLandQueryMessage implements MessageBase { diff --git a/lib/classes/messages/DirLandQueryBackend.ts b/lib/classes/messages/DirLandQueryBackend.ts index 93218d4..e802c36 100644 --- a/lib/classes/messages/DirLandQueryBackend.ts +++ b/lib/classes/messages/DirLandQueryBackend.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirLandQueryBackendMessage implements MessageBase { diff --git a/lib/classes/messages/DirLandReply.ts b/lib/classes/messages/DirLandReply.ts index 05361a7..b80777e 100644 --- a/lib/classes/messages/DirLandReply.ts +++ b/lib/classes/messages/DirLandReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirLandReplyMessage implements MessageBase { @@ -87,6 +87,10 @@ export class DirLandReplyMessage implements MessageBase newObjQueryData['QueryID'] = new UUID(buf, pos); pos += 16; this.QueryData = newObjQueryData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.QueryReplies = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/DirPeopleReply.ts b/lib/classes/messages/DirPeopleReply.ts index c35718c..55f0661 100644 --- a/lib/classes/messages/DirPeopleReply.ts +++ b/lib/classes/messages/DirPeopleReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirPeopleReplyMessage implements MessageBase { @@ -90,6 +90,10 @@ export class DirPeopleReplyMessage implements MessageBase newObjQueryData['QueryID'] = new UUID(buf, pos); pos += 16; this.QueryData = newObjQueryData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.QueryReplies = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/DirPlacesQuery.ts b/lib/classes/messages/DirPlacesQuery.ts index d731031..1678225 100644 --- a/lib/classes/messages/DirPlacesQuery.ts +++ b/lib/classes/messages/DirPlacesQuery.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirPlacesQueryMessage implements MessageBase { diff --git a/lib/classes/messages/DirPlacesQueryBackend.ts b/lib/classes/messages/DirPlacesQueryBackend.ts index 19ab870..739cf44 100644 --- a/lib/classes/messages/DirPlacesQueryBackend.ts +++ b/lib/classes/messages/DirPlacesQueryBackend.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirPlacesQueryBackendMessage implements MessageBase { diff --git a/lib/classes/messages/DirPlacesReply.ts b/lib/classes/messages/DirPlacesReply.ts index 92d906a..65c2201 100644 --- a/lib/classes/messages/DirPlacesReply.ts +++ b/lib/classes/messages/DirPlacesReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirPlacesReplyMessage implements MessageBase { @@ -91,6 +91,10 @@ export class DirPlacesReplyMessage implements MessageBase newObjAgentData['AgentID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.QueryData = []; for (let i = 0; i < count; i++) @@ -104,6 +108,10 @@ export class DirPlacesReplyMessage implements MessageBase pos += 16; this.QueryData.push(newObjQueryData); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.QueryReplies = []; for (let i = 0; i < count; i++) @@ -132,6 +140,10 @@ export class DirPlacesReplyMessage implements MessageBase pos += 4; this.QueryReplies.push(newObjQueryReplies); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.StatusData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/DirPopularQuery.ts b/lib/classes/messages/DirPopularQuery.ts index 8234ef2..62feb48 100644 --- a/lib/classes/messages/DirPopularQuery.ts +++ b/lib/classes/messages/DirPopularQuery.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirPopularQueryMessage implements MessageBase { diff --git a/lib/classes/messages/DirPopularQueryBackend.ts b/lib/classes/messages/DirPopularQueryBackend.ts index 803186b..b5155de 100644 --- a/lib/classes/messages/DirPopularQueryBackend.ts +++ b/lib/classes/messages/DirPopularQueryBackend.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirPopularQueryBackendMessage implements MessageBase { diff --git a/lib/classes/messages/DirPopularReply.ts b/lib/classes/messages/DirPopularReply.ts index 2142c21..7c965d9 100644 --- a/lib/classes/messages/DirPopularReply.ts +++ b/lib/classes/messages/DirPopularReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DirPopularReplyMessage implements MessageBase { @@ -80,6 +80,10 @@ export class DirPopularReplyMessage implements MessageBase newObjQueryData['QueryID'] = new UUID(buf, pos); pos += 16; this.QueryData = newObjQueryData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.QueryReplies = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/DisableSimulator.ts b/lib/classes/messages/DisableSimulator.ts index f51c989..1e74c5f 100644 --- a/lib/classes/messages/DisableSimulator.ts +++ b/lib/classes/messages/DisableSimulator.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class DisableSimulatorMessage implements MessageBase { diff --git a/lib/classes/messages/EconomyData.ts b/lib/classes/messages/EconomyData.ts index 25ae371..8f50eb0 100644 --- a/lib/classes/messages/EconomyData.ts +++ b/lib/classes/messages/EconomyData.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EconomyDataMessage implements MessageBase { diff --git a/lib/classes/messages/EconomyDataRequest.ts b/lib/classes/messages/EconomyDataRequest.ts index 52448f5..8ac1280 100644 --- a/lib/classes/messages/EconomyDataRequest.ts +++ b/lib/classes/messages/EconomyDataRequest.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EconomyDataRequestMessage implements MessageBase { diff --git a/lib/classes/messages/EdgeDataPacket.ts b/lib/classes/messages/EdgeDataPacket.ts index 65068ac..0783e62 100644 --- a/lib/classes/messages/EdgeDataPacket.ts +++ b/lib/classes/messages/EdgeDataPacket.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EdgeDataPacketMessage implements MessageBase { diff --git a/lib/classes/messages/EjectGroupMemberReply.ts b/lib/classes/messages/EjectGroupMemberReply.ts index 8457fd4..0935b80 100644 --- a/lib/classes/messages/EjectGroupMemberReply.ts +++ b/lib/classes/messages/EjectGroupMemberReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EjectGroupMemberReplyMessage implements MessageBase { diff --git a/lib/classes/messages/EjectGroupMemberRequest.ts b/lib/classes/messages/EjectGroupMemberRequest.ts index 9ae67ad..430ee2f 100644 --- a/lib/classes/messages/EjectGroupMemberRequest.ts +++ b/lib/classes/messages/EjectGroupMemberRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EjectGroupMemberRequestMessage implements MessageBase { @@ -70,6 +70,10 @@ export class EjectGroupMemberRequestMessage implements MessageBase newObjGroupData['GroupID'] = new UUID(buf, pos); pos += 16; this.GroupData = newObjGroupData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.EjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/EjectUser.ts b/lib/classes/messages/EjectUser.ts index 54cce41..719ca9e 100644 --- a/lib/classes/messages/EjectUser.ts +++ b/lib/classes/messages/EjectUser.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EjectUserMessage implements MessageBase { diff --git a/lib/classes/messages/EmailMessageReply.ts b/lib/classes/messages/EmailMessageReply.ts index 7f4fb3b..60ce4c1 100644 --- a/lib/classes/messages/EmailMessageReply.ts +++ b/lib/classes/messages/EmailMessageReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EmailMessageReplyMessage implements MessageBase { diff --git a/lib/classes/messages/EmailMessageRequest.ts b/lib/classes/messages/EmailMessageRequest.ts index ab998cd..a93eaf7 100644 --- a/lib/classes/messages/EmailMessageRequest.ts +++ b/lib/classes/messages/EmailMessageRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EmailMessageRequestMessage implements MessageBase { diff --git a/lib/classes/messages/EnableSimulator.ts b/lib/classes/messages/EnableSimulator.ts index fd1ff21..c804a8c 100644 --- a/lib/classes/messages/EnableSimulator.ts +++ b/lib/classes/messages/EnableSimulator.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {IPAddress} from '../IPAddress'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { IPAddress } from '../IPAddress'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EnableSimulatorMessage implements MessageBase { diff --git a/lib/classes/messages/Error.ts b/lib/classes/messages/Error.ts index 59202f6..2bd6fd4 100644 --- a/lib/classes/messages/Error.ts +++ b/lib/classes/messages/Error.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ErrorMessage implements MessageBase { diff --git a/lib/classes/messages/EstateCovenantReply.ts b/lib/classes/messages/EstateCovenantReply.ts index 5fb7cc8..2274469 100644 --- a/lib/classes/messages/EstateCovenantReply.ts +++ b/lib/classes/messages/EstateCovenantReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EstateCovenantReplyMessage implements MessageBase { diff --git a/lib/classes/messages/EstateCovenantRequest.ts b/lib/classes/messages/EstateCovenantRequest.ts index ccf7315..3ec4a94 100644 --- a/lib/classes/messages/EstateCovenantRequest.ts +++ b/lib/classes/messages/EstateCovenantRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EstateCovenantRequestMessage implements MessageBase { diff --git a/lib/classes/messages/EstateOwnerMessage.ts b/lib/classes/messages/EstateOwnerMessage.ts index 1c052ba..b03f017 100644 --- a/lib/classes/messages/EstateOwnerMessage.ts +++ b/lib/classes/messages/EstateOwnerMessage.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EstateOwnerMessageMessage implements MessageBase { @@ -97,6 +97,10 @@ export class EstateOwnerMessageMessage implements MessageBase newObjMethodData['Invoice'] = new UUID(buf, pos); pos += 16; this.MethodData = newObjMethodData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ParamList = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/EventGodDelete.ts b/lib/classes/messages/EventGodDelete.ts index ed92389..9a408da 100644 --- a/lib/classes/messages/EventGodDelete.ts +++ b/lib/classes/messages/EventGodDelete.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EventGodDeleteMessage implements MessageBase { diff --git a/lib/classes/messages/EventInfoReply.ts b/lib/classes/messages/EventInfoReply.ts index 6cc1d19..b870fb9 100644 --- a/lib/classes/messages/EventInfoReply.ts +++ b/lib/classes/messages/EventInfoReply.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EventInfoReplyMessage implements MessageBase { diff --git a/lib/classes/messages/EventInfoRequest.ts b/lib/classes/messages/EventInfoRequest.ts index 29e100e..ad07f3d 100644 --- a/lib/classes/messages/EventInfoRequest.ts +++ b/lib/classes/messages/EventInfoRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EventInfoRequestMessage implements MessageBase { diff --git a/lib/classes/messages/EventLocationReply.ts b/lib/classes/messages/EventLocationReply.ts index 433686f..4b1fc72 100644 --- a/lib/classes/messages/EventLocationReply.ts +++ b/lib/classes/messages/EventLocationReply.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EventLocationReplyMessage implements MessageBase { diff --git a/lib/classes/messages/EventLocationRequest.ts b/lib/classes/messages/EventLocationRequest.ts index 5300305..5847c38 100644 --- a/lib/classes/messages/EventLocationRequest.ts +++ b/lib/classes/messages/EventLocationRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EventLocationRequestMessage implements MessageBase { diff --git a/lib/classes/messages/EventNotificationAddRequest.ts b/lib/classes/messages/EventNotificationAddRequest.ts index 3fa8820..9470354 100644 --- a/lib/classes/messages/EventNotificationAddRequest.ts +++ b/lib/classes/messages/EventNotificationAddRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EventNotificationAddRequestMessage implements MessageBase { diff --git a/lib/classes/messages/EventNotificationRemoveRequest.ts b/lib/classes/messages/EventNotificationRemoveRequest.ts index 8701f27..986f34a 100644 --- a/lib/classes/messages/EventNotificationRemoveRequest.ts +++ b/lib/classes/messages/EventNotificationRemoveRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class EventNotificationRemoveRequestMessage implements MessageBase { diff --git a/lib/classes/messages/FeatureDisabled.ts b/lib/classes/messages/FeatureDisabled.ts index 7a25140..6caeb00 100644 --- a/lib/classes/messages/FeatureDisabled.ts +++ b/lib/classes/messages/FeatureDisabled.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class FeatureDisabledMessage implements MessageBase { diff --git a/lib/classes/messages/FetchInventory.ts b/lib/classes/messages/FetchInventory.ts index ddf2cb1..63cee8f 100644 --- a/lib/classes/messages/FetchInventory.ts +++ b/lib/classes/messages/FetchInventory.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class FetchInventoryMessage implements MessageBase { @@ -60,6 +60,10 @@ export class FetchInventoryMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.InventoryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/FetchInventoryDescendents.ts b/lib/classes/messages/FetchInventoryDescendents.ts index 835dbf1..ac26288 100644 --- a/lib/classes/messages/FetchInventoryDescendents.ts +++ b/lib/classes/messages/FetchInventoryDescendents.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class FetchInventoryDescendentsMessage implements MessageBase { diff --git a/lib/classes/messages/FetchInventoryReply.ts b/lib/classes/messages/FetchInventoryReply.ts index d0078bb..05381fe 100644 --- a/lib/classes/messages/FetchInventoryReply.ts +++ b/lib/classes/messages/FetchInventoryReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class FetchInventoryReplyMessage implements MessageBase { @@ -118,6 +118,10 @@ export class FetchInventoryReplyMessage implements MessageBase newObjAgentData['AgentID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.InventoryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/FindAgent.ts b/lib/classes/messages/FindAgent.ts index bee1ebb..99d6714 100644 --- a/lib/classes/messages/FindAgent.ts +++ b/lib/classes/messages/FindAgent.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {IPAddress} from '../IPAddress'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { IPAddress } from '../IPAddress'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class FindAgentMessage implements MessageBase { @@ -68,6 +68,10 @@ export class FindAgentMessage implements MessageBase newObjAgentBlock['SpaceIP'] = new IPAddress(buf, pos); pos += 4; this.AgentBlock = newObjAgentBlock; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.LocationBlock = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ForceObjectSelect.ts b/lib/classes/messages/ForceObjectSelect.ts index 2bf9373..12343e1 100644 --- a/lib/classes/messages/ForceObjectSelect.ts +++ b/lib/classes/messages/ForceObjectSelect.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ForceObjectSelectMessage implements MessageBase { @@ -47,6 +47,10 @@ export class ForceObjectSelectMessage implements MessageBase }; newObjHeader['ResetList'] = (buf.readUInt8(pos++) === 1); this.Header = newObjHeader; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Data = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ForceScriptControlRelease.ts b/lib/classes/messages/ForceScriptControlRelease.ts index 9b7ec3b..31c382b 100644 --- a/lib/classes/messages/ForceScriptControlRelease.ts +++ b/lib/classes/messages/ForceScriptControlRelease.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ForceScriptControlReleaseMessage implements MessageBase { diff --git a/lib/classes/messages/FormFriendship.ts b/lib/classes/messages/FormFriendship.ts index 4a07f28..1eff8d3 100644 --- a/lib/classes/messages/FormFriendship.ts +++ b/lib/classes/messages/FormFriendship.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class FormFriendshipMessage implements MessageBase { diff --git a/lib/classes/messages/FreezeUser.ts b/lib/classes/messages/FreezeUser.ts index a79fb9e..68ce110 100644 --- a/lib/classes/messages/FreezeUser.ts +++ b/lib/classes/messages/FreezeUser.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class FreezeUserMessage implements MessageBase { diff --git a/lib/classes/messages/GenericMessage.ts b/lib/classes/messages/GenericMessage.ts index 7d49a8d..ff21e2a 100644 --- a/lib/classes/messages/GenericMessage.ts +++ b/lib/classes/messages/GenericMessage.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GenericMessageMessage implements MessageBase { @@ -97,6 +97,10 @@ export class GenericMessageMessage implements MessageBase newObjMethodData['Invoice'] = new UUID(buf, pos); pos += 16; this.MethodData = newObjMethodData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ParamList = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GetScriptRunning.ts b/lib/classes/messages/GetScriptRunning.ts index 851344a..da5962b 100644 --- a/lib/classes/messages/GetScriptRunning.ts +++ b/lib/classes/messages/GetScriptRunning.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GetScriptRunningMessage implements MessageBase { diff --git a/lib/classes/messages/GodKickUser.ts b/lib/classes/messages/GodKickUser.ts index 05a3729..da3532a 100644 --- a/lib/classes/messages/GodKickUser.ts +++ b/lib/classes/messages/GodKickUser.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GodKickUserMessage implements MessageBase { diff --git a/lib/classes/messages/GodUpdateRegionInfo.ts b/lib/classes/messages/GodUpdateRegionInfo.ts index 83aa741..b585f33 100644 --- a/lib/classes/messages/GodUpdateRegionInfo.ts +++ b/lib/classes/messages/GodUpdateRegionInfo.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GodUpdateRegionInfoMessage implements MessageBase { @@ -124,6 +124,10 @@ export class GodUpdateRegionInfoMessage implements MessageBase newObjRegionInfo['RedirectGridY'] = buf.readInt32LE(pos); pos += 4; this.RegionInfo = newObjRegionInfo; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.RegionInfo2 = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GodlikeMessage.ts b/lib/classes/messages/GodlikeMessage.ts index c57a8c7..607234a 100644 --- a/lib/classes/messages/GodlikeMessage.ts +++ b/lib/classes/messages/GodlikeMessage.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GodlikeMessageMessage implements MessageBase { @@ -97,6 +97,10 @@ export class GodlikeMessageMessage implements MessageBase newObjMethodData['Invoice'] = new UUID(buf, pos); pos += 16; this.MethodData = newObjMethodData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ParamList = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GrantGodlikePowers.ts b/lib/classes/messages/GrantGodlikePowers.ts index 87dc92e..a36f57e 100644 --- a/lib/classes/messages/GrantGodlikePowers.ts +++ b/lib/classes/messages/GrantGodlikePowers.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GrantGodlikePowersMessage implements MessageBase { diff --git a/lib/classes/messages/GrantUserRights.ts b/lib/classes/messages/GrantUserRights.ts index 2f735c9..afccc3b 100644 --- a/lib/classes/messages/GrantUserRights.ts +++ b/lib/classes/messages/GrantUserRights.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GrantUserRightsMessage implements MessageBase { @@ -60,6 +60,10 @@ export class GrantUserRightsMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Rights = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GroupAccountDetailsReply.ts b/lib/classes/messages/GroupAccountDetailsReply.ts index 0aa1eb8..eb987a2 100644 --- a/lib/classes/messages/GroupAccountDetailsReply.ts +++ b/lib/classes/messages/GroupAccountDetailsReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupAccountDetailsReplyMessage implements MessageBase { @@ -107,6 +107,10 @@ export class GroupAccountDetailsReplyMessage implements MessageBase newObjMoneyData['StartDate'] = buf.slice(pos, pos + varLength); pos += varLength; this.MoneyData = newObjMoneyData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.HistoryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GroupAccountDetailsRequest.ts b/lib/classes/messages/GroupAccountDetailsRequest.ts index f6b4ee3..01c83c1 100644 --- a/lib/classes/messages/GroupAccountDetailsRequest.ts +++ b/lib/classes/messages/GroupAccountDetailsRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupAccountDetailsRequestMessage implements MessageBase { diff --git a/lib/classes/messages/GroupAccountSummaryReply.ts b/lib/classes/messages/GroupAccountSummaryReply.ts index 321a72d..e79e8a6 100644 --- a/lib/classes/messages/GroupAccountSummaryReply.ts +++ b/lib/classes/messages/GroupAccountSummaryReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupAccountSummaryReplyMessage implements MessageBase { diff --git a/lib/classes/messages/GroupAccountSummaryRequest.ts b/lib/classes/messages/GroupAccountSummaryRequest.ts index 7d5679b..c8f5d77 100644 --- a/lib/classes/messages/GroupAccountSummaryRequest.ts +++ b/lib/classes/messages/GroupAccountSummaryRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupAccountSummaryRequestMessage implements MessageBase { diff --git a/lib/classes/messages/GroupAccountTransactionsReply.ts b/lib/classes/messages/GroupAccountTransactionsReply.ts index c250d0c..cd1b626 100644 --- a/lib/classes/messages/GroupAccountTransactionsReply.ts +++ b/lib/classes/messages/GroupAccountTransactionsReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupAccountTransactionsReplyMessage implements MessageBase { @@ -118,6 +118,10 @@ export class GroupAccountTransactionsReplyMessage implements MessageBase newObjMoneyData['StartDate'] = buf.slice(pos, pos + varLength); pos += varLength; this.MoneyData = newObjMoneyData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.HistoryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GroupAccountTransactionsRequest.ts b/lib/classes/messages/GroupAccountTransactionsRequest.ts index 272f4e5..840399f 100644 --- a/lib/classes/messages/GroupAccountTransactionsRequest.ts +++ b/lib/classes/messages/GroupAccountTransactionsRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupAccountTransactionsRequestMessage implements MessageBase { diff --git a/lib/classes/messages/GroupActiveProposalItemReply.ts b/lib/classes/messages/GroupActiveProposalItemReply.ts index 45b357f..b6ff267 100644 --- a/lib/classes/messages/GroupActiveProposalItemReply.ts +++ b/lib/classes/messages/GroupActiveProposalItemReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupActiveProposalItemReplyMessage implements MessageBase { @@ -118,6 +118,10 @@ export class GroupActiveProposalItemReplyMessage implements MessageBase newObjTransactionData['TotalNumItems'] = buf.readUInt32LE(pos); pos += 4; this.TransactionData = newObjTransactionData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ProposalData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GroupActiveProposalsRequest.ts b/lib/classes/messages/GroupActiveProposalsRequest.ts index b06b7ad..362705f 100644 --- a/lib/classes/messages/GroupActiveProposalsRequest.ts +++ b/lib/classes/messages/GroupActiveProposalsRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupActiveProposalsRequestMessage implements MessageBase { diff --git a/lib/classes/messages/GroupDataUpdate.ts b/lib/classes/messages/GroupDataUpdate.ts index 3b922c2..2e8a099 100644 --- a/lib/classes/messages/GroupDataUpdate.ts +++ b/lib/classes/messages/GroupDataUpdate.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupDataUpdateMessage implements MessageBase { @@ -60,6 +60,10 @@ export class GroupDataUpdateMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.AgentGroupData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GroupMembersReply.ts b/lib/classes/messages/GroupMembersReply.ts index 3da7930..c50565c 100644 --- a/lib/classes/messages/GroupMembersReply.ts +++ b/lib/classes/messages/GroupMembersReply.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupMembersReplyMessage implements MessageBase { @@ -106,6 +106,10 @@ export class GroupMembersReplyMessage implements MessageBase newObjGroupData['MemberCount'] = buf.readInt32LE(pos); pos += 4; this.GroupData = newObjGroupData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.MemberData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GroupMembersRequest.ts b/lib/classes/messages/GroupMembersRequest.ts index 7a4b58f..8f79fd9 100644 --- a/lib/classes/messages/GroupMembersRequest.ts +++ b/lib/classes/messages/GroupMembersRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupMembersRequestMessage implements MessageBase { diff --git a/lib/classes/messages/GroupNoticeAdd.ts b/lib/classes/messages/GroupNoticeAdd.ts index ffbcc70..2e6c0b7 100644 --- a/lib/classes/messages/GroupNoticeAdd.ts +++ b/lib/classes/messages/GroupNoticeAdd.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupNoticeAddMessage implements MessageBase { diff --git a/lib/classes/messages/GroupNoticeRequest.ts b/lib/classes/messages/GroupNoticeRequest.ts index 98b4e70..ef6b44f 100644 --- a/lib/classes/messages/GroupNoticeRequest.ts +++ b/lib/classes/messages/GroupNoticeRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupNoticeRequestMessage implements MessageBase { diff --git a/lib/classes/messages/GroupNoticesListReply.ts b/lib/classes/messages/GroupNoticesListReply.ts index 0ea7956..0ac1c9e 100644 --- a/lib/classes/messages/GroupNoticesListReply.ts +++ b/lib/classes/messages/GroupNoticesListReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupNoticesListReplyMessage implements MessageBase { @@ -84,6 +84,10 @@ export class GroupNoticesListReplyMessage implements MessageBase newObjAgentData['GroupID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Data = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GroupNoticesListRequest.ts b/lib/classes/messages/GroupNoticesListRequest.ts index 49037f6..cc1ce3c 100644 --- a/lib/classes/messages/GroupNoticesListRequest.ts +++ b/lib/classes/messages/GroupNoticesListRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupNoticesListRequestMessage implements MessageBase { diff --git a/lib/classes/messages/GroupProfileReply.ts b/lib/classes/messages/GroupProfileReply.ts index af2f3f3..d442668 100644 --- a/lib/classes/messages/GroupProfileReply.ts +++ b/lib/classes/messages/GroupProfileReply.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupProfileReplyMessage implements MessageBase { diff --git a/lib/classes/messages/GroupProfileRequest.ts b/lib/classes/messages/GroupProfileRequest.ts index e8c1e27..30bf879 100644 --- a/lib/classes/messages/GroupProfileRequest.ts +++ b/lib/classes/messages/GroupProfileRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupProfileRequestMessage implements MessageBase { diff --git a/lib/classes/messages/GroupProposalBallot.ts b/lib/classes/messages/GroupProposalBallot.ts index 797c1dd..1c4a5ae 100644 --- a/lib/classes/messages/GroupProposalBallot.ts +++ b/lib/classes/messages/GroupProposalBallot.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupProposalBallotMessage implements MessageBase { diff --git a/lib/classes/messages/GroupRoleChanges.ts b/lib/classes/messages/GroupRoleChanges.ts index 9078778..71a509e 100644 --- a/lib/classes/messages/GroupRoleChanges.ts +++ b/lib/classes/messages/GroupRoleChanges.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupRoleChangesMessage implements MessageBase { @@ -70,6 +70,10 @@ export class GroupRoleChangesMessage implements MessageBase newObjAgentData['GroupID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.RoleChange = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GroupRoleDataReply.ts b/lib/classes/messages/GroupRoleDataReply.ts index b714268..24b822d 100644 --- a/lib/classes/messages/GroupRoleDataReply.ts +++ b/lib/classes/messages/GroupRoleDataReply.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupRoleDataReplyMessage implements MessageBase { @@ -108,6 +108,10 @@ export class GroupRoleDataReplyMessage implements MessageBase newObjGroupData['RoleCount'] = buf.readInt32LE(pos); pos += 4; this.GroupData = newObjGroupData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.RoleData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GroupRoleDataRequest.ts b/lib/classes/messages/GroupRoleDataRequest.ts index 1b247a3..b40cb51 100644 --- a/lib/classes/messages/GroupRoleDataRequest.ts +++ b/lib/classes/messages/GroupRoleDataRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupRoleDataRequestMessage implements MessageBase { diff --git a/lib/classes/messages/GroupRoleMembersReply.ts b/lib/classes/messages/GroupRoleMembersReply.ts index 31a06c0..1f516c4 100644 --- a/lib/classes/messages/GroupRoleMembersReply.ts +++ b/lib/classes/messages/GroupRoleMembersReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupRoleMembersReplyMessage implements MessageBase { @@ -74,6 +74,10 @@ export class GroupRoleMembersReplyMessage implements MessageBase newObjAgentData['TotalPairs'] = buf.readUInt32LE(pos); pos += 4; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.MemberData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GroupRoleMembersRequest.ts b/lib/classes/messages/GroupRoleMembersRequest.ts index f17ec67..7fa92f7 100644 --- a/lib/classes/messages/GroupRoleMembersRequest.ts +++ b/lib/classes/messages/GroupRoleMembersRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupRoleMembersRequestMessage implements MessageBase { diff --git a/lib/classes/messages/GroupRoleUpdate.ts b/lib/classes/messages/GroupRoleUpdate.ts index 5ab467e..65cbc0f 100644 --- a/lib/classes/messages/GroupRoleUpdate.ts +++ b/lib/classes/messages/GroupRoleUpdate.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupRoleUpdateMessage implements MessageBase { @@ -94,6 +94,10 @@ export class GroupRoleUpdateMessage implements MessageBase newObjAgentData['GroupID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.RoleData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GroupTitleUpdate.ts b/lib/classes/messages/GroupTitleUpdate.ts index f250724..8c72e8c 100644 --- a/lib/classes/messages/GroupTitleUpdate.ts +++ b/lib/classes/messages/GroupTitleUpdate.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupTitleUpdateMessage implements MessageBase { diff --git a/lib/classes/messages/GroupTitlesReply.ts b/lib/classes/messages/GroupTitlesReply.ts index cbb863f..b3766f7 100644 --- a/lib/classes/messages/GroupTitlesReply.ts +++ b/lib/classes/messages/GroupTitlesReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupTitlesReplyMessage implements MessageBase { @@ -80,6 +80,10 @@ export class GroupTitlesReplyMessage implements MessageBase newObjAgentData['RequestID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.GroupData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GroupTitlesRequest.ts b/lib/classes/messages/GroupTitlesRequest.ts index cc8aa3d..e2e2ed1 100644 --- a/lib/classes/messages/GroupTitlesRequest.ts +++ b/lib/classes/messages/GroupTitlesRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupTitlesRequestMessage implements MessageBase { diff --git a/lib/classes/messages/GroupVoteHistoryItemReply.ts b/lib/classes/messages/GroupVoteHistoryItemReply.ts index b53f1e7..d04fa0f 100644 --- a/lib/classes/messages/GroupVoteHistoryItemReply.ts +++ b/lib/classes/messages/GroupVoteHistoryItemReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupVoteHistoryItemReplyMessage implements MessageBase { @@ -184,6 +184,10 @@ export class GroupVoteHistoryItemReplyMessage implements MessageBase newObjHistoryItemData['ProposalText'] = buf.slice(pos, pos + varLength); pos += varLength; this.HistoryItemData = newObjHistoryItemData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.VoteItem = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/GroupVoteHistoryRequest.ts b/lib/classes/messages/GroupVoteHistoryRequest.ts index 9a02463..10d153a 100644 --- a/lib/classes/messages/GroupVoteHistoryRequest.ts +++ b/lib/classes/messages/GroupVoteHistoryRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class GroupVoteHistoryRequestMessage implements MessageBase { diff --git a/lib/classes/messages/HealthMessage.ts b/lib/classes/messages/HealthMessage.ts index 14dae11..38da104 100644 --- a/lib/classes/messages/HealthMessage.ts +++ b/lib/classes/messages/HealthMessage.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class HealthMessageMessage implements MessageBase { diff --git a/lib/classes/messages/ImageData.ts b/lib/classes/messages/ImageData.ts index 468dfa5..143c04f 100644 --- a/lib/classes/messages/ImageData.ts +++ b/lib/classes/messages/ImageData.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ImageDataMessage implements MessageBase { diff --git a/lib/classes/messages/ImageNotInDatabase.ts b/lib/classes/messages/ImageNotInDatabase.ts index e0ce3e9..5428371 100644 --- a/lib/classes/messages/ImageNotInDatabase.ts +++ b/lib/classes/messages/ImageNotInDatabase.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ImageNotInDatabaseMessage implements MessageBase { diff --git a/lib/classes/messages/ImagePacket.ts b/lib/classes/messages/ImagePacket.ts index 096eb70..843821c 100644 --- a/lib/classes/messages/ImagePacket.ts +++ b/lib/classes/messages/ImagePacket.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ImagePacketMessage implements MessageBase { diff --git a/lib/classes/messages/ImprovedInstantMessage.ts b/lib/classes/messages/ImprovedInstantMessage.ts index 421f5eb..c482550 100644 --- a/lib/classes/messages/ImprovedInstantMessage.ts +++ b/lib/classes/messages/ImprovedInstantMessage.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ImprovedInstantMessageMessage implements MessageBase { diff --git a/lib/classes/messages/ImprovedTerseObjectUpdate.ts b/lib/classes/messages/ImprovedTerseObjectUpdate.ts index 0d78e85..714fa7a 100644 --- a/lib/classes/messages/ImprovedTerseObjectUpdate.ts +++ b/lib/classes/messages/ImprovedTerseObjectUpdate.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ImprovedTerseObjectUpdateMessage implements MessageBase { @@ -75,6 +75,10 @@ export class ImprovedTerseObjectUpdateMessage implements MessageBase newObjRegionData['TimeDilation'] = buf.readUInt16LE(pos); pos += 2; this.RegionData = newObjRegionData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/InitiateDownload.ts b/lib/classes/messages/InitiateDownload.ts index f16f195..6e0576d 100644 --- a/lib/classes/messages/InitiateDownload.ts +++ b/lib/classes/messages/InitiateDownload.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class InitiateDownloadMessage implements MessageBase { diff --git a/lib/classes/messages/InternalScriptMail.ts b/lib/classes/messages/InternalScriptMail.ts index 3bdb007..2510bfd 100644 --- a/lib/classes/messages/InternalScriptMail.ts +++ b/lib/classes/messages/InternalScriptMail.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class InternalScriptMailMessage implements MessageBase { diff --git a/lib/classes/messages/InventoryAssetResponse.ts b/lib/classes/messages/InventoryAssetResponse.ts index 4728bf0..3f359c9 100644 --- a/lib/classes/messages/InventoryAssetResponse.ts +++ b/lib/classes/messages/InventoryAssetResponse.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class InventoryAssetResponseMessage implements MessageBase { diff --git a/lib/classes/messages/InventoryDescendents.ts b/lib/classes/messages/InventoryDescendents.ts index fe817fc..b23789d 100644 --- a/lib/classes/messages/InventoryDescendents.ts +++ b/lib/classes/messages/InventoryDescendents.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class InventoryDescendentsMessage implements MessageBase { @@ -165,6 +165,10 @@ export class InventoryDescendentsMessage implements MessageBase newObjAgentData['Descendents'] = buf.readInt32LE(pos); pos += 4; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.FolderData = []; for (let i = 0; i < count; i++) @@ -190,6 +194,10 @@ export class InventoryDescendentsMessage implements MessageBase pos += varLength; this.FolderData.push(newObjFolderData); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.ItemData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/InviteGroupRequest.ts b/lib/classes/messages/InviteGroupRequest.ts index a24223f..0e2766c 100644 --- a/lib/classes/messages/InviteGroupRequest.ts +++ b/lib/classes/messages/InviteGroupRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class InviteGroupRequestMessage implements MessageBase { @@ -73,6 +73,10 @@ export class InviteGroupRequestMessage implements MessageBase newObjGroupData['GroupID'] = new UUID(buf, pos); pos += 16; this.GroupData = newObjGroupData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.InviteData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/InviteGroupResponse.ts b/lib/classes/messages/InviteGroupResponse.ts index 32bd7b9..83d3b34 100644 --- a/lib/classes/messages/InviteGroupResponse.ts +++ b/lib/classes/messages/InviteGroupResponse.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class InviteGroupResponseMessage implements MessageBase { diff --git a/lib/classes/messages/JoinGroupReply.ts b/lib/classes/messages/JoinGroupReply.ts index b369905..a59fc87 100644 --- a/lib/classes/messages/JoinGroupReply.ts +++ b/lib/classes/messages/JoinGroupReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class JoinGroupReplyMessage implements MessageBase { diff --git a/lib/classes/messages/JoinGroupRequest.ts b/lib/classes/messages/JoinGroupRequest.ts index c98f1b4..d01571a 100644 --- a/lib/classes/messages/JoinGroupRequest.ts +++ b/lib/classes/messages/JoinGroupRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class JoinGroupRequestMessage implements MessageBase { diff --git a/lib/classes/messages/JoinGroupRequestExtended.ts b/lib/classes/messages/JoinGroupRequestExtended.ts index 3673f33..fed48fc 100644 --- a/lib/classes/messages/JoinGroupRequestExtended.ts +++ b/lib/classes/messages/JoinGroupRequestExtended.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class JoinGroupRequestExtendedMessage implements MessageBase { diff --git a/lib/classes/messages/KickUser.ts b/lib/classes/messages/KickUser.ts index 5928a80..c060f83 100644 --- a/lib/classes/messages/KickUser.ts +++ b/lib/classes/messages/KickUser.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {IPAddress} from '../IPAddress'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { IPAddress } from '../IPAddress'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class KickUserMessage implements MessageBase { diff --git a/lib/classes/messages/KickUserAck.ts b/lib/classes/messages/KickUserAck.ts index ced5cf8..dcc256a 100644 --- a/lib/classes/messages/KickUserAck.ts +++ b/lib/classes/messages/KickUserAck.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class KickUserAckMessage implements MessageBase { diff --git a/lib/classes/messages/KillChildAgents.ts b/lib/classes/messages/KillChildAgents.ts index e429260..e830c9e 100644 --- a/lib/classes/messages/KillChildAgents.ts +++ b/lib/classes/messages/KillChildAgents.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class KillChildAgentsMessage implements MessageBase { diff --git a/lib/classes/messages/KillObject.ts b/lib/classes/messages/KillObject.ts index a7604a9..264da00 100644 --- a/lib/classes/messages/KillObject.ts +++ b/lib/classes/messages/KillObject.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class KillObjectMessage implements MessageBase { @@ -36,6 +36,10 @@ export class KillObjectMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/LandStatReply.ts b/lib/classes/messages/LandStatReply.ts index dda35ec..4ed070f 100644 --- a/lib/classes/messages/LandStatReply.ts +++ b/lib/classes/messages/LandStatReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LandStatReplyMessage implements MessageBase { @@ -97,6 +97,10 @@ export class LandStatReplyMessage implements MessageBase newObjRequestData['TotalObjectCount'] = buf.readUInt32LE(pos); pos += 4; this.RequestData = newObjRequestData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ReportData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/LandStatRequest.ts b/lib/classes/messages/LandStatRequest.ts index 5d3270e..07381e1 100644 --- a/lib/classes/messages/LandStatRequest.ts +++ b/lib/classes/messages/LandStatRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LandStatRequestMessage implements MessageBase { diff --git a/lib/classes/messages/LayerData.ts b/lib/classes/messages/LayerData.ts index d91f07c..49672a8 100644 --- a/lib/classes/messages/LayerData.ts +++ b/lib/classes/messages/LayerData.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LayerDataMessage implements MessageBase { diff --git a/lib/classes/messages/LeaveGroupReply.ts b/lib/classes/messages/LeaveGroupReply.ts index 9bf6e29..a0f41c0 100644 --- a/lib/classes/messages/LeaveGroupReply.ts +++ b/lib/classes/messages/LeaveGroupReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LeaveGroupReplyMessage implements MessageBase { diff --git a/lib/classes/messages/LeaveGroupRequest.ts b/lib/classes/messages/LeaveGroupRequest.ts index cd58387..655cd14 100644 --- a/lib/classes/messages/LeaveGroupRequest.ts +++ b/lib/classes/messages/LeaveGroupRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LeaveGroupRequestMessage implements MessageBase { diff --git a/lib/classes/messages/LinkInventoryItem.ts b/lib/classes/messages/LinkInventoryItem.ts index 8d55d55..5ceea9b 100644 --- a/lib/classes/messages/LinkInventoryItem.ts +++ b/lib/classes/messages/LinkInventoryItem.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LinkInventoryItemMessage implements MessageBase { diff --git a/lib/classes/messages/LiveHelpGroupReply.ts b/lib/classes/messages/LiveHelpGroupReply.ts index 96c0dde..06b74c8 100644 --- a/lib/classes/messages/LiveHelpGroupReply.ts +++ b/lib/classes/messages/LiveHelpGroupReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LiveHelpGroupReplyMessage implements MessageBase { diff --git a/lib/classes/messages/LiveHelpGroupRequest.ts b/lib/classes/messages/LiveHelpGroupRequest.ts index 8e2f377..5c235ea 100644 --- a/lib/classes/messages/LiveHelpGroupRequest.ts +++ b/lib/classes/messages/LiveHelpGroupRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LiveHelpGroupRequestMessage implements MessageBase { diff --git a/lib/classes/messages/LoadURL.ts b/lib/classes/messages/LoadURL.ts index 0d1370f..96c94c4 100644 --- a/lib/classes/messages/LoadURL.ts +++ b/lib/classes/messages/LoadURL.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LoadURLMessage implements MessageBase { diff --git a/lib/classes/messages/LogDwellTime.ts b/lib/classes/messages/LogDwellTime.ts index f46f1ad..83cd606 100644 --- a/lib/classes/messages/LogDwellTime.ts +++ b/lib/classes/messages/LogDwellTime.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LogDwellTimeMessage implements MessageBase { diff --git a/lib/classes/messages/LogFailedMoneyTransaction.ts b/lib/classes/messages/LogFailedMoneyTransaction.ts index f4cba2d..55a8515 100644 --- a/lib/classes/messages/LogFailedMoneyTransaction.ts +++ b/lib/classes/messages/LogFailedMoneyTransaction.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {IPAddress} from '../IPAddress'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { IPAddress } from '../IPAddress'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LogFailedMoneyTransactionMessage implements MessageBase { diff --git a/lib/classes/messages/LogParcelChanges.ts b/lib/classes/messages/LogParcelChanges.ts index f78f787..63c3512 100644 --- a/lib/classes/messages/LogParcelChanges.ts +++ b/lib/classes/messages/LogParcelChanges.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LogParcelChangesMessage implements MessageBase { @@ -79,6 +79,10 @@ export class LogParcelChangesMessage implements MessageBase newObjRegionData['RegionHandle'] = new Long(buf.readInt32LE(pos), buf.readInt32LE(pos+4)); pos += 8; this.RegionData = newObjRegionData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ParcelData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/LogTextMessage.ts b/lib/classes/messages/LogTextMessage.ts index f5a2ee2..9306b6b 100644 --- a/lib/classes/messages/LogTextMessage.ts +++ b/lib/classes/messages/LogTextMessage.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LogTextMessageMessage implements MessageBase { @@ -64,6 +64,10 @@ export class LogTextMessageMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.DataBlock = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/LogoutReply.ts b/lib/classes/messages/LogoutReply.ts index 9d7c0db..c68e975 100644 --- a/lib/classes/messages/LogoutReply.ts +++ b/lib/classes/messages/LogoutReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LogoutReplyMessage implements MessageBase { @@ -57,6 +57,10 @@ export class LogoutReplyMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.InventoryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/LogoutRequest.ts b/lib/classes/messages/LogoutRequest.ts index ce6b200..695a16d 100644 --- a/lib/classes/messages/LogoutRequest.ts +++ b/lib/classes/messages/LogoutRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class LogoutRequestMessage implements MessageBase { diff --git a/lib/classes/messages/MapBlockReply.ts b/lib/classes/messages/MapBlockReply.ts index 5d3872d..08a38c6 100644 --- a/lib/classes/messages/MapBlockReply.ts +++ b/lib/classes/messages/MapBlockReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MapBlockReplyMessage implements MessageBase { @@ -25,10 +25,14 @@ export class MapBlockReplyMessage implements MessageBase Agents: number; MapImageID: UUID; }[]; + Size: { + SizeX: number; + SizeY: number; + }[]; getSize(): number { - return this.calculateVarVarSize(this.Data, 'Name', 1) + ((27) * this.Data.length) + 21; + return this.calculateVarVarSize(this.Data, 'Name', 1) + ((27) * this.Data.length) + ((4) * this.Size.length) + 22; } calculateVarVarSize(block: object[], paramName: string, extraPerVar: number): number @@ -48,7 +52,7 @@ export class MapBlockReplyMessage implements MessageBase pos += 16; buf.writeUInt32LE(this.AgentData['Flags'], pos); pos += 4; - const count = this.Data.length; + let count = this.Data.length; buf.writeUInt8(this.Data.length, pos++); for (let i = 0; i < count; i++) { @@ -67,6 +71,15 @@ export class MapBlockReplyMessage implements MessageBase this.Data[i]['MapImageID'].writeToBuffer(buf, pos); pos += 16; } + count = this.Size.length; + buf.writeUInt8(this.Size.length, pos++); + for (let i = 0; i < count; i++) + { + buf.writeUInt16LE(this.Size[i]['SizeX'], pos); + pos += 2; + buf.writeUInt16LE(this.Size[i]['SizeY'], pos); + pos += 2; + } return pos - startPos; } @@ -86,7 +99,11 @@ export class MapBlockReplyMessage implements MessageBase newObjAgentData['Flags'] = buf.readUInt32LE(pos); pos += 4; this.AgentData = newObjAgentData; - const count = buf.readUInt8(pos++); + if (pos >= buf.length) + { + return pos - startPos; + } + let count = buf.readUInt8(pos++); this.Data = []; for (let i = 0; i < count; i++) { @@ -125,6 +142,27 @@ export class MapBlockReplyMessage implements MessageBase pos += 16; this.Data.push(newObjData); } + if (pos >= buf.length) + { + return pos - startPos; + } + count = buf.readUInt8(pos++); + this.Size = []; + for (let i = 0; i < count; i++) + { + const newObjSize: { + SizeX: number, + SizeY: number + } = { + SizeX: 0, + SizeY: 0 + }; + newObjSize['SizeX'] = buf.readUInt16LE(pos); + pos += 2; + newObjSize['SizeY'] = buf.readUInt16LE(pos); + pos += 2; + this.Size.push(newObjSize); + } return pos - startPos; } } diff --git a/lib/classes/messages/MapBlockRequest.ts b/lib/classes/messages/MapBlockRequest.ts index d184dbb..1c648ce 100644 --- a/lib/classes/messages/MapBlockRequest.ts +++ b/lib/classes/messages/MapBlockRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MapBlockRequestMessage implements MessageBase { diff --git a/lib/classes/messages/MapItemReply.ts b/lib/classes/messages/MapItemReply.ts index 8e839cb..9637bc0 100644 --- a/lib/classes/messages/MapItemReply.ts +++ b/lib/classes/messages/MapItemReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MapItemReplyMessage implements MessageBase { @@ -96,6 +96,10 @@ export class MapItemReplyMessage implements MessageBase newObjRequestData['ItemType'] = buf.readUInt32LE(pos); pos += 4; this.RequestData = newObjRequestData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Data = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/MapItemRequest.ts b/lib/classes/messages/MapItemRequest.ts index 85fda5c..8553437 100644 --- a/lib/classes/messages/MapItemRequest.ts +++ b/lib/classes/messages/MapItemRequest.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MapItemRequestMessage implements MessageBase { diff --git a/lib/classes/messages/MapLayerReply.ts b/lib/classes/messages/MapLayerReply.ts index aa41caf..69c5a75 100644 --- a/lib/classes/messages/MapLayerReply.ts +++ b/lib/classes/messages/MapLayerReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MapLayerReplyMessage implements MessageBase { @@ -69,6 +69,10 @@ export class MapLayerReplyMessage implements MessageBase newObjAgentData['Flags'] = buf.readUInt32LE(pos); pos += 4; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.LayerData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/MapLayerRequest.ts b/lib/classes/messages/MapLayerRequest.ts index 350b1d5..3b49803 100644 --- a/lib/classes/messages/MapLayerRequest.ts +++ b/lib/classes/messages/MapLayerRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MapLayerRequestMessage implements MessageBase { diff --git a/lib/classes/messages/MapNameRequest.ts b/lib/classes/messages/MapNameRequest.ts index 6d779c0..9826d2c 100644 --- a/lib/classes/messages/MapNameRequest.ts +++ b/lib/classes/messages/MapNameRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MapNameRequestMessage implements MessageBase { diff --git a/lib/classes/messages/MeanCollisionAlert.ts b/lib/classes/messages/MeanCollisionAlert.ts index 34fbed6..c0c198e 100644 --- a/lib/classes/messages/MeanCollisionAlert.ts +++ b/lib/classes/messages/MeanCollisionAlert.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MeanCollisionAlertMessage implements MessageBase { @@ -48,6 +48,10 @@ export class MeanCollisionAlertMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.MeanCollision = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/MergeParcel.ts b/lib/classes/messages/MergeParcel.ts index 7f93714..c098b68 100644 --- a/lib/classes/messages/MergeParcel.ts +++ b/lib/classes/messages/MergeParcel.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MergeParcelMessage implements MessageBase { @@ -50,6 +50,10 @@ export class MergeParcelMessage implements MessageBase newObjMasterParcelData['MasterID'] = new UUID(buf, pos); pos += 16; this.MasterParcelData = newObjMasterParcelData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.SlaveParcelData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ModifyLand.ts b/lib/classes/messages/ModifyLand.ts index d4406e9..d98fc92 100644 --- a/lib/classes/messages/ModifyLand.ts +++ b/lib/classes/messages/ModifyLand.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ModifyLandMessage implements MessageBase { @@ -109,6 +109,10 @@ export class ModifyLandMessage implements MessageBase newObjModifyBlock['Height'] = buf.readFloatLE(pos); pos += 4; this.ModifyBlock = newObjModifyBlock; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.ParcelData = []; for (let i = 0; i < count; i++) @@ -138,6 +142,10 @@ export class ModifyLandMessage implements MessageBase pos += 4; this.ParcelData.push(newObjParcelData); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.ModifyBlockExtended = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/MoneyBalanceReply.ts b/lib/classes/messages/MoneyBalanceReply.ts index 60543c7..73cf190 100644 --- a/lib/classes/messages/MoneyBalanceReply.ts +++ b/lib/classes/messages/MoneyBalanceReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MoneyBalanceReplyMessage implements MessageBase { diff --git a/lib/classes/messages/MoneyBalanceRequest.ts b/lib/classes/messages/MoneyBalanceRequest.ts index 4117ecc..d269473 100644 --- a/lib/classes/messages/MoneyBalanceRequest.ts +++ b/lib/classes/messages/MoneyBalanceRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MoneyBalanceRequestMessage implements MessageBase { diff --git a/lib/classes/messages/MoneyTransferBackend.ts b/lib/classes/messages/MoneyTransferBackend.ts index 2f4c9bc..aaefcdf 100644 --- a/lib/classes/messages/MoneyTransferBackend.ts +++ b/lib/classes/messages/MoneyTransferBackend.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MoneyTransferBackendMessage implements MessageBase { diff --git a/lib/classes/messages/MoneyTransferRequest.ts b/lib/classes/messages/MoneyTransferRequest.ts index b6041fa..43a9439 100644 --- a/lib/classes/messages/MoneyTransferRequest.ts +++ b/lib/classes/messages/MoneyTransferRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MoneyTransferRequestMessage implements MessageBase { diff --git a/lib/classes/messages/MoveInventoryFolder.ts b/lib/classes/messages/MoveInventoryFolder.ts index 079bee7..5471e8c 100644 --- a/lib/classes/messages/MoveInventoryFolder.ts +++ b/lib/classes/messages/MoveInventoryFolder.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MoveInventoryFolderMessage implements MessageBase { @@ -65,6 +65,10 @@ export class MoveInventoryFolderMessage implements MessageBase pos += 16; newObjAgentData['Stamp'] = (buf.readUInt8(pos++) === 1); this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.InventoryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/MoveInventoryItem.ts b/lib/classes/messages/MoveInventoryItem.ts index 49ad9d7..ada8ef4 100644 --- a/lib/classes/messages/MoveInventoryItem.ts +++ b/lib/classes/messages/MoveInventoryItem.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MoveInventoryItemMessage implements MessageBase { @@ -79,6 +79,10 @@ export class MoveInventoryItemMessage implements MessageBase pos += 16; newObjAgentData['Stamp'] = (buf.readUInt8(pos++) === 1); this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.InventoryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/MoveTaskInventory.ts b/lib/classes/messages/MoveTaskInventory.ts index d3a0c12..9371a1f 100644 --- a/lib/classes/messages/MoveTaskInventory.ts +++ b/lib/classes/messages/MoveTaskInventory.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MoveTaskInventoryMessage implements MessageBase { diff --git a/lib/classes/messages/MultipleObjectUpdate.ts b/lib/classes/messages/MultipleObjectUpdate.ts index 579ae9e..73f0c0c 100644 --- a/lib/classes/messages/MultipleObjectUpdate.ts +++ b/lib/classes/messages/MultipleObjectUpdate.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MultipleObjectUpdateMessage implements MessageBase { @@ -73,6 +73,10 @@ export class MultipleObjectUpdateMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/MuteListRequest.ts b/lib/classes/messages/MuteListRequest.ts index 82445cf..095f7ef 100644 --- a/lib/classes/messages/MuteListRequest.ts +++ b/lib/classes/messages/MuteListRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MuteListRequestMessage implements MessageBase { diff --git a/lib/classes/messages/MuteListUpdate.ts b/lib/classes/messages/MuteListUpdate.ts index b47960a..b82c008 100644 --- a/lib/classes/messages/MuteListUpdate.ts +++ b/lib/classes/messages/MuteListUpdate.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class MuteListUpdateMessage implements MessageBase { diff --git a/lib/classes/messages/NameValuePair.ts b/lib/classes/messages/NameValuePair.ts index 8aa31be..92e60ac 100644 --- a/lib/classes/messages/NameValuePair.ts +++ b/lib/classes/messages/NameValuePair.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class NameValuePairMessage implements MessageBase { @@ -62,6 +62,10 @@ export class NameValuePairMessage implements MessageBase newObjTaskData['ID'] = new UUID(buf, pos); pos += 16; this.TaskData = newObjTaskData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.NameValueData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/NearestLandingRegionReply.ts b/lib/classes/messages/NearestLandingRegionReply.ts index 84c6062..e7c1055 100644 --- a/lib/classes/messages/NearestLandingRegionReply.ts +++ b/lib/classes/messages/NearestLandingRegionReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class NearestLandingRegionReplyMessage implements MessageBase { diff --git a/lib/classes/messages/NearestLandingRegionRequest.ts b/lib/classes/messages/NearestLandingRegionRequest.ts index 16a8793..d118904 100644 --- a/lib/classes/messages/NearestLandingRegionRequest.ts +++ b/lib/classes/messages/NearestLandingRegionRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class NearestLandingRegionRequestMessage implements MessageBase { diff --git a/lib/classes/messages/NearestLandingRegionUpdated.ts b/lib/classes/messages/NearestLandingRegionUpdated.ts index a97414f..1072366 100644 --- a/lib/classes/messages/NearestLandingRegionUpdated.ts +++ b/lib/classes/messages/NearestLandingRegionUpdated.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class NearestLandingRegionUpdatedMessage implements MessageBase { diff --git a/lib/classes/messages/NeighborList.ts b/lib/classes/messages/NeighborList.ts index 06ac6e4..c3379fd 100644 --- a/lib/classes/messages/NeighborList.ts +++ b/lib/classes/messages/NeighborList.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {IPAddress} from '../IPAddress'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { IPAddress } from '../IPAddress'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class NeighborListMessage implements MessageBase { diff --git a/lib/classes/messages/NetTest.ts b/lib/classes/messages/NetTest.ts index c92e2c1..f9c64f3 100644 --- a/lib/classes/messages/NetTest.ts +++ b/lib/classes/messages/NetTest.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class NetTestMessage implements MessageBase { diff --git a/lib/classes/messages/ObjectAdd.ts b/lib/classes/messages/ObjectAdd.ts index cc3293c..1d6c5ee 100644 --- a/lib/classes/messages/ObjectAdd.ts +++ b/lib/classes/messages/ObjectAdd.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {Quaternion} from '../Quaternion'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { Quaternion } from '../Quaternion'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectAddMessage implements MessageBase { diff --git a/lib/classes/messages/ObjectAnimation.ts b/lib/classes/messages/ObjectAnimation.ts new file mode 100644 index 0000000..e9932ce --- /dev/null +++ b/lib/classes/messages/ObjectAnimation.ts @@ -0,0 +1,80 @@ +// This file has been automatically generated by writeMessageClasses.js + +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; + +export class ObjectAnimationMessage implements MessageBase +{ + name = 'ObjectAnimation'; + messageFlags = MessageFlags.Trusted | MessageFlags.FrequencyHigh; + id = Message.ObjectAnimation; + + Sender: { + ID: UUID; + }; + AnimationList: { + AnimID: UUID; + AnimSequenceID: number; + }[]; + + getSize(): number + { + return ((20) * this.AnimationList.length) + 17; + } + + writeToBuffer(buf: Buffer, pos: number): number + { + const startPos = pos; + this.Sender['ID'].writeToBuffer(buf, pos); + pos += 16; + const count = this.AnimationList.length; + buf.writeUInt8(this.AnimationList.length, pos++); + for (let i = 0; i < count; i++) + { + this.AnimationList[i]['AnimID'].writeToBuffer(buf, pos); + pos += 16; + buf.writeInt32LE(this.AnimationList[i]['AnimSequenceID'], pos); + pos += 4; + } + return pos - startPos; + } + + readFromBuffer(buf: Buffer, pos: number): number + { + const startPos = pos; + let varLength = 0; + const newObjSender: { + ID: UUID + } = { + ID: UUID.zero() + }; + newObjSender['ID'] = new UUID(buf, pos); + pos += 16; + this.Sender = newObjSender; + if (pos >= buf.length) + { + return pos - startPos; + } + const count = buf.readUInt8(pos++); + this.AnimationList = []; + for (let i = 0; i < count; i++) + { + const newObjAnimationList: { + AnimID: UUID, + AnimSequenceID: number + } = { + AnimID: UUID.zero(), + AnimSequenceID: 0 + }; + newObjAnimationList['AnimID'] = new UUID(buf, pos); + pos += 16; + newObjAnimationList['AnimSequenceID'] = buf.readInt32LE(pos); + pos += 4; + this.AnimationList.push(newObjAnimationList); + } + return pos - startPos; + } +} + diff --git a/lib/classes/messages/ObjectAttach.ts b/lib/classes/messages/ObjectAttach.ts index 5b750e4..2d20256 100644 --- a/lib/classes/messages/ObjectAttach.ts +++ b/lib/classes/messages/ObjectAttach.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Quaternion} from '../Quaternion'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Quaternion } from '../Quaternion'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectAttachMessage implements MessageBase { @@ -66,6 +66,10 @@ export class ObjectAttachMessage implements MessageBase pos += 16; newObjAgentData['AttachmentPoint'] = buf.readUInt8(pos++); this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectBuy.ts b/lib/classes/messages/ObjectBuy.ts index 5163384..5bc183a 100644 --- a/lib/classes/messages/ObjectBuy.ts +++ b/lib/classes/messages/ObjectBuy.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectBuyMessage implements MessageBase { @@ -76,6 +76,10 @@ export class ObjectBuyMessage implements MessageBase newObjAgentData['CategoryID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectCategory.ts b/lib/classes/messages/ObjectCategory.ts index f584a07..c5e1fcd 100644 --- a/lib/classes/messages/ObjectCategory.ts +++ b/lib/classes/messages/ObjectCategory.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectCategoryMessage implements MessageBase { @@ -60,6 +60,10 @@ export class ObjectCategoryMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectClickAction.ts b/lib/classes/messages/ObjectClickAction.ts index ae99ffc..b3e4596 100644 --- a/lib/classes/messages/ObjectClickAction.ts +++ b/lib/classes/messages/ObjectClickAction.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectClickActionMessage implements MessageBase { @@ -59,6 +59,10 @@ export class ObjectClickActionMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectDeGrab.ts b/lib/classes/messages/ObjectDeGrab.ts index dcb1364..b63a2ec 100644 --- a/lib/classes/messages/ObjectDeGrab.ts +++ b/lib/classes/messages/ObjectDeGrab.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectDeGrabMessage implements MessageBase { @@ -86,6 +86,10 @@ export class ObjectDeGrabMessage implements MessageBase newObjObjectData['LocalID'] = buf.readUInt32LE(pos); pos += 4; this.ObjectData = newObjObjectData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.SurfaceInfo = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectDelete.ts b/lib/classes/messages/ObjectDelete.ts index e13f40f..cab8033 100644 --- a/lib/classes/messages/ObjectDelete.ts +++ b/lib/classes/messages/ObjectDelete.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectDeleteMessage implements MessageBase { @@ -62,6 +62,10 @@ export class ObjectDeleteMessage implements MessageBase pos += 16; newObjAgentData['Force'] = (buf.readUInt8(pos++) === 1); this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectDelink.ts b/lib/classes/messages/ObjectDelink.ts index 89c0004..fd044f9 100644 --- a/lib/classes/messages/ObjectDelink.ts +++ b/lib/classes/messages/ObjectDelink.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectDelinkMessage implements MessageBase { @@ -57,6 +57,10 @@ export class ObjectDelinkMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectDescription.ts b/lib/classes/messages/ObjectDescription.ts index 019804a..bc149a9 100644 --- a/lib/classes/messages/ObjectDescription.ts +++ b/lib/classes/messages/ObjectDescription.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectDescriptionMessage implements MessageBase { @@ -71,6 +71,10 @@ export class ObjectDescriptionMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectDeselect.ts b/lib/classes/messages/ObjectDeselect.ts index 90e9f5d..cbde273 100644 --- a/lib/classes/messages/ObjectDeselect.ts +++ b/lib/classes/messages/ObjectDeselect.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectDeselectMessage implements MessageBase { @@ -57,6 +57,10 @@ export class ObjectDeselectMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectDetach.ts b/lib/classes/messages/ObjectDetach.ts index b26d623..f5bb5d2 100644 --- a/lib/classes/messages/ObjectDetach.ts +++ b/lib/classes/messages/ObjectDetach.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectDetachMessage implements MessageBase { @@ -57,6 +57,10 @@ export class ObjectDetachMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectDrop.ts b/lib/classes/messages/ObjectDrop.ts index 5e71c81..ae16ce9 100644 --- a/lib/classes/messages/ObjectDrop.ts +++ b/lib/classes/messages/ObjectDrop.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectDropMessage implements MessageBase { @@ -57,6 +57,10 @@ export class ObjectDropMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectDuplicate.ts b/lib/classes/messages/ObjectDuplicate.ts index f383622..53c60db 100644 --- a/lib/classes/messages/ObjectDuplicate.ts +++ b/lib/classes/messages/ObjectDuplicate.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectDuplicateMessage implements MessageBase { @@ -85,6 +85,10 @@ export class ObjectDuplicateMessage implements MessageBase newObjSharedData['DuplicateFlags'] = buf.readUInt32LE(pos); pos += 4; this.SharedData = newObjSharedData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectDuplicateOnRay.ts b/lib/classes/messages/ObjectDuplicateOnRay.ts index 6cc0f92..a24eace 100644 --- a/lib/classes/messages/ObjectDuplicateOnRay.ts +++ b/lib/classes/messages/ObjectDuplicateOnRay.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectDuplicateOnRayMessage implements MessageBase { @@ -113,6 +113,10 @@ export class ObjectDuplicateOnRayMessage implements MessageBase newObjAgentData['DuplicateFlags'] = buf.readUInt32LE(pos); pos += 4; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectExportSelected.ts b/lib/classes/messages/ObjectExportSelected.ts index df3581c..95dbfed 100644 --- a/lib/classes/messages/ObjectExportSelected.ts +++ b/lib/classes/messages/ObjectExportSelected.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectExportSelectedMessage implements MessageBase { @@ -64,6 +64,10 @@ export class ObjectExportSelectedMessage implements MessageBase newObjAgentData['VolumeDetail'] = buf.readInt16LE(pos); pos += 2; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectExtraParams.ts b/lib/classes/messages/ObjectExtraParams.ts index fe8cef6..511b184 100644 --- a/lib/classes/messages/ObjectExtraParams.ts +++ b/lib/classes/messages/ObjectExtraParams.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectExtraParamsMessage implements MessageBase { @@ -79,6 +79,10 @@ export class ObjectExtraParamsMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectFlagUpdate.ts b/lib/classes/messages/ObjectFlagUpdate.ts index 624fd6f..321b20c 100644 --- a/lib/classes/messages/ObjectFlagUpdate.ts +++ b/lib/classes/messages/ObjectFlagUpdate.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectFlagUpdateMessage implements MessageBase { @@ -95,6 +95,10 @@ export class ObjectFlagUpdateMessage implements MessageBase newObjAgentData['IsPhantom'] = (buf.readUInt8(pos++) === 1); newObjAgentData['CastsShadows'] = (buf.readUInt8(pos++) === 1); this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ExtraPhysics = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectGrab.ts b/lib/classes/messages/ObjectGrab.ts index ddf0de3..38d6e8f 100644 --- a/lib/classes/messages/ObjectGrab.ts +++ b/lib/classes/messages/ObjectGrab.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectGrabMessage implements MessageBase { @@ -93,6 +93,10 @@ export class ObjectGrabMessage implements MessageBase newObjObjectData['GrabOffset'] = new Vector3(buf, pos, false); pos += 12; this.ObjectData = newObjObjectData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.SurfaceInfo = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectGrabUpdate.ts b/lib/classes/messages/ObjectGrabUpdate.ts index f45b696..63e2786 100644 --- a/lib/classes/messages/ObjectGrabUpdate.ts +++ b/lib/classes/messages/ObjectGrabUpdate.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectGrabUpdateMessage implements MessageBase { @@ -107,6 +107,10 @@ export class ObjectGrabUpdateMessage implements MessageBase newObjObjectData['TimeSinceLast'] = buf.readUInt32LE(pos); pos += 4; this.ObjectData = newObjObjectData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.SurfaceInfo = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectGroup.ts b/lib/classes/messages/ObjectGroup.ts index 210a579..24de49c 100644 --- a/lib/classes/messages/ObjectGroup.ts +++ b/lib/classes/messages/ObjectGroup.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectGroupMessage implements MessageBase { @@ -64,6 +64,10 @@ export class ObjectGroupMessage implements MessageBase newObjAgentData['GroupID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectImage.ts b/lib/classes/messages/ObjectImage.ts index 0a61ec4..331358d 100644 --- a/lib/classes/messages/ObjectImage.ts +++ b/lib/classes/messages/ObjectImage.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectImageMessage implements MessageBase { @@ -76,6 +76,10 @@ export class ObjectImageMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectIncludeInSearch.ts b/lib/classes/messages/ObjectIncludeInSearch.ts index e032bcf..b1aaa0c 100644 --- a/lib/classes/messages/ObjectIncludeInSearch.ts +++ b/lib/classes/messages/ObjectIncludeInSearch.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectIncludeInSearchMessage implements MessageBase { @@ -59,6 +59,10 @@ export class ObjectIncludeInSearchMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectLink.ts b/lib/classes/messages/ObjectLink.ts index eed62a9..722552c 100644 --- a/lib/classes/messages/ObjectLink.ts +++ b/lib/classes/messages/ObjectLink.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectLinkMessage implements MessageBase { @@ -57,6 +57,10 @@ export class ObjectLinkMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectMaterial.ts b/lib/classes/messages/ObjectMaterial.ts index a049e64..ce0297b 100644 --- a/lib/classes/messages/ObjectMaterial.ts +++ b/lib/classes/messages/ObjectMaterial.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectMaterialMessage implements MessageBase { @@ -59,6 +59,10 @@ export class ObjectMaterialMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectName.ts b/lib/classes/messages/ObjectName.ts index 66dccd3..9132716 100644 --- a/lib/classes/messages/ObjectName.ts +++ b/lib/classes/messages/ObjectName.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectNameMessage implements MessageBase { @@ -71,6 +71,10 @@ export class ObjectNameMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectOwner.ts b/lib/classes/messages/ObjectOwner.ts index bcc6590..4a3d20c 100644 --- a/lib/classes/messages/ObjectOwner.ts +++ b/lib/classes/messages/ObjectOwner.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectOwnerMessage implements MessageBase { @@ -82,6 +82,10 @@ export class ObjectOwnerMessage implements MessageBase newObjHeaderData['GroupID'] = new UUID(buf, pos); pos += 16; this.HeaderData = newObjHeaderData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectPermissions.ts b/lib/classes/messages/ObjectPermissions.ts index fdce97b..e78808a 100644 --- a/lib/classes/messages/ObjectPermissions.ts +++ b/lib/classes/messages/ObjectPermissions.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectPermissionsMessage implements MessageBase { @@ -75,6 +75,10 @@ export class ObjectPermissionsMessage implements MessageBase }; newObjHeaderData['Override'] = (buf.readUInt8(pos++) === 1); this.HeaderData = newObjHeaderData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectPosition.ts b/lib/classes/messages/ObjectPosition.ts index 31638a7..172a2bb 100644 --- a/lib/classes/messages/ObjectPosition.ts +++ b/lib/classes/messages/ObjectPosition.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectPositionMessage implements MessageBase { @@ -61,6 +61,10 @@ export class ObjectPositionMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectProperties.ts b/lib/classes/messages/ObjectProperties.ts index 343e6c6..15efdec 100644 --- a/lib/classes/messages/ObjectProperties.ts +++ b/lib/classes/messages/ObjectProperties.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectPropertiesMessage implements MessageBase { @@ -129,6 +129,10 @@ export class ObjectPropertiesMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectPropertiesFamily.ts b/lib/classes/messages/ObjectPropertiesFamily.ts index 741ac3f..9e0fc2a 100644 --- a/lib/classes/messages/ObjectPropertiesFamily.ts +++ b/lib/classes/messages/ObjectPropertiesFamily.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectPropertiesFamilyMessage implements MessageBase { diff --git a/lib/classes/messages/ObjectRotation.ts b/lib/classes/messages/ObjectRotation.ts index 518a726..e6be863 100644 --- a/lib/classes/messages/ObjectRotation.ts +++ b/lib/classes/messages/ObjectRotation.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Quaternion} from '../Quaternion'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Quaternion } from '../Quaternion'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectRotationMessage implements MessageBase { @@ -61,6 +61,10 @@ export class ObjectRotationMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectSaleInfo.ts b/lib/classes/messages/ObjectSaleInfo.ts index 1ba864c..05b16d1 100644 --- a/lib/classes/messages/ObjectSaleInfo.ts +++ b/lib/classes/messages/ObjectSaleInfo.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectSaleInfoMessage implements MessageBase { @@ -62,6 +62,10 @@ export class ObjectSaleInfoMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectScale.ts b/lib/classes/messages/ObjectScale.ts index 246d08c..055afa6 100644 --- a/lib/classes/messages/ObjectScale.ts +++ b/lib/classes/messages/ObjectScale.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectScaleMessage implements MessageBase { @@ -61,6 +61,10 @@ export class ObjectScaleMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectSelect.ts b/lib/classes/messages/ObjectSelect.ts index 198e74d..623bc4b 100644 --- a/lib/classes/messages/ObjectSelect.ts +++ b/lib/classes/messages/ObjectSelect.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectSelectMessage implements MessageBase { @@ -57,6 +57,10 @@ export class ObjectSelectMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectShape.ts b/lib/classes/messages/ObjectShape.ts index bef8248..22b1a6f 100644 --- a/lib/classes/messages/ObjectShape.ts +++ b/lib/classes/messages/ObjectShape.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectShapeMessage implements MessageBase { @@ -98,6 +98,10 @@ export class ObjectShapeMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectSpinStart.ts b/lib/classes/messages/ObjectSpinStart.ts index b564fee..1b01bb1 100644 --- a/lib/classes/messages/ObjectSpinStart.ts +++ b/lib/classes/messages/ObjectSpinStart.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectSpinStartMessage implements MessageBase { diff --git a/lib/classes/messages/ObjectSpinStop.ts b/lib/classes/messages/ObjectSpinStop.ts index 841a1fa..3f33c27 100644 --- a/lib/classes/messages/ObjectSpinStop.ts +++ b/lib/classes/messages/ObjectSpinStop.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectSpinStopMessage implements MessageBase { diff --git a/lib/classes/messages/ObjectSpinUpdate.ts b/lib/classes/messages/ObjectSpinUpdate.ts index 6fdfabd..8ab7d84 100644 --- a/lib/classes/messages/ObjectSpinUpdate.ts +++ b/lib/classes/messages/ObjectSpinUpdate.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Quaternion} from '../Quaternion'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Quaternion } from '../Quaternion'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectSpinUpdateMessage implements MessageBase { diff --git a/lib/classes/messages/ObjectUpdate.ts b/lib/classes/messages/ObjectUpdate.ts index 634697d..8e1611b 100644 --- a/lib/classes/messages/ObjectUpdate.ts +++ b/lib/classes/messages/ObjectUpdate.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectUpdateMessage implements MessageBase { @@ -199,6 +199,10 @@ export class ObjectUpdateMessage implements MessageBase newObjRegionData['TimeDilation'] = buf.readUInt16LE(pos); pos += 2; this.RegionData = newObjRegionData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectUpdateCached.ts b/lib/classes/messages/ObjectUpdateCached.ts index b41c8cd..2b81457 100644 --- a/lib/classes/messages/ObjectUpdateCached.ts +++ b/lib/classes/messages/ObjectUpdateCached.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectUpdateCachedMessage implements MessageBase { @@ -65,6 +65,10 @@ export class ObjectUpdateCachedMessage implements MessageBase newObjRegionData['TimeDilation'] = buf.readUInt16LE(pos); pos += 2; this.RegionData = newObjRegionData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ObjectUpdateCompressed.ts b/lib/classes/messages/ObjectUpdateCompressed.ts index 0a0a3d8..0638b63 100644 --- a/lib/classes/messages/ObjectUpdateCompressed.ts +++ b/lib/classes/messages/ObjectUpdateCompressed.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ObjectUpdateCompressedMessage implements MessageBase { @@ -74,6 +74,10 @@ export class ObjectUpdateCompressedMessage implements MessageBase newObjRegionData['TimeDilation'] = buf.readUInt16LE(pos); pos += 2; this.RegionData = newObjRegionData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/OfferCallingCard.ts b/lib/classes/messages/OfferCallingCard.ts index d4f95bc..caf1191 100644 --- a/lib/classes/messages/OfferCallingCard.ts +++ b/lib/classes/messages/OfferCallingCard.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class OfferCallingCardMessage implements MessageBase { diff --git a/lib/classes/messages/OfflineNotification.ts b/lib/classes/messages/OfflineNotification.ts index 7ed8ed6..f27b711 100644 --- a/lib/classes/messages/OfflineNotification.ts +++ b/lib/classes/messages/OfflineNotification.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class OfflineNotificationMessage implements MessageBase { @@ -37,6 +37,10 @@ export class OfflineNotificationMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.AgentBlock = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/OnlineNotification.ts b/lib/classes/messages/OnlineNotification.ts index da811a6..e728de6 100644 --- a/lib/classes/messages/OnlineNotification.ts +++ b/lib/classes/messages/OnlineNotification.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class OnlineNotificationMessage implements MessageBase { @@ -37,6 +37,10 @@ export class OnlineNotificationMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.AgentBlock = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/OpenCircuit.ts b/lib/classes/messages/OpenCircuit.ts index 7797f18..e0200f8 100644 --- a/lib/classes/messages/OpenCircuit.ts +++ b/lib/classes/messages/OpenCircuit.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {IPAddress} from '../IPAddress'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { IPAddress } from '../IPAddress'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class OpenCircuitMessage implements MessageBase { diff --git a/lib/classes/messages/PacketAck.ts b/lib/classes/messages/PacketAck.ts index ab97d7b..cd7df22 100644 --- a/lib/classes/messages/PacketAck.ts +++ b/lib/classes/messages/PacketAck.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class PacketAckMessage implements MessageBase { @@ -36,6 +36,10 @@ export class PacketAckMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Packets = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ParcelAccessListReply.ts b/lib/classes/messages/ParcelAccessListReply.ts index 8a662a8..16f7d90 100644 --- a/lib/classes/messages/ParcelAccessListReply.ts +++ b/lib/classes/messages/ParcelAccessListReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelAccessListReplyMessage implements MessageBase { @@ -77,6 +77,10 @@ export class ParcelAccessListReplyMessage implements MessageBase newObjData['LocalID'] = buf.readInt32LE(pos); pos += 4; this.Data = newObjData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.List = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ParcelAccessListRequest.ts b/lib/classes/messages/ParcelAccessListRequest.ts index e108f54..6000ab4 100644 --- a/lib/classes/messages/ParcelAccessListRequest.ts +++ b/lib/classes/messages/ParcelAccessListRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelAccessListRequestMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelAccessListUpdate.ts b/lib/classes/messages/ParcelAccessListUpdate.ts index fb828bd..9248311 100644 --- a/lib/classes/messages/ParcelAccessListUpdate.ts +++ b/lib/classes/messages/ParcelAccessListUpdate.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelAccessListUpdateMessage implements MessageBase { @@ -104,6 +104,10 @@ export class ParcelAccessListUpdateMessage implements MessageBase newObjData['Sections'] = buf.readInt32LE(pos); pos += 4; this.Data = newObjData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.List = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ParcelAuctions.ts b/lib/classes/messages/ParcelAuctions.ts index db395d3..1ca8f03 100644 --- a/lib/classes/messages/ParcelAuctions.ts +++ b/lib/classes/messages/ParcelAuctions.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelAuctionsMessage implements MessageBase { @@ -40,6 +40,10 @@ export class ParcelAuctionsMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ParcelData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ParcelBuy.ts b/lib/classes/messages/ParcelBuy.ts index 3ddbc40..752e24f 100644 --- a/lib/classes/messages/ParcelBuy.ts +++ b/lib/classes/messages/ParcelBuy.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelBuyMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelBuyPass.ts b/lib/classes/messages/ParcelBuyPass.ts index 6b0528b..8f5e504 100644 --- a/lib/classes/messages/ParcelBuyPass.ts +++ b/lib/classes/messages/ParcelBuyPass.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelBuyPassMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelClaim.ts b/lib/classes/messages/ParcelClaim.ts index 9b70218..0633771 100644 --- a/lib/classes/messages/ParcelClaim.ts +++ b/lib/classes/messages/ParcelClaim.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelClaimMessage implements MessageBase { @@ -89,6 +89,10 @@ export class ParcelClaimMessage implements MessageBase newObjData['IsGroupOwned'] = (buf.readUInt8(pos++) === 1); newObjData['Final'] = (buf.readUInt8(pos++) === 1); this.Data = newObjData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ParcelData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ParcelDeedToGroup.ts b/lib/classes/messages/ParcelDeedToGroup.ts index 40385dc..be14d14 100644 --- a/lib/classes/messages/ParcelDeedToGroup.ts +++ b/lib/classes/messages/ParcelDeedToGroup.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelDeedToGroupMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelDisableObjects.ts b/lib/classes/messages/ParcelDisableObjects.ts index bc8096b..2dc2402 100644 --- a/lib/classes/messages/ParcelDisableObjects.ts +++ b/lib/classes/messages/ParcelDisableObjects.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelDisableObjectsMessage implements MessageBase { @@ -87,6 +87,10 @@ export class ParcelDisableObjectsMessage implements MessageBase newObjParcelData['ReturnType'] = buf.readUInt32LE(pos); pos += 4; this.ParcelData = newObjParcelData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.TaskIDs = []; for (let i = 0; i < count; i++) @@ -100,6 +104,10 @@ export class ParcelDisableObjectsMessage implements MessageBase pos += 16; this.TaskIDs.push(newObjTaskIDs); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.OwnerIDs = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ParcelDivide.ts b/lib/classes/messages/ParcelDivide.ts index 6df839c..3c33c4f 100644 --- a/lib/classes/messages/ParcelDivide.ts +++ b/lib/classes/messages/ParcelDivide.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelDivideMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelDwellReply.ts b/lib/classes/messages/ParcelDwellReply.ts index ae2d16a..c9b26a4 100644 --- a/lib/classes/messages/ParcelDwellReply.ts +++ b/lib/classes/messages/ParcelDwellReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelDwellReplyMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelDwellRequest.ts b/lib/classes/messages/ParcelDwellRequest.ts index fd4f745..f9c1c0b 100644 --- a/lib/classes/messages/ParcelDwellRequest.ts +++ b/lib/classes/messages/ParcelDwellRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelDwellRequestMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelGodForceOwner.ts b/lib/classes/messages/ParcelGodForceOwner.ts index f03eee5..529aa81 100644 --- a/lib/classes/messages/ParcelGodForceOwner.ts +++ b/lib/classes/messages/ParcelGodForceOwner.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelGodForceOwnerMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelGodMarkAsContent.ts b/lib/classes/messages/ParcelGodMarkAsContent.ts index f4f846f..0ce5b27 100644 --- a/lib/classes/messages/ParcelGodMarkAsContent.ts +++ b/lib/classes/messages/ParcelGodMarkAsContent.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelGodMarkAsContentMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelInfoReply.ts b/lib/classes/messages/ParcelInfoReply.ts index 9cfc73f..9300921 100644 --- a/lib/classes/messages/ParcelInfoReply.ts +++ b/lib/classes/messages/ParcelInfoReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelInfoReplyMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelInfoRequest.ts b/lib/classes/messages/ParcelInfoRequest.ts index 3979294..8e441be 100644 --- a/lib/classes/messages/ParcelInfoRequest.ts +++ b/lib/classes/messages/ParcelInfoRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelInfoRequestMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelJoin.ts b/lib/classes/messages/ParcelJoin.ts index 56a5826..a9397a0 100644 --- a/lib/classes/messages/ParcelJoin.ts +++ b/lib/classes/messages/ParcelJoin.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelJoinMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelMediaCommandMessage.ts b/lib/classes/messages/ParcelMediaCommandMessage.ts index 01c7cf9..8aaacf1 100644 --- a/lib/classes/messages/ParcelMediaCommandMessage.ts +++ b/lib/classes/messages/ParcelMediaCommandMessage.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelMediaCommandMessageMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelMediaUpdate.ts b/lib/classes/messages/ParcelMediaUpdate.ts index 8c7a2ff..8eae290 100644 --- a/lib/classes/messages/ParcelMediaUpdate.ts +++ b/lib/classes/messages/ParcelMediaUpdate.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelMediaUpdateMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelObjectOwnersReply.ts b/lib/classes/messages/ParcelObjectOwnersReply.ts index 29e42ef..27ddb19 100644 --- a/lib/classes/messages/ParcelObjectOwnersReply.ts +++ b/lib/classes/messages/ParcelObjectOwnersReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelObjectOwnersReplyMessage implements MessageBase { @@ -44,6 +44,10 @@ export class ParcelObjectOwnersReplyMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Data = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ParcelObjectOwnersRequest.ts b/lib/classes/messages/ParcelObjectOwnersRequest.ts index 0ddc528..81463d4 100644 --- a/lib/classes/messages/ParcelObjectOwnersRequest.ts +++ b/lib/classes/messages/ParcelObjectOwnersRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelObjectOwnersRequestMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelOverlay.ts b/lib/classes/messages/ParcelOverlay.ts index b8106f2..3d5d470 100644 --- a/lib/classes/messages/ParcelOverlay.ts +++ b/lib/classes/messages/ParcelOverlay.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelOverlayMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelProperties.ts b/lib/classes/messages/ParcelProperties.ts index efb4898..ff8d9fc 100644 --- a/lib/classes/messages/ParcelProperties.ts +++ b/lib/classes/messages/ParcelProperties.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelPropertiesMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelPropertiesRequest.ts b/lib/classes/messages/ParcelPropertiesRequest.ts index 03f1e32..c2c919c 100644 --- a/lib/classes/messages/ParcelPropertiesRequest.ts +++ b/lib/classes/messages/ParcelPropertiesRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelPropertiesRequestMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelPropertiesRequestByID.ts b/lib/classes/messages/ParcelPropertiesRequestByID.ts index 8e976be..d11f801 100644 --- a/lib/classes/messages/ParcelPropertiesRequestByID.ts +++ b/lib/classes/messages/ParcelPropertiesRequestByID.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelPropertiesRequestByIDMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelPropertiesUpdate.ts b/lib/classes/messages/ParcelPropertiesUpdate.ts index 961c4f8..f467f98 100644 --- a/lib/classes/messages/ParcelPropertiesUpdate.ts +++ b/lib/classes/messages/ParcelPropertiesUpdate.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelPropertiesUpdateMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelReclaim.ts b/lib/classes/messages/ParcelReclaim.ts index b889d33..e2493e6 100644 --- a/lib/classes/messages/ParcelReclaim.ts +++ b/lib/classes/messages/ParcelReclaim.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelReclaimMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelRelease.ts b/lib/classes/messages/ParcelRelease.ts index 468686c..3cfdb06 100644 --- a/lib/classes/messages/ParcelRelease.ts +++ b/lib/classes/messages/ParcelRelease.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelReleaseMessage implements MessageBase { diff --git a/lib/classes/messages/ParcelRename.ts b/lib/classes/messages/ParcelRename.ts index 7df9eca..f2d5779 100644 --- a/lib/classes/messages/ParcelRename.ts +++ b/lib/classes/messages/ParcelRename.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelRenameMessage implements MessageBase { @@ -51,6 +51,10 @@ export class ParcelRenameMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ParcelData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ParcelReturnObjects.ts b/lib/classes/messages/ParcelReturnObjects.ts index 6a6eb31..00f97a5 100644 --- a/lib/classes/messages/ParcelReturnObjects.ts +++ b/lib/classes/messages/ParcelReturnObjects.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelReturnObjectsMessage implements MessageBase { @@ -87,6 +87,10 @@ export class ParcelReturnObjectsMessage implements MessageBase newObjParcelData['ReturnType'] = buf.readUInt32LE(pos); pos += 4; this.ParcelData = newObjParcelData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.TaskIDs = []; for (let i = 0; i < count; i++) @@ -100,6 +104,10 @@ export class ParcelReturnObjectsMessage implements MessageBase pos += 16; this.TaskIDs.push(newObjTaskIDs); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.OwnerIDs = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ParcelSales.ts b/lib/classes/messages/ParcelSales.ts index 1696a0f..e80bf8e 100644 --- a/lib/classes/messages/ParcelSales.ts +++ b/lib/classes/messages/ParcelSales.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelSalesMessage implements MessageBase { @@ -40,6 +40,10 @@ export class ParcelSalesMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ParcelData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ParcelSelectObjects.ts b/lib/classes/messages/ParcelSelectObjects.ts index c698793..ca56931 100644 --- a/lib/classes/messages/ParcelSelectObjects.ts +++ b/lib/classes/messages/ParcelSelectObjects.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelSelectObjectsMessage implements MessageBase { @@ -77,6 +77,10 @@ export class ParcelSelectObjectsMessage implements MessageBase newObjParcelData['ReturnType'] = buf.readUInt32LE(pos); pos += 4; this.ParcelData = newObjParcelData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ReturnIDs = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ParcelSetOtherCleanTime.ts b/lib/classes/messages/ParcelSetOtherCleanTime.ts index 209717f..a9ec4ce 100644 --- a/lib/classes/messages/ParcelSetOtherCleanTime.ts +++ b/lib/classes/messages/ParcelSetOtherCleanTime.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ParcelSetOtherCleanTimeMessage implements MessageBase { diff --git a/lib/classes/messages/PayPriceReply.ts b/lib/classes/messages/PayPriceReply.ts index 649a026..98b7d44 100644 --- a/lib/classes/messages/PayPriceReply.ts +++ b/lib/classes/messages/PayPriceReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class PayPriceReplyMessage implements MessageBase { @@ -57,6 +57,10 @@ export class PayPriceReplyMessage implements MessageBase newObjObjectData['DefaultPayPrice'] = buf.readInt32LE(pos); pos += 4; this.ObjectData = newObjObjectData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ButtonData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/PickDelete.ts b/lib/classes/messages/PickDelete.ts index 076eb63..0d63ac9 100644 --- a/lib/classes/messages/PickDelete.ts +++ b/lib/classes/messages/PickDelete.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class PickDeleteMessage implements MessageBase { diff --git a/lib/classes/messages/PickGodDelete.ts b/lib/classes/messages/PickGodDelete.ts index 563f67c..e51fea6 100644 --- a/lib/classes/messages/PickGodDelete.ts +++ b/lib/classes/messages/PickGodDelete.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class PickGodDeleteMessage implements MessageBase { diff --git a/lib/classes/messages/PickInfoReply.ts b/lib/classes/messages/PickInfoReply.ts index ac2d559..f33ed80 100644 --- a/lib/classes/messages/PickInfoReply.ts +++ b/lib/classes/messages/PickInfoReply.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class PickInfoReplyMessage implements MessageBase { diff --git a/lib/classes/messages/PickInfoUpdate.ts b/lib/classes/messages/PickInfoUpdate.ts index 003cb0a..9b88dd7 100644 --- a/lib/classes/messages/PickInfoUpdate.ts +++ b/lib/classes/messages/PickInfoUpdate.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class PickInfoUpdateMessage implements MessageBase { diff --git a/lib/classes/messages/PlacesQuery.ts b/lib/classes/messages/PlacesQuery.ts index 96c2b2a..e0965ea 100644 --- a/lib/classes/messages/PlacesQuery.ts +++ b/lib/classes/messages/PlacesQuery.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class PlacesQueryMessage implements MessageBase { diff --git a/lib/classes/messages/PlacesReply.ts b/lib/classes/messages/PlacesReply.ts index b2d1e8c..eb53c37 100644 --- a/lib/classes/messages/PlacesReply.ts +++ b/lib/classes/messages/PlacesReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class PlacesReplyMessage implements MessageBase { @@ -118,6 +118,10 @@ export class PlacesReplyMessage implements MessageBase newObjTransactionData['TransactionID'] = new UUID(buf, pos); pos += 16; this.TransactionData = newObjTransactionData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.QueryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/PreloadSound.ts b/lib/classes/messages/PreloadSound.ts index ec47c23..582dacc 100644 --- a/lib/classes/messages/PreloadSound.ts +++ b/lib/classes/messages/PreloadSound.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class PreloadSoundMessage implements MessageBase { @@ -43,6 +43,10 @@ export class PreloadSoundMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.DataBlock = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/PurgeInventoryDescendents.ts b/lib/classes/messages/PurgeInventoryDescendents.ts index c2cbb84..bb854ee 100644 --- a/lib/classes/messages/PurgeInventoryDescendents.ts +++ b/lib/classes/messages/PurgeInventoryDescendents.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class PurgeInventoryDescendentsMessage implements MessageBase { diff --git a/lib/classes/messages/RebakeAvatarTextures.ts b/lib/classes/messages/RebakeAvatarTextures.ts index f79a6fa..ba4d934 100644 --- a/lib/classes/messages/RebakeAvatarTextures.ts +++ b/lib/classes/messages/RebakeAvatarTextures.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RebakeAvatarTexturesMessage implements MessageBase { diff --git a/lib/classes/messages/Redo.ts b/lib/classes/messages/Redo.ts index d424e2b..eafb9bb 100644 --- a/lib/classes/messages/Redo.ts +++ b/lib/classes/messages/Redo.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RedoMessage implements MessageBase { @@ -64,6 +64,10 @@ export class RedoMessage implements MessageBase newObjAgentData['GroupID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RegionHandleRequest.ts b/lib/classes/messages/RegionHandleRequest.ts index 110e357..1b26410 100644 --- a/lib/classes/messages/RegionHandleRequest.ts +++ b/lib/classes/messages/RegionHandleRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RegionHandleRequestMessage implements MessageBase { diff --git a/lib/classes/messages/RegionHandshake.ts b/lib/classes/messages/RegionHandshake.ts index 30bb77f..13388ed 100644 --- a/lib/classes/messages/RegionHandshake.ts +++ b/lib/classes/messages/RegionHandshake.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RegionHandshakeMessage implements MessageBase { @@ -277,6 +277,10 @@ export class RegionHandshakeMessage implements MessageBase newObjRegionInfo3['ProductName'] = buf.slice(pos, pos + varLength); pos += varLength; this.RegionInfo3 = newObjRegionInfo3; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.RegionInfo4 = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RegionHandshakeReply.ts b/lib/classes/messages/RegionHandshakeReply.ts index 387ed86..b37e56f 100644 --- a/lib/classes/messages/RegionHandshakeReply.ts +++ b/lib/classes/messages/RegionHandshakeReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RegionHandshakeReplyMessage implements MessageBase { diff --git a/lib/classes/messages/RegionIDAndHandleReply.ts b/lib/classes/messages/RegionIDAndHandleReply.ts index 07d4067..e5f6eba 100644 --- a/lib/classes/messages/RegionIDAndHandleReply.ts +++ b/lib/classes/messages/RegionIDAndHandleReply.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RegionIDAndHandleReplyMessage implements MessageBase { diff --git a/lib/classes/messages/RegionInfo.ts b/lib/classes/messages/RegionInfo.ts index 5caf393..b5a2750 100644 --- a/lib/classes/messages/RegionInfo.ts +++ b/lib/classes/messages/RegionInfo.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RegionInfoMessage implements MessageBase { @@ -219,6 +219,10 @@ export class RegionInfoMessage implements MessageBase newObjRegionInfo2['HardMaxObjects'] = buf.readUInt32LE(pos); pos += 4; this.RegionInfo2 = newObjRegionInfo2; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.RegionInfo3 = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RegionPresenceRequestByHandle.ts b/lib/classes/messages/RegionPresenceRequestByHandle.ts index efdbabf..aa4cd7c 100644 --- a/lib/classes/messages/RegionPresenceRequestByHandle.ts +++ b/lib/classes/messages/RegionPresenceRequestByHandle.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RegionPresenceRequestByHandleMessage implements MessageBase { @@ -39,6 +39,10 @@ export class RegionPresenceRequestByHandleMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.RegionData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RegionPresenceRequestByRegionID.ts b/lib/classes/messages/RegionPresenceRequestByRegionID.ts index ae91bfe..40db29f 100644 --- a/lib/classes/messages/RegionPresenceRequestByRegionID.ts +++ b/lib/classes/messages/RegionPresenceRequestByRegionID.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RegionPresenceRequestByRegionIDMessage implements MessageBase { @@ -37,6 +37,10 @@ export class RegionPresenceRequestByRegionIDMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.RegionData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RegionPresenceResponse.ts b/lib/classes/messages/RegionPresenceResponse.ts index 278c88a..f5f7983 100644 --- a/lib/classes/messages/RegionPresenceResponse.ts +++ b/lib/classes/messages/RegionPresenceResponse.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {IPAddress} from '../IPAddress'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { IPAddress } from '../IPAddress'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RegionPresenceResponseMessage implements MessageBase { @@ -70,6 +70,10 @@ export class RegionPresenceResponseMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.RegionData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RemoveAttachment.ts b/lib/classes/messages/RemoveAttachment.ts index 371c6b9..3d5e2ee 100644 --- a/lib/classes/messages/RemoveAttachment.ts +++ b/lib/classes/messages/RemoveAttachment.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RemoveAttachmentMessage implements MessageBase { diff --git a/lib/classes/messages/RemoveInventoryFolder.ts b/lib/classes/messages/RemoveInventoryFolder.ts index c833063..1a1d369 100644 --- a/lib/classes/messages/RemoveInventoryFolder.ts +++ b/lib/classes/messages/RemoveInventoryFolder.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RemoveInventoryFolderMessage implements MessageBase { @@ -57,6 +57,10 @@ export class RemoveInventoryFolderMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.FolderData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RemoveInventoryItem.ts b/lib/classes/messages/RemoveInventoryItem.ts index 4c8d861..efa0e97 100644 --- a/lib/classes/messages/RemoveInventoryItem.ts +++ b/lib/classes/messages/RemoveInventoryItem.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RemoveInventoryItemMessage implements MessageBase { @@ -57,6 +57,10 @@ export class RemoveInventoryItemMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.InventoryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RemoveInventoryObjects.ts b/lib/classes/messages/RemoveInventoryObjects.ts index 79767dd..e77fe65 100644 --- a/lib/classes/messages/RemoveInventoryObjects.ts +++ b/lib/classes/messages/RemoveInventoryObjects.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RemoveInventoryObjectsMessage implements MessageBase { @@ -67,6 +67,10 @@ export class RemoveInventoryObjectsMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.FolderData = []; for (let i = 0; i < count; i++) @@ -80,6 +84,10 @@ export class RemoveInventoryObjectsMessage implements MessageBase pos += 16; this.FolderData.push(newObjFolderData); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.ItemData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RemoveMuteListEntry.ts b/lib/classes/messages/RemoveMuteListEntry.ts index 5826817..1e088da 100644 --- a/lib/classes/messages/RemoveMuteListEntry.ts +++ b/lib/classes/messages/RemoveMuteListEntry.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RemoveMuteListEntryMessage implements MessageBase { diff --git a/lib/classes/messages/RemoveNameValuePair.ts b/lib/classes/messages/RemoveNameValuePair.ts index b9cc6b1..fcf6511 100644 --- a/lib/classes/messages/RemoveNameValuePair.ts +++ b/lib/classes/messages/RemoveNameValuePair.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RemoveNameValuePairMessage implements MessageBase { @@ -62,6 +62,10 @@ export class RemoveNameValuePairMessage implements MessageBase newObjTaskData['ID'] = new UUID(buf, pos); pos += 16; this.TaskData = newObjTaskData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.NameValueData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RemoveParcel.ts b/lib/classes/messages/RemoveParcel.ts index c93f625..8d2891f 100644 --- a/lib/classes/messages/RemoveParcel.ts +++ b/lib/classes/messages/RemoveParcel.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RemoveParcelMessage implements MessageBase { @@ -37,6 +37,10 @@ export class RemoveParcelMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ParcelData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RemoveTaskInventory.ts b/lib/classes/messages/RemoveTaskInventory.ts index 6f0870b..a018e17 100644 --- a/lib/classes/messages/RemoveTaskInventory.ts +++ b/lib/classes/messages/RemoveTaskInventory.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RemoveTaskInventoryMessage implements MessageBase { diff --git a/lib/classes/messages/ReplyTaskInventory.ts b/lib/classes/messages/ReplyTaskInventory.ts index 6319fba..ad6ad1c 100644 --- a/lib/classes/messages/ReplyTaskInventory.ts +++ b/lib/classes/messages/ReplyTaskInventory.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ReplyTaskInventoryMessage implements MessageBase { diff --git a/lib/classes/messages/ReportAutosaveCrash.ts b/lib/classes/messages/ReportAutosaveCrash.ts index b8dfbf5..1923735 100644 --- a/lib/classes/messages/ReportAutosaveCrash.ts +++ b/lib/classes/messages/ReportAutosaveCrash.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ReportAutosaveCrashMessage implements MessageBase { diff --git a/lib/classes/messages/RequestGodlikePowers.ts b/lib/classes/messages/RequestGodlikePowers.ts index 18ea68c..fd119bc 100644 --- a/lib/classes/messages/RequestGodlikePowers.ts +++ b/lib/classes/messages/RequestGodlikePowers.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RequestGodlikePowersMessage implements MessageBase { diff --git a/lib/classes/messages/RequestImage.ts b/lib/classes/messages/RequestImage.ts index 5a5bfc2..8387fb6 100644 --- a/lib/classes/messages/RequestImage.ts +++ b/lib/classes/messages/RequestImage.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RequestImageMessage implements MessageBase { @@ -67,6 +67,10 @@ export class RequestImageMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.RequestImage = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RequestInventoryAsset.ts b/lib/classes/messages/RequestInventoryAsset.ts index 300f206..001bd1f 100644 --- a/lib/classes/messages/RequestInventoryAsset.ts +++ b/lib/classes/messages/RequestInventoryAsset.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RequestInventoryAssetMessage implements MessageBase { diff --git a/lib/classes/messages/RequestMultipleObjects.ts b/lib/classes/messages/RequestMultipleObjects.ts index da3d7a4..c31d487 100644 --- a/lib/classes/messages/RequestMultipleObjects.ts +++ b/lib/classes/messages/RequestMultipleObjects.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RequestMultipleObjectsMessage implements MessageBase { @@ -59,6 +59,10 @@ export class RequestMultipleObjectsMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RequestObjectPropertiesFamily.ts b/lib/classes/messages/RequestObjectPropertiesFamily.ts index 8e814a3..3218499 100644 --- a/lib/classes/messages/RequestObjectPropertiesFamily.ts +++ b/lib/classes/messages/RequestObjectPropertiesFamily.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RequestObjectPropertiesFamilyMessage implements MessageBase { diff --git a/lib/classes/messages/RequestParcelTransfer.ts b/lib/classes/messages/RequestParcelTransfer.ts index 7bd71dd..878d457 100644 --- a/lib/classes/messages/RequestParcelTransfer.ts +++ b/lib/classes/messages/RequestParcelTransfer.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RequestParcelTransferMessage implements MessageBase { diff --git a/lib/classes/messages/RequestPayPrice.ts b/lib/classes/messages/RequestPayPrice.ts index 8797e55..0d002c8 100644 --- a/lib/classes/messages/RequestPayPrice.ts +++ b/lib/classes/messages/RequestPayPrice.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RequestPayPriceMessage implements MessageBase { diff --git a/lib/classes/messages/RequestRegionInfo.ts b/lib/classes/messages/RequestRegionInfo.ts index ae2907f..50c70b4 100644 --- a/lib/classes/messages/RequestRegionInfo.ts +++ b/lib/classes/messages/RequestRegionInfo.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RequestRegionInfoMessage implements MessageBase { diff --git a/lib/classes/messages/RequestTaskInventory.ts b/lib/classes/messages/RequestTaskInventory.ts index 0e6a0d1..a68cc57 100644 --- a/lib/classes/messages/RequestTaskInventory.ts +++ b/lib/classes/messages/RequestTaskInventory.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RequestTaskInventoryMessage implements MessageBase { diff --git a/lib/classes/messages/RequestTrustedCircuit.ts b/lib/classes/messages/RequestTrustedCircuit.ts index 863a4fc..d7985a3 100644 --- a/lib/classes/messages/RequestTrustedCircuit.ts +++ b/lib/classes/messages/RequestTrustedCircuit.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RequestTrustedCircuitMessage implements MessageBase { diff --git a/lib/classes/messages/RequestXfer.ts b/lib/classes/messages/RequestXfer.ts index 585b763..dd63be9 100644 --- a/lib/classes/messages/RequestXfer.ts +++ b/lib/classes/messages/RequestXfer.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RequestXferMessage implements MessageBase { diff --git a/lib/classes/messages/RetrieveIMsExtended.ts b/lib/classes/messages/RetrieveIMsExtended.ts index 9518c8d..c076cca 100644 --- a/lib/classes/messages/RetrieveIMsExtended.ts +++ b/lib/classes/messages/RetrieveIMsExtended.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RetrieveIMsExtendedMessage implements MessageBase { diff --git a/lib/classes/messages/RetrieveInstantMessages.ts b/lib/classes/messages/RetrieveInstantMessages.ts index 8f7772a..fe0611a 100644 --- a/lib/classes/messages/RetrieveInstantMessages.ts +++ b/lib/classes/messages/RetrieveInstantMessages.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RetrieveInstantMessagesMessage implements MessageBase { diff --git a/lib/classes/messages/RevokePermissions.ts b/lib/classes/messages/RevokePermissions.ts index 9ebb0b9..ec4e63c 100644 --- a/lib/classes/messages/RevokePermissions.ts +++ b/lib/classes/messages/RevokePermissions.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RevokePermissionsMessage implements MessageBase { diff --git a/lib/classes/messages/RezMultipleAttachmentsFromInv.ts b/lib/classes/messages/RezMultipleAttachmentsFromInv.ts index 478a97c..896d96f 100644 --- a/lib/classes/messages/RezMultipleAttachmentsFromInv.ts +++ b/lib/classes/messages/RezMultipleAttachmentsFromInv.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RezMultipleAttachmentsFromInvMessage implements MessageBase { @@ -115,6 +115,10 @@ export class RezMultipleAttachmentsFromInvMessage implements MessageBase newObjHeaderData['TotalObjects'] = buf.readUInt8(pos++); newObjHeaderData['FirstDetachAll'] = (buf.readUInt8(pos++) === 1); this.HeaderData = newObjHeaderData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RezObject.ts b/lib/classes/messages/RezObject.ts index 6bd61a9..bca6c6c 100644 --- a/lib/classes/messages/RezObject.ts +++ b/lib/classes/messages/RezObject.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RezObjectMessage implements MessageBase { diff --git a/lib/classes/messages/RezObjectFromNotecard.ts b/lib/classes/messages/RezObjectFromNotecard.ts index d312fa3..d2988dd 100644 --- a/lib/classes/messages/RezObjectFromNotecard.ts +++ b/lib/classes/messages/RezObjectFromNotecard.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RezObjectFromNotecardMessage implements MessageBase { @@ -167,6 +167,10 @@ export class RezObjectFromNotecardMessage implements MessageBase newObjNotecardData['ObjectID'] = new UUID(buf, pos); pos += 16; this.NotecardData = newObjNotecardData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.InventoryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/RezRestoreToWorld.ts b/lib/classes/messages/RezRestoreToWorld.ts index cc32c85..0703037 100644 --- a/lib/classes/messages/RezRestoreToWorld.ts +++ b/lib/classes/messages/RezRestoreToWorld.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RezRestoreToWorldMessage implements MessageBase { diff --git a/lib/classes/messages/RezScript.ts b/lib/classes/messages/RezScript.ts index cb11f17..7da9eed 100644 --- a/lib/classes/messages/RezScript.ts +++ b/lib/classes/messages/RezScript.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RezScriptMessage implements MessageBase { diff --git a/lib/classes/messages/RezSingleAttachmentFromInv.ts b/lib/classes/messages/RezSingleAttachmentFromInv.ts index 42ecdf8..39560da 100644 --- a/lib/classes/messages/RezSingleAttachmentFromInv.ts +++ b/lib/classes/messages/RezSingleAttachmentFromInv.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RezSingleAttachmentFromInvMessage implements MessageBase { diff --git a/lib/classes/messages/RoutedMoneyBalanceReply.ts b/lib/classes/messages/RoutedMoneyBalanceReply.ts index a0502fd..2ba365f 100644 --- a/lib/classes/messages/RoutedMoneyBalanceReply.ts +++ b/lib/classes/messages/RoutedMoneyBalanceReply.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {IPAddress} from '../IPAddress'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { IPAddress } from '../IPAddress'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RoutedMoneyBalanceReplyMessage implements MessageBase { diff --git a/lib/classes/messages/RpcChannelReply.ts b/lib/classes/messages/RpcChannelReply.ts index 9412d8c..1d62754 100644 --- a/lib/classes/messages/RpcChannelReply.ts +++ b/lib/classes/messages/RpcChannelReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RpcChannelReplyMessage implements MessageBase { diff --git a/lib/classes/messages/RpcChannelRequest.ts b/lib/classes/messages/RpcChannelRequest.ts index 456146c..498f28b 100644 --- a/lib/classes/messages/RpcChannelRequest.ts +++ b/lib/classes/messages/RpcChannelRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RpcChannelRequestMessage implements MessageBase { diff --git a/lib/classes/messages/RpcScriptReplyInbound.ts b/lib/classes/messages/RpcScriptReplyInbound.ts index 07dda88..5c3a34a 100644 --- a/lib/classes/messages/RpcScriptReplyInbound.ts +++ b/lib/classes/messages/RpcScriptReplyInbound.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RpcScriptReplyInboundMessage implements MessageBase { diff --git a/lib/classes/messages/RpcScriptRequestInbound.ts b/lib/classes/messages/RpcScriptRequestInbound.ts index 728261c..ee27706 100644 --- a/lib/classes/messages/RpcScriptRequestInbound.ts +++ b/lib/classes/messages/RpcScriptRequestInbound.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RpcScriptRequestInboundMessage implements MessageBase { diff --git a/lib/classes/messages/RpcScriptRequestInboundForward.ts b/lib/classes/messages/RpcScriptRequestInboundForward.ts index 195b7cb..070e2e3 100644 --- a/lib/classes/messages/RpcScriptRequestInboundForward.ts +++ b/lib/classes/messages/RpcScriptRequestInboundForward.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {IPAddress} from '../IPAddress'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { IPAddress } from '../IPAddress'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class RpcScriptRequestInboundForwardMessage implements MessageBase { diff --git a/lib/classes/messages/SaveAssetIntoInventory.ts b/lib/classes/messages/SaveAssetIntoInventory.ts index b4319c3..09e9874 100644 --- a/lib/classes/messages/SaveAssetIntoInventory.ts +++ b/lib/classes/messages/SaveAssetIntoInventory.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SaveAssetIntoInventoryMessage implements MessageBase { diff --git a/lib/classes/messages/ScriptAnswerYes.ts b/lib/classes/messages/ScriptAnswerYes.ts index fce2892..dec8fe7 100644 --- a/lib/classes/messages/ScriptAnswerYes.ts +++ b/lib/classes/messages/ScriptAnswerYes.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ScriptAnswerYesMessage implements MessageBase { diff --git a/lib/classes/messages/ScriptControlChange.ts b/lib/classes/messages/ScriptControlChange.ts index b33ac7c..37174d2 100644 --- a/lib/classes/messages/ScriptControlChange.ts +++ b/lib/classes/messages/ScriptControlChange.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ScriptControlChangeMessage implements MessageBase { @@ -40,6 +40,10 @@ export class ScriptControlChangeMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Data = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ScriptDataReply.ts b/lib/classes/messages/ScriptDataReply.ts index d63def1..6cde431 100644 --- a/lib/classes/messages/ScriptDataReply.ts +++ b/lib/classes/messages/ScriptDataReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ScriptDataReplyMessage implements MessageBase { @@ -54,6 +54,10 @@ export class ScriptDataReplyMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.DataBlock = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ScriptDataRequest.ts b/lib/classes/messages/ScriptDataRequest.ts index 4302b5f..decfe78 100644 --- a/lib/classes/messages/ScriptDataRequest.ts +++ b/lib/classes/messages/ScriptDataRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ScriptDataRequestMessage implements MessageBase { @@ -56,6 +56,10 @@ export class ScriptDataRequestMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.DataBlock = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ScriptDialog.ts b/lib/classes/messages/ScriptDialog.ts index 3c391a4..65df670 100644 --- a/lib/classes/messages/ScriptDialog.ts +++ b/lib/classes/messages/ScriptDialog.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ScriptDialogMessage implements MessageBase { @@ -123,6 +123,10 @@ export class ScriptDialogMessage implements MessageBase newObjData['ImageID'] = new UUID(buf, pos); pos += 16; this.Data = newObjData; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.Buttons = []; for (let i = 0; i < count; i++) @@ -137,6 +141,10 @@ export class ScriptDialogMessage implements MessageBase pos += varLength; this.Buttons.push(newObjButtons); } + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.OwnerData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ScriptDialogReply.ts b/lib/classes/messages/ScriptDialogReply.ts index e2ae822..8816e89 100644 --- a/lib/classes/messages/ScriptDialogReply.ts +++ b/lib/classes/messages/ScriptDialogReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ScriptDialogReplyMessage implements MessageBase { diff --git a/lib/classes/messages/ScriptMailRegistration.ts b/lib/classes/messages/ScriptMailRegistration.ts index 806db98..87c4128 100644 --- a/lib/classes/messages/ScriptMailRegistration.ts +++ b/lib/classes/messages/ScriptMailRegistration.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ScriptMailRegistrationMessage implements MessageBase { diff --git a/lib/classes/messages/ScriptQuestion.ts b/lib/classes/messages/ScriptQuestion.ts index a166b1a..d0e1c6a 100644 --- a/lib/classes/messages/ScriptQuestion.ts +++ b/lib/classes/messages/ScriptQuestion.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ScriptQuestionMessage implements MessageBase { diff --git a/lib/classes/messages/ScriptReset.ts b/lib/classes/messages/ScriptReset.ts index 70fbcdd..09ce489 100644 --- a/lib/classes/messages/ScriptReset.ts +++ b/lib/classes/messages/ScriptReset.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ScriptResetMessage implements MessageBase { diff --git a/lib/classes/messages/ScriptRunningReply.ts b/lib/classes/messages/ScriptRunningReply.ts index f29850a..2cad0fa 100644 --- a/lib/classes/messages/ScriptRunningReply.ts +++ b/lib/classes/messages/ScriptRunningReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ScriptRunningReplyMessage implements MessageBase { diff --git a/lib/classes/messages/ScriptSensorReply.ts b/lib/classes/messages/ScriptSensorReply.ts index d06c85f..711d885 100644 --- a/lib/classes/messages/ScriptSensorReply.ts +++ b/lib/classes/messages/ScriptSensorReply.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {Quaternion} from '../Quaternion'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { Quaternion } from '../Quaternion'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ScriptSensorReplyMessage implements MessageBase { @@ -87,6 +87,10 @@ export class ScriptSensorReplyMessage implements MessageBase newObjRequester['SourceID'] = new UUID(buf, pos); pos += 16; this.Requester = newObjRequester; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.SensedData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ScriptSensorRequest.ts b/lib/classes/messages/ScriptSensorRequest.ts index 9e9c8a9..bcb84ff 100644 --- a/lib/classes/messages/ScriptSensorRequest.ts +++ b/lib/classes/messages/ScriptSensorRequest.ts @@ -1,12 +1,12 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import Long = require('long'); -import {Quaternion} from '../Quaternion'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import * as Long from 'long'; +import { Quaternion } from '../Quaternion'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ScriptSensorRequestMessage implements MessageBase { diff --git a/lib/classes/messages/ScriptTeleportRequest.ts b/lib/classes/messages/ScriptTeleportRequest.ts index ff15a9e..634191c 100644 --- a/lib/classes/messages/ScriptTeleportRequest.ts +++ b/lib/classes/messages/ScriptTeleportRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ScriptTeleportRequestMessage implements MessageBase { diff --git a/lib/classes/messages/SendPostcard.ts b/lib/classes/messages/SendPostcard.ts index adf58ea..6c308b2 100644 --- a/lib/classes/messages/SendPostcard.ts +++ b/lib/classes/messages/SendPostcard.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SendPostcardMessage implements MessageBase { diff --git a/lib/classes/messages/SendXferPacket.ts b/lib/classes/messages/SendXferPacket.ts index f044072..8ce0872 100644 --- a/lib/classes/messages/SendXferPacket.ts +++ b/lib/classes/messages/SendXferPacket.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SendXferPacketMessage implements MessageBase { diff --git a/lib/classes/messages/SetAlwaysRun.ts b/lib/classes/messages/SetAlwaysRun.ts index c70f37e..3e20d3d 100644 --- a/lib/classes/messages/SetAlwaysRun.ts +++ b/lib/classes/messages/SetAlwaysRun.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SetAlwaysRunMessage implements MessageBase { diff --git a/lib/classes/messages/SetCPURatio.ts b/lib/classes/messages/SetCPURatio.ts index bbe9a05..6c8496e 100644 --- a/lib/classes/messages/SetCPURatio.ts +++ b/lib/classes/messages/SetCPURatio.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SetCPURatioMessage implements MessageBase { diff --git a/lib/classes/messages/SetFollowCamProperties.ts b/lib/classes/messages/SetFollowCamProperties.ts index 1fb0370..49c5584 100644 --- a/lib/classes/messages/SetFollowCamProperties.ts +++ b/lib/classes/messages/SetFollowCamProperties.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SetFollowCamPropertiesMessage implements MessageBase { @@ -53,6 +53,10 @@ export class SetFollowCamPropertiesMessage implements MessageBase newObjObjectData['ObjectID'] = new UUID(buf, pos); pos += 16; this.ObjectData = newObjObjectData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.CameraProperty = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/SetGroupAcceptNotices.ts b/lib/classes/messages/SetGroupAcceptNotices.ts index 050ad12..6a63524 100644 --- a/lib/classes/messages/SetGroupAcceptNotices.ts +++ b/lib/classes/messages/SetGroupAcceptNotices.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SetGroupAcceptNoticesMessage implements MessageBase { diff --git a/lib/classes/messages/SetGroupContribution.ts b/lib/classes/messages/SetGroupContribution.ts index a45e4af..c31f863 100644 --- a/lib/classes/messages/SetGroupContribution.ts +++ b/lib/classes/messages/SetGroupContribution.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SetGroupContributionMessage implements MessageBase { diff --git a/lib/classes/messages/SetScriptRunning.ts b/lib/classes/messages/SetScriptRunning.ts index 299fc6b..7827a54 100644 --- a/lib/classes/messages/SetScriptRunning.ts +++ b/lib/classes/messages/SetScriptRunning.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SetScriptRunningMessage implements MessageBase { diff --git a/lib/classes/messages/SetSimPresenceInDatabase.ts b/lib/classes/messages/SetSimPresenceInDatabase.ts index 117d3e5..6fce7f5 100644 --- a/lib/classes/messages/SetSimPresenceInDatabase.ts +++ b/lib/classes/messages/SetSimPresenceInDatabase.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SetSimPresenceInDatabaseMessage implements MessageBase { diff --git a/lib/classes/messages/SetSimStatusInDatabase.ts b/lib/classes/messages/SetSimStatusInDatabase.ts index b328618..139dd09 100644 --- a/lib/classes/messages/SetSimStatusInDatabase.ts +++ b/lib/classes/messages/SetSimStatusInDatabase.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SetSimStatusInDatabaseMessage implements MessageBase { diff --git a/lib/classes/messages/SetStartLocation.ts b/lib/classes/messages/SetStartLocation.ts index 24fdb7a..8d24b54 100644 --- a/lib/classes/messages/SetStartLocation.ts +++ b/lib/classes/messages/SetStartLocation.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SetStartLocationMessage implements MessageBase { diff --git a/lib/classes/messages/SetStartLocationRequest.ts b/lib/classes/messages/SetStartLocationRequest.ts index 196860e..c252014 100644 --- a/lib/classes/messages/SetStartLocationRequest.ts +++ b/lib/classes/messages/SetStartLocationRequest.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SetStartLocationRequestMessage implements MessageBase { diff --git a/lib/classes/messages/SimCrashed.ts b/lib/classes/messages/SimCrashed.ts index 72e2e28..938e57d 100644 --- a/lib/classes/messages/SimCrashed.ts +++ b/lib/classes/messages/SimCrashed.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SimCrashedMessage implements MessageBase { @@ -57,6 +57,10 @@ export class SimCrashedMessage implements MessageBase newObjData['RegionY'] = buf.readUInt32LE(pos); pos += 4; this.Data = newObjData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Users = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/SimStats.ts b/lib/classes/messages/SimStats.ts index e8564a5..233ddb0 100644 --- a/lib/classes/messages/SimStats.ts +++ b/lib/classes/messages/SimStats.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SimStatsMessage implements MessageBase { @@ -91,6 +91,10 @@ export class SimStatsMessage implements MessageBase newObjRegion['ObjectCapacity'] = buf.readUInt32LE(pos); pos += 4; this.Region = newObjRegion; + if (pos >= buf.length) + { + return pos - startPos; + } let count = buf.readUInt8(pos++); this.Stat = []; for (let i = 0; i < count; i++) @@ -116,6 +120,10 @@ export class SimStatsMessage implements MessageBase newObjPidStat['PID'] = buf.readInt32LE(pos); pos += 4; this.PidStat = newObjPidStat; + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.RegionInfo = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/SimStatus.ts b/lib/classes/messages/SimStatus.ts index c159f2d..750fb34 100644 --- a/lib/classes/messages/SimStatus.ts +++ b/lib/classes/messages/SimStatus.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SimStatusMessage implements MessageBase { diff --git a/lib/classes/messages/SimWideDeletes.ts b/lib/classes/messages/SimWideDeletes.ts index a833fa1..8912b04 100644 --- a/lib/classes/messages/SimWideDeletes.ts +++ b/lib/classes/messages/SimWideDeletes.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SimWideDeletesMessage implements MessageBase { diff --git a/lib/classes/messages/SimulatorLoad.ts b/lib/classes/messages/SimulatorLoad.ts index 3d4f2ef..89a4972 100644 --- a/lib/classes/messages/SimulatorLoad.ts +++ b/lib/classes/messages/SimulatorLoad.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SimulatorLoadMessage implements MessageBase { @@ -65,6 +65,10 @@ export class SimulatorLoadMessage implements MessageBase pos += 4; newObjSimulatorLoad['CanAcceptAgents'] = (buf.readUInt8(pos++) === 1); this.SimulatorLoad = newObjSimulatorLoad; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.AgentList = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/SimulatorMapUpdate.ts b/lib/classes/messages/SimulatorMapUpdate.ts index 992ff25..e86e2e5 100644 --- a/lib/classes/messages/SimulatorMapUpdate.ts +++ b/lib/classes/messages/SimulatorMapUpdate.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SimulatorMapUpdateMessage implements MessageBase { diff --git a/lib/classes/messages/SimulatorPresentAtLocation.ts b/lib/classes/messages/SimulatorPresentAtLocation.ts index 825b2c2..6d71c8e 100644 --- a/lib/classes/messages/SimulatorPresentAtLocation.ts +++ b/lib/classes/messages/SimulatorPresentAtLocation.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {IPAddress} from '../IPAddress'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { IPAddress } from '../IPAddress'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SimulatorPresentAtLocationMessage implements MessageBase { @@ -151,6 +151,10 @@ export class SimulatorPresentAtLocationMessage implements MessageBase newObjSimulatorBlock['ParentEstateID'] = buf.readUInt32LE(pos); pos += 4; this.SimulatorBlock = newObjSimulatorBlock; + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.TelehubBlock = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/SimulatorReady.ts b/lib/classes/messages/SimulatorReady.ts index a503950..659693b 100644 --- a/lib/classes/messages/SimulatorReady.ts +++ b/lib/classes/messages/SimulatorReady.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SimulatorReadyMessage implements MessageBase { diff --git a/lib/classes/messages/SimulatorSetMap.ts b/lib/classes/messages/SimulatorSetMap.ts index f036df3..690acd6 100644 --- a/lib/classes/messages/SimulatorSetMap.ts +++ b/lib/classes/messages/SimulatorSetMap.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SimulatorSetMapMessage implements MessageBase { diff --git a/lib/classes/messages/SimulatorShutdownRequest.ts b/lib/classes/messages/SimulatorShutdownRequest.ts index e6b4bad..7421397 100644 --- a/lib/classes/messages/SimulatorShutdownRequest.ts +++ b/lib/classes/messages/SimulatorShutdownRequest.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SimulatorShutdownRequestMessage implements MessageBase { diff --git a/lib/classes/messages/SimulatorViewerTimeMessage.ts b/lib/classes/messages/SimulatorViewerTimeMessage.ts index a127061..7c05d6c 100644 --- a/lib/classes/messages/SimulatorViewerTimeMessage.ts +++ b/lib/classes/messages/SimulatorViewerTimeMessage.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {Vector3} from '../Vector3'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { Vector3 } from '../Vector3'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SimulatorViewerTimeMessageMessage implements MessageBase { diff --git a/lib/classes/messages/SoundTrigger.ts b/lib/classes/messages/SoundTrigger.ts index 38c6019..8b24f3d 100644 --- a/lib/classes/messages/SoundTrigger.ts +++ b/lib/classes/messages/SoundTrigger.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SoundTriggerMessage implements MessageBase { diff --git a/lib/classes/messages/StartAuction.ts b/lib/classes/messages/StartAuction.ts index 6280dfd..1a9fa44 100644 --- a/lib/classes/messages/StartAuction.ts +++ b/lib/classes/messages/StartAuction.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class StartAuctionMessage implements MessageBase { diff --git a/lib/classes/messages/StartGroupProposal.ts b/lib/classes/messages/StartGroupProposal.ts index dd58215..4d3fe1a 100644 --- a/lib/classes/messages/StartGroupProposal.ts +++ b/lib/classes/messages/StartGroupProposal.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class StartGroupProposalMessage implements MessageBase { diff --git a/lib/classes/messages/StartLure.ts b/lib/classes/messages/StartLure.ts index 20f3a4d..dde32b1 100644 --- a/lib/classes/messages/StartLure.ts +++ b/lib/classes/messages/StartLure.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class StartLureMessage implements MessageBase { @@ -77,6 +77,10 @@ export class StartLureMessage implements MessageBase newObjInfo['Message'] = buf.slice(pos, pos + varLength); pos += varLength; this.Info = newObjInfo; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.TargetData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/StartPingCheck.ts b/lib/classes/messages/StartPingCheck.ts index 09da687..9ef9883 100644 --- a/lib/classes/messages/StartPingCheck.ts +++ b/lib/classes/messages/StartPingCheck.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class StartPingCheckMessage implements MessageBase { diff --git a/lib/classes/messages/StateSave.ts b/lib/classes/messages/StateSave.ts index 0453cf9..14b8b56 100644 --- a/lib/classes/messages/StateSave.ts +++ b/lib/classes/messages/StateSave.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class StateSaveMessage implements MessageBase { diff --git a/lib/classes/messages/SubscribeLoad.ts b/lib/classes/messages/SubscribeLoad.ts index e06e6a8..17b86f3 100644 --- a/lib/classes/messages/SubscribeLoad.ts +++ b/lib/classes/messages/SubscribeLoad.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SubscribeLoadMessage implements MessageBase { diff --git a/lib/classes/messages/SystemKickUser.ts b/lib/classes/messages/SystemKickUser.ts index b7e3850..f950d26 100644 --- a/lib/classes/messages/SystemKickUser.ts +++ b/lib/classes/messages/SystemKickUser.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SystemKickUserMessage implements MessageBase { @@ -37,6 +37,10 @@ export class SystemKickUserMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.AgentInfo = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/SystemMessage.ts b/lib/classes/messages/SystemMessage.ts index 8dbe552..1b8f13c 100644 --- a/lib/classes/messages/SystemMessage.ts +++ b/lib/classes/messages/SystemMessage.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class SystemMessageMessage implements MessageBase { @@ -77,6 +77,10 @@ export class SystemMessageMessage implements MessageBase newObjMethodData['Digest'] = buf.slice(pos, pos + 32); pos += 32; this.MethodData = newObjMethodData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ParamList = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/TallyVotes.ts b/lib/classes/messages/TallyVotes.ts index b92b784..0664adc 100644 --- a/lib/classes/messages/TallyVotes.ts +++ b/lib/classes/messages/TallyVotes.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TallyVotesMessage implements MessageBase { diff --git a/lib/classes/messages/TelehubInfo.ts b/lib/classes/messages/TelehubInfo.ts index 7eacc51..26d095f 100644 --- a/lib/classes/messages/TelehubInfo.ts +++ b/lib/classes/messages/TelehubInfo.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {Quaternion} from '../Quaternion'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { Quaternion } from '../Quaternion'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TelehubInfoMessage implements MessageBase { @@ -75,6 +75,10 @@ export class TelehubInfoMessage implements MessageBase newObjTelehubBlock['TelehubRot'] = new Quaternion(buf, pos); pos += 12; this.TelehubBlock = newObjTelehubBlock; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.SpawnPointBlock = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/TeleportCancel.ts b/lib/classes/messages/TeleportCancel.ts index 2380a0f..3a79d19 100644 --- a/lib/classes/messages/TeleportCancel.ts +++ b/lib/classes/messages/TeleportCancel.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TeleportCancelMessage implements MessageBase { diff --git a/lib/classes/messages/TeleportFailed.ts b/lib/classes/messages/TeleportFailed.ts index 7167eb9..2dce4df 100644 --- a/lib/classes/messages/TeleportFailed.ts +++ b/lib/classes/messages/TeleportFailed.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TeleportFailedMessage implements MessageBase { @@ -74,6 +74,10 @@ export class TeleportFailedMessage implements MessageBase newObjInfo['Reason'] = buf.slice(pos, pos + varLength); pos += varLength; this.Info = newObjInfo; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.AlertInfo = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/TeleportFinish.ts b/lib/classes/messages/TeleportFinish.ts index de9205e..acaafc5 100644 --- a/lib/classes/messages/TeleportFinish.ts +++ b/lib/classes/messages/TeleportFinish.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {IPAddress} from '../IPAddress'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { IPAddress } from '../IPAddress'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TeleportFinishMessage implements MessageBase { diff --git a/lib/classes/messages/TeleportLandingStatusChanged.ts b/lib/classes/messages/TeleportLandingStatusChanged.ts index ed6e405..3c6f7db 100644 --- a/lib/classes/messages/TeleportLandingStatusChanged.ts +++ b/lib/classes/messages/TeleportLandingStatusChanged.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TeleportLandingStatusChangedMessage implements MessageBase { diff --git a/lib/classes/messages/TeleportLandmarkRequest.ts b/lib/classes/messages/TeleportLandmarkRequest.ts index 9cddd9e..f17d915 100644 --- a/lib/classes/messages/TeleportLandmarkRequest.ts +++ b/lib/classes/messages/TeleportLandmarkRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TeleportLandmarkRequestMessage implements MessageBase { diff --git a/lib/classes/messages/TeleportLocal.ts b/lib/classes/messages/TeleportLocal.ts index 5e6cae8..2199a7f 100644 --- a/lib/classes/messages/TeleportLocal.ts +++ b/lib/classes/messages/TeleportLocal.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TeleportLocalMessage implements MessageBase { diff --git a/lib/classes/messages/TeleportLocationRequest.ts b/lib/classes/messages/TeleportLocationRequest.ts index 910e141..d4a171e 100644 --- a/lib/classes/messages/TeleportLocationRequest.ts +++ b/lib/classes/messages/TeleportLocationRequest.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TeleportLocationRequestMessage implements MessageBase { diff --git a/lib/classes/messages/TeleportLureRequest.ts b/lib/classes/messages/TeleportLureRequest.ts index 642f9e5..596f291 100644 --- a/lib/classes/messages/TeleportLureRequest.ts +++ b/lib/classes/messages/TeleportLureRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TeleportLureRequestMessage implements MessageBase { diff --git a/lib/classes/messages/TeleportProgress.ts b/lib/classes/messages/TeleportProgress.ts index 4f9b0fe..4c07cd3 100644 --- a/lib/classes/messages/TeleportProgress.ts +++ b/lib/classes/messages/TeleportProgress.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TeleportProgressMessage implements MessageBase { diff --git a/lib/classes/messages/TeleportRequest.ts b/lib/classes/messages/TeleportRequest.ts index 48d6902..bafb2c6 100644 --- a/lib/classes/messages/TeleportRequest.ts +++ b/lib/classes/messages/TeleportRequest.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TeleportRequestMessage implements MessageBase { diff --git a/lib/classes/messages/TeleportStart.ts b/lib/classes/messages/TeleportStart.ts index 31b0dae..74f59e3 100644 --- a/lib/classes/messages/TeleportStart.ts +++ b/lib/classes/messages/TeleportStart.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TeleportStartMessage implements MessageBase { diff --git a/lib/classes/messages/TerminateFriendship.ts b/lib/classes/messages/TerminateFriendship.ts index 0f0cec0..921bcd7 100644 --- a/lib/classes/messages/TerminateFriendship.ts +++ b/lib/classes/messages/TerminateFriendship.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TerminateFriendshipMessage implements MessageBase { diff --git a/lib/classes/messages/TestMessage.ts b/lib/classes/messages/TestMessage.ts index 67cd7fc..f74ba26 100644 --- a/lib/classes/messages/TestMessage.ts +++ b/lib/classes/messages/TestMessage.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TestMessageMessage implements MessageBase { diff --git a/lib/classes/messages/TrackAgent.ts b/lib/classes/messages/TrackAgent.ts index 208928f..081b987 100644 --- a/lib/classes/messages/TrackAgent.ts +++ b/lib/classes/messages/TrackAgent.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TrackAgentMessage implements MessageBase { diff --git a/lib/classes/messages/TransferAbort.ts b/lib/classes/messages/TransferAbort.ts index 3b18cf9..9bd2540 100644 --- a/lib/classes/messages/TransferAbort.ts +++ b/lib/classes/messages/TransferAbort.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TransferAbortMessage implements MessageBase { diff --git a/lib/classes/messages/TransferInfo.ts b/lib/classes/messages/TransferInfo.ts index 6453468..236ceea 100644 --- a/lib/classes/messages/TransferInfo.ts +++ b/lib/classes/messages/TransferInfo.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TransferInfoMessage implements MessageBase { diff --git a/lib/classes/messages/TransferInventory.ts b/lib/classes/messages/TransferInventory.ts index f39fc45..ef1554d 100644 --- a/lib/classes/messages/TransferInventory.ts +++ b/lib/classes/messages/TransferInventory.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TransferInventoryMessage implements MessageBase { @@ -73,6 +73,10 @@ export class TransferInventoryMessage implements MessageBase newObjInfoBlock['TransactionID'] = new UUID(buf, pos); pos += 16; this.InfoBlock = newObjInfoBlock; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.InventoryBlock = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/TransferInventoryAck.ts b/lib/classes/messages/TransferInventoryAck.ts index 25697b0..f65e209 100644 --- a/lib/classes/messages/TransferInventoryAck.ts +++ b/lib/classes/messages/TransferInventoryAck.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TransferInventoryAckMessage implements MessageBase { diff --git a/lib/classes/messages/TransferPacket.ts b/lib/classes/messages/TransferPacket.ts index ce77668..14ba2bb 100644 --- a/lib/classes/messages/TransferPacket.ts +++ b/lib/classes/messages/TransferPacket.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TransferPacketMessage implements MessageBase { diff --git a/lib/classes/messages/TransferRequest.ts b/lib/classes/messages/TransferRequest.ts index 620b195..7ce336b 100644 --- a/lib/classes/messages/TransferRequest.ts +++ b/lib/classes/messages/TransferRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class TransferRequestMessage implements MessageBase { diff --git a/lib/classes/messages/UUIDGroupNameReply.ts b/lib/classes/messages/UUIDGroupNameReply.ts index ae59a4c..77e6095 100644 --- a/lib/classes/messages/UUIDGroupNameReply.ts +++ b/lib/classes/messages/UUIDGroupNameReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UUIDGroupNameReplyMessage implements MessageBase { @@ -51,6 +51,10 @@ export class UUIDGroupNameReplyMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.UUIDNameBlock = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/UUIDGroupNameRequest.ts b/lib/classes/messages/UUIDGroupNameRequest.ts index 2d6cc45..3181332 100644 --- a/lib/classes/messages/UUIDGroupNameRequest.ts +++ b/lib/classes/messages/UUIDGroupNameRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UUIDGroupNameRequestMessage implements MessageBase { @@ -37,6 +37,10 @@ export class UUIDGroupNameRequestMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.UUIDNameBlock = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/UUIDNameReply.ts b/lib/classes/messages/UUIDNameReply.ts index 8bd1923..aebf955 100644 --- a/lib/classes/messages/UUIDNameReply.ts +++ b/lib/classes/messages/UUIDNameReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UUIDNameReplyMessage implements MessageBase { @@ -55,6 +55,10 @@ export class UUIDNameReplyMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.UUIDNameBlock = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/UUIDNameRequest.ts b/lib/classes/messages/UUIDNameRequest.ts index 1a09a77..fd26bc1 100644 --- a/lib/classes/messages/UUIDNameRequest.ts +++ b/lib/classes/messages/UUIDNameRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UUIDNameRequestMessage implements MessageBase { @@ -37,6 +37,10 @@ export class UUIDNameRequestMessage implements MessageBase { const startPos = pos; let varLength = 0; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.UUIDNameBlock = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/Undo.ts b/lib/classes/messages/Undo.ts index 3cc7562..817f214 100644 --- a/lib/classes/messages/Undo.ts +++ b/lib/classes/messages/Undo.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UndoMessage implements MessageBase { @@ -64,6 +64,10 @@ export class UndoMessage implements MessageBase newObjAgentData['GroupID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.ObjectData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/UndoLand.ts b/lib/classes/messages/UndoLand.ts index a04bd0e..1f01c5f 100644 --- a/lib/classes/messages/UndoLand.ts +++ b/lib/classes/messages/UndoLand.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UndoLandMessage implements MessageBase { diff --git a/lib/classes/messages/UnsubscribeLoad.ts b/lib/classes/messages/UnsubscribeLoad.ts index c663de0..5efc51d 100644 --- a/lib/classes/messages/UnsubscribeLoad.ts +++ b/lib/classes/messages/UnsubscribeLoad.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UnsubscribeLoadMessage implements MessageBase { diff --git a/lib/classes/messages/UpdateAttachment.ts b/lib/classes/messages/UpdateAttachment.ts index ff31e87..5ddfdc3 100644 --- a/lib/classes/messages/UpdateAttachment.ts +++ b/lib/classes/messages/UpdateAttachment.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UpdateAttachmentMessage implements MessageBase { diff --git a/lib/classes/messages/UpdateCreateInventoryItem.ts b/lib/classes/messages/UpdateCreateInventoryItem.ts index 1a6c1d8..600704b 100644 --- a/lib/classes/messages/UpdateCreateInventoryItem.ts +++ b/lib/classes/messages/UpdateCreateInventoryItem.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UpdateCreateInventoryItemMessage implements MessageBase { @@ -133,6 +133,10 @@ export class UpdateCreateInventoryItemMessage implements MessageBase newObjAgentData['TransactionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.InventoryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/UpdateGroupInfo.ts b/lib/classes/messages/UpdateGroupInfo.ts index e6ee9b0..0c3daf7 100644 --- a/lib/classes/messages/UpdateGroupInfo.ts +++ b/lib/classes/messages/UpdateGroupInfo.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UpdateGroupInfoMessage implements MessageBase { diff --git a/lib/classes/messages/UpdateInventoryFolder.ts b/lib/classes/messages/UpdateInventoryFolder.ts index b643593..999d072 100644 --- a/lib/classes/messages/UpdateInventoryFolder.ts +++ b/lib/classes/messages/UpdateInventoryFolder.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UpdateInventoryFolderMessage implements MessageBase { @@ -76,6 +76,10 @@ export class UpdateInventoryFolderMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.FolderData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/UpdateInventoryItem.ts b/lib/classes/messages/UpdateInventoryItem.ts index 55e8d6f..bc15ed2 100644 --- a/lib/classes/messages/UpdateInventoryItem.ts +++ b/lib/classes/messages/UpdateInventoryItem.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UpdateInventoryItemMessage implements MessageBase { @@ -135,6 +135,10 @@ export class UpdateInventoryItemMessage implements MessageBase newObjAgentData['TransactionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.InventoryData = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/UpdateMuteListEntry.ts b/lib/classes/messages/UpdateMuteListEntry.ts index ca78f91..b5417ac 100644 --- a/lib/classes/messages/UpdateMuteListEntry.ts +++ b/lib/classes/messages/UpdateMuteListEntry.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UpdateMuteListEntryMessage implements MessageBase { diff --git a/lib/classes/messages/UpdateParcel.ts b/lib/classes/messages/UpdateParcel.ts index 4bc0e31..570d822 100644 --- a/lib/classes/messages/UpdateParcel.ts +++ b/lib/classes/messages/UpdateParcel.ts @@ -1,11 +1,11 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import Long = require('long'); -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import * as Long from 'long'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UpdateParcelMessage implements MessageBase { diff --git a/lib/classes/messages/UpdateSimulator.ts b/lib/classes/messages/UpdateSimulator.ts index a3ab076..41055f6 100644 --- a/lib/classes/messages/UpdateSimulator.ts +++ b/lib/classes/messages/UpdateSimulator.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UpdateSimulatorMessage implements MessageBase { diff --git a/lib/classes/messages/UpdateTaskInventory.ts b/lib/classes/messages/UpdateTaskInventory.ts index e58a830..ac710fe 100644 --- a/lib/classes/messages/UpdateTaskInventory.ts +++ b/lib/classes/messages/UpdateTaskInventory.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UpdateTaskInventoryMessage implements MessageBase { diff --git a/lib/classes/messages/UpdateUserInfo.ts b/lib/classes/messages/UpdateUserInfo.ts index 127d0f4..6bcffc1 100644 --- a/lib/classes/messages/UpdateUserInfo.ts +++ b/lib/classes/messages/UpdateUserInfo.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UpdateUserInfoMessage implements MessageBase { diff --git a/lib/classes/messages/UseCachedMuteList.ts b/lib/classes/messages/UseCachedMuteList.ts index d1c00b7..b0f3dc7 100644 --- a/lib/classes/messages/UseCachedMuteList.ts +++ b/lib/classes/messages/UseCachedMuteList.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UseCachedMuteListMessage implements MessageBase { diff --git a/lib/classes/messages/UseCircuitCode.ts b/lib/classes/messages/UseCircuitCode.ts index 6a53c82..d23863b 100644 --- a/lib/classes/messages/UseCircuitCode.ts +++ b/lib/classes/messages/UseCircuitCode.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UseCircuitCodeMessage implements MessageBase { diff --git a/lib/classes/messages/UserInfoReply.ts b/lib/classes/messages/UserInfoReply.ts index fa1e2c7..7ea7d9e 100644 --- a/lib/classes/messages/UserInfoReply.ts +++ b/lib/classes/messages/UserInfoReply.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UserInfoReplyMessage implements MessageBase { diff --git a/lib/classes/messages/UserInfoRequest.ts b/lib/classes/messages/UserInfoRequest.ts index 8c0a3cf..84aded2 100644 --- a/lib/classes/messages/UserInfoRequest.ts +++ b/lib/classes/messages/UserInfoRequest.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UserInfoRequestMessage implements MessageBase { diff --git a/lib/classes/messages/UserReport.ts b/lib/classes/messages/UserReport.ts index 83934d0..55d02fd 100644 --- a/lib/classes/messages/UserReport.ts +++ b/lib/classes/messages/UserReport.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UserReportMessage implements MessageBase { diff --git a/lib/classes/messages/UserReportInternal.ts b/lib/classes/messages/UserReportInternal.ts index 72c65f5..2e4a8ff 100644 --- a/lib/classes/messages/UserReportInternal.ts +++ b/lib/classes/messages/UserReportInternal.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class UserReportInternalMessage implements MessageBase { diff --git a/lib/classes/messages/VelocityInterpolateOff.ts b/lib/classes/messages/VelocityInterpolateOff.ts index 2228d05..d87e560 100644 --- a/lib/classes/messages/VelocityInterpolateOff.ts +++ b/lib/classes/messages/VelocityInterpolateOff.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class VelocityInterpolateOffMessage implements MessageBase { diff --git a/lib/classes/messages/VelocityInterpolateOn.ts b/lib/classes/messages/VelocityInterpolateOn.ts index e4d2ccb..3825aee 100644 --- a/lib/classes/messages/VelocityInterpolateOn.ts +++ b/lib/classes/messages/VelocityInterpolateOn.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class VelocityInterpolateOnMessage implements MessageBase { diff --git a/lib/classes/messages/ViewerEffect.ts b/lib/classes/messages/ViewerEffect.ts index 60e8d06..79a093c 100644 --- a/lib/classes/messages/ViewerEffect.ts +++ b/lib/classes/messages/ViewerEffect.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ViewerEffectMessage implements MessageBase { @@ -82,6 +82,10 @@ export class ViewerEffectMessage implements MessageBase newObjAgentData['SessionID'] = new UUID(buf, pos); pos += 16; this.AgentData = newObjAgentData; + if (pos >= buf.length) + { + return pos - startPos; + } const count = buf.readUInt8(pos++); this.Effect = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/messages/ViewerFrozenMessage.ts b/lib/classes/messages/ViewerFrozenMessage.ts index 151d923..a2cb8f4 100644 --- a/lib/classes/messages/ViewerFrozenMessage.ts +++ b/lib/classes/messages/ViewerFrozenMessage.ts @@ -1,8 +1,8 @@ // This file has been automatically generated by writeMessageClasses.js -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ViewerFrozenMessageMessage implements MessageBase { diff --git a/lib/classes/messages/ViewerStartAuction.ts b/lib/classes/messages/ViewerStartAuction.ts index 48788e5..631f586 100644 --- a/lib/classes/messages/ViewerStartAuction.ts +++ b/lib/classes/messages/ViewerStartAuction.ts @@ -1,9 +1,9 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ViewerStartAuctionMessage implements MessageBase { diff --git a/lib/classes/messages/ViewerStats.ts b/lib/classes/messages/ViewerStats.ts index 02e83b6..b833347 100644 --- a/lib/classes/messages/ViewerStats.ts +++ b/lib/classes/messages/ViewerStats.ts @@ -1,10 +1,10 @@ // This file has been automatically generated by writeMessageClasses.js -import {UUID} from '../UUID'; -import {IPAddress} from '../IPAddress'; -import {MessageFlags} from '../../enums/MessageFlags'; -import {MessageBase} from '../MessageBase'; -import {Message} from '../../enums/Message'; +import { UUID } from '../UUID'; +import { IPAddress } from '../IPAddress'; +import { MessageFlags } from '../../enums/MessageFlags'; +import { MessageBase } from '../MessageBase'; +import { Message } from '../../enums/Message'; export class ViewerStatsMessage implements MessageBase { @@ -273,6 +273,10 @@ export class ViewerStatsMessage implements MessageBase newObjFailStats['Invalid'] = buf.readUInt32LE(pos); pos += 4; this.FailStats = newObjFailStats; + if (pos >= buf.length) + { + return pos - startPos; + } count = buf.readUInt8(pos++); this.MiscStats = []; for (let i = 0; i < count; i++) diff --git a/lib/classes/public/Avatar.ts b/lib/classes/public/Avatar.ts index 8dd8d5c..8df0e91 100644 --- a/lib/classes/public/Avatar.ts +++ b/lib/classes/public/Avatar.ts @@ -1,4 +1,4 @@ -import {UUID} from '../UUID'; +import { UUID } from '../UUID'; export class Avatar { diff --git a/lib/classes/public/ExtraParams.ts b/lib/classes/public/ExtraParams.ts index edb5963..58fbc4f 100644 --- a/lib/classes/public/ExtraParams.ts +++ b/lib/classes/public/ExtraParams.ts @@ -1,13 +1,12 @@ -import {GameObject} from './GameObject'; -import {ExtraParamType} from '../../enums/ExtraParamType'; -import {FlexibleData} from './FlexibleData'; -import {LightData} from './LightData'; -import {LightImageData} from './LightImageData'; -import {MeshData} from './MeshData'; -import {SculptData} from './SculptData'; -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; -import {Color4} from '../Color4'; +import { ExtraParamType } from '../../enums/ExtraParamType'; +import { FlexibleData } from './FlexibleData'; +import { LightData } from './LightData'; +import { LightImageData } from './LightImageData'; +import { MeshData } from './MeshData'; +import { SculptData } from './SculptData'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; +import { Color4 } from '../Color4'; export class ExtraParams { diff --git a/lib/classes/public/FlexibleData.ts b/lib/classes/public/FlexibleData.ts index 29af23c..6e393e1 100644 --- a/lib/classes/public/FlexibleData.ts +++ b/lib/classes/public/FlexibleData.ts @@ -1,4 +1,4 @@ -import {Vector3} from '../Vector3'; +import { Vector3 } from '../Vector3'; export class FlexibleData { diff --git a/lib/classes/public/Friend.ts b/lib/classes/public/Friend.ts index 8396b22..0c54bc4 100644 --- a/lib/classes/public/Friend.ts +++ b/lib/classes/public/Friend.ts @@ -1,5 +1,5 @@ -import {Avatar} from './Avatar'; -import {RightsFlags} from '../..'; +import { Avatar } from './Avatar'; +import { RightsFlags } from '../../enums/RightsFlags'; export class Friend extends Avatar { diff --git a/lib/classes/public/GameObject.ts b/lib/classes/public/GameObject.ts index 7d1ba41..f899834 100644 --- a/lib/classes/public/GameObject.ts +++ b/lib/classes/public/GameObject.ts @@ -1,44 +1,43 @@ -import {Vector3} from '../Vector3'; -import {UUID} from '../UUID'; -import {Quaternion} from '../Quaternion'; -import {Tree} from '../../enums/Tree'; -import {Vector4} from '../Vector4'; -import {TextureEntry} from '../TextureEntry'; -import {Color4} from '../Color4'; -import {ParticleSystem} from '../ParticleSystem'; -import {ITreeBoundingBox} from '../interfaces/ITreeBoundingBox'; -import {NameValue} from '../NameValue'; +import { Vector3 } from '../Vector3'; +import { UUID } from '../UUID'; +import { Quaternion } from '../Quaternion'; +import { Tree } from '../../enums/Tree'; +import { Vector4 } from '../Vector4'; +import { TextureEntry } from '../TextureEntry'; +import { Color4 } from '../Color4'; +import { ParticleSystem } from '../ParticleSystem'; +import { ITreeBoundingBox } from '../interfaces/ITreeBoundingBox'; +import { NameValue } from '../NameValue'; import * as Long from 'long'; -import {IGameObjectData} from '../interfaces/IGameObjectData'; -import { - HoleType, - HTTPAssets, PacketFlags, - PCode, - PhysicsShapeType, - PrimFlags, - ProfileShape, - SculptType, - SoundFlags, - Utils -} from '../..'; +import { IGameObjectData } from '../interfaces/IGameObjectData'; import * as builder from 'xmlbuilder'; +import { XMLNode } from 'xmlbuilder'; import * as xml2js from 'xml2js'; -import {Region} from '../Region'; -import {InventoryItem} from '../InventoryItem'; -import {InventoryType} from '../../enums/InventoryType'; -import {LLWearable} from '../LLWearable'; -import {TextureAnim} from './TextureAnim'; -import {ExtraParams} from './ExtraParams'; -import {ObjectExtraParamsMessage} from '../messages/ObjectExtraParams'; -import {ExtraParamType} from '../../enums/ExtraParamType'; -import {ObjectImageMessage} from '../messages/ObjectImage'; -import {ObjectNameMessage} from '../messages/ObjectName'; -import {ObjectDescriptionMessage} from '../messages/ObjectDescription'; -import {MultipleObjectUpdateMessage} from '../messages/MultipleObjectUpdate'; -import {UpdateType} from '../../enums/UpdateType'; -import {ObjectLinkMessage} from '../messages/ObjectLink'; -import {ObjectShapeMessage} from '../messages/ObjectShape'; -import {XMLNode} from 'xmlbuilder'; +import { Region } from '../Region'; +import { InventoryItem } from '../InventoryItem'; +import { InventoryType } from '../../enums/InventoryType'; +import { LLWearable } from '../LLWearable'; +import { TextureAnim } from './TextureAnim'; +import { ExtraParams } from './ExtraParams'; +import { ObjectExtraParamsMessage } from '../messages/ObjectExtraParams'; +import { ExtraParamType } from '../../enums/ExtraParamType'; +import { ObjectImageMessage } from '../messages/ObjectImage'; +import { ObjectNameMessage } from '../messages/ObjectName'; +import { ObjectDescriptionMessage } from '../messages/ObjectDescription'; +import { MultipleObjectUpdateMessage } from '../messages/MultipleObjectUpdate'; +import { UpdateType } from '../../enums/UpdateType'; +import { ObjectLinkMessage } from '../messages/ObjectLink'; +import { ObjectShapeMessage } from '../messages/ObjectShape'; +import { PrimFlags } from '../../enums/PrimFlags'; +import { Utils } from '../Utils'; +import { ProfileShape } from '../../enums/ProfileShape'; +import { HoleType } from '../../enums/HoleType'; +import { SculptType } from '../../enums/SculptType'; +import { PacketFlags } from '../../enums/PacketFlags'; +import { HTTPAssets } from '../../enums/HTTPAssets'; +import { PhysicsShapeType } from '../../enums/PhysicsShapeType'; +import { PCode } from '../../enums/PCode'; +import { SoundFlags } from '../../enums/SoundFlags'; export class GameObject implements IGameObjectData { diff --git a/lib/classes/public/LLMesh.ts b/lib/classes/public/LLMesh.ts index f0e12fd..67e2c4a 100644 --- a/lib/classes/public/LLMesh.ts +++ b/lib/classes/public/LLMesh.ts @@ -1,13 +1,12 @@ -import {Utils} from '../Utils'; import * as zlib from 'zlib'; import * as LLSD from '@caspertech/llsd'; -import {UUID} from '../UUID'; -import {LLSubMesh} from './interfaces/LLSubMesh'; -import {Vector3} from '../Vector3'; -import {Vector2} from '../Vector2'; -import {LLSkin} from './interfaces/LLSkin'; -import {mat4} from '../../tsm/mat4'; -import {LLPhysicsConvex} from './interfaces/LLPhysicsConvex'; +import { UUID } from '../UUID'; +import { LLSubMesh } from './interfaces/LLSubMesh'; +import { Vector3 } from '../Vector3'; +import { Vector2 } from '../Vector2'; +import { LLSkin } from './interfaces/LLSkin'; +import { mat4 } from '../../tsm/mat4'; +import { LLPhysicsConvex } from './interfaces/LLPhysicsConvex'; export class LLMesh { diff --git a/lib/classes/public/LightData.ts b/lib/classes/public/LightData.ts index 85431b9..bdeb944 100644 --- a/lib/classes/public/LightData.ts +++ b/lib/classes/public/LightData.ts @@ -1,5 +1,4 @@ -import {Color4} from '../Color4'; -import {Utils} from '../Utils'; +import { Color4 } from '../Color4'; export class LightData { diff --git a/lib/classes/public/LightImageData.ts b/lib/classes/public/LightImageData.ts index f5ed34c..9b00069 100644 --- a/lib/classes/public/LightImageData.ts +++ b/lib/classes/public/LightImageData.ts @@ -1,5 +1,5 @@ -import {UUID} from '../UUID'; -import {Vector3} from '../Vector3'; +import { UUID } from '../UUID'; +import { Vector3 } from '../Vector3'; export class LightImageData { diff --git a/lib/classes/public/Material.ts b/lib/classes/public/Material.ts index d68020c..1e58114 100644 --- a/lib/classes/public/Material.ts +++ b/lib/classes/public/Material.ts @@ -1,5 +1,5 @@ -import {UUID} from '../UUID'; -import {Color4} from '../Color4'; +import { UUID } from '../UUID'; +import { Color4 } from '../Color4'; export class Material { diff --git a/lib/classes/public/MeshData.ts b/lib/classes/public/MeshData.ts index 44744d2..cd7c960 100644 --- a/lib/classes/public/MeshData.ts +++ b/lib/classes/public/MeshData.ts @@ -1,5 +1,5 @@ -import {UUID} from '../UUID'; -import {SculptType} from '../..'; +import { UUID } from '../UUID'; +import { SculptType } from '../../enums/SculptType'; export class MeshData { diff --git a/lib/classes/public/Parcel.ts b/lib/classes/public/Parcel.ts index c884ded..0e5d679 100644 --- a/lib/classes/public/Parcel.ts +++ b/lib/classes/public/Parcel.ts @@ -1,8 +1,7 @@ -import {Vector3} from '../Vector3'; -import {UUID} from '../UUID'; +import { Vector3 } from '../Vector3'; +import { UUID } from '../UUID'; import * as builder from 'xmlbuilder'; -import * as LLSD from '@caspertech/llsd'; -import {ParcelFlags} from '../../enums/ParcelFlags'; +import { ParcelFlags } from '../../enums/ParcelFlags'; export class Parcel { diff --git a/lib/classes/public/RegionEnvironment.ts b/lib/classes/public/RegionEnvironment.ts index 268ed52..a48263e 100644 --- a/lib/classes/public/RegionEnvironment.ts +++ b/lib/classes/public/RegionEnvironment.ts @@ -1,10 +1,10 @@ -import {UUID} from '../UUID'; -import {Vector4} from '../Vector4'; -import {Color4} from '../Color4'; -import {Vector2} from '../Vector2'; -import {SkyPreset} from './interfaces/SkyPreset'; -import {WaterPreset} from './interfaces/WaterPreset'; -import {XMLNode} from 'xmlbuilder'; +import { UUID } from '../UUID'; +import { Vector4 } from '../Vector4'; +import { Color4 } from '../Color4'; +import { Vector2 } from '../Vector2'; +import { SkyPreset } from './interfaces/SkyPreset'; +import { WaterPreset } from './interfaces/WaterPreset'; +import { XMLNode } from 'xmlbuilder'; export class RegionEnvironment { diff --git a/lib/classes/public/SculptData.ts b/lib/classes/public/SculptData.ts index 84ce3eb..ad2a0ec 100644 --- a/lib/classes/public/SculptData.ts +++ b/lib/classes/public/SculptData.ts @@ -1,5 +1,5 @@ -import {UUID} from '../UUID'; -import {SculptType} from '../..'; +import { UUID } from '../UUID'; +import { SculptType } from '../../enums/SculptType'; export class SculptData { diff --git a/lib/classes/public/TextureAnim.ts b/lib/classes/public/TextureAnim.ts index 9dc083a..eb20a30 100644 --- a/lib/classes/public/TextureAnim.ts +++ b/lib/classes/public/TextureAnim.ts @@ -1,4 +1,5 @@ -import {TextureAnimFlags, Vector2} from '../..'; +import { TextureAnimFlags } from '../../enums/TextureAnimFlags'; +import { Vector2 } from '../Vector2'; export class TextureAnim { diff --git a/lib/classes/public/interfaces/LLPhysicsConvex.ts b/lib/classes/public/interfaces/LLPhysicsConvex.ts index 81af03f..841d43d 100644 --- a/lib/classes/public/interfaces/LLPhysicsConvex.ts +++ b/lib/classes/public/interfaces/LLPhysicsConvex.ts @@ -1,4 +1,4 @@ -import {Vector3} from '../../Vector3'; +import { Vector3 } from '../../Vector3'; export interface LLPhysicsConvex { diff --git a/lib/classes/public/interfaces/LLSkin.ts b/lib/classes/public/interfaces/LLSkin.ts index 20a8c3f..9b489a3 100644 --- a/lib/classes/public/interfaces/LLSkin.ts +++ b/lib/classes/public/interfaces/LLSkin.ts @@ -1,4 +1,4 @@ -import {mat4} from '../../../tsm/mat4'; +import { mat4 } from '../../../tsm/mat4'; export interface LLSkin { diff --git a/lib/classes/public/interfaces/LLSubMesh.ts b/lib/classes/public/interfaces/LLSubMesh.ts index baf8394..eddbd30 100644 --- a/lib/classes/public/interfaces/LLSubMesh.ts +++ b/lib/classes/public/interfaces/LLSubMesh.ts @@ -1,5 +1,5 @@ -import {Vector3} from '../../Vector3'; -import {Vector2} from '../../Vector2'; +import { Vector3 } from '../../Vector3'; +import { Vector2 } from '../../Vector2'; export interface LLSubMesh { diff --git a/lib/classes/public/interfaces/MapLocation.ts b/lib/classes/public/interfaces/MapLocation.ts index 2e5ff5a..644e036 100644 --- a/lib/classes/public/interfaces/MapLocation.ts +++ b/lib/classes/public/interfaces/MapLocation.ts @@ -1,6 +1,6 @@ -import {UUID} from '../../UUID'; +import { UUID } from '../../UUID'; import * as Long from 'long'; -import {Vector2} from '../../Vector2'; +import { Vector2 } from '../../Vector2'; export interface MapLocation { 'regionName': string; diff --git a/lib/classes/public/interfaces/SkyPreset.ts b/lib/classes/public/interfaces/SkyPreset.ts index 60cf4e2..1f51d45 100644 --- a/lib/classes/public/interfaces/SkyPreset.ts +++ b/lib/classes/public/interfaces/SkyPreset.ts @@ -1,6 +1,6 @@ -import {Vector4} from '../../Vector4'; -import {Color4} from '../../Color4'; -import {Vector2} from '../../Vector2'; +import { Vector4 } from '../../Vector4'; +import { Color4 } from '../../Color4'; +import { Vector2 } from '../../Vector2'; export interface SkyPreset { @@ -29,4 +29,4 @@ export interface SkyPreset starBrightness: number, sunAngle: number, sunlightColor: Color4 -} \ No newline at end of file +} diff --git a/lib/classes/public/interfaces/WaterPreset.ts b/lib/classes/public/interfaces/WaterPreset.ts index 07fba7b..00d0355 100644 --- a/lib/classes/public/interfaces/WaterPreset.ts +++ b/lib/classes/public/interfaces/WaterPreset.ts @@ -1,7 +1,7 @@ -import {Vector3} from '../../Vector3'; -import {UUID} from '../../UUID'; -import {Color4} from '../../Color4'; -import {Vector2} from '../../Vector2'; +import { Vector3 } from '../../Vector3'; +import { UUID } from '../../UUID'; +import { Color4 } from '../../Color4'; +import { Vector2 } from '../../Vector2'; export interface WaterPreset { @@ -17,4 +17,4 @@ export interface WaterPreset waterFogDensity: number, wave1Dir: Vector2, wave2Dir: Vector2 -} \ No newline at end of file +} diff --git a/lib/enums/Message.ts b/lib/enums/Message.ts index 4aa0866..24a1891 100644 --- a/lib/enums/Message.ts +++ b/lib/enums/Message.ts @@ -378,6 +378,7 @@ export enum Message { AttachedSound = 65293, AttachedSoundGainChange = 65294, PreloadSound = 65295, + ObjectAnimation = 30, AssetUploadRequest = 4294902093, AssetUploadComplete = 4294902094, EmailMessageRequest = 4294902095, diff --git a/lib/events/AvatarPropertiesReplyEvent.ts b/lib/events/AvatarPropertiesReplyEvent.ts index 6a0ed0e..a89d975 100644 --- a/lib/events/AvatarPropertiesReplyEvent.ts +++ b/lib/events/AvatarPropertiesReplyEvent.ts @@ -1,4 +1,4 @@ -import {UUID} from '..'; +import { UUID } from '../classes/UUID'; export class AvatarPropertiesReplyEvent { diff --git a/lib/events/ChatEvent.ts b/lib/events/ChatEvent.ts index 44b3720..df2916b 100644 --- a/lib/events/ChatEvent.ts +++ b/lib/events/ChatEvent.ts @@ -1,6 +1,8 @@ -import {ChatAudibleLevel} from '../enums/ChatAudible'; -import {ChatType} from '../enums/ChatType'; -import {ChatSourceType, UUID, Vector3} from '..'; +import { ChatAudibleLevel } from '../enums/ChatAudible'; +import { ChatType } from '../enums/ChatType'; +import { UUID } from '../classes/UUID'; +import { ChatSourceType } from '../enums/ChatSourceType'; +import { Vector3 } from '../classes/Vector3'; export class ChatEvent { diff --git a/lib/events/FriendOnlineEvent.ts b/lib/events/FriendOnlineEvent.ts index 2e9e5a1..16ab353 100644 --- a/lib/events/FriendOnlineEvent.ts +++ b/lib/events/FriendOnlineEvent.ts @@ -1,4 +1,4 @@ -import {Friend} from '..'; +import { Friend } from '../classes/public/Friend'; export class FriendOnlineEvent { diff --git a/lib/events/FriendRemovedEvent.ts b/lib/events/FriendRemovedEvent.ts index d9de3d8..e80d147 100644 --- a/lib/events/FriendRemovedEvent.ts +++ b/lib/events/FriendRemovedEvent.ts @@ -1,4 +1,4 @@ -import {Friend} from '..'; +import { Friend } from '../classes/public/Friend'; export class FriendRemovedEvent { diff --git a/lib/events/FriendRequestEvent.ts b/lib/events/FriendRequestEvent.ts index 7f18449..0038d0f 100644 --- a/lib/events/FriendRequestEvent.ts +++ b/lib/events/FriendRequestEvent.ts @@ -1,4 +1,4 @@ -import {UUID} from '..'; +import { UUID } from '../classes/UUID'; export class FriendRequestEvent { diff --git a/lib/events/FriendResponseEvent.ts b/lib/events/FriendResponseEvent.ts index 29b693c..8134b84 100644 --- a/lib/events/FriendResponseEvent.ts +++ b/lib/events/FriendResponseEvent.ts @@ -1,4 +1,4 @@ -import {UUID} from '..'; +import { UUID } from '../classes/UUID'; export class FriendResponseEvent { diff --git a/lib/events/FriendRightsEvent.ts b/lib/events/FriendRightsEvent.ts index cbc495e..f30884c 100644 --- a/lib/events/FriendRightsEvent.ts +++ b/lib/events/FriendRightsEvent.ts @@ -1,4 +1,5 @@ -import {Friend, RightsFlags} from '..'; +import { Friend } from '../classes/public/Friend'; +import { RightsFlags } from '../enums/RightsFlags'; export class FriendRightsEvent { diff --git a/lib/events/GroupChatEvent.ts b/lib/events/GroupChatEvent.ts index 8ef4e36..cb940fb 100644 --- a/lib/events/GroupChatEvent.ts +++ b/lib/events/GroupChatEvent.ts @@ -1,4 +1,4 @@ -import {UUID} from '..'; +import { UUID } from '../classes/UUID'; export class GroupChatEvent { diff --git a/lib/events/GroupChatSessionAgentListEvent.ts b/lib/events/GroupChatSessionAgentListEvent.ts index 2ee436a..8964688 100644 --- a/lib/events/GroupChatSessionAgentListEvent.ts +++ b/lib/events/GroupChatSessionAgentListEvent.ts @@ -1,4 +1,4 @@ -import {UUID} from '..'; +import { UUID } from '../classes/UUID'; export class GroupChatSessionAgentListEvent { diff --git a/lib/events/GroupChatSessionJoinEvent.ts b/lib/events/GroupChatSessionJoinEvent.ts index 970d61a..b425654 100644 --- a/lib/events/GroupChatSessionJoinEvent.ts +++ b/lib/events/GroupChatSessionJoinEvent.ts @@ -1,4 +1,4 @@ -import {UUID} from '..'; +import { UUID } from '../classes/UUID'; export class GroupChatSessionJoinEvent { diff --git a/lib/events/GroupInviteEvent.ts b/lib/events/GroupInviteEvent.ts index 6fac4e1..2629e59 100644 --- a/lib/events/GroupInviteEvent.ts +++ b/lib/events/GroupInviteEvent.ts @@ -1,4 +1,4 @@ -import {UUID} from '..'; +import { UUID } from '../classes/UUID'; export class GroupInviteEvent { diff --git a/lib/events/GroupNoticeEvent.ts b/lib/events/GroupNoticeEvent.ts index 2c56e7b..f631114 100644 --- a/lib/events/GroupNoticeEvent.ts +++ b/lib/events/GroupNoticeEvent.ts @@ -1,4 +1,4 @@ -import {UUID} from '..'; +import { UUID } from '../classes/UUID'; export class GroupNoticeEvent { diff --git a/lib/events/GroupProfileReplyEvent.ts b/lib/events/GroupProfileReplyEvent.ts index f682531..8011c0f 100644 --- a/lib/events/GroupProfileReplyEvent.ts +++ b/lib/events/GroupProfileReplyEvent.ts @@ -1,4 +1,5 @@ -import {UUID} from '..'; +import { UUID } from '../classes/UUID'; +import * as Long from 'long'; export class GroupProfileReplyEvent { diff --git a/lib/events/InstantMessageEvent.ts b/lib/events/InstantMessageEvent.ts index 48571d0..94eacb2 100644 --- a/lib/events/InstantMessageEvent.ts +++ b/lib/events/InstantMessageEvent.ts @@ -1,4 +1,6 @@ -import {ChatSourceType, InstantMessageEventFlags, UUID} from '..'; +import { ChatSourceType } from '../enums/ChatSourceType'; +import { UUID } from '../classes/UUID'; +import { InstantMessageEventFlags } from '../enums/InstantMessageEventFlags'; export class InstantMessageEvent { diff --git a/lib/events/InventoryOfferedEvent.ts b/lib/events/InventoryOfferedEvent.ts index 0b2a8e0..70a314c 100644 --- a/lib/events/InventoryOfferedEvent.ts +++ b/lib/events/InventoryOfferedEvent.ts @@ -1,4 +1,6 @@ -import {AssetType, ChatSourceType, UUID} from '..'; +import { UUID } from '../classes/UUID'; +import { ChatSourceType } from '../enums/ChatSourceType'; +import { AssetType } from '../enums/AssetType'; export class InventoryOfferedEvent { diff --git a/lib/events/LureEvent.ts b/lib/events/LureEvent.ts index acb2f09..8c00d4b 100644 --- a/lib/events/LureEvent.ts +++ b/lib/events/LureEvent.ts @@ -1,4 +1,5 @@ -import {UUID, Vector3} from '..'; +import { UUID } from '../classes/UUID'; +import { Vector3 } from '../classes/Vector3'; export class LureEvent { diff --git a/lib/events/MapInfoRangeReplyEvent.ts b/lib/events/MapInfoRangeReplyEvent.ts index 4f1ac75..b0d1b5e 100644 --- a/lib/events/MapInfoRangeReplyEvent.ts +++ b/lib/events/MapInfoRangeReplyEvent.ts @@ -1,4 +1,4 @@ -import {MapBlock} from '../classes/MapBlock'; +import { MapBlock } from '../classes/MapBlock'; export class MapInfoRangeReplyEvent { diff --git a/lib/events/MapInfoReplyEvent.ts b/lib/events/MapInfoReplyEvent.ts index c297409..6e3d61e 100644 --- a/lib/events/MapInfoReplyEvent.ts +++ b/lib/events/MapInfoReplyEvent.ts @@ -1,5 +1,5 @@ -import {MapBlock} from '../classes/MapBlock'; -import {Vector2} from '..'; +import { MapBlock } from '../classes/MapBlock'; +import { Vector2 } from '../classes/Vector2'; export class MapInfoReplyEvent { diff --git a/lib/events/NewObjectEvent.ts b/lib/events/NewObjectEvent.ts index 2b89940..63b5daf 100644 --- a/lib/events/NewObjectEvent.ts +++ b/lib/events/NewObjectEvent.ts @@ -1,5 +1,5 @@ -import {UUID} from '..'; -import {GameObject} from '../classes/public/GameObject'; +import { GameObject } from '../classes/public/GameObject'; +import { UUID } from '../classes/UUID'; export class NewObjectEvent { diff --git a/lib/events/ObjectKilledEvent.ts b/lib/events/ObjectKilledEvent.ts index 7cbd547..f26cacc 100644 --- a/lib/events/ObjectKilledEvent.ts +++ b/lib/events/ObjectKilledEvent.ts @@ -1,5 +1,5 @@ -import {UUID} from '..'; -import {GameObject} from '../classes/public/GameObject'; +import { GameObject } from '../classes/public/GameObject'; +import { UUID } from '../classes/UUID'; export class ObjectKilledEvent { diff --git a/lib/events/ObjectPhysicsDataEvent.ts b/lib/events/ObjectPhysicsDataEvent.ts index 0886e43..1f3a955 100644 --- a/lib/events/ObjectPhysicsDataEvent.ts +++ b/lib/events/ObjectPhysicsDataEvent.ts @@ -1,4 +1,4 @@ -import {PhysicsShapeType} from '../enums/PhysicsShapeType'; +import { PhysicsShapeType } from '../enums/PhysicsShapeType'; export class ObjectPhysicsDataEvent { diff --git a/lib/events/ObjectUpdatedEvent.ts b/lib/events/ObjectUpdatedEvent.ts index 2c0a8f9..2bedbc8 100644 --- a/lib/events/ObjectUpdatedEvent.ts +++ b/lib/events/ObjectUpdatedEvent.ts @@ -1,5 +1,5 @@ -import {UUID} from '..'; -import {GameObject} from '../classes/public/GameObject'; +import { GameObject } from '../classes/public/GameObject'; +import { UUID } from '../classes/UUID'; export class ObjectUpdatedEvent { diff --git a/lib/events/ParcelInfoReplyEvent.ts b/lib/events/ParcelInfoReplyEvent.ts index 0112a4a..6c9d018 100644 --- a/lib/events/ParcelInfoReplyEvent.ts +++ b/lib/events/ParcelInfoReplyEvent.ts @@ -1,4 +1,6 @@ -import {ParcelInfoFlags, UUID, Vector3} from '..'; +import { ParcelInfoFlags } from '../enums/ParcelInfoFlags'; +import { UUID } from '../classes/UUID'; +import { Vector3 } from '../classes/Vector3'; export class ParcelInfoReplyEvent { diff --git a/lib/events/ParcelPropertiesEvent.ts b/lib/events/ParcelPropertiesEvent.ts index ddc2a34..9df628c 100644 --- a/lib/events/ParcelPropertiesEvent.ts +++ b/lib/events/ParcelPropertiesEvent.ts @@ -1,5 +1,6 @@ -import {UUID, Vector3} from '..'; -import {ParcelFlags} from '../enums/ParcelFlags'; +import { ParcelFlags } from '../enums/ParcelFlags'; +import { Vector3 } from '../classes/Vector3'; +import { UUID } from '../classes/UUID'; export class ParcelPropertiesEvent { diff --git a/lib/events/RegionInfoReplyEvent.ts b/lib/events/RegionInfoReplyEvent.ts index 35a11b0..e76ac6b 100644 --- a/lib/events/RegionInfoReplyEvent.ts +++ b/lib/events/RegionInfoReplyEvent.ts @@ -1,5 +1,5 @@ import * as Long from 'long'; -import {UUID} from '..'; +import { UUID } from '../classes/UUID'; export class RegionInfoReplyEvent { diff --git a/lib/events/ScriptDialogEvent.ts b/lib/events/ScriptDialogEvent.ts index 2d85e65..206f9ca 100644 --- a/lib/events/ScriptDialogEvent.ts +++ b/lib/events/ScriptDialogEvent.ts @@ -1,4 +1,4 @@ -import {UUID, Vector3} from '..'; +import { UUID } from '../classes/UUID'; export class ScriptDialogEvent { diff --git a/lib/events/SelectedObjectEvent.ts b/lib/events/SelectedObjectEvent.ts index 6780b69..19ca402 100644 --- a/lib/events/SelectedObjectEvent.ts +++ b/lib/events/SelectedObjectEvent.ts @@ -1,4 +1,4 @@ -import {GameObject} from '..'; +import { GameObject } from '../classes/public/GameObject'; export class SelectedObjectEvent { diff --git a/lib/events/TeleportEvent.ts b/lib/events/TeleportEvent.ts index 50e2927..42f05c8 100644 --- a/lib/events/TeleportEvent.ts +++ b/lib/events/TeleportEvent.ts @@ -1,4 +1,4 @@ -import {TeleportEventType} from '../enums/TeleportEventType'; +import { TeleportEventType } from '../enums/TeleportEventType'; export class TeleportEvent { diff --git a/lib/index.ts b/lib/index.ts index 3e751a6..7fd5a4e 100644 --- a/lib/index.ts +++ b/lib/index.ts @@ -1,99 +1,99 @@ -import {Bot} from './Bot'; -import {LoginParameters} from './classes/LoginParameters'; -import {ClientEvents} from './classes/ClientEvents'; -import {BVH} from './classes/BVH'; +import { Bot } from './Bot'; +import { LoginParameters } from './classes/LoginParameters'; +import { ClientEvents } from './classes/ClientEvents'; +import { BVH } from './classes/BVH'; -import {AssetType} from './enums/AssetType'; -import {HTTPAssets} from './enums/HTTPAssets'; -import {InstantMessageEventFlags} from './enums/InstantMessageEventFlags'; -import {InstantMessageEvent} from './events/InstantMessageEvent'; -import {ChatSourceType} from './enums/ChatSourceType'; -import {BotOptionFlags} from './enums/BotOptionFlags'; -import {UUID} from './classes/UUID'; -import {Vector3} from './classes/Vector3'; -import {ChatEvent} from './events/ChatEvent'; -import {GroupInviteEvent} from './events/GroupInviteEvent'; -import {FriendRequestEvent} from './events/FriendRequestEvent'; -import {FriendResponseEvent} from './events/FriendResponseEvent'; -import {LureEvent} from './events/LureEvent'; -import {TeleportEvent} from './events/TeleportEvent'; -import {DisconnectEvent} from './events/DisconnectEvent'; -import {GroupChatEvent} from './events/GroupChatEvent'; -import {GroupChatSessionJoinEvent} from './events/GroupChatSessionJoinEvent'; -import {GroupChatSessionAgentListEvent} from './events/GroupChatSessionAgentListEvent'; -import {GroupNoticeEvent} from './events/GroupNoticeEvent'; -import {RegionInfoReplyEvent} from './events/RegionInfoReplyEvent'; -import {MapInfoReplyEvent} from './events/MapInfoReplyEvent'; -import {MapInfoRangeReplyEvent} from './events/MapInfoRangeReplyEvent'; -import {InventoryOfferedEvent} from './events/InventoryOfferedEvent'; -import {AgentFlags} from './enums/AgentFlags'; -import {ControlFlags} from './enums/ControlFlags'; -import {InventoryItemFlags} from './enums/InventoryItemFlags'; -import {LoginFlags} from './enums/LoginFlags'; -import {MessageFlags} from './enums/MessageFlags'; -import {PacketFlags} from './enums/PacketFlags'; -import {RegionProtocolFlags} from './enums/RegionProtocolFlags'; -import {SoundFlags} from './enums/SoundFlags'; -import {TeleportFlags} from './enums/TeleportFlags'; -import {CompressedFlags} from './enums/CompressedFlags'; -import {DecodeFlags} from './enums/DecodeFlags'; -import {ParcelInfoFlags} from './enums/ParcelInfoFlags'; -import {ParcelInfoReplyEvent} from './events/ParcelInfoReplyEvent'; -import {ScriptDialogEvent} from './events/ScriptDialogEvent'; -import {EventQueueStateChangeEvent} from './events/EventQueueStateChangeEvent'; -import {RegionFlags} from './enums/RegionFlags'; -import {Friend} from './classes/public/Friend'; -import {FriendOnlineEvent} from './events/FriendOnlineEvent'; -import {Avatar} from './classes/public/Avatar'; -import {RightsFlags} from './enums/RightsFlags'; -import {FriendRightsEvent} from './events/FriendRightsEvent'; -import {FriendRemovedEvent} from './events/FriendRemovedEvent'; -import {GlobalPosition} from './classes/public/interfaces/GlobalPosition'; -import {MapLocation} from './classes/public/interfaces/MapLocation'; -import {Vector2} from './classes/Vector2'; -import {ParticleDataFlags} from './enums/ParticleDataFlags'; -import {TextureFlags} from './enums/TextureFlags'; -import {SourcePattern} from './enums/SourcePattern'; -import {BlendFunc} from './enums/BlendFunc'; -import {PCode} from './enums/PCode'; -import {Utils} from './classes/Utils'; -import {ObjectPhysicsDataEvent} from './events/ObjectPhysicsDataEvent'; -import {ParcelPropertiesEvent} from './events/ParcelPropertiesEvent'; -import {PrimFlags} from './enums/PrimFlags'; -import {TextureEntry} from './classes/TextureEntry'; -import {RegionEnvironment} from './classes/public/RegionEnvironment'; -import {Parcel} from './classes/public/Parcel'; -import {Material} from './classes/public/Material'; -import {GameObject} from './classes/public/GameObject'; -import {LightImageData} from './classes/public/LightImageData'; -import {LightData} from './classes/public/LightData'; -import {FlexibleData} from './classes/public/FlexibleData'; -import {MeshData} from './classes/public/MeshData'; -import {SculptData} from './classes/public/SculptData'; -import {SkyPreset} from './classes/public/interfaces/SkyPreset'; -import {WaterPreset} from './classes/public/interfaces/WaterPreset'; -import {NewObjectEvent} from './events/NewObjectEvent'; -import {ObjectKilledEvent} from './events/ObjectKilledEvent'; -import {ObjectUpdatedEvent} from './events/ObjectUpdatedEvent'; -import {GroupProfileReplyEvent} from './events/GroupProfileReplyEvent'; -import {AvatarPropertiesReplyEvent} from './events/AvatarPropertiesReplyEvent'; -import {Bumpiness} from './enums/Bumpiness'; -import {HoleType} from './enums/HoleType'; -import {LayerType} from './enums/LayerType'; -import {MappingType} from './enums/MappingType'; -import {PhysicsShapeType} from './enums/PhysicsShapeType'; -import {ParcelFlags} from './enums/ParcelFlags'; -import {ProfileShape} from './enums/ProfileShape'; -import {SculptType} from './enums/SculptType'; -import {Shininess} from './enums/Shininess'; -import {SimAccessFlags} from './enums/SimAccessFlags'; -import {TextureAnimFlags} from './enums/TextureAnimFlags'; -import {TransferStatus} from './enums/TransferStatus'; -import {LLWearable} from './classes/LLWearable'; -import {ParticleSystem} from './classes/ParticleSystem'; -import {ExtraParams} from './classes/public/ExtraParams'; -import {LLMesh} from './classes/public/LLMesh'; -import {FolderType} from './enums/FolderType'; +import { AssetType } from './enums/AssetType'; +import { HTTPAssets } from './enums/HTTPAssets'; +import { InstantMessageEventFlags } from './enums/InstantMessageEventFlags'; +import { InstantMessageEvent } from './events/InstantMessageEvent'; +import { ChatSourceType } from './enums/ChatSourceType'; +import { BotOptionFlags } from './enums/BotOptionFlags'; +import { UUID } from './classes/UUID'; +import { Vector3 } from './classes/Vector3'; +import { ChatEvent } from './events/ChatEvent'; +import { GroupInviteEvent } from './events/GroupInviteEvent'; +import { FriendRequestEvent } from './events/FriendRequestEvent'; +import { FriendResponseEvent } from './events/FriendResponseEvent'; +import { LureEvent } from './events/LureEvent'; +import { TeleportEvent } from './events/TeleportEvent'; +import { DisconnectEvent } from './events/DisconnectEvent'; +import { GroupChatEvent } from './events/GroupChatEvent'; +import { GroupChatSessionJoinEvent } from './events/GroupChatSessionJoinEvent'; +import { GroupChatSessionAgentListEvent } from './events/GroupChatSessionAgentListEvent'; +import { GroupNoticeEvent } from './events/GroupNoticeEvent'; +import { RegionInfoReplyEvent } from './events/RegionInfoReplyEvent'; +import { MapInfoReplyEvent } from './events/MapInfoReplyEvent'; +import { MapInfoRangeReplyEvent } from './events/MapInfoRangeReplyEvent'; +import { InventoryOfferedEvent } from './events/InventoryOfferedEvent'; +import { AgentFlags } from './enums/AgentFlags'; +import { ControlFlags } from './enums/ControlFlags'; +import { InventoryItemFlags } from './enums/InventoryItemFlags'; +import { LoginFlags } from './enums/LoginFlags'; +import { MessageFlags } from './enums/MessageFlags'; +import { PacketFlags } from './enums/PacketFlags'; +import { RegionProtocolFlags } from './enums/RegionProtocolFlags'; +import { SoundFlags } from './enums/SoundFlags'; +import { TeleportFlags } from './enums/TeleportFlags'; +import { CompressedFlags } from './enums/CompressedFlags'; +import { DecodeFlags } from './enums/DecodeFlags'; +import { ParcelInfoFlags } from './enums/ParcelInfoFlags'; +import { ParcelInfoReplyEvent } from './events/ParcelInfoReplyEvent'; +import { ScriptDialogEvent } from './events/ScriptDialogEvent'; +import { EventQueueStateChangeEvent } from './events/EventQueueStateChangeEvent'; +import { RegionFlags } from './enums/RegionFlags'; +import { Friend } from './classes/public/Friend'; +import { FriendOnlineEvent } from './events/FriendOnlineEvent'; +import { Avatar } from './classes/public/Avatar'; +import { RightsFlags } from './enums/RightsFlags'; +import { FriendRightsEvent } from './events/FriendRightsEvent'; +import { FriendRemovedEvent } from './events/FriendRemovedEvent'; +import { GlobalPosition } from './classes/public/interfaces/GlobalPosition'; +import { MapLocation } from './classes/public/interfaces/MapLocation'; +import { Vector2 } from './classes/Vector2'; +import { ParticleDataFlags } from './enums/ParticleDataFlags'; +import { TextureFlags } from './enums/TextureFlags'; +import { SourcePattern } from './enums/SourcePattern'; +import { BlendFunc } from './enums/BlendFunc'; +import { PCode } from './enums/PCode'; +import { Utils } from './classes/Utils'; +import { ObjectPhysicsDataEvent } from './events/ObjectPhysicsDataEvent'; +import { ParcelPropertiesEvent } from './events/ParcelPropertiesEvent'; +import { PrimFlags } from './enums/PrimFlags'; +import { TextureEntry } from './classes/TextureEntry'; +import { RegionEnvironment } from './classes/public/RegionEnvironment'; +import { Parcel } from './classes/public/Parcel'; +import { Material } from './classes/public/Material'; +import { GameObject } from './classes/public/GameObject'; +import { LightImageData } from './classes/public/LightImageData'; +import { LightData } from './classes/public/LightData'; +import { FlexibleData } from './classes/public/FlexibleData'; +import { MeshData } from './classes/public/MeshData'; +import { SculptData } from './classes/public/SculptData'; +import { SkyPreset } from './classes/public/interfaces/SkyPreset'; +import { WaterPreset } from './classes/public/interfaces/WaterPreset'; +import { NewObjectEvent } from './events/NewObjectEvent'; +import { ObjectKilledEvent } from './events/ObjectKilledEvent'; +import { ObjectUpdatedEvent } from './events/ObjectUpdatedEvent'; +import { GroupProfileReplyEvent } from './events/GroupProfileReplyEvent'; +import { AvatarPropertiesReplyEvent } from './events/AvatarPropertiesReplyEvent'; +import { Bumpiness } from './enums/Bumpiness'; +import { HoleType } from './enums/HoleType'; +import { LayerType } from './enums/LayerType'; +import { MappingType } from './enums/MappingType'; +import { PhysicsShapeType } from './enums/PhysicsShapeType'; +import { ParcelFlags } from './enums/ParcelFlags'; +import { ProfileShape } from './enums/ProfileShape'; +import { SculptType } from './enums/SculptType'; +import { Shininess } from './enums/Shininess'; +import { SimAccessFlags } from './enums/SimAccessFlags'; +import { TextureAnimFlags } from './enums/TextureAnimFlags'; +import { TransferStatus } from './enums/TransferStatus'; +import { LLWearable } from './classes/LLWearable'; +import { ParticleSystem } from './classes/ParticleSystem'; +import { ExtraParams } from './classes/public/ExtraParams'; +import { LLMesh } from './classes/public/LLMesh'; +import { FolderType } from './enums/FolderType'; export { Bot, diff --git a/lib/tests/packets.ts b/lib/tests/packets.ts index bcd7621..c3c70ff 100644 --- a/lib/tests/packets.ts +++ b/lib/tests/packets.ts @@ -1,8 +1,9 @@ import 'mocha'; import * as fs from 'fs'; import * as path from 'path'; -import {Packet} from '../classes/Packet'; -import {DecodeFlags, PacketFlags} from '..'; +import { Packet } from '../classes/Packet'; +import { DecodeFlags } from '../enums/DecodeFlags'; +import { PacketFlags } from '../enums/PacketFlags'; function compareArrays(arr1: any[], arr2: any[]) { @@ -14,7 +15,8 @@ function compareArrays(arr1: any[], arr2: any[]) ) { return true; - } else + } + else { return false; } diff --git a/lib/tests/uuid.ts b/lib/tests/uuid.ts index e7c5694..18f1891 100644 --- a/lib/tests/uuid.ts +++ b/lib/tests/uuid.ts @@ -1,7 +1,7 @@ import 'mocha'; import * as validator from 'validator'; import * as assert from 'assert'; -import {UUID} from '..'; +import { UUID } from '../classes/UUID'; describe('UUID', () => { diff --git a/lib/tsm/mat2.ts b/lib/tsm/mat2.ts index 852aaa6..5442437 100644 --- a/lib/tsm/mat2.ts +++ b/lib/tsm/mat2.ts @@ -30,7 +30,7 @@ */ -import {vec2} from './vec2'; +import { vec2 } from './vec2'; export class mat2 { diff --git a/lib/tsm/mat3.ts b/lib/tsm/mat3.ts index 9a8bce7..127817e 100644 --- a/lib/tsm/mat3.ts +++ b/lib/tsm/mat3.ts @@ -32,10 +32,10 @@ /// -import {vec3} from './vec3'; -import {quat} from './quat'; -import {mat4} from './mat4'; -import {vec2} from './vec2'; +import { vec3 } from './vec3'; +import { quat } from './quat'; +import { mat4 } from './mat4'; +import { vec2 } from './vec2'; export class mat3 { diff --git a/lib/tsm/mat4.ts b/lib/tsm/mat4.ts index db3cc5b..b9a97f1 100644 --- a/lib/tsm/mat4.ts +++ b/lib/tsm/mat4.ts @@ -32,9 +32,9 @@ /// -import {vec4} from './vec4'; -import {vec3} from './vec3'; -import {mat3} from './mat3'; +import { vec4 } from './vec4'; +import { vec3 } from './vec3'; +import { mat3 } from './mat3'; export class mat4 { diff --git a/lib/tsm/quat.ts b/lib/tsm/quat.ts index 925ac3a..c72e1c8 100644 --- a/lib/tsm/quat.ts +++ b/lib/tsm/quat.ts @@ -32,9 +32,9 @@ /// -import {mat4} from './mat4'; -import {mat3} from './mat3'; -import {vec3} from './vec3'; +import { mat4 } from './mat4'; +import { mat3 } from './mat3'; +import { vec3 } from './vec3'; export class quat { diff --git a/lib/tsm/vec2.ts b/lib/tsm/vec2.ts index 340ddfb..ff49195 100644 --- a/lib/tsm/vec2.ts +++ b/lib/tsm/vec2.ts @@ -26,9 +26,9 @@ /// -import {mat3} from './mat3'; -import {mat2} from './mat2'; -import {vec3} from './vec3'; +import { mat3 } from './mat3'; +import { mat2 } from './mat2'; +import { vec3 } from './vec3'; export class vec2 { diff --git a/lib/tsm/vec3.ts b/lib/tsm/vec3.ts index d1d437a..f06176b 100644 --- a/lib/tsm/vec3.ts +++ b/lib/tsm/vec3.ts @@ -33,8 +33,8 @@ /// -import {mat3} from './mat3'; -import {quat} from './quat'; +import { mat3 } from './mat3'; +import { quat } from './quat'; export class vec3 { diff --git a/lib/tsm/vec4.ts b/lib/tsm/vec4.ts index cc4308d..da8eb61 100644 --- a/lib/tsm/vec4.ts +++ b/lib/tsm/vec4.ts @@ -32,7 +32,7 @@ /// -import {mat4} from './mat4'; +import { mat4 } from './mat4'; export class vec4 { diff --git a/tools/msg_template.json b/tools/msg_template.json index 3e420f3..6549e29 100644 --- a/tools/msg_template.json +++ b/tools/msg_template.json @@ -1 +1,26251 @@ -[{"name":"TestMessage","frequency":"Low","id":"1","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"TestBlock1","type":"Single","count":1,"params":[{"name":"Test1","type":"U32","size":1}]},{"name":"NeighborBlock","type":"Multiple","count":"4","params":[{"name":"Test0","type":"U32","size":1},{"name":"Test1","type":"U32","size":1},{"name":"Test2","type":"U32","size":1}]}]},{"name":"PacketAck","frequency":"Fixed","id":"0xFFFFFFFB","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"Packets","type":"Variable","count":1,"params":[{"name":"ID","type":"U32","size":1}]}]},{"name":"OpenCircuit","frequency":"Fixed","id":"0xFFFFFFFC","flags":["NotTrusted","Unencoded","UDPBlackListed"],"blocks":[{"name":"CircuitInfo","type":"Single","count":1,"params":[{"name":"IP","type":"IPADDR","size":1},{"name":"Port","type":"IPPORT","size":1}]}]},{"name":"CloseCircuit","frequency":"Fixed","id":"0xFFFFFFFD","flags":["NotTrusted","Unencoded"],"blocks":[]},{"name":"StartPingCheck","frequency":"High","id":"1","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"PingID","type":"Single","count":1,"params":[{"name":"PingID","type":"U8","size":1},{"name":"OldestUnacked","type":"U32","size":1}]}]},{"name":"CompletePingCheck","frequency":"High","id":"2","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"PingID","type":"Single","count":1,"params":[{"name":"PingID","type":"U8","size":1}]}]},{"name":"AddCircuitCode","frequency":"Low","id":"2","flags":["Trusted","Unencoded"],"blocks":[{"name":"CircuitCode","type":"Single","count":1,"params":[{"name":"Code","type":"U32","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"AgentID","type":"LLUUID","size":1}]}]},{"name":"UseCircuitCode","frequency":"Low","id":"3","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"CircuitCode","type":"Single","count":1,"params":[{"name":"Code","type":"U32","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"ID","type":"LLUUID","size":1}]}]},{"name":"NeighborList","frequency":"High","id":"3","flags":["Trusted","Unencoded"],"blocks":[{"name":"NeighborBlock","type":"Multiple","count":"4","params":[{"name":"IP","type":"IPADDR","size":1},{"name":"Port","type":"IPPORT","size":1},{"name":"PublicIP","type":"IPADDR","size":1},{"name":"PublicPort","type":"IPPORT","size":1},{"name":"RegionID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"SimAccess","type":"U8","size":1}]}]},{"name":"AvatarTextureUpdate","frequency":"Low","id":"4","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"TexturesChanged","type":"BOOL","size":1}]},{"name":"WearableData","type":"Variable","count":1,"params":[{"name":"CacheID","type":"LLUUID","size":1},{"name":"TextureIndex","type":"U8","size":1},{"name":"HostName","type":"Variable","size":"1"}]},{"name":"TextureData","type":"Variable","count":1,"params":[{"name":"TextureID","type":"LLUUID","size":1}]}]},{"name":"SimulatorMapUpdate","frequency":"Low","id":"5","flags":["Trusted","Unencoded"],"blocks":[{"name":"MapData","type":"Single","count":1,"params":[{"name":"Flags","type":"U32","size":1}]}]},{"name":"SimulatorSetMap","frequency":"Low","id":"6","flags":["Trusted","Unencoded"],"blocks":[{"name":"MapData","type":"Single","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1},{"name":"Type","type":"S32","size":1},{"name":"MapImage","type":"LLUUID","size":1}]}]},{"name":"SubscribeLoad","frequency":"Low","id":"7","flags":["Trusted","Unencoded"],"blocks":[]},{"name":"UnsubscribeLoad","frequency":"Low","id":"8","flags":["Trusted","Unencoded"],"blocks":[]},{"name":"SimulatorReady","frequency":"Low","id":"9","flags":["Trusted","Zerocoded"],"blocks":[{"name":"SimulatorBlock","type":"Single","count":1,"params":[{"name":"SimName","type":"Variable","size":"1"},{"name":"SimAccess","type":"U8","size":1},{"name":"RegionFlags","type":"U32","size":1},{"name":"RegionID","type":"LLUUID","size":1},{"name":"EstateID","type":"U32","size":1},{"name":"ParentEstateID","type":"U32","size":1}]},{"name":"TelehubBlock","type":"Single","count":1,"params":[{"name":"HasTelehub","type":"BOOL","size":1},{"name":"TelehubPos","type":"LLVector3","size":1}]}]},{"name":"TelehubInfo","frequency":"Low","id":"10","flags":["Trusted","Unencoded"],"blocks":[{"name":"TelehubBlock","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"ObjectName","type":"Variable","size":"1"},{"name":"TelehubPos","type":"LLVector3","size":1},{"name":"TelehubRot","type":"LLQuaternion","size":1}]},{"name":"SpawnPointBlock","type":"Variable","count":1,"params":[{"name":"SpawnPointPos","type":"LLVector3","size":1}]}]},{"name":"SimulatorPresentAtLocation","frequency":"Low","id":"11","flags":["Trusted","Unencoded"],"blocks":[{"name":"SimulatorPublicHostBlock","type":"Single","count":1,"params":[{"name":"Port","type":"IPPORT","size":1},{"name":"SimulatorIP","type":"IPADDR","size":1},{"name":"GridX","type":"U32","size":1},{"name":"GridY","type":"U32","size":1}]},{"name":"NeighborBlock","type":"Multiple","count":"4","params":[{"name":"IP","type":"IPADDR","size":1},{"name":"Port","type":"IPPORT","size":1}]},{"name":"SimulatorBlock","type":"Single","count":1,"params":[{"name":"SimName","type":"Variable","size":"1"},{"name":"SimAccess","type":"U8","size":1},{"name":"RegionFlags","type":"U32","size":1},{"name":"RegionID","type":"LLUUID","size":1},{"name":"EstateID","type":"U32","size":1},{"name":"ParentEstateID","type":"U32","size":1}]},{"name":"TelehubBlock","type":"Variable","count":1,"params":[{"name":"HasTelehub","type":"BOOL","size":1},{"name":"TelehubPos","type":"LLVector3","size":1}]}]},{"name":"SimulatorLoad","frequency":"Low","id":"12","flags":["Trusted","Unencoded"],"blocks":[{"name":"SimulatorLoad","type":"Single","count":1,"params":[{"name":"TimeDilation","type":"F32","size":1},{"name":"AgentCount","type":"S32","size":1},{"name":"CanAcceptAgents","type":"BOOL","size":1}]},{"name":"AgentList","type":"Variable","count":1,"params":[{"name":"CircuitCode","type":"U32","size":1},{"name":"X","type":"U8","size":1},{"name":"Y","type":"U8","size":1}]}]},{"name":"SimulatorShutdownRequest","frequency":"Low","id":"13","flags":["Trusted","Unencoded"],"blocks":[]},{"name":"RegionPresenceRequestByRegionID","frequency":"Low","id":"14","flags":["Trusted","Unencoded"],"blocks":[{"name":"RegionData","type":"Variable","count":1,"params":[{"name":"RegionID","type":"LLUUID","size":1}]}]},{"name":"RegionPresenceRequestByHandle","frequency":"Low","id":"15","flags":["Trusted","Unencoded"],"blocks":[{"name":"RegionData","type":"Variable","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1}]}]},{"name":"RegionPresenceResponse","frequency":"Low","id":"16","flags":["Trusted","Zerocoded"],"blocks":[{"name":"RegionData","type":"Variable","count":1,"params":[{"name":"RegionID","type":"LLUUID","size":1},{"name":"RegionHandle","type":"U64","size":1},{"name":"InternalRegionIP","type":"IPADDR","size":1},{"name":"ExternalRegionIP","type":"IPADDR","size":1},{"name":"RegionPort","type":"IPPORT","size":1},{"name":"ValidUntil","type":"F64","size":1},{"name":"Message","type":"Variable","size":"1"}]}]},{"name":"UpdateSimulator","frequency":"Low","id":"17","flags":["Trusted","Unencoded"],"blocks":[{"name":"SimulatorInfo","type":"Single","count":1,"params":[{"name":"RegionID","type":"LLUUID","size":1},{"name":"SimName","type":"Variable","size":"1"},{"name":"EstateID","type":"U32","size":1},{"name":"SimAccess","type":"U8","size":1}]}]},{"name":"LogDwellTime","frequency":"Low","id":"18","flags":["Trusted","Unencoded"],"blocks":[{"name":"DwellInfo","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"Duration","type":"F32","size":1},{"name":"SimName","type":"Variable","size":"1"},{"name":"RegionX","type":"U32","size":1},{"name":"RegionY","type":"U32","size":1},{"name":"AvgAgentsInView","type":"U8","size":1},{"name":"AvgViewerFPS","type":"U8","size":1}]}]},{"name":"FeatureDisabled","frequency":"Low","id":"19","flags":["Trusted","Unencoded"],"blocks":[{"name":"FailureInfo","type":"Single","count":1,"params":[{"name":"ErrorMessage","type":"Variable","size":"1"},{"name":"AgentID","type":"LLUUID","size":1},{"name":"TransactionID","type":"LLUUID","size":1}]}]},{"name":"LogFailedMoneyTransaction","frequency":"Low","id":"20","flags":["Trusted","Unencoded"],"blocks":[{"name":"TransactionData","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1},{"name":"TransactionTime","type":"U32","size":1},{"name":"TransactionType","type":"S32","size":1},{"name":"SourceID","type":"LLUUID","size":1},{"name":"DestID","type":"LLUUID","size":1},{"name":"Flags","type":"U8","size":1},{"name":"Amount","type":"S32","size":1},{"name":"SimulatorIP","type":"IPADDR","size":1},{"name":"GridX","type":"U32","size":1},{"name":"GridY","type":"U32","size":1},{"name":"FailureType","type":"U8","size":1}]}]},{"name":"UserReportInternal","frequency":"Low","id":"21","flags":["Trusted","Zerocoded"],"blocks":[{"name":"ReportData","type":"Single","count":1,"params":[{"name":"ReportType","type":"U8","size":1},{"name":"Category","type":"U8","size":1},{"name":"ReporterID","type":"LLUUID","size":1},{"name":"ViewerPosition","type":"LLVector3","size":1},{"name":"AgentPosition","type":"LLVector3","size":1},{"name":"ScreenshotID","type":"LLUUID","size":1},{"name":"ObjectID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"LastOwnerID","type":"LLUUID","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"RegionID","type":"LLUUID","size":1},{"name":"AbuserID","type":"LLUUID","size":1},{"name":"AbuseRegionName","type":"Variable","size":"1"},{"name":"AbuseRegionID","type":"LLUUID","size":1},{"name":"Summary","type":"Variable","size":"1"},{"name":"Details","type":"Variable","size":"2"},{"name":"VersionString","type":"Variable","size":"1"}]}]},{"name":"SetSimStatusInDatabase","frequency":"Low","id":"22","flags":["Trusted","Unencoded"],"blocks":[{"name":"Data","type":"Single","count":1,"params":[{"name":"RegionID","type":"LLUUID","size":1},{"name":"HostName","type":"Variable","size":"1"},{"name":"X","type":"S32","size":1},{"name":"Y","type":"S32","size":1},{"name":"PID","type":"S32","size":1},{"name":"AgentCount","type":"S32","size":1},{"name":"TimeToLive","type":"S32","size":1},{"name":"Status","type":"Variable","size":"1"}]}]},{"name":"SetSimPresenceInDatabase","frequency":"Low","id":"23","flags":["Trusted","Unencoded","UDPDeprecated"],"blocks":[{"name":"SimData","type":"Single","count":1,"params":[{"name":"RegionID","type":"LLUUID","size":1},{"name":"HostName","type":"Variable","size":"1"},{"name":"GridX","type":"U32","size":1},{"name":"GridY","type":"U32","size":1},{"name":"PID","type":"S32","size":1},{"name":"AgentCount","type":"S32","size":1},{"name":"TimeToLive","type":"S32","size":1},{"name":"Status","type":"Variable","size":"1"}]}]},{"name":"EconomyDataRequest","frequency":"Low","id":"24","flags":["NotTrusted","Unencoded"],"blocks":[]},{"name":"EconomyData","frequency":"Low","id":"25","flags":["Trusted","Zerocoded"],"blocks":[{"name":"Info","type":"Single","count":1,"params":[{"name":"ObjectCapacity","type":"S32","size":1},{"name":"ObjectCount","type":"S32","size":1},{"name":"PriceEnergyUnit","type":"S32","size":1},{"name":"PriceObjectClaim","type":"S32","size":1},{"name":"PricePublicObjectDecay","type":"S32","size":1},{"name":"PricePublicObjectDelete","type":"S32","size":1},{"name":"PriceParcelClaim","type":"S32","size":1},{"name":"PriceParcelClaimFactor","type":"F32","size":1},{"name":"PriceUpload","type":"S32","size":1},{"name":"PriceRentLight","type":"S32","size":1},{"name":"TeleportMinPrice","type":"S32","size":1},{"name":"TeleportPriceExponent","type":"F32","size":1},{"name":"EnergyEfficiency","type":"F32","size":1},{"name":"PriceObjectRent","type":"F32","size":1},{"name":"PriceObjectScaleFactor","type":"F32","size":1},{"name":"PriceParcelRent","type":"S32","size":1},{"name":"PriceGroupCreate","type":"S32","size":1}]}]},{"name":"AvatarPickerRequest","frequency":"Low","id":"26","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"QueryID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"Name","type":"Variable","size":"1"}]}]},{"name":"AvatarPickerRequestBackend","frequency":"Low","id":"27","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"QueryID","type":"LLUUID","size":1},{"name":"GodLevel","type":"U8","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"Name","type":"Variable","size":"1"}]}]},{"name":"AvatarPickerReply","frequency":"Low","id":"28","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"QueryID","type":"LLUUID","size":1}]},{"name":"Data","type":"Variable","count":1,"params":[{"name":"AvatarID","type":"LLUUID","size":1},{"name":"FirstName","type":"Variable","size":"1"},{"name":"LastName","type":"Variable","size":"1"}]}]},{"name":"PlacesQuery","frequency":"Low","id":"29","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"QueryID","type":"LLUUID","size":1}]},{"name":"TransactionData","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryText","type":"Variable","size":"1"},{"name":"QueryFlags","type":"U32","size":1},{"name":"Category","type":"S8","size":1},{"name":"SimName","type":"Variable","size":"1"}]}]},{"name":"PlacesReply","frequency":"Low","id":"30","flags":["Trusted","Zerocoded","UDPDeprecated"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"QueryID","type":"LLUUID","size":1}]},{"name":"TransactionData","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Variable","count":1,"params":[{"name":"OwnerID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Desc","type":"Variable","size":"1"},{"name":"ActualArea","type":"S32","size":1},{"name":"BillableArea","type":"S32","size":1},{"name":"Flags","type":"U8","size":1},{"name":"GlobalX","type":"F32","size":1},{"name":"GlobalY","type":"F32","size":1},{"name":"GlobalZ","type":"F32","size":1},{"name":"SimName","type":"Variable","size":"1"},{"name":"SnapshotID","type":"LLUUID","size":1},{"name":"Dwell","type":"F32","size":1},{"name":"Price","type":"S32","size":1}]}]},{"name":"DirFindQuery","frequency":"Low","id":"31","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1},{"name":"QueryText","type":"Variable","size":"1"},{"name":"QueryFlags","type":"U32","size":1},{"name":"QueryStart","type":"S32","size":1}]}]},{"name":"DirFindQueryBackend","frequency":"Low","id":"32","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1},{"name":"QueryText","type":"Variable","size":"1"},{"name":"QueryFlags","type":"U32","size":1},{"name":"QueryStart","type":"S32","size":1},{"name":"EstateID","type":"U32","size":1},{"name":"Godlike","type":"BOOL","size":1}]}]},{"name":"DirPlacesQuery","frequency":"Low","id":"33","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1},{"name":"QueryText","type":"Variable","size":"1"},{"name":"QueryFlags","type":"U32","size":1},{"name":"Category","type":"S8","size":1},{"name":"SimName","type":"Variable","size":"1"},{"name":"QueryStart","type":"S32","size":1}]}]},{"name":"DirPlacesQueryBackend","frequency":"Low","id":"34","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1},{"name":"QueryText","type":"Variable","size":"1"},{"name":"QueryFlags","type":"U32","size":1},{"name":"Category","type":"S8","size":1},{"name":"SimName","type":"Variable","size":"1"},{"name":"EstateID","type":"U32","size":1},{"name":"Godlike","type":"BOOL","size":1},{"name":"QueryStart","type":"S32","size":1}]}]},{"name":"DirPlacesReply","frequency":"Low","id":"35","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Variable","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1}]},{"name":"QueryReplies","type":"Variable","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"ForSale","type":"BOOL","size":1},{"name":"Auction","type":"BOOL","size":1},{"name":"Dwell","type":"F32","size":1}]},{"name":"StatusData","type":"Variable","count":1,"params":[{"name":"Status","type":"U32","size":1}]}]},{"name":"DirPeopleReply","frequency":"Low","id":"36","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1}]},{"name":"QueryReplies","type":"Variable","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"FirstName","type":"Variable","size":"1"},{"name":"LastName","type":"Variable","size":"1"},{"name":"Group","type":"Variable","size":"1"},{"name":"Online","type":"BOOL","size":1},{"name":"Reputation","type":"S32","size":1}]}]},{"name":"DirEventsReply","frequency":"Low","id":"37","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1}]},{"name":"QueryReplies","type":"Variable","count":1,"params":[{"name":"OwnerID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"EventID","type":"U32","size":1},{"name":"Date","type":"Variable","size":"1"},{"name":"UnixTime","type":"U32","size":1},{"name":"EventFlags","type":"U32","size":1}]},{"name":"StatusData","type":"Variable","count":1,"params":[{"name":"Status","type":"U32","size":1}]}]},{"name":"DirGroupsReply","frequency":"Low","id":"38","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1}]},{"name":"QueryReplies","type":"Variable","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"GroupName","type":"Variable","size":"1"},{"name":"Members","type":"S32","size":1},{"name":"SearchOrder","type":"F32","size":1}]}]},{"name":"DirClassifiedQuery","frequency":"Low","id":"39","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1},{"name":"QueryText","type":"Variable","size":"1"},{"name":"QueryFlags","type":"U32","size":1},{"name":"Category","type":"U32","size":1},{"name":"QueryStart","type":"S32","size":1}]}]},{"name":"DirClassifiedQueryBackend","frequency":"Low","id":"40","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1},{"name":"QueryText","type":"Variable","size":"1"},{"name":"QueryFlags","type":"U32","size":1},{"name":"Category","type":"U32","size":1},{"name":"EstateID","type":"U32","size":1},{"name":"Godlike","type":"BOOL","size":1},{"name":"QueryStart","type":"S32","size":1}]}]},{"name":"DirClassifiedReply","frequency":"Low","id":"41","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1}]},{"name":"QueryReplies","type":"Variable","count":1,"params":[{"name":"ClassifiedID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"ClassifiedFlags","type":"U8","size":1},{"name":"CreationDate","type":"U32","size":1},{"name":"ExpirationDate","type":"U32","size":1},{"name":"PriceForListing","type":"S32","size":1}]},{"name":"StatusData","type":"Variable","count":1,"params":[{"name":"Status","type":"U32","size":1}]}]},{"name":"AvatarClassifiedReply","frequency":"Low","id":"42","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"TargetID","type":"LLUUID","size":1}]},{"name":"Data","type":"Variable","count":1,"params":[{"name":"ClassifiedID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"}]}]},{"name":"ClassifiedInfoRequest","frequency":"Low","id":"43","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"ClassifiedID","type":"LLUUID","size":1}]}]},{"name":"ClassifiedInfoReply","frequency":"Low","id":"44","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"ClassifiedID","type":"LLUUID","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"CreationDate","type":"U32","size":1},{"name":"ExpirationDate","type":"U32","size":1},{"name":"Category","type":"U32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Desc","type":"Variable","size":"2"},{"name":"ParcelID","type":"LLUUID","size":1},{"name":"ParentEstate","type":"U32","size":1},{"name":"SnapshotID","type":"LLUUID","size":1},{"name":"SimName","type":"Variable","size":"1"},{"name":"PosGlobal","type":"LLVector3d","size":1},{"name":"ParcelName","type":"Variable","size":"1"},{"name":"ClassifiedFlags","type":"U8","size":1},{"name":"PriceForListing","type":"S32","size":1}]}]},{"name":"ClassifiedInfoUpdate","frequency":"Low","id":"45","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"ClassifiedID","type":"LLUUID","size":1},{"name":"Category","type":"U32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Desc","type":"Variable","size":"2"},{"name":"ParcelID","type":"LLUUID","size":1},{"name":"ParentEstate","type":"U32","size":1},{"name":"SnapshotID","type":"LLUUID","size":1},{"name":"PosGlobal","type":"LLVector3d","size":1},{"name":"ClassifiedFlags","type":"U8","size":1},{"name":"PriceForListing","type":"S32","size":1}]}]},{"name":"ClassifiedDelete","frequency":"Low","id":"46","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"ClassifiedID","type":"LLUUID","size":1}]}]},{"name":"ClassifiedGodDelete","frequency":"Low","id":"47","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"ClassifiedID","type":"LLUUID","size":1},{"name":"QueryID","type":"LLUUID","size":1}]}]},{"name":"DirLandQuery","frequency":"Low","id":"48","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1},{"name":"QueryFlags","type":"U32","size":1},{"name":"SearchType","type":"U32","size":1},{"name":"Price","type":"S32","size":1},{"name":"Area","type":"S32","size":1},{"name":"QueryStart","type":"S32","size":1}]}]},{"name":"DirLandQueryBackend","frequency":"Low","id":"49","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1},{"name":"QueryFlags","type":"U32","size":1},{"name":"SearchType","type":"U32","size":1},{"name":"Price","type":"S32","size":1},{"name":"Area","type":"S32","size":1},{"name":"QueryStart","type":"S32","size":1},{"name":"EstateID","type":"U32","size":1},{"name":"Godlike","type":"BOOL","size":1}]}]},{"name":"DirLandReply","frequency":"Low","id":"50","flags":["Trusted","Zerocoded","UDPDeprecated"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1}]},{"name":"QueryReplies","type":"Variable","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Auction","type":"BOOL","size":1},{"name":"ForSale","type":"BOOL","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"ActualArea","type":"S32","size":1}]}]},{"name":"DirPopularQuery","frequency":"Low","id":"51","flags":["NotTrusted","Zerocoded","Deprecated"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1},{"name":"QueryFlags","type":"U32","size":1}]}]},{"name":"DirPopularQueryBackend","frequency":"Low","id":"52","flags":["Trusted","Zerocoded","Deprecated"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1},{"name":"QueryFlags","type":"U32","size":1},{"name":"EstateID","type":"U32","size":1},{"name":"Godlike","type":"BOOL","size":1}]}]},{"name":"DirPopularReply","frequency":"Low","id":"53","flags":["Trusted","Zerocoded","Deprecated"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1}]},{"name":"QueryReplies","type":"Variable","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Dwell","type":"F32","size":1}]}]},{"name":"ParcelInfoRequest","frequency":"Low","id":"54","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1}]}]},{"name":"ParcelInfoReply","frequency":"Low","id":"55","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Desc","type":"Variable","size":"1"},{"name":"ActualArea","type":"S32","size":1},{"name":"BillableArea","type":"S32","size":1},{"name":"Flags","type":"U8","size":1},{"name":"GlobalX","type":"F32","size":1},{"name":"GlobalY","type":"F32","size":1},{"name":"GlobalZ","type":"F32","size":1},{"name":"SimName","type":"Variable","size":"1"},{"name":"SnapshotID","type":"LLUUID","size":1},{"name":"Dwell","type":"F32","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"AuctionID","type":"S32","size":1}]}]},{"name":"ParcelObjectOwnersRequest","frequency":"Low","id":"56","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"LocalID","type":"S32","size":1}]}]},{"name":"ParcelObjectOwnersReply","frequency":"Low","id":"57","flags":["Trusted","Zerocoded","UDPDeprecated"],"blocks":[{"name":"Data","type":"Variable","count":1,"params":[{"name":"OwnerID","type":"LLUUID","size":1},{"name":"IsGroupOwned","type":"BOOL","size":1},{"name":"Count","type":"S32","size":1},{"name":"OnlineStatus","type":"BOOL","size":1}]}]},{"name":"GroupNoticesListRequest","frequency":"Low","id":"58","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1}]}]},{"name":"GroupNoticesListReply","frequency":"Low","id":"59","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"Data","type":"Variable","count":1,"params":[{"name":"NoticeID","type":"LLUUID","size":1},{"name":"Timestamp","type":"U32","size":1},{"name":"FromName","type":"Variable","size":"2"},{"name":"Subject","type":"Variable","size":"2"},{"name":"HasAttachment","type":"BOOL","size":1},{"name":"AssetType","type":"U8","size":1}]}]},{"name":"GroupNoticeRequest","frequency":"Low","id":"60","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"GroupNoticeID","type":"LLUUID","size":1}]}]},{"name":"GroupNoticeAdd","frequency":"Low","id":"61","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"MessageBlock","type":"Single","count":1,"params":[{"name":"ToGroupID","type":"LLUUID","size":1},{"name":"ID","type":"LLUUID","size":1},{"name":"Dialog","type":"U8","size":1},{"name":"FromAgentName","type":"Variable","size":"1"},{"name":"Message","type":"Variable","size":"2"},{"name":"BinaryBucket","type":"Variable","size":"2"}]}]},{"name":"TeleportRequest","frequency":"Low","id":"62","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Info","type":"Single","count":1,"params":[{"name":"RegionID","type":"LLUUID","size":1},{"name":"Position","type":"LLVector3","size":1},{"name":"LookAt","type":"LLVector3","size":1}]}]},{"name":"TeleportLocationRequest","frequency":"Low","id":"63","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Info","type":"Single","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1},{"name":"Position","type":"LLVector3","size":1},{"name":"LookAt","type":"LLVector3","size":1}]}]},{"name":"TeleportLocal","frequency":"Low","id":"64","flags":["Trusted","Unencoded"],"blocks":[{"name":"Info","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"LocationID","type":"U32","size":1},{"name":"Position","type":"LLVector3","size":1},{"name":"LookAt","type":"LLVector3","size":1},{"name":"TeleportFlags","type":"U32","size":1}]}]},{"name":"TeleportLandmarkRequest","frequency":"Low","id":"65","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"Info","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"LandmarkID","type":"LLUUID","size":1}]}]},{"name":"TeleportProgress","frequency":"Low","id":"66","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"Info","type":"Single","count":1,"params":[{"name":"TeleportFlags","type":"U32","size":1},{"name":"Message","type":"Variable","size":"1"}]}]},{"name":"DataHomeLocationRequest","frequency":"Low","id":"67","flags":["Trusted","Zerocoded"],"blocks":[{"name":"Info","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"KickedFromEstateID","type":"U32","size":1}]},{"name":"AgentInfo","type":"Single","count":1,"params":[{"name":"AgentEffectiveMaturity","type":"U32","size":1}]}]},{"name":"DataHomeLocationReply","frequency":"Low","id":"68","flags":["Trusted","Unencoded"],"blocks":[{"name":"Info","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"RegionHandle","type":"U64","size":1},{"name":"Position","type":"LLVector3","size":1},{"name":"LookAt","type":"LLVector3","size":1}]}]},{"name":"TeleportFinish","frequency":"Low","id":"69","flags":["Trusted","Unencoded","UDPBlackListed"],"blocks":[{"name":"Info","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"LocationID","type":"U32","size":1},{"name":"SimIP","type":"IPADDR","size":1},{"name":"SimPort","type":"IPPORT","size":1},{"name":"RegionHandle","type":"U64","size":1},{"name":"SeedCapability","type":"Variable","size":"2"},{"name":"SimAccess","type":"U8","size":1},{"name":"TeleportFlags","type":"U32","size":1}]}]},{"name":"StartLure","frequency":"Low","id":"70","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Info","type":"Single","count":1,"params":[{"name":"LureType","type":"U8","size":1},{"name":"Message","type":"Variable","size":"1"}]},{"name":"TargetData","type":"Variable","count":1,"params":[{"name":"TargetID","type":"LLUUID","size":1}]}]},{"name":"TeleportLureRequest","frequency":"Low","id":"71","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"Info","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"LureID","type":"LLUUID","size":1},{"name":"TeleportFlags","type":"U32","size":1}]}]},{"name":"TeleportCancel","frequency":"Low","id":"72","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"Info","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"TeleportStart","frequency":"Low","id":"73","flags":["Trusted","Unencoded"],"blocks":[{"name":"Info","type":"Single","count":1,"params":[{"name":"TeleportFlags","type":"U32","size":1}]}]},{"name":"TeleportFailed","frequency":"Low","id":"74","flags":["Trusted","Unencoded"],"blocks":[{"name":"Info","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"Reason","type":"Variable","size":"1"}]},{"name":"AlertInfo","type":"Variable","count":1,"params":[{"name":"Message","type":"Variable","size":"1"},{"name":"ExtraParams","type":"Variable","size":"1"}]}]},{"name":"Undo","frequency":"Low","id":"75","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1}]}]},{"name":"Redo","frequency":"Low","id":"76","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1}]}]},{"name":"UndoLand","frequency":"Low","id":"77","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"AgentPause","frequency":"Low","id":"78","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"SerialNum","type":"U32","size":1}]}]},{"name":"AgentResume","frequency":"Low","id":"79","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"SerialNum","type":"U32","size":1}]}]},{"name":"AgentUpdate","frequency":"High","id":"4","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"BodyRotation","type":"LLQuaternion","size":1},{"name":"HeadRotation","type":"LLQuaternion","size":1},{"name":"State","type":"U8","size":1},{"name":"CameraCenter","type":"LLVector3","size":1},{"name":"CameraAtAxis","type":"LLVector3","size":1},{"name":"CameraLeftAxis","type":"LLVector3","size":1},{"name":"CameraUpAxis","type":"LLVector3","size":1},{"name":"Far","type":"F32","size":1},{"name":"ControlFlags","type":"U32","size":1},{"name":"Flags","type":"U8","size":1}]}]},{"name":"ChatFromViewer","frequency":"Low","id":"80","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ChatData","type":"Single","count":1,"params":[{"name":"Message","type":"Variable","size":"2"},{"name":"Type","type":"U8","size":1},{"name":"Channel","type":"S32","size":1}]}]},{"name":"AgentThrottle","frequency":"Low","id":"81","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"CircuitCode","type":"U32","size":1}]},{"name":"Throttle","type":"Single","count":1,"params":[{"name":"GenCounter","type":"U32","size":1},{"name":"Throttles","type":"Variable","size":"1"}]}]},{"name":"AgentFOV","frequency":"Low","id":"82","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"CircuitCode","type":"U32","size":1}]},{"name":"FOVBlock","type":"Single","count":1,"params":[{"name":"GenCounter","type":"U32","size":1},{"name":"VerticalAngle","type":"F32","size":1}]}]},{"name":"AgentHeightWidth","frequency":"Low","id":"83","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"CircuitCode","type":"U32","size":1}]},{"name":"HeightWidthBlock","type":"Single","count":1,"params":[{"name":"GenCounter","type":"U32","size":1},{"name":"Height","type":"U16","size":1},{"name":"Width","type":"U16","size":1}]}]},{"name":"AgentSetAppearance","frequency":"Low","id":"84","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"SerialNum","type":"U32","size":1},{"name":"Size","type":"LLVector3","size":1}]},{"name":"WearableData","type":"Variable","count":1,"params":[{"name":"CacheID","type":"LLUUID","size":1},{"name":"TextureIndex","type":"U8","size":1}]},{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"TextureEntry","type":"Variable","size":"2"}]},{"name":"VisualParam","type":"Variable","count":1,"params":[{"name":"ParamValue","type":"U8","size":1}]}]},{"name":"AgentAnimation","frequency":"High","id":"5","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"AnimationList","type":"Variable","count":1,"params":[{"name":"AnimID","type":"LLUUID","size":1},{"name":"StartAnim","type":"BOOL","size":1}]},{"name":"PhysicalAvatarEventList","type":"Variable","count":1,"params":[{"name":"TypeData","type":"Variable","size":"1"}]}]},{"name":"AgentRequestSit","frequency":"High","id":"6","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"TargetObject","type":"Single","count":1,"params":[{"name":"TargetID","type":"LLUUID","size":1},{"name":"Offset","type":"LLVector3","size":1}]}]},{"name":"AgentSit","frequency":"High","id":"7","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"AgentQuitCopy","frequency":"Low","id":"85","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"FuseBlock","type":"Single","count":1,"params":[{"name":"ViewerCircuitCode","type":"U32","size":1}]}]},{"name":"RequestImage","frequency":"High","id":"8","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"RequestImage","type":"Variable","count":1,"params":[{"name":"Image","type":"LLUUID","size":1},{"name":"DiscardLevel","type":"S8","size":1},{"name":"DownloadPriority","type":"F32","size":1},{"name":"Packet","type":"U32","size":1},{"name":"Type","type":"U8","size":1}]}]},{"name":"ImageNotInDatabase","frequency":"Low","id":"86","flags":["Trusted","Unencoded"],"blocks":[{"name":"ImageID","type":"Single","count":1,"params":[{"name":"ID","type":"LLUUID","size":1}]}]},{"name":"RebakeAvatarTextures","frequency":"Low","id":"87","flags":["Trusted","Unencoded"],"blocks":[{"name":"TextureData","type":"Single","count":1,"params":[{"name":"TextureID","type":"LLUUID","size":1}]}]},{"name":"SetAlwaysRun","frequency":"Low","id":"88","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"AlwaysRun","type":"BOOL","size":1}]}]},{"name":"ObjectAdd","frequency":"Medium","id":"1","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"PCode","type":"U8","size":1},{"name":"Material","type":"U8","size":1},{"name":"AddFlags","type":"U32","size":1},{"name":"PathCurve","type":"U8","size":1},{"name":"ProfileCurve","type":"U8","size":1},{"name":"PathBegin","type":"U16","size":1},{"name":"PathEnd","type":"U16","size":1},{"name":"PathScaleX","type":"U8","size":1},{"name":"PathScaleY","type":"U8","size":1},{"name":"PathShearX","type":"U8","size":1},{"name":"PathShearY","type":"U8","size":1},{"name":"PathTwist","type":"S8","size":1},{"name":"PathTwistBegin","type":"S8","size":1},{"name":"PathRadiusOffset","type":"S8","size":1},{"name":"PathTaperX","type":"S8","size":1},{"name":"PathTaperY","type":"S8","size":1},{"name":"PathRevolutions","type":"U8","size":1},{"name":"PathSkew","type":"S8","size":1},{"name":"ProfileBegin","type":"U16","size":1},{"name":"ProfileEnd","type":"U16","size":1},{"name":"ProfileHollow","type":"U16","size":1},{"name":"BypassRaycast","type":"U8","size":1},{"name":"RayStart","type":"LLVector3","size":1},{"name":"RayEnd","type":"LLVector3","size":1},{"name":"RayTargetID","type":"LLUUID","size":1},{"name":"RayEndIsIntersection","type":"U8","size":1},{"name":"Scale","type":"LLVector3","size":1},{"name":"Rotation","type":"LLQuaternion","size":1},{"name":"State","type":"U8","size":1}]}]},{"name":"ObjectDelete","frequency":"Low","id":"89","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"Force","type":"BOOL","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1}]}]},{"name":"ObjectDuplicate","frequency":"Low","id":"90","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"SharedData","type":"Single","count":1,"params":[{"name":"Offset","type":"LLVector3","size":1},{"name":"DuplicateFlags","type":"U32","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1}]}]},{"name":"ObjectDuplicateOnRay","frequency":"Low","id":"91","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"RayStart","type":"LLVector3","size":1},{"name":"RayEnd","type":"LLVector3","size":1},{"name":"BypassRaycast","type":"BOOL","size":1},{"name":"RayEndIsIntersection","type":"BOOL","size":1},{"name":"CopyCenters","type":"BOOL","size":1},{"name":"CopyRotates","type":"BOOL","size":1},{"name":"RayTargetID","type":"LLUUID","size":1},{"name":"DuplicateFlags","type":"U32","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1}]}]},{"name":"MultipleObjectUpdate","frequency":"Medium","id":"2","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1},{"name":"Type","type":"U8","size":1},{"name":"Data","type":"Variable","size":"1"}]}]},{"name":"RequestMultipleObjects","frequency":"Medium","id":"3","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"CacheMissType","type":"U8","size":1},{"name":"ID","type":"U32","size":1}]}]},{"name":"ObjectPosition","frequency":"Medium","id":"4","flags":["NotTrusted","Zerocoded","Deprecated"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1},{"name":"Position","type":"LLVector3","size":1}]}]},{"name":"ObjectScale","frequency":"Low","id":"92","flags":["NotTrusted","Zerocoded","Deprecated"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1},{"name":"Scale","type":"LLVector3","size":1}]}]},{"name":"ObjectRotation","frequency":"Low","id":"93","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1},{"name":"Rotation","type":"LLQuaternion","size":1}]}]},{"name":"ObjectFlagUpdate","frequency":"Low","id":"94","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"ObjectLocalID","type":"U32","size":1},{"name":"UsePhysics","type":"BOOL","size":1},{"name":"IsTemporary","type":"BOOL","size":1},{"name":"IsPhantom","type":"BOOL","size":1},{"name":"CastsShadows","type":"BOOL","size":1}]},{"name":"ExtraPhysics","type":"Variable","count":1,"params":[{"name":"PhysicsShapeType","type":"U8","size":1},{"name":"Density","type":"F32","size":1},{"name":"Friction","type":"F32","size":1},{"name":"Restitution","type":"F32","size":1},{"name":"GravityMultiplier","type":"F32","size":1}]}]},{"name":"ObjectClickAction","frequency":"Low","id":"95","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1},{"name":"ClickAction","type":"U8","size":1}]}]},{"name":"ObjectImage","frequency":"Low","id":"96","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1},{"name":"MediaURL","type":"Variable","size":"1"},{"name":"TextureEntry","type":"Variable","size":"2"}]}]},{"name":"ObjectMaterial","frequency":"Low","id":"97","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1},{"name":"Material","type":"U8","size":1}]}]},{"name":"ObjectShape","frequency":"Low","id":"98","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1},{"name":"PathCurve","type":"U8","size":1},{"name":"ProfileCurve","type":"U8","size":1},{"name":"PathBegin","type":"U16","size":1},{"name":"PathEnd","type":"U16","size":1},{"name":"PathScaleX","type":"U8","size":1},{"name":"PathScaleY","type":"U8","size":1},{"name":"PathShearX","type":"U8","size":1},{"name":"PathShearY","type":"U8","size":1},{"name":"PathTwist","type":"S8","size":1},{"name":"PathTwistBegin","type":"S8","size":1},{"name":"PathRadiusOffset","type":"S8","size":1},{"name":"PathTaperX","type":"S8","size":1},{"name":"PathTaperY","type":"S8","size":1},{"name":"PathRevolutions","type":"U8","size":1},{"name":"PathSkew","type":"S8","size":1},{"name":"ProfileBegin","type":"U16","size":1},{"name":"ProfileEnd","type":"U16","size":1},{"name":"ProfileHollow","type":"U16","size":1}]}]},{"name":"ObjectExtraParams","frequency":"Low","id":"99","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1},{"name":"ParamType","type":"U16","size":1},{"name":"ParamInUse","type":"BOOL","size":1},{"name":"ParamSize","type":"U32","size":1},{"name":"ParamData","type":"Variable","size":"1"}]}]},{"name":"ObjectOwner","frequency":"Low","id":"100","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"HeaderData","type":"Single","count":1,"params":[{"name":"Override","type":"BOOL","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1}]}]},{"name":"ObjectGroup","frequency":"Low","id":"101","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1}]}]},{"name":"ObjectBuy","frequency":"Low","id":"102","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"CategoryID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1},{"name":"SaleType","type":"U8","size":1},{"name":"SalePrice","type":"S32","size":1}]}]},{"name":"BuyObjectInventory","frequency":"Low","id":"103","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1}]}]},{"name":"DerezContainer","frequency":"Low","id":"104","flags":["Trusted","Zerocoded"],"blocks":[{"name":"Data","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"Delete","type":"BOOL","size":1}]}]},{"name":"ObjectPermissions","frequency":"Low","id":"105","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"HeaderData","type":"Single","count":1,"params":[{"name":"Override","type":"BOOL","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1},{"name":"Field","type":"U8","size":1},{"name":"Set","type":"U8","size":1},{"name":"Mask","type":"U32","size":1}]}]},{"name":"ObjectSaleInfo","frequency":"Low","id":"106","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"LocalID","type":"U32","size":1},{"name":"SaleType","type":"U8","size":1},{"name":"SalePrice","type":"S32","size":1}]}]},{"name":"ObjectName","frequency":"Low","id":"107","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"LocalID","type":"U32","size":1},{"name":"Name","type":"Variable","size":"1"}]}]},{"name":"ObjectDescription","frequency":"Low","id":"108","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"LocalID","type":"U32","size":1},{"name":"Description","type":"Variable","size":"1"}]}]},{"name":"ObjectCategory","frequency":"Low","id":"109","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"LocalID","type":"U32","size":1},{"name":"Category","type":"U32","size":1}]}]},{"name":"ObjectSelect","frequency":"Low","id":"110","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1}]}]},{"name":"ObjectDeselect","frequency":"Low","id":"111","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1}]}]},{"name":"ObjectAttach","frequency":"Low","id":"112","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"AttachmentPoint","type":"U8","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1},{"name":"Rotation","type":"LLQuaternion","size":1}]}]},{"name":"ObjectDetach","frequency":"Low","id":"113","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1}]}]},{"name":"ObjectDrop","frequency":"Low","id":"114","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1}]}]},{"name":"ObjectLink","frequency":"Low","id":"115","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1}]}]},{"name":"ObjectDelink","frequency":"Low","id":"116","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1}]}]},{"name":"ObjectGrab","frequency":"Low","id":"117","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"LocalID","type":"U32","size":1},{"name":"GrabOffset","type":"LLVector3","size":1}]},{"name":"SurfaceInfo","type":"Variable","count":1,"params":[{"name":"UVCoord","type":"LLVector3","size":1},{"name":"STCoord","type":"LLVector3","size":1},{"name":"FaceIndex","type":"S32","size":1},{"name":"Position","type":"LLVector3","size":1},{"name":"Normal","type":"LLVector3","size":1},{"name":"Binormal","type":"LLVector3","size":1}]}]},{"name":"ObjectGrabUpdate","frequency":"Low","id":"118","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"GrabOffsetInitial","type":"LLVector3","size":1},{"name":"GrabPosition","type":"LLVector3","size":1},{"name":"TimeSinceLast","type":"U32","size":1}]},{"name":"SurfaceInfo","type":"Variable","count":1,"params":[{"name":"UVCoord","type":"LLVector3","size":1},{"name":"STCoord","type":"LLVector3","size":1},{"name":"FaceIndex","type":"S32","size":1},{"name":"Position","type":"LLVector3","size":1},{"name":"Normal","type":"LLVector3","size":1},{"name":"Binormal","type":"LLVector3","size":1}]}]},{"name":"ObjectDeGrab","frequency":"Low","id":"119","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"LocalID","type":"U32","size":1}]},{"name":"SurfaceInfo","type":"Variable","count":1,"params":[{"name":"UVCoord","type":"LLVector3","size":1},{"name":"STCoord","type":"LLVector3","size":1},{"name":"FaceIndex","type":"S32","size":1},{"name":"Position","type":"LLVector3","size":1},{"name":"Normal","type":"LLVector3","size":1},{"name":"Binormal","type":"LLVector3","size":1}]}]},{"name":"ObjectSpinStart","frequency":"Low","id":"120","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1}]}]},{"name":"ObjectSpinUpdate","frequency":"Low","id":"121","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"Rotation","type":"LLQuaternion","size":1}]}]},{"name":"ObjectSpinStop","frequency":"Low","id":"122","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1}]}]},{"name":"ObjectExportSelected","frequency":"Low","id":"123","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"RequestID","type":"LLUUID","size":1},{"name":"VolumeDetail","type":"S16","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1}]}]},{"name":"ModifyLand","frequency":"Low","id":"124","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ModifyBlock","type":"Single","count":1,"params":[{"name":"Action","type":"U8","size":1},{"name":"BrushSize","type":"U8","size":1},{"name":"Seconds","type":"F32","size":1},{"name":"Height","type":"F32","size":1}]},{"name":"ParcelData","type":"Variable","count":1,"params":[{"name":"LocalID","type":"S32","size":1},{"name":"West","type":"F32","size":1},{"name":"South","type":"F32","size":1},{"name":"East","type":"F32","size":1},{"name":"North","type":"F32","size":1}]},{"name":"ModifyBlockExtended","type":"Variable","count":1,"params":[{"name":"BrushSize","type":"F32","size":1}]}]},{"name":"VelocityInterpolateOn","frequency":"Low","id":"125","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"VelocityInterpolateOff","frequency":"Low","id":"126","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"StateSave","frequency":"Low","id":"127","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"Filename","type":"Variable","size":"1"}]}]},{"name":"ReportAutosaveCrash","frequency":"Low","id":"128","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AutosaveData","type":"Single","count":1,"params":[{"name":"PID","type":"S32","size":1},{"name":"Status","type":"S32","size":1}]}]},{"name":"SimWideDeletes","frequency":"Low","id":"129","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"TargetID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1}]}]},{"name":"RequestObjectPropertiesFamily","frequency":"Medium","id":"5","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"RequestFlags","type":"U32","size":1},{"name":"ObjectID","type":"LLUUID","size":1}]}]},{"name":"TrackAgent","frequency":"Low","id":"130","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"TargetData","type":"Single","count":1,"params":[{"name":"PreyID","type":"LLUUID","size":1}]}]},{"name":"ViewerStats","frequency":"Low","id":"131","flags":["NotTrusted","Zerocoded","UDPDeprecated"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"IP","type":"IPADDR","size":1},{"name":"StartTime","type":"U32","size":1},{"name":"RunTime","type":"F32","size":1},{"name":"SimFPS","type":"F32","size":1},{"name":"FPS","type":"F32","size":1},{"name":"AgentsInView","type":"U8","size":1},{"name":"Ping","type":"F32","size":1},{"name":"MetersTraveled","type":"F64","size":1},{"name":"RegionsVisited","type":"S32","size":1},{"name":"SysRAM","type":"U32","size":1},{"name":"SysOS","type":"Variable","size":"1"},{"name":"SysCPU","type":"Variable","size":"1"},{"name":"SysGPU","type":"Variable","size":"1"}]},{"name":"DownloadTotals","type":"Single","count":1,"params":[{"name":"World","type":"U32","size":1},{"name":"Objects","type":"U32","size":1},{"name":"Textures","type":"U32","size":1}]},{"name":"NetStats","type":"Multiple","count":"2","params":[{"name":"Bytes","type":"U32","size":1},{"name":"Packets","type":"U32","size":1},{"name":"Compressed","type":"U32","size":1},{"name":"Savings","type":"U32","size":1}]},{"name":"FailStats","type":"Single","count":1,"params":[{"name":"SendPacket","type":"U32","size":1},{"name":"Dropped","type":"U32","size":1},{"name":"Resent","type":"U32","size":1},{"name":"FailedResends","type":"U32","size":1},{"name":"OffCircuit","type":"U32","size":1},{"name":"Invalid","type":"U32","size":1}]},{"name":"MiscStats","type":"Variable","count":1,"params":[{"name":"Type","type":"U32","size":1},{"name":"Value","type":"F64","size":1}]}]},{"name":"ScriptAnswerYes","frequency":"Low","id":"132","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"TaskID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1},{"name":"Questions","type":"S32","size":1}]}]},{"name":"UserReport","frequency":"Low","id":"133","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ReportData","type":"Single","count":1,"params":[{"name":"ReportType","type":"U8","size":1},{"name":"Category","type":"U8","size":1},{"name":"Position","type":"LLVector3","size":1},{"name":"CheckFlags","type":"U8","size":1},{"name":"ScreenshotID","type":"LLUUID","size":1},{"name":"ObjectID","type":"LLUUID","size":1},{"name":"AbuserID","type":"LLUUID","size":1},{"name":"AbuseRegionName","type":"Variable","size":"1"},{"name":"AbuseRegionID","type":"LLUUID","size":1},{"name":"Summary","type":"Variable","size":"1"},{"name":"Details","type":"Variable","size":"2"},{"name":"VersionString","type":"Variable","size":"1"}]}]},{"name":"AlertMessage","frequency":"Low","id":"134","flags":["Trusted","Unencoded"],"blocks":[{"name":"AlertData","type":"Single","count":1,"params":[{"name":"Message","type":"Variable","size":"1"}]},{"name":"AlertInfo","type":"Variable","count":1,"params":[{"name":"Message","type":"Variable","size":"1"},{"name":"ExtraParams","type":"Variable","size":"1"}]},{"name":"AgentInfo","type":"Variable","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]}]},{"name":"AgentAlertMessage","frequency":"Low","id":"135","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"AlertData","type":"Single","count":1,"params":[{"name":"Modal","type":"BOOL","size":1},{"name":"Message","type":"Variable","size":"1"}]}]},{"name":"MeanCollisionAlert","frequency":"Low","id":"136","flags":["Trusted","Zerocoded"],"blocks":[{"name":"MeanCollision","type":"Variable","count":1,"params":[{"name":"Victim","type":"LLUUID","size":1},{"name":"Perp","type":"LLUUID","size":1},{"name":"Time","type":"U32","size":1},{"name":"Mag","type":"F32","size":1},{"name":"Type","type":"U8","size":1}]}]},{"name":"ViewerFrozenMessage","frequency":"Low","id":"137","flags":["Trusted","Unencoded"],"blocks":[{"name":"FrozenData","type":"Single","count":1,"params":[{"name":"Data","type":"BOOL","size":1}]}]},{"name":"HealthMessage","frequency":"Low","id":"138","flags":["Trusted","Zerocoded"],"blocks":[{"name":"HealthData","type":"Single","count":1,"params":[{"name":"Health","type":"F32","size":1}]}]},{"name":"ChatFromSimulator","frequency":"Low","id":"139","flags":["Trusted","Unencoded"],"blocks":[{"name":"ChatData","type":"Single","count":1,"params":[{"name":"FromName","type":"Variable","size":"1"},{"name":"SourceID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"SourceType","type":"U8","size":1},{"name":"ChatType","type":"U8","size":1},{"name":"Audible","type":"U8","size":1},{"name":"Position","type":"LLVector3","size":1},{"name":"Message","type":"Variable","size":"2"}]}]},{"name":"SimStats","frequency":"Low","id":"140","flags":["Trusted","Unencoded"],"blocks":[{"name":"Region","type":"Single","count":1,"params":[{"name":"RegionX","type":"U32","size":1},{"name":"RegionY","type":"U32","size":1},{"name":"RegionFlags","type":"U32","size":1},{"name":"ObjectCapacity","type":"U32","size":1}]},{"name":"Stat","type":"Variable","count":1,"params":[{"name":"StatID","type":"U32","size":1},{"name":"StatValue","type":"F32","size":1}]},{"name":"PidStat","type":"Single","count":1,"params":[{"name":"PID","type":"S32","size":1}]},{"name":"RegionInfo","type":"Variable","count":1,"params":[{"name":"RegionFlagsExtended","type":"U64","size":1}]}]},{"name":"RequestRegionInfo","frequency":"Low","id":"141","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"RegionInfo","frequency":"Low","id":"142","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"RegionInfo","type":"Single","count":1,"params":[{"name":"SimName","type":"Variable","size":"1"},{"name":"EstateID","type":"U32","size":1},{"name":"ParentEstateID","type":"U32","size":1},{"name":"RegionFlags","type":"U32","size":1},{"name":"SimAccess","type":"U8","size":1},{"name":"MaxAgents","type":"U8","size":1},{"name":"BillableFactor","type":"F32","size":1},{"name":"ObjectBonusFactor","type":"F32","size":1},{"name":"WaterHeight","type":"F32","size":1},{"name":"TerrainRaiseLimit","type":"F32","size":1},{"name":"TerrainLowerLimit","type":"F32","size":1},{"name":"PricePerMeter","type":"S32","size":1},{"name":"RedirectGridX","type":"S32","size":1},{"name":"RedirectGridY","type":"S32","size":1},{"name":"UseEstateSun","type":"BOOL","size":1},{"name":"SunHour","type":"F32","size":1}]},{"name":"RegionInfo2","type":"Single","count":1,"params":[{"name":"ProductSKU","type":"Variable","size":"1"},{"name":"ProductName","type":"Variable","size":"1"},{"name":"MaxAgents32","type":"U32","size":1},{"name":"HardMaxAgents","type":"U32","size":1},{"name":"HardMaxObjects","type":"U32","size":1}]},{"name":"RegionInfo3","type":"Variable","count":1,"params":[{"name":"RegionFlagsExtended","type":"U64","size":1}]}]},{"name":"GodUpdateRegionInfo","frequency":"Low","id":"143","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"RegionInfo","type":"Single","count":1,"params":[{"name":"SimName","type":"Variable","size":"1"},{"name":"EstateID","type":"U32","size":1},{"name":"ParentEstateID","type":"U32","size":1},{"name":"RegionFlags","type":"U32","size":1},{"name":"BillableFactor","type":"F32","size":1},{"name":"PricePerMeter","type":"S32","size":1},{"name":"RedirectGridX","type":"S32","size":1},{"name":"RedirectGridY","type":"S32","size":1}]},{"name":"RegionInfo2","type":"Variable","count":1,"params":[{"name":"RegionFlagsExtended","type":"U64","size":1}]}]},{"name":"NearestLandingRegionRequest","frequency":"Low","id":"144","flags":["Trusted","Unencoded"],"blocks":[{"name":"RequestingRegionData","type":"Single","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1}]}]},{"name":"NearestLandingRegionReply","frequency":"Low","id":"145","flags":["Trusted","Unencoded"],"blocks":[{"name":"LandingRegionData","type":"Single","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1}]}]},{"name":"NearestLandingRegionUpdated","frequency":"Low","id":"146","flags":["Trusted","Unencoded"],"blocks":[{"name":"RegionData","type":"Single","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1}]}]},{"name":"TeleportLandingStatusChanged","frequency":"Low","id":"147","flags":["Trusted","Unencoded"],"blocks":[{"name":"RegionData","type":"Single","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1}]}]},{"name":"RegionHandshake","frequency":"Low","id":"148","flags":["Trusted","Zerocoded"],"blocks":[{"name":"RegionInfo","type":"Single","count":1,"params":[{"name":"RegionFlags","type":"U32","size":1},{"name":"SimAccess","type":"U8","size":1},{"name":"SimName","type":"Variable","size":"1"},{"name":"SimOwner","type":"LLUUID","size":1},{"name":"IsEstateManager","type":"BOOL","size":1},{"name":"WaterHeight","type":"F32","size":1},{"name":"BillableFactor","type":"F32","size":1},{"name":"CacheID","type":"LLUUID","size":1},{"name":"TerrainBase0","type":"LLUUID","size":1},{"name":"TerrainBase1","type":"LLUUID","size":1},{"name":"TerrainBase2","type":"LLUUID","size":1},{"name":"TerrainBase3","type":"LLUUID","size":1},{"name":"TerrainDetail0","type":"LLUUID","size":1},{"name":"TerrainDetail1","type":"LLUUID","size":1},{"name":"TerrainDetail2","type":"LLUUID","size":1},{"name":"TerrainDetail3","type":"LLUUID","size":1},{"name":"TerrainStartHeight00","type":"F32","size":1},{"name":"TerrainStartHeight01","type":"F32","size":1},{"name":"TerrainStartHeight10","type":"F32","size":1},{"name":"TerrainStartHeight11","type":"F32","size":1},{"name":"TerrainHeightRange00","type":"F32","size":1},{"name":"TerrainHeightRange01","type":"F32","size":1},{"name":"TerrainHeightRange10","type":"F32","size":1},{"name":"TerrainHeightRange11","type":"F32","size":1}]},{"name":"RegionInfo2","type":"Single","count":1,"params":[{"name":"RegionID","type":"LLUUID","size":1}]},{"name":"RegionInfo3","type":"Single","count":1,"params":[{"name":"CPUClassID","type":"S32","size":1},{"name":"CPURatio","type":"S32","size":1},{"name":"ColoName","type":"Variable","size":"1"},{"name":"ProductSKU","type":"Variable","size":"1"},{"name":"ProductName","type":"Variable","size":"1"}]},{"name":"RegionInfo4","type":"Variable","count":1,"params":[{"name":"RegionFlagsExtended","type":"U64","size":1},{"name":"RegionProtocols","type":"U64","size":1}]}]},{"name":"RegionHandshakeReply","frequency":"Low","id":"149","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"RegionInfo","type":"Single","count":1,"params":[{"name":"Flags","type":"U32","size":1}]}]},{"name":"CoarseLocationUpdate","frequency":"Medium","id":"6","flags":["Trusted","Unencoded"],"blocks":[{"name":"Location","type":"Variable","count":1,"params":[{"name":"X","type":"U8","size":1},{"name":"Y","type":"U8","size":1},{"name":"Z","type":"U8","size":1}]},{"name":"Index","type":"Single","count":1,"params":[{"name":"You","type":"S16","size":1},{"name":"Prey","type":"S16","size":1}]},{"name":"AgentData","type":"Variable","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]}]},{"name":"ImageData","frequency":"High","id":"9","flags":["Trusted","Unencoded"],"blocks":[{"name":"ImageID","type":"Single","count":1,"params":[{"name":"ID","type":"LLUUID","size":1},{"name":"Codec","type":"U8","size":1},{"name":"Size","type":"U32","size":1},{"name":"Packets","type":"U16","size":1}]},{"name":"ImageData","type":"Single","count":1,"params":[{"name":"Data","type":"Variable","size":"2"}]}]},{"name":"ImagePacket","frequency":"High","id":"10","flags":["Trusted","Unencoded"],"blocks":[{"name":"ImageID","type":"Single","count":1,"params":[{"name":"ID","type":"LLUUID","size":1},{"name":"Packet","type":"U16","size":1}]},{"name":"ImageData","type":"Single","count":1,"params":[{"name":"Data","type":"Variable","size":"2"}]}]},{"name":"LayerData","frequency":"High","id":"11","flags":["Trusted","Unencoded"],"blocks":[{"name":"LayerID","type":"Single","count":1,"params":[{"name":"Type","type":"U8","size":1}]},{"name":"LayerData","type":"Single","count":1,"params":[{"name":"Data","type":"Variable","size":"2"}]}]},{"name":"ObjectUpdate","frequency":"High","id":"12","flags":["Trusted","Zerocoded"],"blocks":[{"name":"RegionData","type":"Single","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1},{"name":"TimeDilation","type":"U16","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ID","type":"U32","size":1},{"name":"State","type":"U8","size":1},{"name":"FullID","type":"LLUUID","size":1},{"name":"CRC","type":"U32","size":1},{"name":"PCode","type":"U8","size":1},{"name":"Material","type":"U8","size":1},{"name":"ClickAction","type":"U8","size":1},{"name":"Scale","type":"LLVector3","size":1},{"name":"ObjectData","type":"Variable","size":"1"},{"name":"ParentID","type":"U32","size":1},{"name":"UpdateFlags","type":"U32","size":1},{"name":"PathCurve","type":"U8","size":1},{"name":"ProfileCurve","type":"U8","size":1},{"name":"PathBegin","type":"U16","size":1},{"name":"PathEnd","type":"U16","size":1},{"name":"PathScaleX","type":"U8","size":1},{"name":"PathScaleY","type":"U8","size":1},{"name":"PathShearX","type":"U8","size":1},{"name":"PathShearY","type":"U8","size":1},{"name":"PathTwist","type":"S8","size":1},{"name":"PathTwistBegin","type":"S8","size":1},{"name":"PathRadiusOffset","type":"S8","size":1},{"name":"PathTaperX","type":"S8","size":1},{"name":"PathTaperY","type":"S8","size":1},{"name":"PathRevolutions","type":"U8","size":1},{"name":"PathSkew","type":"S8","size":1},{"name":"ProfileBegin","type":"U16","size":1},{"name":"ProfileEnd","type":"U16","size":1},{"name":"ProfileHollow","type":"U16","size":1},{"name":"TextureEntry","type":"Variable","size":"2"},{"name":"TextureAnim","type":"Variable","size":"1"},{"name":"NameValue","type":"Variable","size":"2"},{"name":"Data","type":"Variable","size":"2"},{"name":"Text","type":"Variable","size":"1"},{"name":"TextColor","type":"Fixed","size":"4"},{"name":"MediaURL","type":"Variable","size":"1"},{"name":"PSBlock","type":"Variable","size":"1"},{"name":"ExtraParams","type":"Variable","size":"1"},{"name":"Sound","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"Gain","type":"F32","size":1},{"name":"Flags","type":"U8","size":1},{"name":"Radius","type":"F32","size":1},{"name":"JointType","type":"U8","size":1},{"name":"JointPivot","type":"LLVector3","size":1},{"name":"JointAxisOrAnchor","type":"LLVector3","size":1}]}]},{"name":"ObjectUpdateCompressed","frequency":"High","id":"13","flags":["Trusted","Unencoded"],"blocks":[{"name":"RegionData","type":"Single","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1},{"name":"TimeDilation","type":"U16","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"UpdateFlags","type":"U32","size":1},{"name":"Data","type":"Variable","size":"2"}]}]},{"name":"ObjectUpdateCached","frequency":"High","id":"14","flags":["Trusted","Unencoded"],"blocks":[{"name":"RegionData","type":"Single","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1},{"name":"TimeDilation","type":"U16","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ID","type":"U32","size":1},{"name":"CRC","type":"U32","size":1},{"name":"UpdateFlags","type":"U32","size":1}]}]},{"name":"ImprovedTerseObjectUpdate","frequency":"High","id":"15","flags":["Trusted","Unencoded"],"blocks":[{"name":"RegionData","type":"Single","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1},{"name":"TimeDilation","type":"U16","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"Data","type":"Variable","size":"1"},{"name":"TextureEntry","type":"Variable","size":"2"}]}]},{"name":"KillObject","frequency":"High","id":"16","flags":["Trusted","Unencoded"],"blocks":[{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ID","type":"U32","size":1}]}]},{"name":"CrossedRegion","frequency":"Medium","id":"7","flags":["Trusted","Unencoded","UDPBlackListed"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"RegionData","type":"Single","count":1,"params":[{"name":"SimIP","type":"IPADDR","size":1},{"name":"SimPort","type":"IPPORT","size":1},{"name":"RegionHandle","type":"U64","size":1},{"name":"SeedCapability","type":"Variable","size":"2"}]},{"name":"Info","type":"Single","count":1,"params":[{"name":"Position","type":"LLVector3","size":1},{"name":"LookAt","type":"LLVector3","size":1}]}]},{"name":"SimulatorViewerTimeMessage","frequency":"Low","id":"150","flags":["Trusted","Unencoded"],"blocks":[{"name":"TimeInfo","type":"Single","count":1,"params":[{"name":"UsecSinceStart","type":"U64","size":1},{"name":"SecPerDay","type":"U32","size":1},{"name":"SecPerYear","type":"U32","size":1},{"name":"SunDirection","type":"LLVector3","size":1},{"name":"SunPhase","type":"F32","size":1},{"name":"SunAngVelocity","type":"LLVector3","size":1}]}]},{"name":"EnableSimulator","frequency":"Low","id":"151","flags":["Trusted","Unencoded","UDPBlackListed"],"blocks":[{"name":"SimulatorInfo","type":"Single","count":1,"params":[{"name":"Handle","type":"U64","size":1},{"name":"IP","type":"IPADDR","size":1},{"name":"Port","type":"IPPORT","size":1}]}]},{"name":"DisableSimulator","frequency":"Low","id":"152","flags":["Trusted","Unencoded"],"blocks":[]},{"name":"ConfirmEnableSimulator","frequency":"Medium","id":"8","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"TransferRequest","frequency":"Low","id":"153","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"TransferInfo","type":"Single","count":1,"params":[{"name":"TransferID","type":"LLUUID","size":1},{"name":"ChannelType","type":"S32","size":1},{"name":"SourceType","type":"S32","size":1},{"name":"Priority","type":"F32","size":1},{"name":"Params","type":"Variable","size":"2"}]}]},{"name":"TransferInfo","frequency":"Low","id":"154","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"TransferInfo","type":"Single","count":1,"params":[{"name":"TransferID","type":"LLUUID","size":1},{"name":"ChannelType","type":"S32","size":1},{"name":"TargetType","type":"S32","size":1},{"name":"Status","type":"S32","size":1},{"name":"Size","type":"S32","size":1},{"name":"Params","type":"Variable","size":"2"}]}]},{"name":"TransferPacket","frequency":"High","id":"17","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"TransferData","type":"Single","count":1,"params":[{"name":"TransferID","type":"LLUUID","size":1},{"name":"ChannelType","type":"S32","size":1},{"name":"Packet","type":"S32","size":1},{"name":"Status","type":"S32","size":1},{"name":"Data","type":"Variable","size":"2"}]}]},{"name":"TransferAbort","frequency":"Low","id":"155","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"TransferInfo","type":"Single","count":1,"params":[{"name":"TransferID","type":"LLUUID","size":1},{"name":"ChannelType","type":"S32","size":1}]}]},{"name":"RequestXfer","frequency":"Low","id":"156","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"XferID","type":"Single","count":1,"params":[{"name":"ID","type":"U64","size":1},{"name":"Filename","type":"Variable","size":"1"},{"name":"FilePath","type":"U8","size":1},{"name":"DeleteOnCompletion","type":"BOOL","size":1},{"name":"UseBigPackets","type":"BOOL","size":1},{"name":"VFileID","type":"LLUUID","size":1},{"name":"VFileType","type":"S16","size":1}]}]},{"name":"SendXferPacket","frequency":"High","id":"18","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"XferID","type":"Single","count":1,"params":[{"name":"ID","type":"U64","size":1},{"name":"Packet","type":"U32","size":1}]},{"name":"DataPacket","type":"Single","count":1,"params":[{"name":"Data","type":"Variable","size":"2"}]}]},{"name":"ConfirmXferPacket","frequency":"High","id":"19","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"XferID","type":"Single","count":1,"params":[{"name":"ID","type":"U64","size":1},{"name":"Packet","type":"U32","size":1}]}]},{"name":"AbortXfer","frequency":"Low","id":"157","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"XferID","type":"Single","count":1,"params":[{"name":"ID","type":"U64","size":1},{"name":"Result","type":"S32","size":1}]}]},{"name":"AvatarAnimation","frequency":"High","id":"20","flags":["Trusted","Unencoded"],"blocks":[{"name":"Sender","type":"Single","count":1,"params":[{"name":"ID","type":"LLUUID","size":1}]},{"name":"AnimationList","type":"Variable","count":1,"params":[{"name":"AnimID","type":"LLUUID","size":1},{"name":"AnimSequenceID","type":"S32","size":1}]},{"name":"AnimationSourceList","type":"Variable","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1}]},{"name":"PhysicalAvatarEventList","type":"Variable","count":1,"params":[{"name":"TypeData","type":"Variable","size":"1"}]}]},{"name":"AvatarAppearance","frequency":"Low","id":"158","flags":["Trusted","Zerocoded"],"blocks":[{"name":"Sender","type":"Single","count":1,"params":[{"name":"ID","type":"LLUUID","size":1},{"name":"IsTrial","type":"BOOL","size":1}]},{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"TextureEntry","type":"Variable","size":"2"}]},{"name":"VisualParam","type":"Variable","count":1,"params":[{"name":"ParamValue","type":"U8","size":1}]},{"name":"AppearanceData","type":"Variable","count":1,"params":[{"name":"AppearanceVersion","type":"U8","size":1},{"name":"CofVersion","type":"S32","size":1},{"name":"Flags","type":"U32","size":1}]},{"name":"AppearanceHover","type":"Variable","count":1,"params":[{"name":"HoverHeight","type":"LLVector3","size":1}]}]},{"name":"AvatarSitResponse","frequency":"High","id":"21","flags":["Trusted","Zerocoded"],"blocks":[{"name":"SitObject","type":"Single","count":1,"params":[{"name":"ID","type":"LLUUID","size":1}]},{"name":"SitTransform","type":"Single","count":1,"params":[{"name":"AutoPilot","type":"BOOL","size":1},{"name":"SitPosition","type":"LLVector3","size":1},{"name":"SitRotation","type":"LLQuaternion","size":1},{"name":"CameraEyeOffset","type":"LLVector3","size":1},{"name":"CameraAtOffset","type":"LLVector3","size":1},{"name":"ForceMouselook","type":"BOOL","size":1}]}]},{"name":"SetFollowCamProperties","frequency":"Low","id":"159","flags":["Trusted","Unencoded"],"blocks":[{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1}]},{"name":"CameraProperty","type":"Variable","count":1,"params":[{"name":"Type","type":"S32","size":1},{"name":"Value","type":"F32","size":1}]}]},{"name":"ClearFollowCamProperties","frequency":"Low","id":"160","flags":["Trusted","Unencoded"],"blocks":[{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1}]}]},{"name":"CameraConstraint","frequency":"High","id":"22","flags":["Trusted","Zerocoded"],"blocks":[{"name":"CameraCollidePlane","type":"Single","count":1,"params":[{"name":"Plane","type":"LLVector4","size":1}]}]},{"name":"ObjectProperties","frequency":"Medium","id":"9","flags":["Trusted","Zerocoded"],"blocks":[{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"CreationDate","type":"U64","size":1},{"name":"BaseMask","type":"U32","size":1},{"name":"OwnerMask","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"OwnershipCost","type":"S32","size":1},{"name":"SaleType","type":"U8","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"AggregatePerms","type":"U8","size":1},{"name":"AggregatePermTextures","type":"U8","size":1},{"name":"AggregatePermTexturesOwner","type":"U8","size":1},{"name":"Category","type":"U32","size":1},{"name":"InventorySerial","type":"S16","size":1},{"name":"ItemID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"FromTaskID","type":"LLUUID","size":1},{"name":"LastOwnerID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"},{"name":"TouchName","type":"Variable","size":"1"},{"name":"SitName","type":"Variable","size":"1"},{"name":"TextureID","type":"Variable","size":"1"}]}]},{"name":"ObjectPropertiesFamily","frequency":"Medium","id":"10","flags":["Trusted","Zerocoded"],"blocks":[{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"RequestFlags","type":"U32","size":1},{"name":"ObjectID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"BaseMask","type":"U32","size":1},{"name":"OwnerMask","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"OwnershipCost","type":"S32","size":1},{"name":"SaleType","type":"U8","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"Category","type":"U32","size":1},{"name":"LastOwnerID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"}]}]},{"name":"RequestPayPrice","frequency":"Low","id":"161","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1}]}]},{"name":"PayPriceReply","frequency":"Low","id":"162","flags":["Trusted","Unencoded"],"blocks":[{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"DefaultPayPrice","type":"S32","size":1}]},{"name":"ButtonData","type":"Variable","count":1,"params":[{"name":"PayButton","type":"S32","size":1}]}]},{"name":"KickUser","frequency":"Low","id":"163","flags":["Trusted","Unencoded"],"blocks":[{"name":"TargetBlock","type":"Single","count":1,"params":[{"name":"TargetIP","type":"IPADDR","size":1},{"name":"TargetPort","type":"IPPORT","size":1}]},{"name":"UserInfo","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"Reason","type":"Variable","size":"2"}]}]},{"name":"KickUserAck","frequency":"Low","id":"164","flags":["Trusted","Unencoded"],"blocks":[{"name":"UserInfo","type":"Single","count":1,"params":[{"name":"SessionID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1}]}]},{"name":"GodKickUser","frequency":"Low","id":"165","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"UserInfo","type":"Single","count":1,"params":[{"name":"GodID","type":"LLUUID","size":1},{"name":"GodSessionID","type":"LLUUID","size":1},{"name":"AgentID","type":"LLUUID","size":1},{"name":"KickFlags","type":"U32","size":1},{"name":"Reason","type":"Variable","size":"2"}]}]},{"name":"SystemKickUser","frequency":"Low","id":"166","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentInfo","type":"Variable","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]}]},{"name":"EjectUser","frequency":"Low","id":"167","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"TargetID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1}]}]},{"name":"FreezeUser","frequency":"Low","id":"168","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"TargetID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1}]}]},{"name":"AvatarPropertiesRequest","frequency":"Low","id":"169","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"AvatarID","type":"LLUUID","size":1}]}]},{"name":"AvatarPropertiesRequestBackend","frequency":"Low","id":"170","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"AvatarID","type":"LLUUID","size":1},{"name":"GodLevel","type":"U8","size":1},{"name":"WebProfilesDisabled","type":"BOOL","size":1}]}]},{"name":"AvatarPropertiesReply","frequency":"Low","id":"171","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"AvatarID","type":"LLUUID","size":1}]},{"name":"PropertiesData","type":"Single","count":1,"params":[{"name":"ImageID","type":"LLUUID","size":1},{"name":"FLImageID","type":"LLUUID","size":1},{"name":"PartnerID","type":"LLUUID","size":1},{"name":"AboutText","type":"Variable","size":"2"},{"name":"FLAboutText","type":"Variable","size":"1"},{"name":"BornOn","type":"Variable","size":"1"},{"name":"ProfileURL","type":"Variable","size":"1"},{"name":"CharterMember","type":"Variable","size":"1"},{"name":"Flags","type":"U32","size":1}]}]},{"name":"AvatarInterestsReply","frequency":"Low","id":"172","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"AvatarID","type":"LLUUID","size":1}]},{"name":"PropertiesData","type":"Single","count":1,"params":[{"name":"WantToMask","type":"U32","size":1},{"name":"WantToText","type":"Variable","size":"1"},{"name":"SkillsMask","type":"U32","size":1},{"name":"SkillsText","type":"Variable","size":"1"},{"name":"LanguagesText","type":"Variable","size":"1"}]}]},{"name":"AvatarGroupsReply","frequency":"Low","id":"173","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"AvatarID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Variable","count":1,"params":[{"name":"GroupPowers","type":"U64","size":1},{"name":"AcceptNotices","type":"BOOL","size":1},{"name":"GroupTitle","type":"Variable","size":"1"},{"name":"GroupID","type":"LLUUID","size":1},{"name":"GroupName","type":"Variable","size":"1"},{"name":"GroupInsigniaID","type":"LLUUID","size":1}]},{"name":"NewGroupData","type":"Single","count":1,"params":[{"name":"ListInProfile","type":"BOOL","size":1}]}]},{"name":"AvatarPropertiesUpdate","frequency":"Low","id":"174","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"PropertiesData","type":"Single","count":1,"params":[{"name":"ImageID","type":"LLUUID","size":1},{"name":"FLImageID","type":"LLUUID","size":1},{"name":"AboutText","type":"Variable","size":"2"},{"name":"FLAboutText","type":"Variable","size":"1"},{"name":"AllowPublish","type":"BOOL","size":1},{"name":"MaturePublish","type":"BOOL","size":1},{"name":"ProfileURL","type":"Variable","size":"1"}]}]},{"name":"AvatarInterestsUpdate","frequency":"Low","id":"175","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"PropertiesData","type":"Single","count":1,"params":[{"name":"WantToMask","type":"U32","size":1},{"name":"WantToText","type":"Variable","size":"1"},{"name":"SkillsMask","type":"U32","size":1},{"name":"SkillsText","type":"Variable","size":"1"},{"name":"LanguagesText","type":"Variable","size":"1"}]}]},{"name":"AvatarNotesReply","frequency":"Low","id":"176","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"TargetID","type":"LLUUID","size":1},{"name":"Notes","type":"Variable","size":"2"}]}]},{"name":"AvatarNotesUpdate","frequency":"Low","id":"177","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"TargetID","type":"LLUUID","size":1},{"name":"Notes","type":"Variable","size":"2"}]}]},{"name":"AvatarPicksReply","frequency":"Low","id":"178","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"TargetID","type":"LLUUID","size":1}]},{"name":"Data","type":"Variable","count":1,"params":[{"name":"PickID","type":"LLUUID","size":1},{"name":"PickName","type":"Variable","size":"1"}]}]},{"name":"EventInfoRequest","frequency":"Low","id":"179","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"EventData","type":"Single","count":1,"params":[{"name":"EventID","type":"U32","size":1}]}]},{"name":"EventInfoReply","frequency":"Low","id":"180","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"EventData","type":"Single","count":1,"params":[{"name":"EventID","type":"U32","size":1},{"name":"Creator","type":"Variable","size":"1"},{"name":"Name","type":"Variable","size":"1"},{"name":"Category","type":"Variable","size":"1"},{"name":"Desc","type":"Variable","size":"2"},{"name":"Date","type":"Variable","size":"1"},{"name":"DateUTC","type":"U32","size":1},{"name":"Duration","type":"U32","size":1},{"name":"Cover","type":"U32","size":1},{"name":"Amount","type":"U32","size":1},{"name":"SimName","type":"Variable","size":"1"},{"name":"GlobalPos","type":"LLVector3d","size":1},{"name":"EventFlags","type":"U32","size":1}]}]},{"name":"EventNotificationAddRequest","frequency":"Low","id":"181","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"EventData","type":"Single","count":1,"params":[{"name":"EventID","type":"U32","size":1}]}]},{"name":"EventNotificationRemoveRequest","frequency":"Low","id":"182","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"EventData","type":"Single","count":1,"params":[{"name":"EventID","type":"U32","size":1}]}]},{"name":"EventGodDelete","frequency":"Low","id":"183","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"EventData","type":"Single","count":1,"params":[{"name":"EventID","type":"U32","size":1}]},{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1},{"name":"QueryText","type":"Variable","size":"1"},{"name":"QueryFlags","type":"U32","size":1},{"name":"QueryStart","type":"S32","size":1}]}]},{"name":"PickInfoReply","frequency":"Low","id":"184","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"PickID","type":"LLUUID","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"TopPick","type":"BOOL","size":1},{"name":"ParcelID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Desc","type":"Variable","size":"2"},{"name":"SnapshotID","type":"LLUUID","size":1},{"name":"User","type":"Variable","size":"1"},{"name":"OriginalName","type":"Variable","size":"1"},{"name":"SimName","type":"Variable","size":"1"},{"name":"PosGlobal","type":"LLVector3d","size":1},{"name":"SortOrder","type":"S32","size":1},{"name":"Enabled","type":"BOOL","size":1}]}]},{"name":"PickInfoUpdate","frequency":"Low","id":"185","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"PickID","type":"LLUUID","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"TopPick","type":"BOOL","size":1},{"name":"ParcelID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Desc","type":"Variable","size":"2"},{"name":"SnapshotID","type":"LLUUID","size":1},{"name":"PosGlobal","type":"LLVector3d","size":1},{"name":"SortOrder","type":"S32","size":1},{"name":"Enabled","type":"BOOL","size":1}]}]},{"name":"PickDelete","frequency":"Low","id":"186","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"PickID","type":"LLUUID","size":1}]}]},{"name":"PickGodDelete","frequency":"Low","id":"187","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"PickID","type":"LLUUID","size":1},{"name":"QueryID","type":"LLUUID","size":1}]}]},{"name":"ScriptQuestion","frequency":"Low","id":"188","flags":["Trusted","Unencoded"],"blocks":[{"name":"Data","type":"Single","count":1,"params":[{"name":"TaskID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1},{"name":"ObjectName","type":"Variable","size":"1"},{"name":"ObjectOwner","type":"Variable","size":"1"},{"name":"Questions","type":"S32","size":1}]},{"name":"Experience","type":"Single","count":1,"params":[{"name":"ExperienceID","type":"LLUUID","size":1}]}]},{"name":"ScriptControlChange","frequency":"Low","id":"189","flags":["Trusted","Unencoded"],"blocks":[{"name":"Data","type":"Variable","count":1,"params":[{"name":"TakeControls","type":"BOOL","size":1},{"name":"Controls","type":"U32","size":1},{"name":"PassToAgent","type":"BOOL","size":1}]}]},{"name":"ScriptDialog","frequency":"Low","id":"190","flags":["Trusted","Zerocoded"],"blocks":[{"name":"Data","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"FirstName","type":"Variable","size":"1"},{"name":"LastName","type":"Variable","size":"1"},{"name":"ObjectName","type":"Variable","size":"1"},{"name":"Message","type":"Variable","size":"2"},{"name":"ChatChannel","type":"S32","size":1},{"name":"ImageID","type":"LLUUID","size":1}]},{"name":"Buttons","type":"Variable","count":1,"params":[{"name":"ButtonLabel","type":"Variable","size":"1"}]},{"name":"OwnerData","type":"Variable","count":1,"params":[{"name":"OwnerID","type":"LLUUID","size":1}]}]},{"name":"ScriptDialogReply","frequency":"Low","id":"191","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"ChatChannel","type":"S32","size":1},{"name":"ButtonIndex","type":"S32","size":1},{"name":"ButtonLabel","type":"Variable","size":"1"}]}]},{"name":"ForceScriptControlRelease","frequency":"Low","id":"192","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"RevokePermissions","frequency":"Low","id":"193","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"ObjectPermissions","type":"U32","size":1}]}]},{"name":"LoadURL","frequency":"Low","id":"194","flags":["Trusted","Unencoded"],"blocks":[{"name":"Data","type":"Single","count":1,"params":[{"name":"ObjectName","type":"Variable","size":"1"},{"name":"ObjectID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"OwnerIsGroup","type":"BOOL","size":1},{"name":"Message","type":"Variable","size":"1"},{"name":"URL","type":"Variable","size":"1"}]}]},{"name":"ScriptTeleportRequest","frequency":"Low","id":"195","flags":["Trusted","Unencoded"],"blocks":[{"name":"Data","type":"Single","count":1,"params":[{"name":"ObjectName","type":"Variable","size":"1"},{"name":"SimName","type":"Variable","size":"1"},{"name":"SimPosition","type":"LLVector3","size":1},{"name":"LookAt","type":"LLVector3","size":1}]}]},{"name":"ParcelOverlay","frequency":"Low","id":"196","flags":["Trusted","Zerocoded"],"blocks":[{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"SequenceID","type":"S32","size":1},{"name":"Data","type":"Variable","size":"2"}]}]},{"name":"ParcelPropertiesRequest","frequency":"Medium","id":"11","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"SequenceID","type":"S32","size":1},{"name":"West","type":"F32","size":1},{"name":"South","type":"F32","size":1},{"name":"East","type":"F32","size":1},{"name":"North","type":"F32","size":1},{"name":"SnapSelection","type":"BOOL","size":1}]}]},{"name":"ParcelPropertiesRequestByID","frequency":"Low","id":"197","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"SequenceID","type":"S32","size":1},{"name":"LocalID","type":"S32","size":1}]}]},{"name":"ParcelProperties","frequency":"High","id":"23","flags":["Trusted","Zerocoded","UDPDeprecated"],"blocks":[{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"RequestResult","type":"S32","size":1},{"name":"SequenceID","type":"S32","size":1},{"name":"SnapSelection","type":"BOOL","size":1},{"name":"SelfCount","type":"S32","size":1},{"name":"OtherCount","type":"S32","size":1},{"name":"PublicCount","type":"S32","size":1},{"name":"LocalID","type":"S32","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"IsGroupOwned","type":"BOOL","size":1},{"name":"AuctionID","type":"U32","size":1},{"name":"ClaimDate","type":"S32","size":1},{"name":"ClaimPrice","type":"S32","size":1},{"name":"RentPrice","type":"S32","size":1},{"name":"AABBMin","type":"LLVector3","size":1},{"name":"AABBMax","type":"LLVector3","size":1},{"name":"Bitmap","type":"Variable","size":"2"},{"name":"Area","type":"S32","size":1},{"name":"Status","type":"U8","size":1},{"name":"SimWideMaxPrims","type":"S32","size":1},{"name":"SimWideTotalPrims","type":"S32","size":1},{"name":"MaxPrims","type":"S32","size":1},{"name":"TotalPrims","type":"S32","size":1},{"name":"OwnerPrims","type":"S32","size":1},{"name":"GroupPrims","type":"S32","size":1},{"name":"OtherPrims","type":"S32","size":1},{"name":"SelectedPrims","type":"S32","size":1},{"name":"ParcelPrimBonus","type":"F32","size":1},{"name":"OtherCleanTime","type":"S32","size":1},{"name":"ParcelFlags","type":"U32","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Desc","type":"Variable","size":"1"},{"name":"MusicURL","type":"Variable","size":"1"},{"name":"MediaURL","type":"Variable","size":"1"},{"name":"MediaID","type":"LLUUID","size":1},{"name":"MediaAutoScale","type":"U8","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"PassPrice","type":"S32","size":1},{"name":"PassHours","type":"F32","size":1},{"name":"Category","type":"U8","size":1},{"name":"AuthBuyerID","type":"LLUUID","size":1},{"name":"SnapshotID","type":"LLUUID","size":1},{"name":"UserLocation","type":"LLVector3","size":1},{"name":"UserLookAt","type":"LLVector3","size":1},{"name":"LandingType","type":"U8","size":1},{"name":"RegionPushOverride","type":"BOOL","size":1},{"name":"RegionDenyAnonymous","type":"BOOL","size":1},{"name":"RegionDenyIdentified","type":"BOOL","size":1},{"name":"RegionDenyTransacted","type":"BOOL","size":1}]},{"name":"AgeVerificationBlock","type":"Single","count":1,"params":[{"name":"RegionDenyAgeUnverified","type":"BOOL","size":1}]},{"name":"RegionAllowAccessBlock","type":"Single","count":1,"params":[{"name":"RegionAllowAccessOverride","type":"BOOL","size":1}]}]},{"name":"ParcelPropertiesUpdate","frequency":"Low","id":"198","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"LocalID","type":"S32","size":1},{"name":"Flags","type":"U32","size":1},{"name":"ParcelFlags","type":"U32","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Desc","type":"Variable","size":"1"},{"name":"MusicURL","type":"Variable","size":"1"},{"name":"MediaURL","type":"Variable","size":"1"},{"name":"MediaID","type":"LLUUID","size":1},{"name":"MediaAutoScale","type":"U8","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"PassPrice","type":"S32","size":1},{"name":"PassHours","type":"F32","size":1},{"name":"Category","type":"U8","size":1},{"name":"AuthBuyerID","type":"LLUUID","size":1},{"name":"SnapshotID","type":"LLUUID","size":1},{"name":"UserLocation","type":"LLVector3","size":1},{"name":"UserLookAt","type":"LLVector3","size":1},{"name":"LandingType","type":"U8","size":1}]}]},{"name":"ParcelReturnObjects","frequency":"Low","id":"199","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"LocalID","type":"S32","size":1},{"name":"ReturnType","type":"U32","size":1}]},{"name":"TaskIDs","type":"Variable","count":1,"params":[{"name":"TaskID","type":"LLUUID","size":1}]},{"name":"OwnerIDs","type":"Variable","count":1,"params":[{"name":"OwnerID","type":"LLUUID","size":1}]}]},{"name":"ParcelSetOtherCleanTime","frequency":"Low","id":"200","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"LocalID","type":"S32","size":1},{"name":"OtherCleanTime","type":"S32","size":1}]}]},{"name":"ParcelDisableObjects","frequency":"Low","id":"201","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"LocalID","type":"S32","size":1},{"name":"ReturnType","type":"U32","size":1}]},{"name":"TaskIDs","type":"Variable","count":1,"params":[{"name":"TaskID","type":"LLUUID","size":1}]},{"name":"OwnerIDs","type":"Variable","count":1,"params":[{"name":"OwnerID","type":"LLUUID","size":1}]}]},{"name":"ParcelSelectObjects","frequency":"Low","id":"202","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"LocalID","type":"S32","size":1},{"name":"ReturnType","type":"U32","size":1}]},{"name":"ReturnIDs","type":"Variable","count":1,"params":[{"name":"ReturnID","type":"LLUUID","size":1}]}]},{"name":"EstateCovenantRequest","frequency":"Low","id":"203","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"EstateCovenantReply","frequency":"Low","id":"204","flags":["Trusted","Unencoded"],"blocks":[{"name":"Data","type":"Single","count":1,"params":[{"name":"CovenantID","type":"LLUUID","size":1},{"name":"CovenantTimestamp","type":"U32","size":1},{"name":"EstateName","type":"Variable","size":"1"},{"name":"EstateOwnerID","type":"LLUUID","size":1}]}]},{"name":"ForceObjectSelect","frequency":"Low","id":"205","flags":["Trusted","Unencoded"],"blocks":[{"name":"Header","type":"Single","count":1,"params":[{"name":"ResetList","type":"BOOL","size":1}]},{"name":"Data","type":"Variable","count":1,"params":[{"name":"LocalID","type":"U32","size":1}]}]},{"name":"ParcelBuyPass","frequency":"Low","id":"206","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"LocalID","type":"S32","size":1}]}]},{"name":"ParcelDeedToGroup","frequency":"Low","id":"207","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"LocalID","type":"S32","size":1}]}]},{"name":"ParcelReclaim","frequency":"Low","id":"208","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"LocalID","type":"S32","size":1}]}]},{"name":"ParcelClaim","frequency":"Low","id":"209","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"IsGroupOwned","type":"BOOL","size":1},{"name":"Final","type":"BOOL","size":1}]},{"name":"ParcelData","type":"Variable","count":1,"params":[{"name":"West","type":"F32","size":1},{"name":"South","type":"F32","size":1},{"name":"East","type":"F32","size":1},{"name":"North","type":"F32","size":1}]}]},{"name":"ParcelJoin","frequency":"Low","id":"210","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"West","type":"F32","size":1},{"name":"South","type":"F32","size":1},{"name":"East","type":"F32","size":1},{"name":"North","type":"F32","size":1}]}]},{"name":"ParcelDivide","frequency":"Low","id":"211","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"West","type":"F32","size":1},{"name":"South","type":"F32","size":1},{"name":"East","type":"F32","size":1},{"name":"North","type":"F32","size":1}]}]},{"name":"ParcelRelease","frequency":"Low","id":"212","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"LocalID","type":"S32","size":1}]}]},{"name":"ParcelBuy","frequency":"Low","id":"213","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"IsGroupOwned","type":"BOOL","size":1},{"name":"RemoveContribution","type":"BOOL","size":1},{"name":"LocalID","type":"S32","size":1},{"name":"Final","type":"BOOL","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"Price","type":"S32","size":1},{"name":"Area","type":"S32","size":1}]}]},{"name":"ParcelGodForceOwner","frequency":"Low","id":"214","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"OwnerID","type":"LLUUID","size":1},{"name":"LocalID","type":"S32","size":1}]}]},{"name":"ParcelAccessListRequest","frequency":"Low","id":"215","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"SequenceID","type":"S32","size":1},{"name":"Flags","type":"U32","size":1},{"name":"LocalID","type":"S32","size":1}]}]},{"name":"ParcelAccessListReply","frequency":"Low","id":"216","flags":["Trusted","Zerocoded"],"blocks":[{"name":"Data","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SequenceID","type":"S32","size":1},{"name":"Flags","type":"U32","size":1},{"name":"LocalID","type":"S32","size":1}]},{"name":"List","type":"Variable","count":1,"params":[{"name":"ID","type":"LLUUID","size":1},{"name":"Time","type":"S32","size":1},{"name":"Flags","type":"U32","size":1}]}]},{"name":"ParcelAccessListUpdate","frequency":"Low","id":"217","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"Flags","type":"U32","size":1},{"name":"LocalID","type":"S32","size":1},{"name":"TransactionID","type":"LLUUID","size":1},{"name":"SequenceID","type":"S32","size":1},{"name":"Sections","type":"S32","size":1}]},{"name":"List","type":"Variable","count":1,"params":[{"name":"ID","type":"LLUUID","size":1},{"name":"Time","type":"S32","size":1},{"name":"Flags","type":"U32","size":1}]}]},{"name":"ParcelDwellRequest","frequency":"Low","id":"218","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"LocalID","type":"S32","size":1},{"name":"ParcelID","type":"LLUUID","size":1}]}]},{"name":"ParcelDwellReply","frequency":"Low","id":"219","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"LocalID","type":"S32","size":1},{"name":"ParcelID","type":"LLUUID","size":1},{"name":"Dwell","type":"F32","size":1}]}]},{"name":"RequestParcelTransfer","frequency":"Low","id":"220","flags":["Trusted","Zerocoded"],"blocks":[{"name":"Data","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1},{"name":"TransactionTime","type":"U32","size":1},{"name":"SourceID","type":"LLUUID","size":1},{"name":"DestID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"Flags","type":"U8","size":1},{"name":"TransactionType","type":"S32","size":1},{"name":"Amount","type":"S32","size":1},{"name":"BillableArea","type":"S32","size":1},{"name":"ActualArea","type":"S32","size":1},{"name":"Final","type":"BOOL","size":1}]},{"name":"RegionData","type":"Single","count":1,"params":[{"name":"RegionID","type":"LLUUID","size":1},{"name":"GridX","type":"U32","size":1},{"name":"GridY","type":"U32","size":1}]}]},{"name":"UpdateParcel","frequency":"Low","id":"221","flags":["Trusted","Zerocoded"],"blocks":[{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1},{"name":"RegionHandle","type":"U64","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupOwned","type":"BOOL","size":1},{"name":"Status","type":"U8","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"},{"name":"MusicURL","type":"Variable","size":"1"},{"name":"RegionX","type":"F32","size":1},{"name":"RegionY","type":"F32","size":1},{"name":"ActualArea","type":"S32","size":1},{"name":"BillableArea","type":"S32","size":1},{"name":"ShowDir","type":"BOOL","size":1},{"name":"IsForSale","type":"BOOL","size":1},{"name":"Category","type":"U8","size":1},{"name":"SnapshotID","type":"LLUUID","size":1},{"name":"UserLocation","type":"LLVector3","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"AuthorizedBuyerID","type":"LLUUID","size":1},{"name":"AllowPublish","type":"BOOL","size":1},{"name":"MaturePublish","type":"BOOL","size":1}]}]},{"name":"RemoveParcel","frequency":"Low","id":"222","flags":["Trusted","Unencoded"],"blocks":[{"name":"ParcelData","type":"Variable","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1}]}]},{"name":"MergeParcel","frequency":"Low","id":"223","flags":["Trusted","Unencoded"],"blocks":[{"name":"MasterParcelData","type":"Single","count":1,"params":[{"name":"MasterID","type":"LLUUID","size":1}]},{"name":"SlaveParcelData","type":"Variable","count":1,"params":[{"name":"SlaveID","type":"LLUUID","size":1}]}]},{"name":"LogParcelChanges","frequency":"Low","id":"224","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"RegionData","type":"Single","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1}]},{"name":"ParcelData","type":"Variable","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"IsOwnerGroup","type":"BOOL","size":1},{"name":"ActualArea","type":"S32","size":1},{"name":"Action","type":"S8","size":1},{"name":"TransactionID","type":"LLUUID","size":1}]}]},{"name":"CheckParcelSales","frequency":"Low","id":"225","flags":["Trusted","Unencoded"],"blocks":[{"name":"RegionData","type":"Variable","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1}]}]},{"name":"ParcelSales","frequency":"Low","id":"226","flags":["Trusted","Unencoded"],"blocks":[{"name":"ParcelData","type":"Variable","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1},{"name":"BuyerID","type":"LLUUID","size":1}]}]},{"name":"ParcelGodMarkAsContent","frequency":"Low","id":"227","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"LocalID","type":"S32","size":1}]}]},{"name":"ViewerStartAuction","frequency":"Low","id":"228","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"LocalID","type":"S32","size":1},{"name":"SnapshotID","type":"LLUUID","size":1}]}]},{"name":"StartAuction","frequency":"Low","id":"229","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"ParcelData","type":"Single","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1},{"name":"SnapshotID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"}]}]},{"name":"ConfirmAuctionStart","frequency":"Low","id":"230","flags":["Trusted","Unencoded"],"blocks":[{"name":"AuctionData","type":"Single","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1},{"name":"AuctionID","type":"U32","size":1}]}]},{"name":"CompleteAuction","frequency":"Low","id":"231","flags":["Trusted","Unencoded"],"blocks":[{"name":"ParcelData","type":"Variable","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1}]}]},{"name":"CancelAuction","frequency":"Low","id":"232","flags":["Trusted","Unencoded"],"blocks":[{"name":"ParcelData","type":"Variable","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1}]}]},{"name":"CheckParcelAuctions","frequency":"Low","id":"233","flags":["Trusted","Unencoded"],"blocks":[{"name":"RegionData","type":"Variable","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1}]}]},{"name":"ParcelAuctions","frequency":"Low","id":"234","flags":["Trusted","Unencoded"],"blocks":[{"name":"ParcelData","type":"Variable","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1},{"name":"WinnerID","type":"LLUUID","size":1}]}]},{"name":"UUIDNameRequest","frequency":"Low","id":"235","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"UUIDNameBlock","type":"Variable","count":1,"params":[{"name":"ID","type":"LLUUID","size":1}]}]},{"name":"UUIDNameReply","frequency":"Low","id":"236","flags":["Trusted","Unencoded"],"blocks":[{"name":"UUIDNameBlock","type":"Variable","count":1,"params":[{"name":"ID","type":"LLUUID","size":1},{"name":"FirstName","type":"Variable","size":"1"},{"name":"LastName","type":"Variable","size":"1"}]}]},{"name":"UUIDGroupNameRequest","frequency":"Low","id":"237","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"UUIDNameBlock","type":"Variable","count":1,"params":[{"name":"ID","type":"LLUUID","size":1}]}]},{"name":"UUIDGroupNameReply","frequency":"Low","id":"238","flags":["Trusted","Unencoded"],"blocks":[{"name":"UUIDNameBlock","type":"Variable","count":1,"params":[{"name":"ID","type":"LLUUID","size":1},{"name":"GroupName","type":"Variable","size":"1"}]}]},{"name":"ChatPass","frequency":"Low","id":"239","flags":["Trusted","Zerocoded"],"blocks":[{"name":"ChatData","type":"Single","count":1,"params":[{"name":"Channel","type":"S32","size":1},{"name":"Position","type":"LLVector3","size":1},{"name":"ID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"SourceType","type":"U8","size":1},{"name":"Type","type":"U8","size":1},{"name":"Radius","type":"F32","size":1},{"name":"SimAccess","type":"U8","size":1},{"name":"Message","type":"Variable","size":"2"}]}]},{"name":"EdgeDataPacket","frequency":"High","id":"24","flags":["Trusted","Zerocoded"],"blocks":[{"name":"EdgeData","type":"Single","count":1,"params":[{"name":"LayerType","type":"U8","size":1},{"name":"Direction","type":"U8","size":1},{"name":"LayerData","type":"Variable","size":"2"}]}]},{"name":"SimStatus","frequency":"Medium","id":"12","flags":["Trusted","Unencoded"],"blocks":[{"name":"SimStatus","type":"Single","count":1,"params":[{"name":"CanAcceptAgents","type":"BOOL","size":1},{"name":"CanAcceptTasks","type":"BOOL","size":1}]},{"name":"SimFlags","type":"Single","count":1,"params":[{"name":"Flags","type":"U64","size":1}]}]},{"name":"ChildAgentUpdate","frequency":"High","id":"25","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1},{"name":"ViewerCircuitCode","type":"U32","size":1},{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"AgentPos","type":"LLVector3","size":1},{"name":"AgentVel","type":"LLVector3","size":1},{"name":"Center","type":"LLVector3","size":1},{"name":"Size","type":"LLVector3","size":1},{"name":"AtAxis","type":"LLVector3","size":1},{"name":"LeftAxis","type":"LLVector3","size":1},{"name":"UpAxis","type":"LLVector3","size":1},{"name":"ChangedGrid","type":"BOOL","size":1},{"name":"Far","type":"F32","size":1},{"name":"Aspect","type":"F32","size":1},{"name":"Throttles","type":"Variable","size":"1"},{"name":"LocomotionState","type":"U32","size":1},{"name":"HeadRotation","type":"LLQuaternion","size":1},{"name":"BodyRotation","type":"LLQuaternion","size":1},{"name":"ControlFlags","type":"U32","size":1},{"name":"EnergyLevel","type":"F32","size":1},{"name":"GodLevel","type":"U8","size":1},{"name":"AlwaysRun","type":"BOOL","size":1},{"name":"PreyAgent","type":"LLUUID","size":1},{"name":"AgentAccess","type":"U8","size":1},{"name":"AgentTextures","type":"Variable","size":"2"},{"name":"ActiveGroupID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Variable","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"GroupPowers","type":"U64","size":1},{"name":"AcceptNotices","type":"BOOL","size":1}]},{"name":"AnimationData","type":"Variable","count":1,"params":[{"name":"Animation","type":"LLUUID","size":1},{"name":"ObjectID","type":"LLUUID","size":1}]},{"name":"GranterBlock","type":"Variable","count":1,"params":[{"name":"GranterID","type":"LLUUID","size":1}]},{"name":"NVPairData","type":"Variable","count":1,"params":[{"name":"NVPairs","type":"Variable","size":"2"}]},{"name":"VisualParam","type":"Variable","count":1,"params":[{"name":"ParamValue","type":"U8","size":1}]},{"name":"AgentAccess","type":"Variable","count":1,"params":[{"name":"AgentLegacyAccess","type":"U8","size":1},{"name":"AgentMaxAccess","type":"U8","size":1}]},{"name":"AgentInfo","type":"Variable","count":1,"params":[{"name":"Flags","type":"U32","size":1}]},{"name":"AgentInventoryHost","type":"Variable","count":1,"params":[{"name":"InventoryHost","type":"Variable","size":"1"}]}]},{"name":"ChildAgentAlive","frequency":"High","id":"26","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1},{"name":"ViewerCircuitCode","type":"U32","size":1},{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"ChildAgentPositionUpdate","frequency":"High","id":"27","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"RegionHandle","type":"U64","size":1},{"name":"ViewerCircuitCode","type":"U32","size":1},{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"AgentPos","type":"LLVector3","size":1},{"name":"AgentVel","type":"LLVector3","size":1},{"name":"Center","type":"LLVector3","size":1},{"name":"Size","type":"LLVector3","size":1},{"name":"AtAxis","type":"LLVector3","size":1},{"name":"LeftAxis","type":"LLVector3","size":1},{"name":"UpAxis","type":"LLVector3","size":1},{"name":"ChangedGrid","type":"BOOL","size":1}]}]},{"name":"ChildAgentDying","frequency":"Low","id":"240","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"ChildAgentUnknown","frequency":"Low","id":"241","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"AtomicPassObject","frequency":"High","id":"28","flags":["Trusted","Unencoded"],"blocks":[{"name":"TaskData","type":"Single","count":1,"params":[{"name":"TaskID","type":"LLUUID","size":1},{"name":"AttachmentNeedsSave","type":"BOOL","size":1}]}]},{"name":"KillChildAgents","frequency":"Low","id":"242","flags":["Trusted","Unencoded"],"blocks":[{"name":"IDBlock","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]}]},{"name":"GetScriptRunning","frequency":"Low","id":"243","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"Script","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1}]}]},{"name":"ScriptRunningReply","frequency":"Low","id":"244","flags":["NotTrusted","Unencoded","UDPDeprecated"],"blocks":[{"name":"Script","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1},{"name":"Running","type":"BOOL","size":1}]}]},{"name":"SetScriptRunning","frequency":"Low","id":"245","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Script","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1},{"name":"Running","type":"BOOL","size":1}]}]},{"name":"ScriptReset","frequency":"Low","id":"246","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Script","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1}]}]},{"name":"ScriptSensorRequest","frequency":"Low","id":"247","flags":["Trusted","Zerocoded"],"blocks":[{"name":"Requester","type":"Single","count":1,"params":[{"name":"SourceID","type":"LLUUID","size":1},{"name":"RequestID","type":"LLUUID","size":1},{"name":"SearchID","type":"LLUUID","size":1},{"name":"SearchPos","type":"LLVector3","size":1},{"name":"SearchDir","type":"LLQuaternion","size":1},{"name":"SearchName","type":"Variable","size":"1"},{"name":"Type","type":"S32","size":1},{"name":"Range","type":"F32","size":1},{"name":"Arc","type":"F32","size":1},{"name":"RegionHandle","type":"U64","size":1},{"name":"SearchRegions","type":"U8","size":1}]}]},{"name":"ScriptSensorReply","frequency":"Low","id":"248","flags":["Trusted","Zerocoded"],"blocks":[{"name":"Requester","type":"Single","count":1,"params":[{"name":"SourceID","type":"LLUUID","size":1}]},{"name":"SensedData","type":"Variable","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"Position","type":"LLVector3","size":1},{"name":"Velocity","type":"LLVector3","size":1},{"name":"Rotation","type":"LLQuaternion","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Type","type":"S32","size":1},{"name":"Range","type":"F32","size":1}]}]},{"name":"CompleteAgentMovement","frequency":"Low","id":"249","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"CircuitCode","type":"U32","size":1}]}]},{"name":"AgentMovementComplete","frequency":"Low","id":"250","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"Position","type":"LLVector3","size":1},{"name":"LookAt","type":"LLVector3","size":1},{"name":"RegionHandle","type":"U64","size":1},{"name":"Timestamp","type":"U32","size":1}]},{"name":"SimData","type":"Single","count":1,"params":[{"name":"ChannelVersion","type":"Variable","size":"2"}]}]},{"name":"DataServerLogout","frequency":"Low","id":"251","flags":["Trusted","Unencoded"],"blocks":[{"name":"UserData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"ViewerIP","type":"IPADDR","size":1},{"name":"Disconnect","type":"BOOL","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"LogoutRequest","frequency":"Low","id":"252","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"LogoutReply","frequency":"Low","id":"253","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1}]}]},{"name":"ImprovedInstantMessage","frequency":"Low","id":"254","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"MessageBlock","type":"Single","count":1,"params":[{"name":"FromGroup","type":"BOOL","size":1},{"name":"ToAgentID","type":"LLUUID","size":1},{"name":"ParentEstateID","type":"U32","size":1},{"name":"RegionID","type":"LLUUID","size":1},{"name":"Position","type":"LLVector3","size":1},{"name":"Offline","type":"U8","size":1},{"name":"Dialog","type":"U8","size":1},{"name":"ID","type":"LLUUID","size":1},{"name":"Timestamp","type":"U32","size":1},{"name":"FromAgentName","type":"Variable","size":"1"},{"name":"Message","type":"Variable","size":"2"},{"name":"BinaryBucket","type":"Variable","size":"2"}]},{"name":"EstateBlock","type":"Single","count":1,"params":[{"name":"EstateID","type":"U32","size":1}]}]},{"name":"RetrieveInstantMessages","frequency":"Low","id":"255","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"FindAgent","frequency":"Low","id":"256","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentBlock","type":"Single","count":1,"params":[{"name":"Hunter","type":"LLUUID","size":1},{"name":"Prey","type":"LLUUID","size":1},{"name":"SpaceIP","type":"IPADDR","size":1}]},{"name":"LocationBlock","type":"Variable","count":1,"params":[{"name":"GlobalX","type":"F64","size":1},{"name":"GlobalY","type":"F64","size":1}]}]},{"name":"RequestGodlikePowers","frequency":"Low","id":"257","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"RequestBlock","type":"Single","count":1,"params":[{"name":"Godlike","type":"BOOL","size":1},{"name":"Token","type":"LLUUID","size":1}]}]},{"name":"GrantGodlikePowers","frequency":"Low","id":"258","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"GrantData","type":"Single","count":1,"params":[{"name":"GodLevel","type":"U8","size":1},{"name":"Token","type":"LLUUID","size":1}]}]},{"name":"GodlikeMessage","frequency":"Low","id":"259","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"TransactionID","type":"LLUUID","size":1}]},{"name":"MethodData","type":"Single","count":1,"params":[{"name":"Method","type":"Variable","size":"1"},{"name":"Invoice","type":"LLUUID","size":1}]},{"name":"ParamList","type":"Variable","count":1,"params":[{"name":"Parameter","type":"Variable","size":"1"}]}]},{"name":"EstateOwnerMessage","frequency":"Low","id":"260","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"TransactionID","type":"LLUUID","size":1}]},{"name":"MethodData","type":"Single","count":1,"params":[{"name":"Method","type":"Variable","size":"1"},{"name":"Invoice","type":"LLUUID","size":1}]},{"name":"ParamList","type":"Variable","count":1,"params":[{"name":"Parameter","type":"Variable","size":"1"}]}]},{"name":"GenericMessage","frequency":"Low","id":"261","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"TransactionID","type":"LLUUID","size":1}]},{"name":"MethodData","type":"Single","count":1,"params":[{"name":"Method","type":"Variable","size":"1"},{"name":"Invoice","type":"LLUUID","size":1}]},{"name":"ParamList","type":"Variable","count":1,"params":[{"name":"Parameter","type":"Variable","size":"1"}]}]},{"name":"MuteListRequest","frequency":"Low","id":"262","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"MuteData","type":"Single","count":1,"params":[{"name":"MuteCRC","type":"U32","size":1}]}]},{"name":"UpdateMuteListEntry","frequency":"Low","id":"263","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"MuteData","type":"Single","count":1,"params":[{"name":"MuteID","type":"LLUUID","size":1},{"name":"MuteName","type":"Variable","size":"1"},{"name":"MuteType","type":"S32","size":1},{"name":"MuteFlags","type":"U32","size":1}]}]},{"name":"RemoveMuteListEntry","frequency":"Low","id":"264","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"MuteData","type":"Single","count":1,"params":[{"name":"MuteID","type":"LLUUID","size":1},{"name":"MuteName","type":"Variable","size":"1"}]}]},{"name":"CopyInventoryFromNotecard","frequency":"Low","id":"265","flags":["NotTrusted","Zerocoded","UDPDeprecated"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"NotecardData","type":"Single","count":1,"params":[{"name":"NotecardItemID","type":"LLUUID","size":1},{"name":"ObjectID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1}]}]},{"name":"UpdateInventoryItem","frequency":"Low","id":"266","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"TransactionID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"CallbackID","type":"U32","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"BaseMask","type":"U32","size":1},{"name":"OwnerMask","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"GroupOwned","type":"BOOL","size":1},{"name":"TransactionID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"InvType","type":"S8","size":1},{"name":"Flags","type":"U32","size":1},{"name":"SaleType","type":"U8","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"},{"name":"CreationDate","type":"S32","size":1},{"name":"CRC","type":"U32","size":1}]}]},{"name":"UpdateCreateInventoryItem","frequency":"Low","id":"267","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SimApproved","type":"BOOL","size":1},{"name":"TransactionID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"CallbackID","type":"U32","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"BaseMask","type":"U32","size":1},{"name":"OwnerMask","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"GroupOwned","type":"BOOL","size":1},{"name":"AssetID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"InvType","type":"S8","size":1},{"name":"Flags","type":"U32","size":1},{"name":"SaleType","type":"U8","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"},{"name":"CreationDate","type":"S32","size":1},{"name":"CRC","type":"U32","size":1}]}]},{"name":"MoveInventoryItem","frequency":"Low","id":"268","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"Stamp","type":"BOOL","size":1}]},{"name":"InventoryData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"NewName","type":"Variable","size":"1"}]}]},{"name":"CopyInventoryItem","frequency":"Low","id":"269","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Variable","count":1,"params":[{"name":"CallbackID","type":"U32","size":1},{"name":"OldAgentID","type":"LLUUID","size":1},{"name":"OldItemID","type":"LLUUID","size":1},{"name":"NewFolderID","type":"LLUUID","size":1},{"name":"NewName","type":"Variable","size":"1"}]}]},{"name":"RemoveInventoryItem","frequency":"Low","id":"270","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1}]}]},{"name":"ChangeInventoryItemFlags","frequency":"Low","id":"271","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1}]}]},{"name":"SaveAssetIntoInventory","frequency":"Low","id":"272","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Single","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"NewAssetID","type":"LLUUID","size":1}]}]},{"name":"CreateInventoryFolder","frequency":"Low","id":"273","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"FolderData","type":"Single","count":1,"params":[{"name":"FolderID","type":"LLUUID","size":1},{"name":"ParentID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"Name","type":"Variable","size":"1"}]}]},{"name":"UpdateInventoryFolder","frequency":"Low","id":"274","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"FolderData","type":"Variable","count":1,"params":[{"name":"FolderID","type":"LLUUID","size":1},{"name":"ParentID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"Name","type":"Variable","size":"1"}]}]},{"name":"MoveInventoryFolder","frequency":"Low","id":"275","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"Stamp","type":"BOOL","size":1}]},{"name":"InventoryData","type":"Variable","count":1,"params":[{"name":"FolderID","type":"LLUUID","size":1},{"name":"ParentID","type":"LLUUID","size":1}]}]},{"name":"RemoveInventoryFolder","frequency":"Low","id":"276","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"FolderData","type":"Variable","count":1,"params":[{"name":"FolderID","type":"LLUUID","size":1}]}]},{"name":"FetchInventoryDescendents","frequency":"Low","id":"277","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Single","count":1,"params":[{"name":"FolderID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"SortOrder","type":"S32","size":1},{"name":"FetchFolders","type":"BOOL","size":1},{"name":"FetchItems","type":"BOOL","size":1}]}]},{"name":"InventoryDescendents","frequency":"Low","id":"278","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"Version","type":"S32","size":1},{"name":"Descendents","type":"S32","size":1}]},{"name":"FolderData","type":"Variable","count":1,"params":[{"name":"FolderID","type":"LLUUID","size":1},{"name":"ParentID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"Name","type":"Variable","size":"1"}]},{"name":"ItemData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"BaseMask","type":"U32","size":1},{"name":"OwnerMask","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"GroupOwned","type":"BOOL","size":1},{"name":"AssetID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"InvType","type":"S8","size":1},{"name":"Flags","type":"U32","size":1},{"name":"SaleType","type":"U8","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"},{"name":"CreationDate","type":"S32","size":1},{"name":"CRC","type":"U32","size":1}]}]},{"name":"FetchInventory","frequency":"Low","id":"279","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Variable","count":1,"params":[{"name":"OwnerID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1}]}]},{"name":"FetchInventoryReply","frequency":"Low","id":"280","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"BaseMask","type":"U32","size":1},{"name":"OwnerMask","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"GroupOwned","type":"BOOL","size":1},{"name":"AssetID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"InvType","type":"S8","size":1},{"name":"Flags","type":"U32","size":1},{"name":"SaleType","type":"U8","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"},{"name":"CreationDate","type":"S32","size":1},{"name":"CRC","type":"U32","size":1}]}]},{"name":"BulkUpdateInventory","frequency":"Low","id":"281","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"TransactionID","type":"LLUUID","size":1}]},{"name":"FolderData","type":"Variable","count":1,"params":[{"name":"FolderID","type":"LLUUID","size":1},{"name":"ParentID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"Name","type":"Variable","size":"1"}]},{"name":"ItemData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"CallbackID","type":"U32","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"BaseMask","type":"U32","size":1},{"name":"OwnerMask","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"GroupOwned","type":"BOOL","size":1},{"name":"AssetID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"InvType","type":"S8","size":1},{"name":"Flags","type":"U32","size":1},{"name":"SaleType","type":"U8","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"},{"name":"CreationDate","type":"S32","size":1},{"name":"CRC","type":"U32","size":1}]}]},{"name":"RequestInventoryAsset","frequency":"Low","id":"282","flags":["Trusted","Unencoded"],"blocks":[{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1},{"name":"AgentID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1}]}]},{"name":"InventoryAssetResponse","frequency":"Low","id":"283","flags":["Trusted","Unencoded"],"blocks":[{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1},{"name":"AssetID","type":"LLUUID","size":1},{"name":"IsReadable","type":"BOOL","size":1}]}]},{"name":"RemoveInventoryObjects","frequency":"Low","id":"284","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"FolderData","type":"Variable","count":1,"params":[{"name":"FolderID","type":"LLUUID","size":1}]},{"name":"ItemData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1}]}]},{"name":"PurgeInventoryDescendents","frequency":"Low","id":"285","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Single","count":1,"params":[{"name":"FolderID","type":"LLUUID","size":1}]}]},{"name":"UpdateTaskInventory","frequency":"Low","id":"286","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"UpdateData","type":"Single","count":1,"params":[{"name":"LocalID","type":"U32","size":1},{"name":"Key","type":"U8","size":1}]},{"name":"InventoryData","type":"Single","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"BaseMask","type":"U32","size":1},{"name":"OwnerMask","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"GroupOwned","type":"BOOL","size":1},{"name":"TransactionID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"InvType","type":"S8","size":1},{"name":"Flags","type":"U32","size":1},{"name":"SaleType","type":"U8","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"},{"name":"CreationDate","type":"S32","size":1},{"name":"CRC","type":"U32","size":1}]}]},{"name":"RemoveTaskInventory","frequency":"Low","id":"287","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Single","count":1,"params":[{"name":"LocalID","type":"U32","size":1},{"name":"ItemID","type":"LLUUID","size":1}]}]},{"name":"MoveTaskInventory","frequency":"Low","id":"288","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Single","count":1,"params":[{"name":"LocalID","type":"U32","size":1},{"name":"ItemID","type":"LLUUID","size":1}]}]},{"name":"RequestTaskInventory","frequency":"Low","id":"289","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Single","count":1,"params":[{"name":"LocalID","type":"U32","size":1}]}]},{"name":"ReplyTaskInventory","frequency":"Low","id":"290","flags":["Trusted","Zerocoded"],"blocks":[{"name":"InventoryData","type":"Single","count":1,"params":[{"name":"TaskID","type":"LLUUID","size":1},{"name":"Serial","type":"S16","size":1},{"name":"Filename","type":"Variable","size":"1"}]}]},{"name":"DeRezObject","frequency":"Low","id":"291","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"AgentBlock","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"Destination","type":"U8","size":1},{"name":"DestinationID","type":"LLUUID","size":1},{"name":"TransactionID","type":"LLUUID","size":1},{"name":"PacketCount","type":"U8","size":1},{"name":"PacketNumber","type":"U8","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1}]}]},{"name":"DeRezAck","frequency":"Low","id":"292","flags":["Trusted","Unencoded"],"blocks":[{"name":"TransactionData","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1},{"name":"Success","type":"BOOL","size":1}]}]},{"name":"RezObject","frequency":"Low","id":"293","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"RezData","type":"Single","count":1,"params":[{"name":"FromTaskID","type":"LLUUID","size":1},{"name":"BypassRaycast","type":"U8","size":1},{"name":"RayStart","type":"LLVector3","size":1},{"name":"RayEnd","type":"LLVector3","size":1},{"name":"RayTargetID","type":"LLUUID","size":1},{"name":"RayEndIsIntersection","type":"BOOL","size":1},{"name":"RezSelected","type":"BOOL","size":1},{"name":"RemoveItem","type":"BOOL","size":1},{"name":"ItemFlags","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1}]},{"name":"InventoryData","type":"Single","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"BaseMask","type":"U32","size":1},{"name":"OwnerMask","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"GroupOwned","type":"BOOL","size":1},{"name":"TransactionID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"InvType","type":"S8","size":1},{"name":"Flags","type":"U32","size":1},{"name":"SaleType","type":"U8","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"},{"name":"CreationDate","type":"S32","size":1},{"name":"CRC","type":"U32","size":1}]}]},{"name":"RezObjectFromNotecard","frequency":"Low","id":"294","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"RezData","type":"Single","count":1,"params":[{"name":"FromTaskID","type":"LLUUID","size":1},{"name":"BypassRaycast","type":"U8","size":1},{"name":"RayStart","type":"LLVector3","size":1},{"name":"RayEnd","type":"LLVector3","size":1},{"name":"RayTargetID","type":"LLUUID","size":1},{"name":"RayEndIsIntersection","type":"BOOL","size":1},{"name":"RezSelected","type":"BOOL","size":1},{"name":"RemoveItem","type":"BOOL","size":1},{"name":"ItemFlags","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1}]},{"name":"NotecardData","type":"Single","count":1,"params":[{"name":"NotecardItemID","type":"LLUUID","size":1},{"name":"ObjectID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1}]}]},{"name":"TransferInventory","frequency":"Low","id":"295","flags":["Trusted","Zerocoded"],"blocks":[{"name":"InfoBlock","type":"Single","count":1,"params":[{"name":"SourceID","type":"LLUUID","size":1},{"name":"DestID","type":"LLUUID","size":1},{"name":"TransactionID","type":"LLUUID","size":1}]},{"name":"InventoryBlock","type":"Variable","count":1,"params":[{"name":"InventoryID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1}]},{"name":"ValidationBlock","type":"Single","count":1,"params":[{"name":"NeedsValidation","type":"BOOL","size":1},{"name":"EstateID","type":"U32","size":1}]}]},{"name":"TransferInventoryAck","frequency":"Low","id":"296","flags":["Trusted","Zerocoded"],"blocks":[{"name":"InfoBlock","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1},{"name":"InventoryID","type":"LLUUID","size":1}]}]},{"name":"AcceptFriendship","frequency":"Low","id":"297","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"TransactionBlock","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1}]},{"name":"FolderData","type":"Variable","count":1,"params":[{"name":"FolderID","type":"LLUUID","size":1}]}]},{"name":"DeclineFriendship","frequency":"Low","id":"298","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"TransactionBlock","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1}]}]},{"name":"FormFriendship","frequency":"Low","id":"299","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentBlock","type":"Single","count":1,"params":[{"name":"SourceID","type":"LLUUID","size":1},{"name":"DestID","type":"LLUUID","size":1}]}]},{"name":"TerminateFriendship","frequency":"Low","id":"300","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ExBlock","type":"Single","count":1,"params":[{"name":"OtherID","type":"LLUUID","size":1}]}]},{"name":"OfferCallingCard","frequency":"Low","id":"301","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"AgentBlock","type":"Single","count":1,"params":[{"name":"DestID","type":"LLUUID","size":1},{"name":"TransactionID","type":"LLUUID","size":1}]}]},{"name":"AcceptCallingCard","frequency":"Low","id":"302","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"TransactionBlock","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1}]},{"name":"FolderData","type":"Variable","count":1,"params":[{"name":"FolderID","type":"LLUUID","size":1}]}]},{"name":"DeclineCallingCard","frequency":"Low","id":"303","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"TransactionBlock","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1}]}]},{"name":"RezScript","frequency":"Low","id":"304","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"UpdateBlock","type":"Single","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1},{"name":"Enabled","type":"BOOL","size":1}]},{"name":"InventoryBlock","type":"Single","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"BaseMask","type":"U32","size":1},{"name":"OwnerMask","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"GroupOwned","type":"BOOL","size":1},{"name":"TransactionID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"InvType","type":"S8","size":1},{"name":"Flags","type":"U32","size":1},{"name":"SaleType","type":"U8","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"},{"name":"CreationDate","type":"S32","size":1},{"name":"CRC","type":"U32","size":1}]}]},{"name":"CreateInventoryItem","frequency":"Low","id":"305","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"InventoryBlock","type":"Single","count":1,"params":[{"name":"CallbackID","type":"U32","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"TransactionID","type":"LLUUID","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"Type","type":"S8","size":1},{"name":"InvType","type":"S8","size":1},{"name":"WearableType","type":"U8","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"}]}]},{"name":"CreateLandmarkForEvent","frequency":"Low","id":"306","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"EventData","type":"Single","count":1,"params":[{"name":"EventID","type":"U32","size":1}]},{"name":"InventoryBlock","type":"Single","count":1,"params":[{"name":"FolderID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"}]}]},{"name":"EventLocationRequest","frequency":"Low","id":"307","flags":["Trusted","Zerocoded"],"blocks":[{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1}]},{"name":"EventData","type":"Single","count":1,"params":[{"name":"EventID","type":"U32","size":1}]}]},{"name":"EventLocationReply","frequency":"Low","id":"308","flags":["Trusted","Zerocoded"],"blocks":[{"name":"QueryData","type":"Single","count":1,"params":[{"name":"QueryID","type":"LLUUID","size":1}]},{"name":"EventData","type":"Single","count":1,"params":[{"name":"Success","type":"BOOL","size":1},{"name":"RegionID","type":"LLUUID","size":1},{"name":"RegionPos","type":"LLVector3","size":1}]}]},{"name":"RegionHandleRequest","frequency":"Low","id":"309","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"RequestBlock","type":"Single","count":1,"params":[{"name":"RegionID","type":"LLUUID","size":1}]}]},{"name":"RegionIDAndHandleReply","frequency":"Low","id":"310","flags":["Trusted","Unencoded"],"blocks":[{"name":"ReplyBlock","type":"Single","count":1,"params":[{"name":"RegionID","type":"LLUUID","size":1},{"name":"RegionHandle","type":"U64","size":1}]}]},{"name":"MoneyTransferRequest","frequency":"Low","id":"311","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"MoneyData","type":"Single","count":1,"params":[{"name":"SourceID","type":"LLUUID","size":1},{"name":"DestID","type":"LLUUID","size":1},{"name":"Flags","type":"U8","size":1},{"name":"Amount","type":"S32","size":1},{"name":"AggregatePermNextOwner","type":"U8","size":1},{"name":"AggregatePermInventory","type":"U8","size":1},{"name":"TransactionType","type":"S32","size":1},{"name":"Description","type":"Variable","size":"1"}]}]},{"name":"MoneyTransferBackend","frequency":"Low","id":"312","flags":["Trusted","Zerocoded"],"blocks":[{"name":"MoneyData","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1},{"name":"TransactionTime","type":"U32","size":1},{"name":"SourceID","type":"LLUUID","size":1},{"name":"DestID","type":"LLUUID","size":1},{"name":"Flags","type":"U8","size":1},{"name":"Amount","type":"S32","size":1},{"name":"AggregatePermNextOwner","type":"U8","size":1},{"name":"AggregatePermInventory","type":"U8","size":1},{"name":"TransactionType","type":"S32","size":1},{"name":"RegionID","type":"LLUUID","size":1},{"name":"GridX","type":"U32","size":1},{"name":"GridY","type":"U32","size":1},{"name":"Description","type":"Variable","size":"1"}]}]},{"name":"MoneyBalanceRequest","frequency":"Low","id":"313","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"MoneyData","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1}]}]},{"name":"MoneyBalanceReply","frequency":"Low","id":"314","flags":["Trusted","Zerocoded"],"blocks":[{"name":"MoneyData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"TransactionID","type":"LLUUID","size":1},{"name":"TransactionSuccess","type":"BOOL","size":1},{"name":"MoneyBalance","type":"S32","size":1},{"name":"SquareMetersCredit","type":"S32","size":1},{"name":"SquareMetersCommitted","type":"S32","size":1},{"name":"Description","type":"Variable","size":"1"}]},{"name":"TransactionInfo","type":"Single","count":1,"params":[{"name":"TransactionType","type":"S32","size":1},{"name":"SourceID","type":"LLUUID","size":1},{"name":"IsSourceGroup","type":"BOOL","size":1},{"name":"DestID","type":"LLUUID","size":1},{"name":"IsDestGroup","type":"BOOL","size":1},{"name":"Amount","type":"S32","size":1},{"name":"ItemDescription","type":"Variable","size":"1"}]}]},{"name":"RoutedMoneyBalanceReply","frequency":"Low","id":"315","flags":["Trusted","Zerocoded","UDPDeprecated"],"blocks":[{"name":"TargetBlock","type":"Single","count":1,"params":[{"name":"TargetIP","type":"IPADDR","size":1},{"name":"TargetPort","type":"IPPORT","size":1}]},{"name":"MoneyData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"TransactionID","type":"LLUUID","size":1},{"name":"TransactionSuccess","type":"BOOL","size":1},{"name":"MoneyBalance","type":"S32","size":1},{"name":"SquareMetersCredit","type":"S32","size":1},{"name":"SquareMetersCommitted","type":"S32","size":1},{"name":"Description","type":"Variable","size":"1"}]},{"name":"TransactionInfo","type":"Single","count":1,"params":[{"name":"TransactionType","type":"S32","size":1},{"name":"SourceID","type":"LLUUID","size":1},{"name":"IsSourceGroup","type":"BOOL","size":1},{"name":"DestID","type":"LLUUID","size":1},{"name":"IsDestGroup","type":"BOOL","size":1},{"name":"Amount","type":"S32","size":1},{"name":"ItemDescription","type":"Variable","size":"1"}]}]},{"name":"ActivateGestures","frequency":"Low","id":"316","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1}]},{"name":"Data","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"AssetID","type":"LLUUID","size":1},{"name":"GestureFlags","type":"U32","size":1}]}]},{"name":"DeactivateGestures","frequency":"Low","id":"317","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1}]},{"name":"Data","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"GestureFlags","type":"U32","size":1}]}]},{"name":"MuteListUpdate","frequency":"Low","id":"318","flags":["Trusted","Unencoded"],"blocks":[{"name":"MuteData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"Filename","type":"Variable","size":"1"}]}]},{"name":"UseCachedMuteList","frequency":"Low","id":"319","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]}]},{"name":"GrantUserRights","frequency":"Low","id":"320","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Rights","type":"Variable","count":1,"params":[{"name":"AgentRelated","type":"LLUUID","size":1},{"name":"RelatedRights","type":"S32","size":1}]}]},{"name":"ChangeUserRights","frequency":"Low","id":"321","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"Rights","type":"Variable","count":1,"params":[{"name":"AgentRelated","type":"LLUUID","size":1},{"name":"RelatedRights","type":"S32","size":1}]}]},{"name":"OnlineNotification","frequency":"Low","id":"322","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentBlock","type":"Variable","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]}]},{"name":"OfflineNotification","frequency":"Low","id":"323","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentBlock","type":"Variable","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]}]},{"name":"SetStartLocationRequest","frequency":"Low","id":"324","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"StartLocationData","type":"Single","count":1,"params":[{"name":"SimName","type":"Variable","size":"1"},{"name":"LocationID","type":"U32","size":1},{"name":"LocationPos","type":"LLVector3","size":1},{"name":"LocationLookAt","type":"LLVector3","size":1}]}]},{"name":"SetStartLocation","frequency":"Low","id":"325","flags":["Trusted","Zerocoded"],"blocks":[{"name":"StartLocationData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"RegionID","type":"LLUUID","size":1},{"name":"LocationID","type":"U32","size":1},{"name":"RegionHandle","type":"U64","size":1},{"name":"LocationPos","type":"LLVector3","size":1},{"name":"LocationLookAt","type":"LLVector3","size":1}]}]},{"name":"NetTest","frequency":"Low","id":"326","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"NetBlock","type":"Single","count":1,"params":[{"name":"Port","type":"IPPORT","size":1}]}]},{"name":"SetCPURatio","frequency":"Low","id":"327","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"Data","type":"Single","count":1,"params":[{"name":"Ratio","type":"U8","size":1}]}]},{"name":"SimCrashed","frequency":"Low","id":"328","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"Data","type":"Single","count":1,"params":[{"name":"RegionX","type":"U32","size":1},{"name":"RegionY","type":"U32","size":1}]},{"name":"Users","type":"Variable","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]}]},{"name":"NameValuePair","frequency":"Low","id":"329","flags":["Trusted","Unencoded"],"blocks":[{"name":"TaskData","type":"Single","count":1,"params":[{"name":"ID","type":"LLUUID","size":1}]},{"name":"NameValueData","type":"Variable","count":1,"params":[{"name":"NVPair","type":"Variable","size":"2"}]}]},{"name":"RemoveNameValuePair","frequency":"Low","id":"330","flags":["Trusted","Unencoded"],"blocks":[{"name":"TaskData","type":"Single","count":1,"params":[{"name":"ID","type":"LLUUID","size":1}]},{"name":"NameValueData","type":"Variable","count":1,"params":[{"name":"NVPair","type":"Variable","size":"2"}]}]},{"name":"UpdateAttachment","frequency":"Low","id":"331","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"AttachmentBlock","type":"Single","count":1,"params":[{"name":"AttachmentPoint","type":"U8","size":1}]},{"name":"OperationData","type":"Single","count":1,"params":[{"name":"AddItem","type":"BOOL","size":1},{"name":"UseExistingAsset","type":"BOOL","size":1}]},{"name":"InventoryData","type":"Single","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"BaseMask","type":"U32","size":1},{"name":"OwnerMask","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"GroupOwned","type":"BOOL","size":1},{"name":"AssetID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"InvType","type":"S8","size":1},{"name":"Flags","type":"U32","size":1},{"name":"SaleType","type":"U8","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"},{"name":"CreationDate","type":"S32","size":1},{"name":"CRC","type":"U32","size":1}]}]},{"name":"RemoveAttachment","frequency":"Low","id":"332","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"AttachmentBlock","type":"Single","count":1,"params":[{"name":"AttachmentPoint","type":"U8","size":1},{"name":"ItemID","type":"LLUUID","size":1}]}]},{"name":"SoundTrigger","frequency":"High","id":"29","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"SoundData","type":"Single","count":1,"params":[{"name":"SoundID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"ObjectID","type":"LLUUID","size":1},{"name":"ParentID","type":"LLUUID","size":1},{"name":"Handle","type":"U64","size":1},{"name":"Position","type":"LLVector3","size":1},{"name":"Gain","type":"F32","size":1}]}]},{"name":"AttachedSound","frequency":"Medium","id":"13","flags":["Trusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"SoundID","type":"LLUUID","size":1},{"name":"ObjectID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"Gain","type":"F32","size":1},{"name":"Flags","type":"U8","size":1}]}]},{"name":"AttachedSoundGainChange","frequency":"Medium","id":"14","flags":["Trusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"Gain","type":"F32","size":1}]}]},{"name":"PreloadSound","frequency":"Medium","id":"15","flags":["Trusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Variable","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"SoundID","type":"LLUUID","size":1}]}]},{"name":"AssetUploadRequest","frequency":"Low","id":"333","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AssetBlock","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"Tempfile","type":"BOOL","size":1},{"name":"StoreLocal","type":"BOOL","size":1},{"name":"AssetData","type":"Variable","size":"2"}]}]},{"name":"AssetUploadComplete","frequency":"Low","id":"334","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AssetBlock","type":"Single","count":1,"params":[{"name":"UUID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"Success","type":"BOOL","size":1}]}]},{"name":"EmailMessageRequest","frequency":"Low","id":"335","flags":["Trusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"FromAddress","type":"Variable","size":"1"},{"name":"Subject","type":"Variable","size":"1"}]}]},{"name":"EmailMessageReply","frequency":"Low","id":"336","flags":["Trusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"ObjectID","type":"LLUUID","size":1},{"name":"More","type":"U32","size":1},{"name":"Time","type":"U32","size":1},{"name":"FromAddress","type":"Variable","size":"1"},{"name":"Subject","type":"Variable","size":"1"},{"name":"Data","type":"Variable","size":"2"},{"name":"MailFilter","type":"Variable","size":"1"}]}]},{"name":"InternalScriptMail","frequency":"Medium","id":"16","flags":["Trusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"From","type":"Variable","size":"1"},{"name":"To","type":"LLUUID","size":1},{"name":"Subject","type":"Variable","size":"1"},{"name":"Body","type":"Variable","size":"2"}]}]},{"name":"ScriptDataRequest","frequency":"Low","id":"337","flags":["Trusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Variable","count":1,"params":[{"name":"Hash","type":"U64","size":1},{"name":"RequestType","type":"S8","size":1},{"name":"Request","type":"Variable","size":"2"}]}]},{"name":"ScriptDataReply","frequency":"Low","id":"338","flags":["Trusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Variable","count":1,"params":[{"name":"Hash","type":"U64","size":1},{"name":"Reply","type":"Variable","size":"2"}]}]},{"name":"CreateGroupRequest","frequency":"Low","id":"339","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"Name","type":"Variable","size":"1"},{"name":"Charter","type":"Variable","size":"2"},{"name":"ShowInList","type":"BOOL","size":1},{"name":"InsigniaID","type":"LLUUID","size":1},{"name":"MembershipFee","type":"S32","size":1},{"name":"OpenEnrollment","type":"BOOL","size":1},{"name":"AllowPublish","type":"BOOL","size":1},{"name":"MaturePublish","type":"BOOL","size":1}]}]},{"name":"CreateGroupReply","frequency":"Low","id":"340","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"ReplyData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"Success","type":"BOOL","size":1},{"name":"Message","type":"Variable","size":"1"}]}]},{"name":"UpdateGroupInfo","frequency":"Low","id":"341","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"Charter","type":"Variable","size":"2"},{"name":"ShowInList","type":"BOOL","size":1},{"name":"InsigniaID","type":"LLUUID","size":1},{"name":"MembershipFee","type":"S32","size":1},{"name":"OpenEnrollment","type":"BOOL","size":1},{"name":"AllowPublish","type":"BOOL","size":1},{"name":"MaturePublish","type":"BOOL","size":1}]}]},{"name":"GroupRoleChanges","frequency":"Low","id":"342","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"RoleChange","type":"Variable","count":1,"params":[{"name":"RoleID","type":"LLUUID","size":1},{"name":"MemberID","type":"LLUUID","size":1},{"name":"Change","type":"U32","size":1}]}]},{"name":"JoinGroupRequest","frequency":"Low","id":"343","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1}]}]},{"name":"JoinGroupReply","frequency":"Low","id":"344","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"Success","type":"BOOL","size":1}]}]},{"name":"EjectGroupMemberRequest","frequency":"Low","id":"345","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"EjectData","type":"Variable","count":1,"params":[{"name":"EjecteeID","type":"LLUUID","size":1}]}]},{"name":"EjectGroupMemberReply","frequency":"Low","id":"346","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"EjectData","type":"Single","count":1,"params":[{"name":"Success","type":"BOOL","size":1}]}]},{"name":"LeaveGroupRequest","frequency":"Low","id":"347","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1}]}]},{"name":"LeaveGroupReply","frequency":"Low","id":"348","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"Success","type":"BOOL","size":1}]}]},{"name":"InviteGroupRequest","frequency":"Low","id":"349","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"InviteData","type":"Variable","count":1,"params":[{"name":"InviteeID","type":"LLUUID","size":1},{"name":"RoleID","type":"LLUUID","size":1}]}]},{"name":"InviteGroupResponse","frequency":"Low","id":"350","flags":["Trusted","Unencoded"],"blocks":[{"name":"InviteData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"InviteeID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"RoleID","type":"LLUUID","size":1},{"name":"MembershipFee","type":"S32","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupLimit","type":"S32","size":1}]}]},{"name":"GroupProfileRequest","frequency":"Low","id":"351","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1}]}]},{"name":"GroupProfileReply","frequency":"Low","id":"352","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Charter","type":"Variable","size":"2"},{"name":"ShowInList","type":"BOOL","size":1},{"name":"MemberTitle","type":"Variable","size":"1"},{"name":"PowersMask","type":"U64","size":1},{"name":"InsigniaID","type":"LLUUID","size":1},{"name":"FounderID","type":"LLUUID","size":1},{"name":"MembershipFee","type":"S32","size":1},{"name":"OpenEnrollment","type":"BOOL","size":1},{"name":"Money","type":"S32","size":1},{"name":"GroupMembershipCount","type":"S32","size":1},{"name":"GroupRolesCount","type":"S32","size":1},{"name":"AllowPublish","type":"BOOL","size":1},{"name":"MaturePublish","type":"BOOL","size":1},{"name":"OwnerRole","type":"LLUUID","size":1}]}]},{"name":"GroupAccountSummaryRequest","frequency":"Low","id":"353","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"MoneyData","type":"Single","count":1,"params":[{"name":"RequestID","type":"LLUUID","size":1},{"name":"IntervalDays","type":"S32","size":1},{"name":"CurrentInterval","type":"S32","size":1}]}]},{"name":"GroupAccountSummaryReply","frequency":"Low","id":"354","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"MoneyData","type":"Single","count":1,"params":[{"name":"RequestID","type":"LLUUID","size":1},{"name":"IntervalDays","type":"S32","size":1},{"name":"CurrentInterval","type":"S32","size":1},{"name":"StartDate","type":"Variable","size":"1"},{"name":"Balance","type":"S32","size":1},{"name":"TotalCredits","type":"S32","size":1},{"name":"TotalDebits","type":"S32","size":1},{"name":"ObjectTaxCurrent","type":"S32","size":1},{"name":"LightTaxCurrent","type":"S32","size":1},{"name":"LandTaxCurrent","type":"S32","size":1},{"name":"GroupTaxCurrent","type":"S32","size":1},{"name":"ParcelDirFeeCurrent","type":"S32","size":1},{"name":"ObjectTaxEstimate","type":"S32","size":1},{"name":"LightTaxEstimate","type":"S32","size":1},{"name":"LandTaxEstimate","type":"S32","size":1},{"name":"GroupTaxEstimate","type":"S32","size":1},{"name":"ParcelDirFeeEstimate","type":"S32","size":1},{"name":"NonExemptMembers","type":"S32","size":1},{"name":"LastTaxDate","type":"Variable","size":"1"},{"name":"TaxDate","type":"Variable","size":"1"}]}]},{"name":"GroupAccountDetailsRequest","frequency":"Low","id":"355","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"MoneyData","type":"Single","count":1,"params":[{"name":"RequestID","type":"LLUUID","size":1},{"name":"IntervalDays","type":"S32","size":1},{"name":"CurrentInterval","type":"S32","size":1}]}]},{"name":"GroupAccountDetailsReply","frequency":"Low","id":"356","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"MoneyData","type":"Single","count":1,"params":[{"name":"RequestID","type":"LLUUID","size":1},{"name":"IntervalDays","type":"S32","size":1},{"name":"CurrentInterval","type":"S32","size":1},{"name":"StartDate","type":"Variable","size":"1"}]},{"name":"HistoryData","type":"Variable","count":1,"params":[{"name":"Description","type":"Variable","size":"1"},{"name":"Amount","type":"S32","size":1}]}]},{"name":"GroupAccountTransactionsRequest","frequency":"Low","id":"357","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"MoneyData","type":"Single","count":1,"params":[{"name":"RequestID","type":"LLUUID","size":1},{"name":"IntervalDays","type":"S32","size":1},{"name":"CurrentInterval","type":"S32","size":1}]}]},{"name":"GroupAccountTransactionsReply","frequency":"Low","id":"358","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"MoneyData","type":"Single","count":1,"params":[{"name":"RequestID","type":"LLUUID","size":1},{"name":"IntervalDays","type":"S32","size":1},{"name":"CurrentInterval","type":"S32","size":1},{"name":"StartDate","type":"Variable","size":"1"}]},{"name":"HistoryData","type":"Variable","count":1,"params":[{"name":"Time","type":"Variable","size":"1"},{"name":"User","type":"Variable","size":"1"},{"name":"Type","type":"S32","size":1},{"name":"Item","type":"Variable","size":"1"},{"name":"Amount","type":"S32","size":1}]}]},{"name":"GroupActiveProposalsRequest","frequency":"Low","id":"359","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"TransactionData","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1}]}]},{"name":"GroupActiveProposalItemReply","frequency":"Low","id":"360","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"TransactionData","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1},{"name":"TotalNumItems","type":"U32","size":1}]},{"name":"ProposalData","type":"Variable","count":1,"params":[{"name":"VoteID","type":"LLUUID","size":1},{"name":"VoteInitiator","type":"LLUUID","size":1},{"name":"TerseDateID","type":"Variable","size":"1"},{"name":"StartDateTime","type":"Variable","size":"1"},{"name":"EndDateTime","type":"Variable","size":"1"},{"name":"AlreadyVoted","type":"BOOL","size":1},{"name":"VoteCast","type":"Variable","size":"1"},{"name":"Majority","type":"F32","size":1},{"name":"Quorum","type":"S32","size":1},{"name":"ProposalText","type":"Variable","size":"1"}]}]},{"name":"GroupVoteHistoryRequest","frequency":"Low","id":"361","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"TransactionData","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1}]}]},{"name":"GroupVoteHistoryItemReply","frequency":"Low","id":"362","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"TransactionData","type":"Single","count":1,"params":[{"name":"TransactionID","type":"LLUUID","size":1},{"name":"TotalNumItems","type":"U32","size":1}]},{"name":"HistoryItemData","type":"Single","count":1,"params":[{"name":"VoteID","type":"LLUUID","size":1},{"name":"TerseDateID","type":"Variable","size":"1"},{"name":"StartDateTime","type":"Variable","size":"1"},{"name":"EndDateTime","type":"Variable","size":"1"},{"name":"VoteInitiator","type":"LLUUID","size":1},{"name":"VoteType","type":"Variable","size":"1"},{"name":"VoteResult","type":"Variable","size":"1"},{"name":"Majority","type":"F32","size":1},{"name":"Quorum","type":"S32","size":1},{"name":"ProposalText","type":"Variable","size":"2"}]},{"name":"VoteItem","type":"Variable","count":1,"params":[{"name":"CandidateID","type":"LLUUID","size":1},{"name":"VoteCast","type":"Variable","size":"1"},{"name":"NumVotes","type":"S32","size":1}]}]},{"name":"StartGroupProposal","frequency":"Low","id":"363","flags":["NotTrusted","Zerocoded","UDPDeprecated"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ProposalData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"Quorum","type":"S32","size":1},{"name":"Majority","type":"F32","size":1},{"name":"Duration","type":"S32","size":1},{"name":"ProposalText","type":"Variable","size":"1"}]}]},{"name":"GroupProposalBallot","frequency":"Low","id":"364","flags":["NotTrusted","Unencoded","UDPDeprecated"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ProposalData","type":"Single","count":1,"params":[{"name":"ProposalID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"VoteCast","type":"Variable","size":"1"}]}]},{"name":"TallyVotes","frequency":"Low","id":"365","flags":["Trusted","Unencoded"],"blocks":[]},{"name":"GroupMembersRequest","frequency":"Low","id":"366","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"RequestID","type":"LLUUID","size":1}]}]},{"name":"GroupMembersReply","frequency":"Low","id":"367","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"RequestID","type":"LLUUID","size":1},{"name":"MemberCount","type":"S32","size":1}]},{"name":"MemberData","type":"Variable","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"Contribution","type":"S32","size":1},{"name":"OnlineStatus","type":"Variable","size":"1"},{"name":"AgentPowers","type":"U64","size":1},{"name":"Title","type":"Variable","size":"1"},{"name":"IsOwner","type":"BOOL","size":1}]}]},{"name":"ActivateGroup","frequency":"Low","id":"368","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]}]},{"name":"SetGroupContribution","frequency":"Low","id":"369","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"Contribution","type":"S32","size":1}]}]},{"name":"SetGroupAcceptNotices","frequency":"Low","id":"370","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"AcceptNotices","type":"BOOL","size":1}]},{"name":"NewData","type":"Single","count":1,"params":[{"name":"ListInProfile","type":"BOOL","size":1}]}]},{"name":"GroupRoleDataRequest","frequency":"Low","id":"371","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"RequestID","type":"LLUUID","size":1}]}]},{"name":"GroupRoleDataReply","frequency":"Low","id":"372","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"RequestID","type":"LLUUID","size":1},{"name":"RoleCount","type":"S32","size":1}]},{"name":"RoleData","type":"Variable","count":1,"params":[{"name":"RoleID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Title","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"},{"name":"Powers","type":"U64","size":1},{"name":"Members","type":"U32","size":1}]}]},{"name":"GroupRoleMembersRequest","frequency":"Low","id":"373","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"RequestID","type":"LLUUID","size":1}]}]},{"name":"GroupRoleMembersReply","frequency":"Low","id":"374","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"RequestID","type":"LLUUID","size":1},{"name":"TotalPairs","type":"U32","size":1}]},{"name":"MemberData","type":"Variable","count":1,"params":[{"name":"RoleID","type":"LLUUID","size":1},{"name":"MemberID","type":"LLUUID","size":1}]}]},{"name":"GroupTitlesRequest","frequency":"Low","id":"375","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"RequestID","type":"LLUUID","size":1}]}]},{"name":"GroupTitlesReply","frequency":"Low","id":"376","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"RequestID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Variable","count":1,"params":[{"name":"Title","type":"Variable","size":"1"},{"name":"RoleID","type":"LLUUID","size":1},{"name":"Selected","type":"BOOL","size":1}]}]},{"name":"GroupTitleUpdate","frequency":"Low","id":"377","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"TitleRoleID","type":"LLUUID","size":1}]}]},{"name":"GroupRoleUpdate","frequency":"Low","id":"378","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]},{"name":"RoleData","type":"Variable","count":1,"params":[{"name":"RoleID","type":"LLUUID","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"},{"name":"Title","type":"Variable","size":"1"},{"name":"Powers","type":"U64","size":1},{"name":"UpdateType","type":"U8","size":1}]}]},{"name":"LiveHelpGroupRequest","frequency":"Low","id":"379","flags":["Trusted","Unencoded"],"blocks":[{"name":"RequestData","type":"Single","count":1,"params":[{"name":"RequestID","type":"LLUUID","size":1},{"name":"AgentID","type":"LLUUID","size":1}]}]},{"name":"LiveHelpGroupReply","frequency":"Low","id":"380","flags":["Trusted","Unencoded"],"blocks":[{"name":"ReplyData","type":"Single","count":1,"params":[{"name":"RequestID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"Selection","type":"Variable","size":"1"}]}]},{"name":"AgentWearablesRequest","frequency":"Low","id":"381","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"AgentWearablesUpdate","frequency":"Low","id":"382","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"SerialNum","type":"U32","size":1}]},{"name":"WearableData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"AssetID","type":"LLUUID","size":1},{"name":"WearableType","type":"U8","size":1}]}]},{"name":"AgentIsNowWearing","frequency":"Low","id":"383","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"WearableData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"WearableType","type":"U8","size":1}]}]},{"name":"AgentCachedTexture","frequency":"Low","id":"384","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"SerialNum","type":"S32","size":1}]},{"name":"WearableData","type":"Variable","count":1,"params":[{"name":"ID","type":"LLUUID","size":1},{"name":"TextureIndex","type":"U8","size":1}]}]},{"name":"AgentCachedTextureResponse","frequency":"Low","id":"385","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"SerialNum","type":"S32","size":1}]},{"name":"WearableData","type":"Variable","count":1,"params":[{"name":"TextureID","type":"LLUUID","size":1},{"name":"TextureIndex","type":"U8","size":1},{"name":"HostName","type":"Variable","size":"1"}]}]},{"name":"AgentDataUpdateRequest","frequency":"Low","id":"386","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"AgentDataUpdate","frequency":"Low","id":"387","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"FirstName","type":"Variable","size":"1"},{"name":"LastName","type":"Variable","size":"1"},{"name":"GroupTitle","type":"Variable","size":"1"},{"name":"ActiveGroupID","type":"LLUUID","size":1},{"name":"GroupPowers","type":"U64","size":1},{"name":"GroupName","type":"Variable","size":"1"}]}]},{"name":"GroupDataUpdate","frequency":"Low","id":"388","flags":["Trusted","Zerocoded"],"blocks":[{"name":"AgentGroupData","type":"Variable","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"AgentPowers","type":"U64","size":1},{"name":"GroupTitle","type":"Variable","size":"1"}]}]},{"name":"AgentGroupDataUpdate","frequency":"Low","id":"389","flags":["Trusted","Zerocoded","UDPDeprecated"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"GroupData","type":"Variable","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1},{"name":"GroupPowers","type":"U64","size":1},{"name":"AcceptNotices","type":"BOOL","size":1},{"name":"GroupInsigniaID","type":"LLUUID","size":1},{"name":"Contribution","type":"S32","size":1},{"name":"GroupName","type":"Variable","size":"1"}]}]},{"name":"AgentDropGroup","frequency":"Low","id":"390","flags":["Trusted","Zerocoded","UDPDeprecated"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1}]}]},{"name":"LogTextMessage","frequency":"Low","id":"391","flags":["Trusted","Zerocoded"],"blocks":[{"name":"DataBlock","type":"Variable","count":1,"params":[{"name":"FromAgentId","type":"LLUUID","size":1},{"name":"ToAgentId","type":"LLUUID","size":1},{"name":"GlobalX","type":"F64","size":1},{"name":"GlobalY","type":"F64","size":1},{"name":"Time","type":"U32","size":1},{"name":"Message","type":"Variable","size":"2"}]}]},{"name":"ViewerEffect","frequency":"Medium","id":"17","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"Effect","type":"Variable","count":1,"params":[{"name":"ID","type":"LLUUID","size":1},{"name":"AgentID","type":"LLUUID","size":1},{"name":"Type","type":"U8","size":1},{"name":"Duration","type":"F32","size":1},{"name":"Color","type":"Fixed","size":"4"},{"name":"TypeData","type":"Variable","size":"1"}]}]},{"name":"CreateTrustedCircuit","frequency":"Low","id":"392","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"EndPointID","type":"LLUUID","size":1},{"name":"Digest","type":"Fixed","size":"32"}]}]},{"name":"DenyTrustedCircuit","frequency":"Low","id":"393","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"EndPointID","type":"LLUUID","size":1}]}]},{"name":"RequestTrustedCircuit","frequency":"Low","id":"394","flags":["Trusted","Unencoded"],"blocks":[]},{"name":"RezSingleAttachmentFromInv","frequency":"Low","id":"395","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"AttachmentPt","type":"U8","size":1},{"name":"ItemFlags","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"}]}]},{"name":"RezMultipleAttachmentsFromInv","frequency":"Low","id":"396","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"HeaderData","type":"Single","count":1,"params":[{"name":"CompoundMsgID","type":"LLUUID","size":1},{"name":"TotalObjects","type":"U8","size":1},{"name":"FirstDetachAll","type":"BOOL","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"AttachmentPt","type":"U8","size":1},{"name":"ItemFlags","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"}]}]},{"name":"DetachAttachmentIntoInv","frequency":"Low","id":"397","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"ObjectData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1}]}]},{"name":"CreateNewOutfitAttachments","frequency":"Low","id":"398","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"HeaderData","type":"Single","count":1,"params":[{"name":"NewFolderID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"OldItemID","type":"LLUUID","size":1},{"name":"OldFolderID","type":"LLUUID","size":1}]}]},{"name":"UserInfoRequest","frequency":"Low","id":"399","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]}]},{"name":"UserInfoReply","frequency":"Low","id":"400","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"UserData","type":"Single","count":1,"params":[{"name":"IMViaEMail","type":"BOOL","size":1},{"name":"DirectoryVisibility","type":"Variable","size":"1"},{"name":"EMail","type":"Variable","size":"2"}]}]},{"name":"UpdateUserInfo","frequency":"Low","id":"401","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"UserData","type":"Single","count":1,"params":[{"name":"IMViaEMail","type":"BOOL","size":1},{"name":"DirectoryVisibility","type":"Variable","size":"1"}]}]},{"name":"ParcelRename","frequency":"Low","id":"402","flags":["Trusted","Unencoded"],"blocks":[{"name":"ParcelData","type":"Variable","count":1,"params":[{"name":"ParcelID","type":"LLUUID","size":1},{"name":"NewName","type":"Variable","size":"1"}]}]},{"name":"InitiateDownload","frequency":"Low","id":"403","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"FileData","type":"Single","count":1,"params":[{"name":"SimFilename","type":"Variable","size":"1"},{"name":"ViewerFilename","type":"Variable","size":"1"}]}]},{"name":"SystemMessage","frequency":"Low","id":"404","flags":["Trusted","Zerocoded"],"blocks":[{"name":"MethodData","type":"Single","count":1,"params":[{"name":"Method","type":"Variable","size":"1"},{"name":"Invoice","type":"LLUUID","size":1},{"name":"Digest","type":"Fixed","size":"32"}]},{"name":"ParamList","type":"Variable","count":1,"params":[{"name":"Parameter","type":"Variable","size":"1"}]}]},{"name":"MapLayerRequest","frequency":"Low","id":"405","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1},{"name":"EstateID","type":"U32","size":1},{"name":"Godlike","type":"BOOL","size":1}]}]},{"name":"MapLayerReply","frequency":"Low","id":"406","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1}]},{"name":"LayerData","type":"Variable","count":1,"params":[{"name":"Left","type":"U32","size":1},{"name":"Right","type":"U32","size":1},{"name":"Top","type":"U32","size":1},{"name":"Bottom","type":"U32","size":1},{"name":"ImageID","type":"LLUUID","size":1}]}]},{"name":"MapBlockRequest","frequency":"Low","id":"407","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1},{"name":"EstateID","type":"U32","size":1},{"name":"Godlike","type":"BOOL","size":1}]},{"name":"PositionData","type":"Single","count":1,"params":[{"name":"MinX","type":"U16","size":1},{"name":"MaxX","type":"U16","size":1},{"name":"MinY","type":"U16","size":1},{"name":"MaxY","type":"U16","size":1}]}]},{"name":"MapNameRequest","frequency":"Low","id":"408","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1},{"name":"EstateID","type":"U32","size":1},{"name":"Godlike","type":"BOOL","size":1}]},{"name":"NameData","type":"Single","count":1,"params":[{"name":"Name","type":"Variable","size":"1"}]}]},{"name":"MapBlockReply","frequency":"Low","id":"409","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1}]},{"name":"Data","type":"Variable","count":1,"params":[{"name":"X","type":"U16","size":1},{"name":"Y","type":"U16","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Access","type":"U8","size":1},{"name":"RegionFlags","type":"U32","size":1},{"name":"WaterHeight","type":"U8","size":1},{"name":"Agents","type":"U8","size":1},{"name":"MapImageID","type":"LLUUID","size":1}]}]},{"name":"MapItemRequest","frequency":"Low","id":"410","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1},{"name":"EstateID","type":"U32","size":1},{"name":"Godlike","type":"BOOL","size":1}]},{"name":"RequestData","type":"Single","count":1,"params":[{"name":"ItemType","type":"U32","size":1},{"name":"RegionHandle","type":"U64","size":1}]}]},{"name":"MapItemReply","frequency":"Low","id":"411","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1}]},{"name":"RequestData","type":"Single","count":1,"params":[{"name":"ItemType","type":"U32","size":1}]},{"name":"Data","type":"Variable","count":1,"params":[{"name":"X","type":"U32","size":1},{"name":"Y","type":"U32","size":1},{"name":"ID","type":"LLUUID","size":1},{"name":"Extra","type":"S32","size":1},{"name":"Extra2","type":"S32","size":1},{"name":"Name","type":"Variable","size":"1"}]}]},{"name":"SendPostcard","frequency":"Low","id":"412","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"AssetID","type":"LLUUID","size":1},{"name":"PosGlobal","type":"LLVector3d","size":1},{"name":"To","type":"Variable","size":"1"},{"name":"From","type":"Variable","size":"1"},{"name":"Name","type":"Variable","size":"1"},{"name":"Subject","type":"Variable","size":"1"},{"name":"Msg","type":"Variable","size":"2"},{"name":"AllowPublish","type":"BOOL","size":1},{"name":"MaturePublish","type":"BOOL","size":1}]}]},{"name":"RpcChannelRequest","frequency":"Low","id":"413","flags":["Trusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"GridX","type":"U32","size":1},{"name":"GridY","type":"U32","size":1},{"name":"TaskID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1}]}]},{"name":"RpcChannelReply","frequency":"Low","id":"414","flags":["Trusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"TaskID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1},{"name":"ChannelID","type":"LLUUID","size":1}]}]},{"name":"RpcScriptRequestInbound","frequency":"Low","id":"415","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"TargetBlock","type":"Single","count":1,"params":[{"name":"GridX","type":"U32","size":1},{"name":"GridY","type":"U32","size":1}]},{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"TaskID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1},{"name":"ChannelID","type":"LLUUID","size":1},{"name":"IntValue","type":"U32","size":1},{"name":"StringValue","type":"Variable","size":"2"}]}]},{"name":"RpcScriptRequestInboundForward","frequency":"Low","id":"416","flags":["Trusted","Unencoded","UDPDeprecated"],"blocks":[{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"RPCServerIP","type":"IPADDR","size":1},{"name":"RPCServerPort","type":"IPPORT","size":1},{"name":"TaskID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1},{"name":"ChannelID","type":"LLUUID","size":1},{"name":"IntValue","type":"U32","size":1},{"name":"StringValue","type":"Variable","size":"2"}]}]},{"name":"RpcScriptReplyInbound","frequency":"Low","id":"417","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"TaskID","type":"LLUUID","size":1},{"name":"ItemID","type":"LLUUID","size":1},{"name":"ChannelID","type":"LLUUID","size":1},{"name":"IntValue","type":"U32","size":1},{"name":"StringValue","type":"Variable","size":"2"}]}]},{"name":"ScriptMailRegistration","frequency":"Low","id":"418","flags":["Trusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"TargetIP","type":"Variable","size":"1"},{"name":"TargetPort","type":"IPPORT","size":1},{"name":"TaskID","type":"LLUUID","size":1},{"name":"Flags","type":"U32","size":1}]}]},{"name":"ParcelMediaCommandMessage","frequency":"Low","id":"419","flags":["Trusted","Unencoded"],"blocks":[{"name":"CommandBlock","type":"Single","count":1,"params":[{"name":"Flags","type":"U32","size":1},{"name":"Command","type":"U32","size":1},{"name":"Time","type":"F32","size":1}]}]},{"name":"ParcelMediaUpdate","frequency":"Low","id":"420","flags":["Trusted","Unencoded"],"blocks":[{"name":"DataBlock","type":"Single","count":1,"params":[{"name":"MediaURL","type":"Variable","size":"1"},{"name":"MediaID","type":"LLUUID","size":1},{"name":"MediaAutoScale","type":"U8","size":1}]},{"name":"DataBlockExtended","type":"Single","count":1,"params":[{"name":"MediaType","type":"Variable","size":"1"},{"name":"MediaDesc","type":"Variable","size":"1"},{"name":"MediaWidth","type":"S32","size":1},{"name":"MediaHeight","type":"S32","size":1},{"name":"MediaLoop","type":"U8","size":1}]}]},{"name":"LandStatRequest","frequency":"Low","id":"421","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"RequestData","type":"Single","count":1,"params":[{"name":"ReportType","type":"U32","size":1},{"name":"RequestFlags","type":"U32","size":1},{"name":"Filter","type":"Variable","size":"1"},{"name":"ParcelLocalID","type":"S32","size":1}]}]},{"name":"LandStatReply","frequency":"Low","id":"422","flags":["Trusted","Unencoded","UDPDeprecated"],"blocks":[{"name":"RequestData","type":"Single","count":1,"params":[{"name":"ReportType","type":"U32","size":1},{"name":"RequestFlags","type":"U32","size":1},{"name":"TotalObjectCount","type":"U32","size":1}]},{"name":"ReportData","type":"Variable","count":1,"params":[{"name":"TaskLocalID","type":"U32","size":1},{"name":"TaskID","type":"LLUUID","size":1},{"name":"LocationX","type":"F32","size":1},{"name":"LocationY","type":"F32","size":1},{"name":"LocationZ","type":"F32","size":1},{"name":"Score","type":"F32","size":1},{"name":"TaskName","type":"Variable","size":"1"},{"name":"OwnerName","type":"Variable","size":"1"}]}]},{"name":"Error","frequency":"Low","id":"423","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1}]},{"name":"Data","type":"Single","count":1,"params":[{"name":"Code","type":"S32","size":1},{"name":"Token","type":"Variable","size":"1"},{"name":"ID","type":"LLUUID","size":1},{"name":"System","type":"Variable","size":"1"},{"name":"Message","type":"Variable","size":"2"},{"name":"Data","type":"Variable","size":"2"}]}]},{"name":"ObjectIncludeInSearch","frequency":"Low","id":"424","flags":["NotTrusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"ObjectData","type":"Variable","count":1,"params":[{"name":"ObjectLocalID","type":"U32","size":1},{"name":"IncludeInSearch","type":"BOOL","size":1}]}]},{"name":"RezRestoreToWorld","frequency":"Low","id":"425","flags":["NotTrusted","Unencoded","UDPDeprecated"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"InventoryData","type":"Single","count":1,"params":[{"name":"ItemID","type":"LLUUID","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"CreatorID","type":"LLUUID","size":1},{"name":"OwnerID","type":"LLUUID","size":1},{"name":"GroupID","type":"LLUUID","size":1},{"name":"BaseMask","type":"U32","size":1},{"name":"OwnerMask","type":"U32","size":1},{"name":"GroupMask","type":"U32","size":1},{"name":"EveryoneMask","type":"U32","size":1},{"name":"NextOwnerMask","type":"U32","size":1},{"name":"GroupOwned","type":"BOOL","size":1},{"name":"TransactionID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"InvType","type":"S8","size":1},{"name":"Flags","type":"U32","size":1},{"name":"SaleType","type":"U8","size":1},{"name":"SalePrice","type":"S32","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"},{"name":"CreationDate","type":"S32","size":1},{"name":"CRC","type":"U32","size":1}]}]},{"name":"LinkInventoryItem","frequency":"Low","id":"426","flags":["NotTrusted","Zerocoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1}]},{"name":"InventoryBlock","type":"Single","count":1,"params":[{"name":"CallbackID","type":"U32","size":1},{"name":"FolderID","type":"LLUUID","size":1},{"name":"TransactionID","type":"LLUUID","size":1},{"name":"OldItemID","type":"LLUUID","size":1},{"name":"Type","type":"S8","size":1},{"name":"InvType","type":"S8","size":1},{"name":"Name","type":"Variable","size":"1"},{"name":"Description","type":"Variable","size":"1"}]}]},{"name":"RetrieveIMsExtended","frequency":"Low","id":"427","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"IsPremium","type":"BOOL","size":1}]}]},{"name":"JoinGroupRequestExtended","frequency":"Low","id":"428","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupLimit","type":"S32","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"GroupID","type":"LLUUID","size":1}]}]},{"name":"CreateGroupRequestExtended","frequency":"Low","id":"429","flags":["Trusted","Unencoded"],"blocks":[{"name":"AgentData","type":"Single","count":1,"params":[{"name":"AgentID","type":"LLUUID","size":1},{"name":"SessionID","type":"LLUUID","size":1},{"name":"GroupLimit","type":"S32","size":1}]},{"name":"GroupData","type":"Single","count":1,"params":[{"name":"Name","type":"Variable","size":"1"},{"name":"Charter","type":"Variable","size":"2"},{"name":"ShowInList","type":"BOOL","size":1},{"name":"InsigniaID","type":"LLUUID","size":1},{"name":"MembershipFee","type":"S32","size":1},{"name":"OpenEnrollment","type":"BOOL","size":1},{"name":"AllowPublish","type":"BOOL","size":1},{"name":"MaturePublish","type":"BOOL","size":1}]}]}] \ No newline at end of file +[ + { + "name": "TestMessage", + "frequency": "Low", + "id": "1", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "TestBlock1", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Test1", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "NeighborBlock", + "type": "Multiple", + "count": "4", + "params": [ + { + "name": "Test0", + "type": "U32", + "size": 1 + }, + { + "name": "Test1", + "type": "U32", + "size": 1 + }, + { + "name": "Test2", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "PacketAck", + "frequency": "Fixed", + "id": "0xFFFFFFFB", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Packets", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "OpenCircuit", + "frequency": "Fixed", + "id": "0xFFFFFFFC", + "flags": [ + "NotTrusted", + "Unencoded", + "UDPBlackListed" + ], + "blocks": [ + { + "name": "CircuitInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "IP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "Port", + "type": "IPPORT", + "size": 1 + } + ] + } + ] + }, + { + "name": "CloseCircuit", + "frequency": "Fixed", + "id": "0xFFFFFFFD", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [] + }, + { + "name": "StartPingCheck", + "frequency": "High", + "id": "1", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "PingID", + "type": "Single", + "count": 1, + "params": [ + { + "name": "PingID", + "type": "U8", + "size": 1 + }, + { + "name": "OldestUnacked", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "CompletePingCheck", + "frequency": "High", + "id": "2", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "PingID", + "type": "Single", + "count": 1, + "params": [ + { + "name": "PingID", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "AddCircuitCode", + "frequency": "Low", + "id": "2", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "CircuitCode", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Code", + "type": "U32", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "UseCircuitCode", + "frequency": "Low", + "id": "3", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "CircuitCode", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Code", + "type": "U32", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "NeighborList", + "frequency": "High", + "id": "3", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "NeighborBlock", + "type": "Multiple", + "count": "4", + "params": [ + { + "name": "IP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "Port", + "type": "IPPORT", + "size": 1 + }, + { + "name": "PublicIP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "PublicPort", + "type": "IPPORT", + "size": 1 + }, + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "SimAccess", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "AvatarTextureUpdate", + "frequency": "Low", + "id": "4", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TexturesChanged", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "WearableData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "CacheID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TextureIndex", + "type": "U8", + "size": 1 + }, + { + "name": "HostName", + "type": "Variable", + "size": "1" + } + ] + }, + { + "name": "TextureData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "TextureID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "SimulatorMapUpdate", + "frequency": "Low", + "id": "5", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "MapData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "SimulatorSetMap", + "frequency": "Low", + "id": "6", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "MapData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "Type", + "type": "S32", + "size": 1 + }, + { + "name": "MapImage", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "SubscribeLoad", + "frequency": "Low", + "id": "7", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [] + }, + { + "name": "UnsubscribeLoad", + "frequency": "Low", + "id": "8", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [] + }, + { + "name": "SimulatorReady", + "frequency": "Low", + "id": "9", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "SimulatorBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "SimAccess", + "type": "U8", + "size": 1 + }, + { + "name": "RegionFlags", + "type": "U32", + "size": 1 + }, + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + }, + { + "name": "ParentEstateID", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "TelehubBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "HasTelehub", + "type": "BOOL", + "size": 1 + }, + { + "name": "TelehubPos", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "TelehubInfo", + "frequency": "Low", + "id": "10", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "TelehubBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ObjectName", + "type": "Variable", + "size": "1" + }, + { + "name": "TelehubPos", + "type": "LLVector3", + "size": 1 + }, + { + "name": "TelehubRot", + "type": "LLQuaternion", + "size": 1 + } + ] + }, + { + "name": "SpawnPointBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "SpawnPointPos", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "SimulatorPresentAtLocation", + "frequency": "Low", + "id": "11", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "SimulatorPublicHostBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Port", + "type": "IPPORT", + "size": 1 + }, + { + "name": "SimulatorIP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "GridX", + "type": "U32", + "size": 1 + }, + { + "name": "GridY", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "NeighborBlock", + "type": "Multiple", + "count": "4", + "params": [ + { + "name": "IP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "Port", + "type": "IPPORT", + "size": 1 + } + ] + }, + { + "name": "SimulatorBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "SimAccess", + "type": "U8", + "size": 1 + }, + { + "name": "RegionFlags", + "type": "U32", + "size": 1 + }, + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + }, + { + "name": "ParentEstateID", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "TelehubBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "HasTelehub", + "type": "BOOL", + "size": 1 + }, + { + "name": "TelehubPos", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "SimulatorLoad", + "frequency": "Low", + "id": "12", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "SimulatorLoad", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TimeDilation", + "type": "F32", + "size": 1 + }, + { + "name": "AgentCount", + "type": "S32", + "size": 1 + }, + { + "name": "CanAcceptAgents", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "AgentList", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "CircuitCode", + "type": "U32", + "size": 1 + }, + { + "name": "X", + "type": "U8", + "size": 1 + }, + { + "name": "Y", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "SimulatorShutdownRequest", + "frequency": "Low", + "id": "13", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [] + }, + { + "name": "RegionPresenceRequestByRegionID", + "frequency": "Low", + "id": "14", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "RegionData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "RegionPresenceRequestByHandle", + "frequency": "Low", + "id": "15", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "RegionData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + } + ] + } + ] + }, + { + "name": "RegionPresenceResponse", + "frequency": "Low", + "id": "16", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "RegionData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "InternalRegionIP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "ExternalRegionIP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "RegionPort", + "type": "IPPORT", + "size": 1 + }, + { + "name": "ValidUntil", + "type": "F64", + "size": 1 + }, + { + "name": "Message", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "UpdateSimulator", + "frequency": "Low", + "id": "17", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "SimulatorInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + }, + { + "name": "SimAccess", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "LogDwellTime", + "frequency": "Low", + "id": "18", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DwellInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Duration", + "type": "F32", + "size": 1 + }, + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "RegionX", + "type": "U32", + "size": 1 + }, + { + "name": "RegionY", + "type": "U32", + "size": 1 + }, + { + "name": "AvgAgentsInView", + "type": "U8", + "size": 1 + }, + { + "name": "AvgViewerFPS", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "FeatureDisabled", + "frequency": "Low", + "id": "19", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "FailureInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ErrorMessage", + "type": "Variable", + "size": "1" + }, + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "LogFailedMoneyTransaction", + "frequency": "Low", + "id": "20", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "TransactionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionTime", + "type": "U32", + "size": 1 + }, + { + "name": "TransactionType", + "type": "S32", + "size": 1 + }, + { + "name": "SourceID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "DestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U8", + "size": 1 + }, + { + "name": "Amount", + "type": "S32", + "size": 1 + }, + { + "name": "SimulatorIP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "GridX", + "type": "U32", + "size": 1 + }, + { + "name": "GridY", + "type": "U32", + "size": 1 + }, + { + "name": "FailureType", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "UserReportInternal", + "frequency": "Low", + "id": "21", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "ReportData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ReportType", + "type": "U8", + "size": 1 + }, + { + "name": "Category", + "type": "U8", + "size": 1 + }, + { + "name": "ReporterID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ViewerPosition", + "type": "LLVector3", + "size": 1 + }, + { + "name": "AgentPosition", + "type": "LLVector3", + "size": 1 + }, + { + "name": "ScreenshotID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "LastOwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AbuserID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AbuseRegionName", + "type": "Variable", + "size": "1" + }, + { + "name": "AbuseRegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Summary", + "type": "Variable", + "size": "1" + }, + { + "name": "Details", + "type": "Variable", + "size": "2" + }, + { + "name": "VersionString", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "SetSimStatusInDatabase", + "frequency": "Low", + "id": "22", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "HostName", + "type": "Variable", + "size": "1" + }, + { + "name": "X", + "type": "S32", + "size": 1 + }, + { + "name": "Y", + "type": "S32", + "size": 1 + }, + { + "name": "PID", + "type": "S32", + "size": 1 + }, + { + "name": "AgentCount", + "type": "S32", + "size": 1 + }, + { + "name": "TimeToLive", + "type": "S32", + "size": 1 + }, + { + "name": "Status", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "SetSimPresenceInDatabase", + "frequency": "Low", + "id": "23", + "flags": [ + "Trusted", + "Unencoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "SimData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "HostName", + "type": "Variable", + "size": "1" + }, + { + "name": "GridX", + "type": "U32", + "size": 1 + }, + { + "name": "GridY", + "type": "U32", + "size": 1 + }, + { + "name": "PID", + "type": "S32", + "size": 1 + }, + { + "name": "AgentCount", + "type": "S32", + "size": 1 + }, + { + "name": "TimeToLive", + "type": "S32", + "size": 1 + }, + { + "name": "Status", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "EconomyDataRequest", + "frequency": "Low", + "id": "24", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [] + }, + { + "name": "EconomyData", + "frequency": "Low", + "id": "25", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectCapacity", + "type": "S32", + "size": 1 + }, + { + "name": "ObjectCount", + "type": "S32", + "size": 1 + }, + { + "name": "PriceEnergyUnit", + "type": "S32", + "size": 1 + }, + { + "name": "PriceObjectClaim", + "type": "S32", + "size": 1 + }, + { + "name": "PricePublicObjectDecay", + "type": "S32", + "size": 1 + }, + { + "name": "PricePublicObjectDelete", + "type": "S32", + "size": 1 + }, + { + "name": "PriceParcelClaim", + "type": "S32", + "size": 1 + }, + { + "name": "PriceParcelClaimFactor", + "type": "F32", + "size": 1 + }, + { + "name": "PriceUpload", + "type": "S32", + "size": 1 + }, + { + "name": "PriceRentLight", + "type": "S32", + "size": 1 + }, + { + "name": "TeleportMinPrice", + "type": "S32", + "size": 1 + }, + { + "name": "TeleportPriceExponent", + "type": "F32", + "size": 1 + }, + { + "name": "EnergyEfficiency", + "type": "F32", + "size": 1 + }, + { + "name": "PriceObjectRent", + "type": "F32", + "size": 1 + }, + { + "name": "PriceObjectScaleFactor", + "type": "F32", + "size": 1 + }, + { + "name": "PriceParcelRent", + "type": "S32", + "size": 1 + }, + { + "name": "PriceGroupCreate", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "AvatarPickerRequest", + "frequency": "Low", + "id": "26", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Name", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "AvatarPickerRequestBackend", + "frequency": "Low", + "id": "27", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GodLevel", + "type": "U8", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Name", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "AvatarPickerReply", + "frequency": "Low", + "id": "28", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AvatarID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FirstName", + "type": "Variable", + "size": "1" + }, + { + "name": "LastName", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "PlacesQuery", + "frequency": "Low", + "id": "29", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "TransactionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryText", + "type": "Variable", + "size": "1" + }, + { + "name": "QueryFlags", + "type": "U32", + "size": 1 + }, + { + "name": "Category", + "type": "S8", + "size": 1 + }, + { + "name": "SimName", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "PlacesReply", + "frequency": "Low", + "id": "30", + "flags": [ + "Trusted", + "Zerocoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "TransactionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Desc", + "type": "Variable", + "size": "1" + }, + { + "name": "ActualArea", + "type": "S32", + "size": 1 + }, + { + "name": "BillableArea", + "type": "S32", + "size": 1 + }, + { + "name": "Flags", + "type": "U8", + "size": 1 + }, + { + "name": "GlobalX", + "type": "F32", + "size": 1 + }, + { + "name": "GlobalY", + "type": "F32", + "size": 1 + }, + { + "name": "GlobalZ", + "type": "F32", + "size": 1 + }, + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "SnapshotID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Dwell", + "type": "F32", + "size": 1 + }, + { + "name": "Price", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirFindQuery", + "frequency": "Low", + "id": "31", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryText", + "type": "Variable", + "size": "1" + }, + { + "name": "QueryFlags", + "type": "U32", + "size": 1 + }, + { + "name": "QueryStart", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirFindQueryBackend", + "frequency": "Low", + "id": "32", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryText", + "type": "Variable", + "size": "1" + }, + { + "name": "QueryFlags", + "type": "U32", + "size": 1 + }, + { + "name": "QueryStart", + "type": "S32", + "size": 1 + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + }, + { + "name": "Godlike", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirPlacesQuery", + "frequency": "Low", + "id": "33", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryText", + "type": "Variable", + "size": "1" + }, + { + "name": "QueryFlags", + "type": "U32", + "size": 1 + }, + { + "name": "Category", + "type": "S8", + "size": 1 + }, + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "QueryStart", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirPlacesQueryBackend", + "frequency": "Low", + "id": "34", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryText", + "type": "Variable", + "size": "1" + }, + { + "name": "QueryFlags", + "type": "U32", + "size": 1 + }, + { + "name": "Category", + "type": "S8", + "size": 1 + }, + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + }, + { + "name": "Godlike", + "type": "BOOL", + "size": 1 + }, + { + "name": "QueryStart", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirPlacesReply", + "frequency": "Low", + "id": "35", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryReplies", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "ForSale", + "type": "BOOL", + "size": 1 + }, + { + "name": "Auction", + "type": "BOOL", + "size": 1 + }, + { + "name": "Dwell", + "type": "F32", + "size": 1 + } + ] + }, + { + "name": "StatusData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Status", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirPeopleReply", + "frequency": "Low", + "id": "36", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryReplies", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FirstName", + "type": "Variable", + "size": "1" + }, + { + "name": "LastName", + "type": "Variable", + "size": "1" + }, + { + "name": "Group", + "type": "Variable", + "size": "1" + }, + { + "name": "Online", + "type": "BOOL", + "size": 1 + }, + { + "name": "Reputation", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirEventsReply", + "frequency": "Low", + "id": "37", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryReplies", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "EventID", + "type": "U32", + "size": 1 + }, + { + "name": "Date", + "type": "Variable", + "size": "1" + }, + { + "name": "UnixTime", + "type": "U32", + "size": 1 + }, + { + "name": "EventFlags", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "StatusData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Status", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirGroupsReply", + "frequency": "Low", + "id": "38", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryReplies", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupName", + "type": "Variable", + "size": "1" + }, + { + "name": "Members", + "type": "S32", + "size": 1 + }, + { + "name": "SearchOrder", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirClassifiedQuery", + "frequency": "Low", + "id": "39", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryText", + "type": "Variable", + "size": "1" + }, + { + "name": "QueryFlags", + "type": "U32", + "size": 1 + }, + { + "name": "Category", + "type": "U32", + "size": 1 + }, + { + "name": "QueryStart", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirClassifiedQueryBackend", + "frequency": "Low", + "id": "40", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryText", + "type": "Variable", + "size": "1" + }, + { + "name": "QueryFlags", + "type": "U32", + "size": 1 + }, + { + "name": "Category", + "type": "U32", + "size": 1 + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + }, + { + "name": "Godlike", + "type": "BOOL", + "size": 1 + }, + { + "name": "QueryStart", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirClassifiedReply", + "frequency": "Low", + "id": "41", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryReplies", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ClassifiedID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "ClassifiedFlags", + "type": "U8", + "size": 1 + }, + { + "name": "CreationDate", + "type": "U32", + "size": 1 + }, + { + "name": "ExpirationDate", + "type": "U32", + "size": 1 + }, + { + "name": "PriceForListing", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "StatusData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Status", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "AvatarClassifiedReply", + "frequency": "Low", + "id": "42", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TargetID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ClassifiedID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "ClassifiedInfoRequest", + "frequency": "Low", + "id": "43", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ClassifiedID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ClassifiedInfoReply", + "frequency": "Low", + "id": "44", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ClassifiedID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreationDate", + "type": "U32", + "size": 1 + }, + { + "name": "ExpirationDate", + "type": "U32", + "size": 1 + }, + { + "name": "Category", + "type": "U32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Desc", + "type": "Variable", + "size": "2" + }, + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ParentEstate", + "type": "U32", + "size": 1 + }, + { + "name": "SnapshotID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "PosGlobal", + "type": "LLVector3d", + "size": 1 + }, + { + "name": "ParcelName", + "type": "Variable", + "size": "1" + }, + { + "name": "ClassifiedFlags", + "type": "U8", + "size": 1 + }, + { + "name": "PriceForListing", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ClassifiedInfoUpdate", + "frequency": "Low", + "id": "45", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ClassifiedID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Category", + "type": "U32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Desc", + "type": "Variable", + "size": "2" + }, + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ParentEstate", + "type": "U32", + "size": 1 + }, + { + "name": "SnapshotID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "PosGlobal", + "type": "LLVector3d", + "size": 1 + }, + { + "name": "ClassifiedFlags", + "type": "U8", + "size": 1 + }, + { + "name": "PriceForListing", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ClassifiedDelete", + "frequency": "Low", + "id": "46", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ClassifiedID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ClassifiedGodDelete", + "frequency": "Low", + "id": "47", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ClassifiedID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirLandQuery", + "frequency": "Low", + "id": "48", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryFlags", + "type": "U32", + "size": 1 + }, + { + "name": "SearchType", + "type": "U32", + "size": 1 + }, + { + "name": "Price", + "type": "S32", + "size": 1 + }, + { + "name": "Area", + "type": "S32", + "size": 1 + }, + { + "name": "QueryStart", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirLandQueryBackend", + "frequency": "Low", + "id": "49", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryFlags", + "type": "U32", + "size": 1 + }, + { + "name": "SearchType", + "type": "U32", + "size": 1 + }, + { + "name": "Price", + "type": "S32", + "size": 1 + }, + { + "name": "Area", + "type": "S32", + "size": 1 + }, + { + "name": "QueryStart", + "type": "S32", + "size": 1 + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + }, + { + "name": "Godlike", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirLandReply", + "frequency": "Low", + "id": "50", + "flags": [ + "Trusted", + "Zerocoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryReplies", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Auction", + "type": "BOOL", + "size": 1 + }, + { + "name": "ForSale", + "type": "BOOL", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "ActualArea", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirPopularQuery", + "frequency": "Low", + "id": "51", + "flags": [ + "NotTrusted", + "Zerocoded", + "Deprecated" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryFlags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirPopularQueryBackend", + "frequency": "Low", + "id": "52", + "flags": [ + "Trusted", + "Zerocoded", + "Deprecated" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryFlags", + "type": "U32", + "size": 1 + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + }, + { + "name": "Godlike", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "DirPopularReply", + "frequency": "Low", + "id": "53", + "flags": [ + "Trusted", + "Zerocoded", + "Deprecated" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "QueryReplies", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Dwell", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelInfoRequest", + "frequency": "Low", + "id": "54", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelInfoReply", + "frequency": "Low", + "id": "55", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Desc", + "type": "Variable", + "size": "1" + }, + { + "name": "ActualArea", + "type": "S32", + "size": 1 + }, + { + "name": "BillableArea", + "type": "S32", + "size": 1 + }, + { + "name": "Flags", + "type": "U8", + "size": 1 + }, + { + "name": "GlobalX", + "type": "F32", + "size": 1 + }, + { + "name": "GlobalY", + "type": "F32", + "size": 1 + }, + { + "name": "GlobalZ", + "type": "F32", + "size": 1 + }, + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "SnapshotID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Dwell", + "type": "F32", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "AuctionID", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelObjectOwnersRequest", + "frequency": "Low", + "id": "56", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelObjectOwnersReply", + "frequency": "Low", + "id": "57", + "flags": [ + "Trusted", + "Zerocoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "Data", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IsGroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "Count", + "type": "S32", + "size": 1 + }, + { + "name": "OnlineStatus", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupNoticesListRequest", + "frequency": "Low", + "id": "58", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupNoticesListReply", + "frequency": "Low", + "id": "59", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "NoticeID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Timestamp", + "type": "U32", + "size": 1 + }, + { + "name": "FromName", + "type": "Variable", + "size": "2" + }, + { + "name": "Subject", + "type": "Variable", + "size": "2" + }, + { + "name": "HasAttachment", + "type": "BOOL", + "size": 1 + }, + { + "name": "AssetType", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupNoticeRequest", + "frequency": "Low", + "id": "60", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupNoticeID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupNoticeAdd", + "frequency": "Low", + "id": "61", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MessageBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ToGroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Dialog", + "type": "U8", + "size": 1 + }, + { + "name": "FromAgentName", + "type": "Variable", + "size": "1" + }, + { + "name": "Message", + "type": "Variable", + "size": "2" + }, + { + "name": "BinaryBucket", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "TeleportRequest", + "frequency": "Low", + "id": "62", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "LookAt", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "TeleportLocationRequest", + "frequency": "Low", + "id": "63", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "LookAt", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "TeleportLocal", + "frequency": "Low", + "id": "64", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "LocationID", + "type": "U32", + "size": 1 + }, + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "LookAt", + "type": "LLVector3", + "size": 1 + }, + { + "name": "TeleportFlags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "TeleportLandmarkRequest", + "frequency": "Low", + "id": "65", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "LandmarkID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "TeleportProgress", + "frequency": "Low", + "id": "66", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TeleportFlags", + "type": "U32", + "size": 1 + }, + { + "name": "Message", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "DataHomeLocationRequest", + "frequency": "Low", + "id": "67", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "KickedFromEstateID", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "AgentInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentEffectiveMaturity", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DataHomeLocationReply", + "frequency": "Low", + "id": "68", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "LookAt", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "TeleportFinish", + "frequency": "Low", + "id": "69", + "flags": [ + "Trusted", + "Unencoded", + "UDPBlackListed" + ], + "blocks": [ + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "LocationID", + "type": "U32", + "size": 1 + }, + { + "name": "SimIP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "SimPort", + "type": "IPPORT", + "size": 1 + }, + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "SeedCapability", + "type": "Variable", + "size": "2" + }, + { + "name": "SimAccess", + "type": "U8", + "size": 1 + }, + { + "name": "TeleportFlags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "StartLure", + "frequency": "Low", + "id": "70", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LureType", + "type": "U8", + "size": 1 + }, + { + "name": "Message", + "type": "Variable", + "size": "1" + } + ] + }, + { + "name": "TargetData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "TargetID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "TeleportLureRequest", + "frequency": "Low", + "id": "71", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "LureID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TeleportFlags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "TeleportCancel", + "frequency": "Low", + "id": "72", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "TeleportStart", + "frequency": "Low", + "id": "73", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TeleportFlags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "TeleportFailed", + "frequency": "Low", + "id": "74", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Reason", + "type": "Variable", + "size": "1" + } + ] + }, + { + "name": "AlertInfo", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Message", + "type": "Variable", + "size": "1" + }, + { + "name": "ExtraParams", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "Undo", + "frequency": "Low", + "id": "75", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "Redo", + "frequency": "Low", + "id": "76", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "UndoLand", + "frequency": "Low", + "id": "77", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentPause", + "frequency": "Low", + "id": "78", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SerialNum", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentResume", + "frequency": "Low", + "id": "79", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SerialNum", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentUpdate", + "frequency": "High", + "id": "4", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BodyRotation", + "type": "LLQuaternion", + "size": 1 + }, + { + "name": "HeadRotation", + "type": "LLQuaternion", + "size": 1 + }, + { + "name": "State", + "type": "U8", + "size": 1 + }, + { + "name": "CameraCenter", + "type": "LLVector3", + "size": 1 + }, + { + "name": "CameraAtAxis", + "type": "LLVector3", + "size": 1 + }, + { + "name": "CameraLeftAxis", + "type": "LLVector3", + "size": 1 + }, + { + "name": "CameraUpAxis", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Far", + "type": "F32", + "size": 1 + }, + { + "name": "ControlFlags", + "type": "U32", + "size": 1 + }, + { + "name": "Flags", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "ChatFromViewer", + "frequency": "Low", + "id": "80", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ChatData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Message", + "type": "Variable", + "size": "2" + }, + { + "name": "Type", + "type": "U8", + "size": 1 + }, + { + "name": "Channel", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentThrottle", + "frequency": "Low", + "id": "81", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CircuitCode", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "Throttle", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GenCounter", + "type": "U32", + "size": 1 + }, + { + "name": "Throttles", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "AgentFOV", + "frequency": "Low", + "id": "82", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CircuitCode", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "FOVBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GenCounter", + "type": "U32", + "size": 1 + }, + { + "name": "VerticalAngle", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentHeightWidth", + "frequency": "Low", + "id": "83", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CircuitCode", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "HeightWidthBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GenCounter", + "type": "U32", + "size": 1 + }, + { + "name": "Height", + "type": "U16", + "size": 1 + }, + { + "name": "Width", + "type": "U16", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentSetAppearance", + "frequency": "Low", + "id": "84", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SerialNum", + "type": "U32", + "size": 1 + }, + { + "name": "Size", + "type": "LLVector3", + "size": 1 + } + ] + }, + { + "name": "WearableData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "CacheID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TextureIndex", + "type": "U8", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TextureEntry", + "type": "Variable", + "size": "2" + } + ] + }, + { + "name": "VisualParam", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ParamValue", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentAnimation", + "frequency": "High", + "id": "5", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "AnimationList", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AnimID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "StartAnim", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "PhysicalAvatarEventList", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "TypeData", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "AgentRequestSit", + "frequency": "High", + "id": "6", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "TargetObject", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TargetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Offset", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentSit", + "frequency": "High", + "id": "7", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentQuitCopy", + "frequency": "Low", + "id": "85", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "FuseBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ViewerCircuitCode", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "RequestImage", + "frequency": "High", + "id": "8", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "RequestImage", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Image", + "type": "LLUUID", + "size": 1 + }, + { + "name": "DiscardLevel", + "type": "S8", + "size": 1 + }, + { + "name": "DownloadPriority", + "type": "F32", + "size": 1 + }, + { + "name": "Packet", + "type": "U32", + "size": 1 + }, + { + "name": "Type", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "ImageNotInDatabase", + "frequency": "Low", + "id": "86", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ImageID", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "RebakeAvatarTextures", + "frequency": "Low", + "id": "87", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "TextureData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TextureID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "SetAlwaysRun", + "frequency": "Low", + "id": "88", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AlwaysRun", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectAdd", + "frequency": "Medium", + "id": "1", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "PCode", + "type": "U8", + "size": 1 + }, + { + "name": "Material", + "type": "U8", + "size": 1 + }, + { + "name": "AddFlags", + "type": "U32", + "size": 1 + }, + { + "name": "PathCurve", + "type": "U8", + "size": 1 + }, + { + "name": "ProfileCurve", + "type": "U8", + "size": 1 + }, + { + "name": "PathBegin", + "type": "U16", + "size": 1 + }, + { + "name": "PathEnd", + "type": "U16", + "size": 1 + }, + { + "name": "PathScaleX", + "type": "U8", + "size": 1 + }, + { + "name": "PathScaleY", + "type": "U8", + "size": 1 + }, + { + "name": "PathShearX", + "type": "U8", + "size": 1 + }, + { + "name": "PathShearY", + "type": "U8", + "size": 1 + }, + { + "name": "PathTwist", + "type": "S8", + "size": 1 + }, + { + "name": "PathTwistBegin", + "type": "S8", + "size": 1 + }, + { + "name": "PathRadiusOffset", + "type": "S8", + "size": 1 + }, + { + "name": "PathTaperX", + "type": "S8", + "size": 1 + }, + { + "name": "PathTaperY", + "type": "S8", + "size": 1 + }, + { + "name": "PathRevolutions", + "type": "U8", + "size": 1 + }, + { + "name": "PathSkew", + "type": "S8", + "size": 1 + }, + { + "name": "ProfileBegin", + "type": "U16", + "size": 1 + }, + { + "name": "ProfileEnd", + "type": "U16", + "size": 1 + }, + { + "name": "ProfileHollow", + "type": "U16", + "size": 1 + }, + { + "name": "BypassRaycast", + "type": "U8", + "size": 1 + }, + { + "name": "RayStart", + "type": "LLVector3", + "size": 1 + }, + { + "name": "RayEnd", + "type": "LLVector3", + "size": 1 + }, + { + "name": "RayTargetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RayEndIsIntersection", + "type": "U8", + "size": 1 + }, + { + "name": "Scale", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Rotation", + "type": "LLQuaternion", + "size": 1 + }, + { + "name": "State", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectDelete", + "frequency": "Low", + "id": "89", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Force", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectDuplicate", + "frequency": "Low", + "id": "90", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "SharedData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Offset", + "type": "LLVector3", + "size": 1 + }, + { + "name": "DuplicateFlags", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectDuplicateOnRay", + "frequency": "Low", + "id": "91", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RayStart", + "type": "LLVector3", + "size": 1 + }, + { + "name": "RayEnd", + "type": "LLVector3", + "size": 1 + }, + { + "name": "BypassRaycast", + "type": "BOOL", + "size": 1 + }, + { + "name": "RayEndIsIntersection", + "type": "BOOL", + "size": 1 + }, + { + "name": "CopyCenters", + "type": "BOOL", + "size": 1 + }, + { + "name": "CopyRotates", + "type": "BOOL", + "size": 1 + }, + { + "name": "RayTargetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "DuplicateFlags", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "MultipleObjectUpdate", + "frequency": "Medium", + "id": "2", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "Type", + "type": "U8", + "size": 1 + }, + { + "name": "Data", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "RequestMultipleObjects", + "frequency": "Medium", + "id": "3", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "CacheMissType", + "type": "U8", + "size": 1 + }, + { + "name": "ID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectPosition", + "frequency": "Medium", + "id": "4", + "flags": [ + "NotTrusted", + "Zerocoded", + "Deprecated" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "Position", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectScale", + "frequency": "Low", + "id": "92", + "flags": [ + "NotTrusted", + "Zerocoded", + "Deprecated" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "Scale", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectRotation", + "frequency": "Low", + "id": "93", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "Rotation", + "type": "LLQuaternion", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectFlagUpdate", + "frequency": "Low", + "id": "94", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "UsePhysics", + "type": "BOOL", + "size": 1 + }, + { + "name": "IsTemporary", + "type": "BOOL", + "size": 1 + }, + { + "name": "IsPhantom", + "type": "BOOL", + "size": 1 + }, + { + "name": "CastsShadows", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "ExtraPhysics", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "PhysicsShapeType", + "type": "U8", + "size": 1 + }, + { + "name": "Density", + "type": "F32", + "size": 1 + }, + { + "name": "Friction", + "type": "F32", + "size": 1 + }, + { + "name": "Restitution", + "type": "F32", + "size": 1 + }, + { + "name": "GravityMultiplier", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectClickAction", + "frequency": "Low", + "id": "95", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "ClickAction", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectImage", + "frequency": "Low", + "id": "96", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "MediaURL", + "type": "Variable", + "size": "1" + }, + { + "name": "TextureEntry", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "ObjectMaterial", + "frequency": "Low", + "id": "97", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "Material", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectShape", + "frequency": "Low", + "id": "98", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "PathCurve", + "type": "U8", + "size": 1 + }, + { + "name": "ProfileCurve", + "type": "U8", + "size": 1 + }, + { + "name": "PathBegin", + "type": "U16", + "size": 1 + }, + { + "name": "PathEnd", + "type": "U16", + "size": 1 + }, + { + "name": "PathScaleX", + "type": "U8", + "size": 1 + }, + { + "name": "PathScaleY", + "type": "U8", + "size": 1 + }, + { + "name": "PathShearX", + "type": "U8", + "size": 1 + }, + { + "name": "PathShearY", + "type": "U8", + "size": 1 + }, + { + "name": "PathTwist", + "type": "S8", + "size": 1 + }, + { + "name": "PathTwistBegin", + "type": "S8", + "size": 1 + }, + { + "name": "PathRadiusOffset", + "type": "S8", + "size": 1 + }, + { + "name": "PathTaperX", + "type": "S8", + "size": 1 + }, + { + "name": "PathTaperY", + "type": "S8", + "size": 1 + }, + { + "name": "PathRevolutions", + "type": "U8", + "size": 1 + }, + { + "name": "PathSkew", + "type": "S8", + "size": 1 + }, + { + "name": "ProfileBegin", + "type": "U16", + "size": 1 + }, + { + "name": "ProfileEnd", + "type": "U16", + "size": 1 + }, + { + "name": "ProfileHollow", + "type": "U16", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectExtraParams", + "frequency": "Low", + "id": "99", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "ParamType", + "type": "U16", + "size": 1 + }, + { + "name": "ParamInUse", + "type": "BOOL", + "size": 1 + }, + { + "name": "ParamSize", + "type": "U32", + "size": 1 + }, + { + "name": "ParamData", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "ObjectOwner", + "frequency": "Low", + "id": "100", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "HeaderData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Override", + "type": "BOOL", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectGroup", + "frequency": "Low", + "id": "101", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectBuy", + "frequency": "Low", + "id": "102", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CategoryID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "SaleType", + "type": "U8", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "BuyObjectInventory", + "frequency": "Low", + "id": "103", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "DerezContainer", + "frequency": "Low", + "id": "104", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Delete", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectPermissions", + "frequency": "Low", + "id": "105", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "HeaderData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Override", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "Field", + "type": "U8", + "size": 1 + }, + { + "name": "Set", + "type": "U8", + "size": 1 + }, + { + "name": "Mask", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectSaleInfo", + "frequency": "Low", + "id": "106", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "U32", + "size": 1 + }, + { + "name": "SaleType", + "type": "U8", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectName", + "frequency": "Low", + "id": "107", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "U32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "ObjectDescription", + "frequency": "Low", + "id": "108", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "U32", + "size": 1 + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "ObjectCategory", + "frequency": "Low", + "id": "109", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "U32", + "size": 1 + }, + { + "name": "Category", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectSelect", + "frequency": "Low", + "id": "110", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectDeselect", + "frequency": "Low", + "id": "111", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectAttach", + "frequency": "Low", + "id": "112", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AttachmentPoint", + "type": "U8", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "Rotation", + "type": "LLQuaternion", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectDetach", + "frequency": "Low", + "id": "113", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectDrop", + "frequency": "Low", + "id": "114", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectLink", + "frequency": "Low", + "id": "115", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectDelink", + "frequency": "Low", + "id": "116", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectGrab", + "frequency": "Low", + "id": "117", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "U32", + "size": 1 + }, + { + "name": "GrabOffset", + "type": "LLVector3", + "size": 1 + } + ] + }, + { + "name": "SurfaceInfo", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "UVCoord", + "type": "LLVector3", + "size": 1 + }, + { + "name": "STCoord", + "type": "LLVector3", + "size": 1 + }, + { + "name": "FaceIndex", + "type": "S32", + "size": 1 + }, + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Normal", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Binormal", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectGrabUpdate", + "frequency": "Low", + "id": "118", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GrabOffsetInitial", + "type": "LLVector3", + "size": 1 + }, + { + "name": "GrabPosition", + "type": "LLVector3", + "size": 1 + }, + { + "name": "TimeSinceLast", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "SurfaceInfo", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "UVCoord", + "type": "LLVector3", + "size": 1 + }, + { + "name": "STCoord", + "type": "LLVector3", + "size": 1 + }, + { + "name": "FaceIndex", + "type": "S32", + "size": 1 + }, + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Normal", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Binormal", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectDeGrab", + "frequency": "Low", + "id": "119", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "SurfaceInfo", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "UVCoord", + "type": "LLVector3", + "size": 1 + }, + { + "name": "STCoord", + "type": "LLVector3", + "size": 1 + }, + { + "name": "FaceIndex", + "type": "S32", + "size": 1 + }, + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Normal", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Binormal", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectSpinStart", + "frequency": "Low", + "id": "120", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectSpinUpdate", + "frequency": "Low", + "id": "121", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Rotation", + "type": "LLQuaternion", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectSpinStop", + "frequency": "Low", + "id": "122", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectExportSelected", + "frequency": "Low", + "id": "123", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "VolumeDetail", + "type": "S16", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ModifyLand", + "frequency": "Low", + "id": "124", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ModifyBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Action", + "type": "U8", + "size": 1 + }, + { + "name": "BrushSize", + "type": "U8", + "size": 1 + }, + { + "name": "Seconds", + "type": "F32", + "size": 1 + }, + { + "name": "Height", + "type": "F32", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "S32", + "size": 1 + }, + { + "name": "West", + "type": "F32", + "size": 1 + }, + { + "name": "South", + "type": "F32", + "size": 1 + }, + { + "name": "East", + "type": "F32", + "size": 1 + }, + { + "name": "North", + "type": "F32", + "size": 1 + } + ] + }, + { + "name": "ModifyBlockExtended", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "BrushSize", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "VelocityInterpolateOn", + "frequency": "Low", + "id": "125", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "VelocityInterpolateOff", + "frequency": "Low", + "id": "126", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "StateSave", + "frequency": "Low", + "id": "127", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Filename", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "ReportAutosaveCrash", + "frequency": "Low", + "id": "128", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AutosaveData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "PID", + "type": "S32", + "size": 1 + }, + { + "name": "Status", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "SimWideDeletes", + "frequency": "Low", + "id": "129", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TargetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "RequestObjectPropertiesFamily", + "frequency": "Medium", + "id": "5", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RequestFlags", + "type": "U32", + "size": 1 + }, + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "TrackAgent", + "frequency": "Low", + "id": "130", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "TargetData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "PreyID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ViewerStats", + "frequency": "Low", + "id": "131", + "flags": [ + "NotTrusted", + "Zerocoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "StartTime", + "type": "U32", + "size": 1 + }, + { + "name": "RunTime", + "type": "F32", + "size": 1 + }, + { + "name": "SimFPS", + "type": "F32", + "size": 1 + }, + { + "name": "FPS", + "type": "F32", + "size": 1 + }, + { + "name": "AgentsInView", + "type": "U8", + "size": 1 + }, + { + "name": "Ping", + "type": "F32", + "size": 1 + }, + { + "name": "MetersTraveled", + "type": "F64", + "size": 1 + }, + { + "name": "RegionsVisited", + "type": "S32", + "size": 1 + }, + { + "name": "SysRAM", + "type": "U32", + "size": 1 + }, + { + "name": "SysOS", + "type": "Variable", + "size": "1" + }, + { + "name": "SysCPU", + "type": "Variable", + "size": "1" + }, + { + "name": "SysGPU", + "type": "Variable", + "size": "1" + } + ] + }, + { + "name": "DownloadTotals", + "type": "Single", + "count": 1, + "params": [ + { + "name": "World", + "type": "U32", + "size": 1 + }, + { + "name": "Objects", + "type": "U32", + "size": 1 + }, + { + "name": "Textures", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "NetStats", + "type": "Multiple", + "count": "2", + "params": [ + { + "name": "Bytes", + "type": "U32", + "size": 1 + }, + { + "name": "Packets", + "type": "U32", + "size": 1 + }, + { + "name": "Compressed", + "type": "U32", + "size": 1 + }, + { + "name": "Savings", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "FailStats", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SendPacket", + "type": "U32", + "size": 1 + }, + { + "name": "Dropped", + "type": "U32", + "size": 1 + }, + { + "name": "Resent", + "type": "U32", + "size": 1 + }, + { + "name": "FailedResends", + "type": "U32", + "size": 1 + }, + { + "name": "OffCircuit", + "type": "U32", + "size": 1 + }, + { + "name": "Invalid", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "MiscStats", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Type", + "type": "U32", + "size": 1 + }, + { + "name": "Value", + "type": "F64", + "size": 1 + } + ] + } + ] + }, + { + "name": "ScriptAnswerYes", + "frequency": "Low", + "id": "132", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TaskID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Questions", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "UserReport", + "frequency": "Low", + "id": "133", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ReportData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ReportType", + "type": "U8", + "size": 1 + }, + { + "name": "Category", + "type": "U8", + "size": 1 + }, + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "CheckFlags", + "type": "U8", + "size": 1 + }, + { + "name": "ScreenshotID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AbuserID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AbuseRegionName", + "type": "Variable", + "size": "1" + }, + { + "name": "AbuseRegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Summary", + "type": "Variable", + "size": "1" + }, + { + "name": "Details", + "type": "Variable", + "size": "2" + }, + { + "name": "VersionString", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "AlertMessage", + "frequency": "Low", + "id": "134", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AlertData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Message", + "type": "Variable", + "size": "1" + } + ] + }, + { + "name": "AlertInfo", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Message", + "type": "Variable", + "size": "1" + }, + { + "name": "ExtraParams", + "type": "Variable", + "size": "1" + } + ] + }, + { + "name": "AgentInfo", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentAlertMessage", + "frequency": "Low", + "id": "135", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "AlertData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Modal", + "type": "BOOL", + "size": 1 + }, + { + "name": "Message", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "MeanCollisionAlert", + "frequency": "Low", + "id": "136", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "MeanCollision", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Victim", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Perp", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Time", + "type": "U32", + "size": 1 + }, + { + "name": "Mag", + "type": "F32", + "size": 1 + }, + { + "name": "Type", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "ViewerFrozenMessage", + "frequency": "Low", + "id": "137", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "FrozenData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Data", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "HealthMessage", + "frequency": "Low", + "id": "138", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "HealthData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Health", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ChatFromSimulator", + "frequency": "Low", + "id": "139", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ChatData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "FromName", + "type": "Variable", + "size": "1" + }, + { + "name": "SourceID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SourceType", + "type": "U8", + "size": 1 + }, + { + "name": "ChatType", + "type": "U8", + "size": 1 + }, + { + "name": "Audible", + "type": "U8", + "size": 1 + }, + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Message", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "SimStats", + "frequency": "Low", + "id": "140", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Region", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionX", + "type": "U32", + "size": 1 + }, + { + "name": "RegionY", + "type": "U32", + "size": 1 + }, + { + "name": "RegionFlags", + "type": "U32", + "size": 1 + }, + { + "name": "ObjectCapacity", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "Stat", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "StatID", + "type": "U32", + "size": 1 + }, + { + "name": "StatValue", + "type": "F32", + "size": 1 + } + ] + }, + { + "name": "PidStat", + "type": "Single", + "count": 1, + "params": [ + { + "name": "PID", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "RegionInfo", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "RegionFlagsExtended", + "type": "U64", + "size": 1 + } + ] + } + ] + }, + { + "name": "RequestRegionInfo", + "frequency": "Low", + "id": "141", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "RegionInfo", + "frequency": "Low", + "id": "142", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "RegionInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + }, + { + "name": "ParentEstateID", + "type": "U32", + "size": 1 + }, + { + "name": "RegionFlags", + "type": "U32", + "size": 1 + }, + { + "name": "SimAccess", + "type": "U8", + "size": 1 + }, + { + "name": "MaxAgents", + "type": "U8", + "size": 1 + }, + { + "name": "BillableFactor", + "type": "F32", + "size": 1 + }, + { + "name": "ObjectBonusFactor", + "type": "F32", + "size": 1 + }, + { + "name": "WaterHeight", + "type": "F32", + "size": 1 + }, + { + "name": "TerrainRaiseLimit", + "type": "F32", + "size": 1 + }, + { + "name": "TerrainLowerLimit", + "type": "F32", + "size": 1 + }, + { + "name": "PricePerMeter", + "type": "S32", + "size": 1 + }, + { + "name": "RedirectGridX", + "type": "S32", + "size": 1 + }, + { + "name": "RedirectGridY", + "type": "S32", + "size": 1 + }, + { + "name": "UseEstateSun", + "type": "BOOL", + "size": 1 + }, + { + "name": "SunHour", + "type": "F32", + "size": 1 + } + ] + }, + { + "name": "RegionInfo2", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ProductSKU", + "type": "Variable", + "size": "1" + }, + { + "name": "ProductName", + "type": "Variable", + "size": "1" + }, + { + "name": "MaxAgents32", + "type": "U32", + "size": 1 + }, + { + "name": "HardMaxAgents", + "type": "U32", + "size": 1 + }, + { + "name": "HardMaxObjects", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "RegionInfo3", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "RegionFlagsExtended", + "type": "U64", + "size": 1 + } + ] + } + ] + }, + { + "name": "GodUpdateRegionInfo", + "frequency": "Low", + "id": "143", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "RegionInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + }, + { + "name": "ParentEstateID", + "type": "U32", + "size": 1 + }, + { + "name": "RegionFlags", + "type": "U32", + "size": 1 + }, + { + "name": "BillableFactor", + "type": "F32", + "size": 1 + }, + { + "name": "PricePerMeter", + "type": "S32", + "size": 1 + }, + { + "name": "RedirectGridX", + "type": "S32", + "size": 1 + }, + { + "name": "RedirectGridY", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "RegionInfo2", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "RegionFlagsExtended", + "type": "U64", + "size": 1 + } + ] + } + ] + }, + { + "name": "NearestLandingRegionRequest", + "frequency": "Low", + "id": "144", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "RequestingRegionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + } + ] + } + ] + }, + { + "name": "NearestLandingRegionReply", + "frequency": "Low", + "id": "145", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "LandingRegionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + } + ] + } + ] + }, + { + "name": "NearestLandingRegionUpdated", + "frequency": "Low", + "id": "146", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "RegionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + } + ] + } + ] + }, + { + "name": "TeleportLandingStatusChanged", + "frequency": "Low", + "id": "147", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "RegionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + } + ] + } + ] + }, + { + "name": "RegionHandshake", + "frequency": "Low", + "id": "148", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "RegionInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionFlags", + "type": "U32", + "size": 1 + }, + { + "name": "SimAccess", + "type": "U8", + "size": 1 + }, + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "SimOwner", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IsEstateManager", + "type": "BOOL", + "size": 1 + }, + { + "name": "WaterHeight", + "type": "F32", + "size": 1 + }, + { + "name": "BillableFactor", + "type": "F32", + "size": 1 + }, + { + "name": "CacheID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TerrainBase0", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TerrainBase1", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TerrainBase2", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TerrainBase3", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TerrainDetail0", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TerrainDetail1", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TerrainDetail2", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TerrainDetail3", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TerrainStartHeight00", + "type": "F32", + "size": 1 + }, + { + "name": "TerrainStartHeight01", + "type": "F32", + "size": 1 + }, + { + "name": "TerrainStartHeight10", + "type": "F32", + "size": 1 + }, + { + "name": "TerrainStartHeight11", + "type": "F32", + "size": 1 + }, + { + "name": "TerrainHeightRange00", + "type": "F32", + "size": 1 + }, + { + "name": "TerrainHeightRange01", + "type": "F32", + "size": 1 + }, + { + "name": "TerrainHeightRange10", + "type": "F32", + "size": 1 + }, + { + "name": "TerrainHeightRange11", + "type": "F32", + "size": 1 + } + ] + }, + { + "name": "RegionInfo2", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "RegionInfo3", + "type": "Single", + "count": 1, + "params": [ + { + "name": "CPUClassID", + "type": "S32", + "size": 1 + }, + { + "name": "CPURatio", + "type": "S32", + "size": 1 + }, + { + "name": "ColoName", + "type": "Variable", + "size": "1" + }, + { + "name": "ProductSKU", + "type": "Variable", + "size": "1" + }, + { + "name": "ProductName", + "type": "Variable", + "size": "1" + } + ] + }, + { + "name": "RegionInfo4", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "RegionFlagsExtended", + "type": "U64", + "size": 1 + }, + { + "name": "RegionProtocols", + "type": "U64", + "size": 1 + } + ] + } + ] + }, + { + "name": "RegionHandshakeReply", + "frequency": "Low", + "id": "149", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "RegionInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "CoarseLocationUpdate", + "frequency": "Medium", + "id": "6", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Location", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "X", + "type": "U8", + "size": 1 + }, + { + "name": "Y", + "type": "U8", + "size": 1 + }, + { + "name": "Z", + "type": "U8", + "size": 1 + } + ] + }, + { + "name": "Index", + "type": "Single", + "count": 1, + "params": [ + { + "name": "You", + "type": "S16", + "size": 1 + }, + { + "name": "Prey", + "type": "S16", + "size": 1 + } + ] + }, + { + "name": "AgentData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ImageData", + "frequency": "High", + "id": "9", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ImageID", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Codec", + "type": "U8", + "size": 1 + }, + { + "name": "Size", + "type": "U32", + "size": 1 + }, + { + "name": "Packets", + "type": "U16", + "size": 1 + } + ] + }, + { + "name": "ImageData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Data", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "ImagePacket", + "frequency": "High", + "id": "10", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ImageID", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Packet", + "type": "U16", + "size": 1 + } + ] + }, + { + "name": "ImageData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Data", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "LayerData", + "frequency": "High", + "id": "11", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "LayerID", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Type", + "type": "U8", + "size": 1 + } + ] + }, + { + "name": "LayerData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Data", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "ObjectUpdate", + "frequency": "High", + "id": "12", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "RegionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "TimeDilation", + "type": "U16", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ID", + "type": "U32", + "size": 1 + }, + { + "name": "State", + "type": "U8", + "size": 1 + }, + { + "name": "FullID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CRC", + "type": "U32", + "size": 1 + }, + { + "name": "PCode", + "type": "U8", + "size": 1 + }, + { + "name": "Material", + "type": "U8", + "size": 1 + }, + { + "name": "ClickAction", + "type": "U8", + "size": 1 + }, + { + "name": "Scale", + "type": "LLVector3", + "size": 1 + }, + { + "name": "ObjectData", + "type": "Variable", + "size": "1" + }, + { + "name": "ParentID", + "type": "U32", + "size": 1 + }, + { + "name": "UpdateFlags", + "type": "U32", + "size": 1 + }, + { + "name": "PathCurve", + "type": "U8", + "size": 1 + }, + { + "name": "ProfileCurve", + "type": "U8", + "size": 1 + }, + { + "name": "PathBegin", + "type": "U16", + "size": 1 + }, + { + "name": "PathEnd", + "type": "U16", + "size": 1 + }, + { + "name": "PathScaleX", + "type": "U8", + "size": 1 + }, + { + "name": "PathScaleY", + "type": "U8", + "size": 1 + }, + { + "name": "PathShearX", + "type": "U8", + "size": 1 + }, + { + "name": "PathShearY", + "type": "U8", + "size": 1 + }, + { + "name": "PathTwist", + "type": "S8", + "size": 1 + }, + { + "name": "PathTwistBegin", + "type": "S8", + "size": 1 + }, + { + "name": "PathRadiusOffset", + "type": "S8", + "size": 1 + }, + { + "name": "PathTaperX", + "type": "S8", + "size": 1 + }, + { + "name": "PathTaperY", + "type": "S8", + "size": 1 + }, + { + "name": "PathRevolutions", + "type": "U8", + "size": 1 + }, + { + "name": "PathSkew", + "type": "S8", + "size": 1 + }, + { + "name": "ProfileBegin", + "type": "U16", + "size": 1 + }, + { + "name": "ProfileEnd", + "type": "U16", + "size": 1 + }, + { + "name": "ProfileHollow", + "type": "U16", + "size": 1 + }, + { + "name": "TextureEntry", + "type": "Variable", + "size": "2" + }, + { + "name": "TextureAnim", + "type": "Variable", + "size": "1" + }, + { + "name": "NameValue", + "type": "Variable", + "size": "2" + }, + { + "name": "Data", + "type": "Variable", + "size": "2" + }, + { + "name": "Text", + "type": "Variable", + "size": "1" + }, + { + "name": "TextColor", + "type": "Fixed", + "size": "4" + }, + { + "name": "MediaURL", + "type": "Variable", + "size": "1" + }, + { + "name": "PSBlock", + "type": "Variable", + "size": "1" + }, + { + "name": "ExtraParams", + "type": "Variable", + "size": "1" + }, + { + "name": "Sound", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Gain", + "type": "F32", + "size": 1 + }, + { + "name": "Flags", + "type": "U8", + "size": 1 + }, + { + "name": "Radius", + "type": "F32", + "size": 1 + }, + { + "name": "JointType", + "type": "U8", + "size": 1 + }, + { + "name": "JointPivot", + "type": "LLVector3", + "size": 1 + }, + { + "name": "JointAxisOrAnchor", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectUpdateCompressed", + "frequency": "High", + "id": "13", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "RegionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "TimeDilation", + "type": "U16", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "UpdateFlags", + "type": "U32", + "size": 1 + }, + { + "name": "Data", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "ObjectUpdateCached", + "frequency": "High", + "id": "14", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "RegionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "TimeDilation", + "type": "U16", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ID", + "type": "U32", + "size": 1 + }, + { + "name": "CRC", + "type": "U32", + "size": 1 + }, + { + "name": "UpdateFlags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ImprovedTerseObjectUpdate", + "frequency": "High", + "id": "15", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "RegionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "TimeDilation", + "type": "U16", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Data", + "type": "Variable", + "size": "1" + }, + { + "name": "TextureEntry", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "KillObject", + "frequency": "High", + "id": "16", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "CrossedRegion", + "frequency": "Medium", + "id": "7", + "flags": [ + "Trusted", + "Unencoded", + "UDPBlackListed" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "RegionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SimIP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "SimPort", + "type": "IPPORT", + "size": 1 + }, + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "SeedCapability", + "type": "Variable", + "size": "2" + } + ] + }, + { + "name": "Info", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "LookAt", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "SimulatorViewerTimeMessage", + "frequency": "Low", + "id": "150", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "TimeInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "UsecSinceStart", + "type": "U64", + "size": 1 + }, + { + "name": "SecPerDay", + "type": "U32", + "size": 1 + }, + { + "name": "SecPerYear", + "type": "U32", + "size": 1 + }, + { + "name": "SunDirection", + "type": "LLVector3", + "size": 1 + }, + { + "name": "SunPhase", + "type": "F32", + "size": 1 + }, + { + "name": "SunAngVelocity", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "EnableSimulator", + "frequency": "Low", + "id": "151", + "flags": [ + "Trusted", + "Unencoded", + "UDPBlackListed" + ], + "blocks": [ + { + "name": "SimulatorInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Handle", + "type": "U64", + "size": 1 + }, + { + "name": "IP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "Port", + "type": "IPPORT", + "size": 1 + } + ] + } + ] + }, + { + "name": "DisableSimulator", + "frequency": "Low", + "id": "152", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [] + }, + { + "name": "ConfirmEnableSimulator", + "frequency": "Medium", + "id": "8", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "TransferRequest", + "frequency": "Low", + "id": "153", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "TransferInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransferID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ChannelType", + "type": "S32", + "size": 1 + }, + { + "name": "SourceType", + "type": "S32", + "size": 1 + }, + { + "name": "Priority", + "type": "F32", + "size": 1 + }, + { + "name": "Params", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "TransferInfo", + "frequency": "Low", + "id": "154", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "TransferInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransferID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ChannelType", + "type": "S32", + "size": 1 + }, + { + "name": "TargetType", + "type": "S32", + "size": 1 + }, + { + "name": "Status", + "type": "S32", + "size": 1 + }, + { + "name": "Size", + "type": "S32", + "size": 1 + }, + { + "name": "Params", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "TransferPacket", + "frequency": "High", + "id": "17", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "TransferData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransferID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ChannelType", + "type": "S32", + "size": 1 + }, + { + "name": "Packet", + "type": "S32", + "size": 1 + }, + { + "name": "Status", + "type": "S32", + "size": 1 + }, + { + "name": "Data", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "TransferAbort", + "frequency": "Low", + "id": "155", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "TransferInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransferID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ChannelType", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "RequestXfer", + "frequency": "Low", + "id": "156", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "XferID", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ID", + "type": "U64", + "size": 1 + }, + { + "name": "Filename", + "type": "Variable", + "size": "1" + }, + { + "name": "FilePath", + "type": "U8", + "size": 1 + }, + { + "name": "DeleteOnCompletion", + "type": "BOOL", + "size": 1 + }, + { + "name": "UseBigPackets", + "type": "BOOL", + "size": 1 + }, + { + "name": "VFileID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "VFileType", + "type": "S16", + "size": 1 + } + ] + } + ] + }, + { + "name": "SendXferPacket", + "frequency": "High", + "id": "18", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "XferID", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ID", + "type": "U64", + "size": 1 + }, + { + "name": "Packet", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "DataPacket", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Data", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "ConfirmXferPacket", + "frequency": "High", + "id": "19", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "XferID", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ID", + "type": "U64", + "size": 1 + }, + { + "name": "Packet", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "AbortXfer", + "frequency": "Low", + "id": "157", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "XferID", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ID", + "type": "U64", + "size": 1 + }, + { + "name": "Result", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "AvatarAnimation", + "frequency": "High", + "id": "20", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Sender", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "AnimationList", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AnimID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AnimSequenceID", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "AnimationSourceList", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "PhysicalAvatarEventList", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "TypeData", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "AvatarAppearance", + "frequency": "Low", + "id": "158", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "Sender", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IsTrial", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TextureEntry", + "type": "Variable", + "size": "2" + } + ] + }, + { + "name": "VisualParam", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ParamValue", + "type": "U8", + "size": 1 + } + ] + }, + { + "name": "AppearanceData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AppearanceVersion", + "type": "U8", + "size": 1 + }, + { + "name": "CofVersion", + "type": "S32", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "AppearanceHover", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "HoverHeight", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "AvatarSitResponse", + "frequency": "High", + "id": "21", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "SitObject", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "SitTransform", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AutoPilot", + "type": "BOOL", + "size": 1 + }, + { + "name": "SitPosition", + "type": "LLVector3", + "size": 1 + }, + { + "name": "SitRotation", + "type": "LLQuaternion", + "size": 1 + }, + { + "name": "CameraEyeOffset", + "type": "LLVector3", + "size": 1 + }, + { + "name": "CameraAtOffset", + "type": "LLVector3", + "size": 1 + }, + { + "name": "ForceMouselook", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "SetFollowCamProperties", + "frequency": "Low", + "id": "159", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "CameraProperty", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Type", + "type": "S32", + "size": 1 + }, + { + "name": "Value", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ClearFollowCamProperties", + "frequency": "Low", + "id": "160", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "CameraConstraint", + "frequency": "High", + "id": "22", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "CameraCollidePlane", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Plane", + "type": "LLVector4", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectProperties", + "frequency": "Medium", + "id": "9", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreationDate", + "type": "U64", + "size": 1 + }, + { + "name": "BaseMask", + "type": "U32", + "size": 1 + }, + { + "name": "OwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "OwnershipCost", + "type": "S32", + "size": 1 + }, + { + "name": "SaleType", + "type": "U8", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "AggregatePerms", + "type": "U8", + "size": 1 + }, + { + "name": "AggregatePermTextures", + "type": "U8", + "size": 1 + }, + { + "name": "AggregatePermTexturesOwner", + "type": "U8", + "size": 1 + }, + { + "name": "Category", + "type": "U32", + "size": 1 + }, + { + "name": "InventorySerial", + "type": "S16", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FromTaskID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "LastOwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "TouchName", + "type": "Variable", + "size": "1" + }, + { + "name": "SitName", + "type": "Variable", + "size": "1" + }, + { + "name": "TextureID", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "ObjectPropertiesFamily", + "frequency": "Medium", + "id": "10", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RequestFlags", + "type": "U32", + "size": 1 + }, + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BaseMask", + "type": "U32", + "size": 1 + }, + { + "name": "OwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "OwnershipCost", + "type": "S32", + "size": 1 + }, + { + "name": "SaleType", + "type": "U8", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "Category", + "type": "U32", + "size": 1 + }, + { + "name": "LastOwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "RequestPayPrice", + "frequency": "Low", + "id": "161", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "PayPriceReply", + "frequency": "Low", + "id": "162", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "DefaultPayPrice", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "ButtonData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "PayButton", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "KickUser", + "frequency": "Low", + "id": "163", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "TargetBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TargetIP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "TargetPort", + "type": "IPPORT", + "size": 1 + } + ] + }, + { + "name": "UserInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Reason", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "KickUserAck", + "frequency": "Low", + "id": "164", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "UserInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "GodKickUser", + "frequency": "Low", + "id": "165", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "UserInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GodID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GodSessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "KickFlags", + "type": "U32", + "size": 1 + }, + { + "name": "Reason", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "SystemKickUser", + "frequency": "Low", + "id": "166", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentInfo", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "EjectUser", + "frequency": "Low", + "id": "167", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TargetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "FreezeUser", + "frequency": "Low", + "id": "168", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TargetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "AvatarPropertiesRequest", + "frequency": "Low", + "id": "169", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AvatarID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "AvatarPropertiesRequestBackend", + "frequency": "Low", + "id": "170", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AvatarID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GodLevel", + "type": "U8", + "size": 1 + }, + { + "name": "WebProfilesDisabled", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "AvatarPropertiesReply", + "frequency": "Low", + "id": "171", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AvatarID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "PropertiesData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ImageID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FLImageID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "PartnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AboutText", + "type": "Variable", + "size": "2" + }, + { + "name": "FLAboutText", + "type": "Variable", + "size": "1" + }, + { + "name": "BornOn", + "type": "Variable", + "size": "1" + }, + { + "name": "ProfileURL", + "type": "Variable", + "size": "1" + }, + { + "name": "CharterMember", + "type": "Variable", + "size": "1" + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "AvatarInterestsReply", + "frequency": "Low", + "id": "172", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AvatarID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "PropertiesData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "WantToMask", + "type": "U32", + "size": 1 + }, + { + "name": "WantToText", + "type": "Variable", + "size": "1" + }, + { + "name": "SkillsMask", + "type": "U32", + "size": 1 + }, + { + "name": "SkillsText", + "type": "Variable", + "size": "1" + }, + { + "name": "LanguagesText", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "AvatarGroupsReply", + "frequency": "Low", + "id": "173", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AvatarID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "GroupPowers", + "type": "U64", + "size": 1 + }, + { + "name": "AcceptNotices", + "type": "BOOL", + "size": 1 + }, + { + "name": "GroupTitle", + "type": "Variable", + "size": "1" + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupName", + "type": "Variable", + "size": "1" + }, + { + "name": "GroupInsigniaID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "NewGroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ListInProfile", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "AvatarPropertiesUpdate", + "frequency": "Low", + "id": "174", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "PropertiesData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ImageID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FLImageID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AboutText", + "type": "Variable", + "size": "2" + }, + { + "name": "FLAboutText", + "type": "Variable", + "size": "1" + }, + { + "name": "AllowPublish", + "type": "BOOL", + "size": 1 + }, + { + "name": "MaturePublish", + "type": "BOOL", + "size": 1 + }, + { + "name": "ProfileURL", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "AvatarInterestsUpdate", + "frequency": "Low", + "id": "175", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "PropertiesData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "WantToMask", + "type": "U32", + "size": 1 + }, + { + "name": "WantToText", + "type": "Variable", + "size": "1" + }, + { + "name": "SkillsMask", + "type": "U32", + "size": 1 + }, + { + "name": "SkillsText", + "type": "Variable", + "size": "1" + }, + { + "name": "LanguagesText", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "AvatarNotesReply", + "frequency": "Low", + "id": "176", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TargetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Notes", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "AvatarNotesUpdate", + "frequency": "Low", + "id": "177", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TargetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Notes", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "AvatarPicksReply", + "frequency": "Low", + "id": "178", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TargetID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "PickID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "PickName", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "EventInfoRequest", + "frequency": "Low", + "id": "179", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "EventData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "EventID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "EventInfoReply", + "frequency": "Low", + "id": "180", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "EventData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "EventID", + "type": "U32", + "size": 1 + }, + { + "name": "Creator", + "type": "Variable", + "size": "1" + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Category", + "type": "Variable", + "size": "1" + }, + { + "name": "Desc", + "type": "Variable", + "size": "2" + }, + { + "name": "Date", + "type": "Variable", + "size": "1" + }, + { + "name": "DateUTC", + "type": "U32", + "size": 1 + }, + { + "name": "Duration", + "type": "U32", + "size": 1 + }, + { + "name": "Cover", + "type": "U32", + "size": 1 + }, + { + "name": "Amount", + "type": "U32", + "size": 1 + }, + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "GlobalPos", + "type": "LLVector3d", + "size": 1 + }, + { + "name": "EventFlags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "EventNotificationAddRequest", + "frequency": "Low", + "id": "181", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "EventData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "EventID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "EventNotificationRemoveRequest", + "frequency": "Low", + "id": "182", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "EventData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "EventID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "EventGodDelete", + "frequency": "Low", + "id": "183", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "EventData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "EventID", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryText", + "type": "Variable", + "size": "1" + }, + { + "name": "QueryFlags", + "type": "U32", + "size": 1 + }, + { + "name": "QueryStart", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "PickInfoReply", + "frequency": "Low", + "id": "184", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "PickID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TopPick", + "type": "BOOL", + "size": 1 + }, + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Desc", + "type": "Variable", + "size": "2" + }, + { + "name": "SnapshotID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "User", + "type": "Variable", + "size": "1" + }, + { + "name": "OriginalName", + "type": "Variable", + "size": "1" + }, + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "PosGlobal", + "type": "LLVector3d", + "size": 1 + }, + { + "name": "SortOrder", + "type": "S32", + "size": 1 + }, + { + "name": "Enabled", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "PickInfoUpdate", + "frequency": "Low", + "id": "185", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "PickID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TopPick", + "type": "BOOL", + "size": 1 + }, + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Desc", + "type": "Variable", + "size": "2" + }, + { + "name": "SnapshotID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "PosGlobal", + "type": "LLVector3d", + "size": 1 + }, + { + "name": "SortOrder", + "type": "S32", + "size": 1 + }, + { + "name": "Enabled", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "PickDelete", + "frequency": "Low", + "id": "186", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "PickID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "PickGodDelete", + "frequency": "Low", + "id": "187", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "PickID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ScriptQuestion", + "frequency": "Low", + "id": "188", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TaskID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ObjectName", + "type": "Variable", + "size": "1" + }, + { + "name": "ObjectOwner", + "type": "Variable", + "size": "1" + }, + { + "name": "Questions", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "Experience", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ExperienceID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ScriptControlChange", + "frequency": "Low", + "id": "189", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Data", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "TakeControls", + "type": "BOOL", + "size": 1 + }, + { + "name": "Controls", + "type": "U32", + "size": 1 + }, + { + "name": "PassToAgent", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "ScriptDialog", + "frequency": "Low", + "id": "190", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FirstName", + "type": "Variable", + "size": "1" + }, + { + "name": "LastName", + "type": "Variable", + "size": "1" + }, + { + "name": "ObjectName", + "type": "Variable", + "size": "1" + }, + { + "name": "Message", + "type": "Variable", + "size": "2" + }, + { + "name": "ChatChannel", + "type": "S32", + "size": 1 + }, + { + "name": "ImageID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Buttons", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ButtonLabel", + "type": "Variable", + "size": "1" + } + ] + }, + { + "name": "OwnerData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ScriptDialogReply", + "frequency": "Low", + "id": "191", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ChatChannel", + "type": "S32", + "size": 1 + }, + { + "name": "ButtonIndex", + "type": "S32", + "size": 1 + }, + { + "name": "ButtonLabel", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "ForceScriptControlRelease", + "frequency": "Low", + "id": "192", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "RevokePermissions", + "frequency": "Low", + "id": "193", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ObjectPermissions", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "LoadURL", + "frequency": "Low", + "id": "194", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectName", + "type": "Variable", + "size": "1" + }, + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerIsGroup", + "type": "BOOL", + "size": 1 + }, + { + "name": "Message", + "type": "Variable", + "size": "1" + }, + { + "name": "URL", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "ScriptTeleportRequest", + "frequency": "Low", + "id": "195", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectName", + "type": "Variable", + "size": "1" + }, + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "SimPosition", + "type": "LLVector3", + "size": 1 + }, + { + "name": "LookAt", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelOverlay", + "frequency": "Low", + "id": "196", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SequenceID", + "type": "S32", + "size": 1 + }, + { + "name": "Data", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "ParcelPropertiesRequest", + "frequency": "Medium", + "id": "11", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SequenceID", + "type": "S32", + "size": 1 + }, + { + "name": "West", + "type": "F32", + "size": 1 + }, + { + "name": "South", + "type": "F32", + "size": 1 + }, + { + "name": "East", + "type": "F32", + "size": 1 + }, + { + "name": "North", + "type": "F32", + "size": 1 + }, + { + "name": "SnapSelection", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelPropertiesRequestByID", + "frequency": "Low", + "id": "197", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SequenceID", + "type": "S32", + "size": 1 + }, + { + "name": "LocalID", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelProperties", + "frequency": "High", + "id": "23", + "flags": [ + "Trusted", + "Zerocoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RequestResult", + "type": "S32", + "size": 1 + }, + { + "name": "SequenceID", + "type": "S32", + "size": 1 + }, + { + "name": "SnapSelection", + "type": "BOOL", + "size": 1 + }, + { + "name": "SelfCount", + "type": "S32", + "size": 1 + }, + { + "name": "OtherCount", + "type": "S32", + "size": 1 + }, + { + "name": "PublicCount", + "type": "S32", + "size": 1 + }, + { + "name": "LocalID", + "type": "S32", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IsGroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "AuctionID", + "type": "U32", + "size": 1 + }, + { + "name": "ClaimDate", + "type": "S32", + "size": 1 + }, + { + "name": "ClaimPrice", + "type": "S32", + "size": 1 + }, + { + "name": "RentPrice", + "type": "S32", + "size": 1 + }, + { + "name": "AABBMin", + "type": "LLVector3", + "size": 1 + }, + { + "name": "AABBMax", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Bitmap", + "type": "Variable", + "size": "2" + }, + { + "name": "Area", + "type": "S32", + "size": 1 + }, + { + "name": "Status", + "type": "U8", + "size": 1 + }, + { + "name": "SimWideMaxPrims", + "type": "S32", + "size": 1 + }, + { + "name": "SimWideTotalPrims", + "type": "S32", + "size": 1 + }, + { + "name": "MaxPrims", + "type": "S32", + "size": 1 + }, + { + "name": "TotalPrims", + "type": "S32", + "size": 1 + }, + { + "name": "OwnerPrims", + "type": "S32", + "size": 1 + }, + { + "name": "GroupPrims", + "type": "S32", + "size": 1 + }, + { + "name": "OtherPrims", + "type": "S32", + "size": 1 + }, + { + "name": "SelectedPrims", + "type": "S32", + "size": 1 + }, + { + "name": "ParcelPrimBonus", + "type": "F32", + "size": 1 + }, + { + "name": "OtherCleanTime", + "type": "S32", + "size": 1 + }, + { + "name": "ParcelFlags", + "type": "U32", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Desc", + "type": "Variable", + "size": "1" + }, + { + "name": "MusicURL", + "type": "Variable", + "size": "1" + }, + { + "name": "MediaURL", + "type": "Variable", + "size": "1" + }, + { + "name": "MediaID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "MediaAutoScale", + "type": "U8", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "PassPrice", + "type": "S32", + "size": 1 + }, + { + "name": "PassHours", + "type": "F32", + "size": 1 + }, + { + "name": "Category", + "type": "U8", + "size": 1 + }, + { + "name": "AuthBuyerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SnapshotID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "UserLocation", + "type": "LLVector3", + "size": 1 + }, + { + "name": "UserLookAt", + "type": "LLVector3", + "size": 1 + }, + { + "name": "LandingType", + "type": "U8", + "size": 1 + }, + { + "name": "RegionPushOverride", + "type": "BOOL", + "size": 1 + }, + { + "name": "RegionDenyAnonymous", + "type": "BOOL", + "size": 1 + }, + { + "name": "RegionDenyIdentified", + "type": "BOOL", + "size": 1 + }, + { + "name": "RegionDenyTransacted", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "AgeVerificationBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionDenyAgeUnverified", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "RegionAllowAccessBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionAllowAccessOverride", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelPropertiesUpdate", + "frequency": "Low", + "id": "198", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "S32", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "ParcelFlags", + "type": "U32", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Desc", + "type": "Variable", + "size": "1" + }, + { + "name": "MusicURL", + "type": "Variable", + "size": "1" + }, + { + "name": "MediaURL", + "type": "Variable", + "size": "1" + }, + { + "name": "MediaID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "MediaAutoScale", + "type": "U8", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "PassPrice", + "type": "S32", + "size": 1 + }, + { + "name": "PassHours", + "type": "F32", + "size": 1 + }, + { + "name": "Category", + "type": "U8", + "size": 1 + }, + { + "name": "AuthBuyerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SnapshotID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "UserLocation", + "type": "LLVector3", + "size": 1 + }, + { + "name": "UserLookAt", + "type": "LLVector3", + "size": 1 + }, + { + "name": "LandingType", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelReturnObjects", + "frequency": "Low", + "id": "199", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "S32", + "size": 1 + }, + { + "name": "ReturnType", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "TaskIDs", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "TaskID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "OwnerIDs", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelSetOtherCleanTime", + "frequency": "Low", + "id": "200", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "S32", + "size": 1 + }, + { + "name": "OtherCleanTime", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelDisableObjects", + "frequency": "Low", + "id": "201", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "S32", + "size": 1 + }, + { + "name": "ReturnType", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "TaskIDs", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "TaskID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "OwnerIDs", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelSelectObjects", + "frequency": "Low", + "id": "202", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "S32", + "size": 1 + }, + { + "name": "ReturnType", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "ReturnIDs", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ReturnID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "EstateCovenantRequest", + "frequency": "Low", + "id": "203", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "EstateCovenantReply", + "frequency": "Low", + "id": "204", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "CovenantID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CovenantTimestamp", + "type": "U32", + "size": 1 + }, + { + "name": "EstateName", + "type": "Variable", + "size": "1" + }, + { + "name": "EstateOwnerID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ForceObjectSelect", + "frequency": "Low", + "id": "205", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Header", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ResetList", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelBuyPass", + "frequency": "Low", + "id": "206", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelDeedToGroup", + "frequency": "Low", + "id": "207", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "LocalID", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelReclaim", + "frequency": "Low", + "id": "208", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelClaim", + "frequency": "Low", + "id": "209", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IsGroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "Final", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "West", + "type": "F32", + "size": 1 + }, + { + "name": "South", + "type": "F32", + "size": 1 + }, + { + "name": "East", + "type": "F32", + "size": 1 + }, + { + "name": "North", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelJoin", + "frequency": "Low", + "id": "210", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "West", + "type": "F32", + "size": 1 + }, + { + "name": "South", + "type": "F32", + "size": 1 + }, + { + "name": "East", + "type": "F32", + "size": 1 + }, + { + "name": "North", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelDivide", + "frequency": "Low", + "id": "211", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "West", + "type": "F32", + "size": 1 + }, + { + "name": "South", + "type": "F32", + "size": 1 + }, + { + "name": "East", + "type": "F32", + "size": 1 + }, + { + "name": "North", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelRelease", + "frequency": "Low", + "id": "212", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelBuy", + "frequency": "Low", + "id": "213", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IsGroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "RemoveContribution", + "type": "BOOL", + "size": 1 + }, + { + "name": "LocalID", + "type": "S32", + "size": 1 + }, + { + "name": "Final", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Price", + "type": "S32", + "size": 1 + }, + { + "name": "Area", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelGodForceOwner", + "frequency": "Low", + "id": "214", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "LocalID", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelAccessListRequest", + "frequency": "Low", + "id": "215", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SequenceID", + "type": "S32", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "LocalID", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelAccessListReply", + "frequency": "Low", + "id": "216", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SequenceID", + "type": "S32", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "LocalID", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "List", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Time", + "type": "S32", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelAccessListUpdate", + "frequency": "Low", + "id": "217", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "LocalID", + "type": "S32", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SequenceID", + "type": "S32", + "size": 1 + }, + { + "name": "Sections", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "List", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Time", + "type": "S32", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelDwellRequest", + "frequency": "Low", + "id": "218", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "S32", + "size": 1 + }, + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelDwellReply", + "frequency": "Low", + "id": "219", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "S32", + "size": 1 + }, + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Dwell", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "RequestParcelTransfer", + "frequency": "Low", + "id": "220", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionTime", + "type": "U32", + "size": 1 + }, + { + "name": "SourceID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "DestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U8", + "size": 1 + }, + { + "name": "TransactionType", + "type": "S32", + "size": 1 + }, + { + "name": "Amount", + "type": "S32", + "size": 1 + }, + { + "name": "BillableArea", + "type": "S32", + "size": 1 + }, + { + "name": "ActualArea", + "type": "S32", + "size": 1 + }, + { + "name": "Final", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "RegionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GridX", + "type": "U32", + "size": 1 + }, + { + "name": "GridY", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "UpdateParcel", + "frequency": "Low", + "id": "221", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "Status", + "type": "U8", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "MusicURL", + "type": "Variable", + "size": "1" + }, + { + "name": "RegionX", + "type": "F32", + "size": 1 + }, + { + "name": "RegionY", + "type": "F32", + "size": 1 + }, + { + "name": "ActualArea", + "type": "S32", + "size": 1 + }, + { + "name": "BillableArea", + "type": "S32", + "size": 1 + }, + { + "name": "ShowDir", + "type": "BOOL", + "size": 1 + }, + { + "name": "IsForSale", + "type": "BOOL", + "size": 1 + }, + { + "name": "Category", + "type": "U8", + "size": 1 + }, + { + "name": "SnapshotID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "UserLocation", + "type": "LLVector3", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "AuthorizedBuyerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AllowPublish", + "type": "BOOL", + "size": 1 + }, + { + "name": "MaturePublish", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "RemoveParcel", + "frequency": "Low", + "id": "222", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ParcelData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "MergeParcel", + "frequency": "Low", + "id": "223", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "MasterParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "MasterID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "SlaveParcelData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "SlaveID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "LogParcelChanges", + "frequency": "Low", + "id": "224", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "RegionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IsOwnerGroup", + "type": "BOOL", + "size": 1 + }, + { + "name": "ActualArea", + "type": "S32", + "size": 1 + }, + { + "name": "Action", + "type": "S8", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "CheckParcelSales", + "frequency": "Low", + "id": "225", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "RegionData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelSales", + "frequency": "Low", + "id": "226", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ParcelData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BuyerID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelGodMarkAsContent", + "frequency": "Low", + "id": "227", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ViewerStartAuction", + "frequency": "Low", + "id": "228", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "S32", + "size": 1 + }, + { + "name": "SnapshotID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "StartAuction", + "frequency": "Low", + "id": "229", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParcelData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SnapshotID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "ConfirmAuctionStart", + "frequency": "Low", + "id": "230", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AuctionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AuctionID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "CompleteAuction", + "frequency": "Low", + "id": "231", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ParcelData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "CancelAuction", + "frequency": "Low", + "id": "232", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ParcelData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "CheckParcelAuctions", + "frequency": "Low", + "id": "233", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "RegionData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelAuctions", + "frequency": "Low", + "id": "234", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ParcelData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "WinnerID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "UUIDNameRequest", + "frequency": "Low", + "id": "235", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "UUIDNameBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "UUIDNameReply", + "frequency": "Low", + "id": "236", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "UUIDNameBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FirstName", + "type": "Variable", + "size": "1" + }, + { + "name": "LastName", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "UUIDGroupNameRequest", + "frequency": "Low", + "id": "237", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "UUIDNameBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "UUIDGroupNameReply", + "frequency": "Low", + "id": "238", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "UUIDNameBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupName", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "ChatPass", + "frequency": "Low", + "id": "239", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "ChatData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Channel", + "type": "S32", + "size": 1 + }, + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "ID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "SourceType", + "type": "U8", + "size": 1 + }, + { + "name": "Type", + "type": "U8", + "size": 1 + }, + { + "name": "Radius", + "type": "F32", + "size": 1 + }, + { + "name": "SimAccess", + "type": "U8", + "size": 1 + }, + { + "name": "Message", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "EdgeDataPacket", + "frequency": "High", + "id": "24", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "EdgeData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LayerType", + "type": "U8", + "size": 1 + }, + { + "name": "Direction", + "type": "U8", + "size": 1 + }, + { + "name": "LayerData", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "SimStatus", + "frequency": "Medium", + "id": "12", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "SimStatus", + "type": "Single", + "count": 1, + "params": [ + { + "name": "CanAcceptAgents", + "type": "BOOL", + "size": 1 + }, + { + "name": "CanAcceptTasks", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "SimFlags", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Flags", + "type": "U64", + "size": 1 + } + ] + } + ] + }, + { + "name": "ChildAgentUpdate", + "frequency": "High", + "id": "25", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "ViewerCircuitCode", + "type": "U32", + "size": 1 + }, + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AgentPos", + "type": "LLVector3", + "size": 1 + }, + { + "name": "AgentVel", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Center", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Size", + "type": "LLVector3", + "size": 1 + }, + { + "name": "AtAxis", + "type": "LLVector3", + "size": 1 + }, + { + "name": "LeftAxis", + "type": "LLVector3", + "size": 1 + }, + { + "name": "UpAxis", + "type": "LLVector3", + "size": 1 + }, + { + "name": "ChangedGrid", + "type": "BOOL", + "size": 1 + }, + { + "name": "Far", + "type": "F32", + "size": 1 + }, + { + "name": "Aspect", + "type": "F32", + "size": 1 + }, + { + "name": "Throttles", + "type": "Variable", + "size": "1" + }, + { + "name": "LocomotionState", + "type": "U32", + "size": 1 + }, + { + "name": "HeadRotation", + "type": "LLQuaternion", + "size": 1 + }, + { + "name": "BodyRotation", + "type": "LLQuaternion", + "size": 1 + }, + { + "name": "ControlFlags", + "type": "U32", + "size": 1 + }, + { + "name": "EnergyLevel", + "type": "F32", + "size": 1 + }, + { + "name": "GodLevel", + "type": "U8", + "size": 1 + }, + { + "name": "AlwaysRun", + "type": "BOOL", + "size": 1 + }, + { + "name": "PreyAgent", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AgentAccess", + "type": "U8", + "size": 1 + }, + { + "name": "AgentTextures", + "type": "Variable", + "size": "2" + }, + { + "name": "ActiveGroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupPowers", + "type": "U64", + "size": 1 + }, + { + "name": "AcceptNotices", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "AnimationData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Animation", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GranterBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "GranterID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "NVPairData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "NVPairs", + "type": "Variable", + "size": "2" + } + ] + }, + { + "name": "VisualParam", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ParamValue", + "type": "U8", + "size": 1 + } + ] + }, + { + "name": "AgentAccess", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AgentLegacyAccess", + "type": "U8", + "size": 1 + }, + { + "name": "AgentMaxAccess", + "type": "U8", + "size": 1 + } + ] + }, + { + "name": "AgentInfo", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "AgentInventoryHost", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "InventoryHost", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "ChildAgentAlive", + "frequency": "High", + "id": "26", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "ViewerCircuitCode", + "type": "U32", + "size": 1 + }, + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ChildAgentPositionUpdate", + "frequency": "High", + "id": "27", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "ViewerCircuitCode", + "type": "U32", + "size": 1 + }, + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AgentPos", + "type": "LLVector3", + "size": 1 + }, + { + "name": "AgentVel", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Center", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Size", + "type": "LLVector3", + "size": 1 + }, + { + "name": "AtAxis", + "type": "LLVector3", + "size": 1 + }, + { + "name": "LeftAxis", + "type": "LLVector3", + "size": 1 + }, + { + "name": "UpAxis", + "type": "LLVector3", + "size": 1 + }, + { + "name": "ChangedGrid", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "ChildAgentDying", + "frequency": "Low", + "id": "240", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ChildAgentUnknown", + "frequency": "Low", + "id": "241", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "AtomicPassObject", + "frequency": "High", + "id": "28", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "TaskData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TaskID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AttachmentNeedsSave", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "KillChildAgents", + "frequency": "Low", + "id": "242", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "IDBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GetScriptRunning", + "frequency": "Low", + "id": "243", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Script", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ScriptRunningReply", + "frequency": "Low", + "id": "244", + "flags": [ + "NotTrusted", + "Unencoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "Script", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Running", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "SetScriptRunning", + "frequency": "Low", + "id": "245", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Script", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Running", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "ScriptReset", + "frequency": "Low", + "id": "246", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Script", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ScriptSensorRequest", + "frequency": "Low", + "id": "247", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "Requester", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SourceID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SearchID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SearchPos", + "type": "LLVector3", + "size": 1 + }, + { + "name": "SearchDir", + "type": "LLQuaternion", + "size": 1 + }, + { + "name": "SearchName", + "type": "Variable", + "size": "1" + }, + { + "name": "Type", + "type": "S32", + "size": 1 + }, + { + "name": "Range", + "type": "F32", + "size": 1 + }, + { + "name": "Arc", + "type": "F32", + "size": 1 + }, + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "SearchRegions", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "ScriptSensorReply", + "frequency": "Low", + "id": "248", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "Requester", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SourceID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "SensedData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Velocity", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Rotation", + "type": "LLQuaternion", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Type", + "type": "S32", + "size": 1 + }, + { + "name": "Range", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "CompleteAgentMovement", + "frequency": "Low", + "id": "249", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CircuitCode", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentMovementComplete", + "frequency": "Low", + "id": "250", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "LookAt", + "type": "LLVector3", + "size": 1 + }, + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "Timestamp", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "SimData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ChannelVersion", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "DataServerLogout", + "frequency": "Low", + "id": "251", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "UserData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ViewerIP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "Disconnect", + "type": "BOOL", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "LogoutRequest", + "frequency": "Low", + "id": "252", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "LogoutReply", + "frequency": "Low", + "id": "253", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ImprovedInstantMessage", + "frequency": "Low", + "id": "254", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MessageBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "FromGroup", + "type": "BOOL", + "size": 1 + }, + { + "name": "ToAgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ParentEstateID", + "type": "U32", + "size": 1 + }, + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Offline", + "type": "U8", + "size": 1 + }, + { + "name": "Dialog", + "type": "U8", + "size": 1 + }, + { + "name": "ID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Timestamp", + "type": "U32", + "size": 1 + }, + { + "name": "FromAgentName", + "type": "Variable", + "size": "1" + }, + { + "name": "Message", + "type": "Variable", + "size": "2" + }, + { + "name": "BinaryBucket", + "type": "Variable", + "size": "2" + } + ] + }, + { + "name": "EstateBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "EstateID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "RetrieveInstantMessages", + "frequency": "Low", + "id": "255", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "FindAgent", + "frequency": "Low", + "id": "256", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Hunter", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Prey", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SpaceIP", + "type": "IPADDR", + "size": 1 + } + ] + }, + { + "name": "LocationBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "GlobalX", + "type": "F64", + "size": 1 + }, + { + "name": "GlobalY", + "type": "F64", + "size": 1 + } + ] + } + ] + }, + { + "name": "RequestGodlikePowers", + "frequency": "Low", + "id": "257", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "RequestBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Godlike", + "type": "BOOL", + "size": 1 + }, + { + "name": "Token", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GrantGodlikePowers", + "frequency": "Low", + "id": "258", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GrantData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GodLevel", + "type": "U8", + "size": 1 + }, + { + "name": "Token", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GodlikeMessage", + "frequency": "Low", + "id": "259", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MethodData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Method", + "type": "Variable", + "size": "1" + }, + { + "name": "Invoice", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParamList", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Parameter", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "EstateOwnerMessage", + "frequency": "Low", + "id": "260", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MethodData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Method", + "type": "Variable", + "size": "1" + }, + { + "name": "Invoice", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParamList", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Parameter", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "GenericMessage", + "frequency": "Low", + "id": "261", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MethodData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Method", + "type": "Variable", + "size": "1" + }, + { + "name": "Invoice", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ParamList", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Parameter", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "MuteListRequest", + "frequency": "Low", + "id": "262", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MuteData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "MuteCRC", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "UpdateMuteListEntry", + "frequency": "Low", + "id": "263", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MuteData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "MuteID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "MuteName", + "type": "Variable", + "size": "1" + }, + { + "name": "MuteType", + "type": "S32", + "size": 1 + }, + { + "name": "MuteFlags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "RemoveMuteListEntry", + "frequency": "Low", + "id": "264", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MuteData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "MuteID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "MuteName", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "CopyInventoryFromNotecard", + "frequency": "Low", + "id": "265", + "flags": [ + "NotTrusted", + "Zerocoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "NotecardData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "NotecardItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "UpdateInventoryItem", + "frequency": "Low", + "id": "266", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CallbackID", + "type": "U32", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BaseMask", + "type": "U32", + "size": 1 + }, + { + "name": "OwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "InvType", + "type": "S8", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "SaleType", + "type": "U8", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "CreationDate", + "type": "S32", + "size": 1 + }, + { + "name": "CRC", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "UpdateCreateInventoryItem", + "frequency": "Low", + "id": "267", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SimApproved", + "type": "BOOL", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CallbackID", + "type": "U32", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BaseMask", + "type": "U32", + "size": 1 + }, + { + "name": "OwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "AssetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "InvType", + "type": "S8", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "SaleType", + "type": "U8", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "CreationDate", + "type": "S32", + "size": 1 + }, + { + "name": "CRC", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "MoveInventoryItem", + "frequency": "Low", + "id": "268", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Stamp", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "NewName", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "CopyInventoryItem", + "frequency": "Low", + "id": "269", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "CallbackID", + "type": "U32", + "size": 1 + }, + { + "name": "OldAgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OldItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "NewFolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "NewName", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "RemoveInventoryItem", + "frequency": "Low", + "id": "270", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ChangeInventoryItemFlags", + "frequency": "Low", + "id": "271", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "SaveAssetIntoInventory", + "frequency": "Low", + "id": "272", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "NewAssetID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "CreateInventoryFolder", + "frequency": "Low", + "id": "273", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "FolderData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ParentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "UpdateInventoryFolder", + "frequency": "Low", + "id": "274", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "FolderData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ParentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "MoveInventoryFolder", + "frequency": "Low", + "id": "275", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Stamp", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ParentID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "RemoveInventoryFolder", + "frequency": "Low", + "id": "276", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "FolderData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "FetchInventoryDescendents", + "frequency": "Low", + "id": "277", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SortOrder", + "type": "S32", + "size": 1 + }, + { + "name": "FetchFolders", + "type": "BOOL", + "size": 1 + }, + { + "name": "FetchItems", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "InventoryDescendents", + "frequency": "Low", + "id": "278", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Version", + "type": "S32", + "size": 1 + }, + { + "name": "Descendents", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "FolderData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ParentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + } + ] + }, + { + "name": "ItemData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BaseMask", + "type": "U32", + "size": 1 + }, + { + "name": "OwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "AssetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "InvType", + "type": "S8", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "SaleType", + "type": "U8", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "CreationDate", + "type": "S32", + "size": 1 + }, + { + "name": "CRC", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "FetchInventory", + "frequency": "Low", + "id": "279", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "FetchInventoryReply", + "frequency": "Low", + "id": "280", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BaseMask", + "type": "U32", + "size": 1 + }, + { + "name": "OwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "AssetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "InvType", + "type": "S8", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "SaleType", + "type": "U8", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "CreationDate", + "type": "S32", + "size": 1 + }, + { + "name": "CRC", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "BulkUpdateInventory", + "frequency": "Low", + "id": "281", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "FolderData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ParentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + } + ] + }, + { + "name": "ItemData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CallbackID", + "type": "U32", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BaseMask", + "type": "U32", + "size": 1 + }, + { + "name": "OwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "AssetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "InvType", + "type": "S8", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "SaleType", + "type": "U8", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "CreationDate", + "type": "S32", + "size": 1 + }, + { + "name": "CRC", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "RequestInventoryAsset", + "frequency": "Low", + "id": "282", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "InventoryAssetResponse", + "frequency": "Low", + "id": "283", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AssetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IsReadable", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "RemoveInventoryObjects", + "frequency": "Low", + "id": "284", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "FolderData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ItemData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "PurgeInventoryDescendents", + "frequency": "Low", + "id": "285", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "UpdateTaskInventory", + "frequency": "Low", + "id": "286", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "UpdateData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "U32", + "size": 1 + }, + { + "name": "Key", + "type": "U8", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BaseMask", + "type": "U32", + "size": 1 + }, + { + "name": "OwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "InvType", + "type": "S8", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "SaleType", + "type": "U8", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "CreationDate", + "type": "S32", + "size": 1 + }, + { + "name": "CRC", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "RemoveTaskInventory", + "frequency": "Low", + "id": "287", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "U32", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "MoveTaskInventory", + "frequency": "Low", + "id": "288", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "U32", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "RequestTaskInventory", + "frequency": "Low", + "id": "289", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "LocalID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ReplyTaskInventory", + "frequency": "Low", + "id": "290", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "InventoryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TaskID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Serial", + "type": "S16", + "size": 1 + }, + { + "name": "Filename", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "DeRezObject", + "frequency": "Low", + "id": "291", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "AgentBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Destination", + "type": "U8", + "size": 1 + }, + { + "name": "DestinationID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "PacketCount", + "type": "U8", + "size": 1 + }, + { + "name": "PacketNumber", + "type": "U8", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DeRezAck", + "frequency": "Low", + "id": "292", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "TransactionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Success", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "RezObject", + "frequency": "Low", + "id": "293", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "RezData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "FromTaskID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BypassRaycast", + "type": "U8", + "size": 1 + }, + { + "name": "RayStart", + "type": "LLVector3", + "size": 1 + }, + { + "name": "RayEnd", + "type": "LLVector3", + "size": 1 + }, + { + "name": "RayTargetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RayEndIsIntersection", + "type": "BOOL", + "size": 1 + }, + { + "name": "RezSelected", + "type": "BOOL", + "size": 1 + }, + { + "name": "RemoveItem", + "type": "BOOL", + "size": 1 + }, + { + "name": "ItemFlags", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BaseMask", + "type": "U32", + "size": 1 + }, + { + "name": "OwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "InvType", + "type": "S8", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "SaleType", + "type": "U8", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "CreationDate", + "type": "S32", + "size": 1 + }, + { + "name": "CRC", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "RezObjectFromNotecard", + "frequency": "Low", + "id": "294", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "RezData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "FromTaskID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BypassRaycast", + "type": "U8", + "size": 1 + }, + { + "name": "RayStart", + "type": "LLVector3", + "size": 1 + }, + { + "name": "RayEnd", + "type": "LLVector3", + "size": 1 + }, + { + "name": "RayTargetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RayEndIsIntersection", + "type": "BOOL", + "size": 1 + }, + { + "name": "RezSelected", + "type": "BOOL", + "size": 1 + }, + { + "name": "RemoveItem", + "type": "BOOL", + "size": 1 + }, + { + "name": "ItemFlags", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "NotecardData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "NotecardItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "TransferInventory", + "frequency": "Low", + "id": "295", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "InfoBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SourceID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "DestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "InventoryID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + } + ] + }, + { + "name": "ValidationBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "NeedsValidation", + "type": "BOOL", + "size": 1 + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "TransferInventoryAck", + "frequency": "Low", + "id": "296", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "InfoBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "InventoryID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "AcceptFriendship", + "frequency": "Low", + "id": "297", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "TransactionBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "FolderData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "DeclineFriendship", + "frequency": "Low", + "id": "298", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "TransactionBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "FormFriendship", + "frequency": "Low", + "id": "299", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SourceID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "DestID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "TerminateFriendship", + "frequency": "Low", + "id": "300", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ExBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "OtherID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "OfferCallingCard", + "frequency": "Low", + "id": "301", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "AgentBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "DestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "AcceptCallingCard", + "frequency": "Low", + "id": "302", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "TransactionBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "FolderData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "DeclineCallingCard", + "frequency": "Low", + "id": "303", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "TransactionBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "RezScript", + "frequency": "Low", + "id": "304", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "UpdateBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "Enabled", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "InventoryBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BaseMask", + "type": "U32", + "size": 1 + }, + { + "name": "OwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "InvType", + "type": "S8", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "SaleType", + "type": "U8", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "CreationDate", + "type": "S32", + "size": 1 + }, + { + "name": "CRC", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "CreateInventoryItem", + "frequency": "Low", + "id": "305", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "CallbackID", + "type": "U32", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "InvType", + "type": "S8", + "size": 1 + }, + { + "name": "WearableType", + "type": "U8", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "CreateLandmarkForEvent", + "frequency": "Low", + "id": "306", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "EventData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "EventID", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "InventoryBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "EventLocationRequest", + "frequency": "Low", + "id": "307", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "EventData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "EventID", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "EventLocationReply", + "frequency": "Low", + "id": "308", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "QueryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "QueryID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "EventData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Success", + "type": "BOOL", + "size": 1 + }, + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RegionPos", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "RegionHandleRequest", + "frequency": "Low", + "id": "309", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "RequestBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "RegionIDAndHandleReply", + "frequency": "Low", + "id": "310", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ReplyBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + } + ] + } + ] + }, + { + "name": "MoneyTransferRequest", + "frequency": "Low", + "id": "311", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MoneyData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SourceID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "DestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U8", + "size": 1 + }, + { + "name": "Amount", + "type": "S32", + "size": 1 + }, + { + "name": "AggregatePermNextOwner", + "type": "U8", + "size": 1 + }, + { + "name": "AggregatePermInventory", + "type": "U8", + "size": 1 + }, + { + "name": "TransactionType", + "type": "S32", + "size": 1 + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "MoneyTransferBackend", + "frequency": "Low", + "id": "312", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "MoneyData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionTime", + "type": "U32", + "size": 1 + }, + { + "name": "SourceID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "DestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U8", + "size": 1 + }, + { + "name": "Amount", + "type": "S32", + "size": 1 + }, + { + "name": "AggregatePermNextOwner", + "type": "U8", + "size": 1 + }, + { + "name": "AggregatePermInventory", + "type": "U8", + "size": 1 + }, + { + "name": "TransactionType", + "type": "S32", + "size": 1 + }, + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GridX", + "type": "U32", + "size": 1 + }, + { + "name": "GridY", + "type": "U32", + "size": 1 + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "MoneyBalanceRequest", + "frequency": "Low", + "id": "313", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MoneyData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "MoneyBalanceReply", + "frequency": "Low", + "id": "314", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "MoneyData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionSuccess", + "type": "BOOL", + "size": 1 + }, + { + "name": "MoneyBalance", + "type": "S32", + "size": 1 + }, + { + "name": "SquareMetersCredit", + "type": "S32", + "size": 1 + }, + { + "name": "SquareMetersCommitted", + "type": "S32", + "size": 1 + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + } + ] + }, + { + "name": "TransactionInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionType", + "type": "S32", + "size": 1 + }, + { + "name": "SourceID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IsSourceGroup", + "type": "BOOL", + "size": 1 + }, + { + "name": "DestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IsDestGroup", + "type": "BOOL", + "size": 1 + }, + { + "name": "Amount", + "type": "S32", + "size": 1 + }, + { + "name": "ItemDescription", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "RoutedMoneyBalanceReply", + "frequency": "Low", + "id": "315", + "flags": [ + "Trusted", + "Zerocoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "TargetBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TargetIP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "TargetPort", + "type": "IPPORT", + "size": 1 + } + ] + }, + { + "name": "MoneyData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionSuccess", + "type": "BOOL", + "size": 1 + }, + { + "name": "MoneyBalance", + "type": "S32", + "size": 1 + }, + { + "name": "SquareMetersCredit", + "type": "S32", + "size": 1 + }, + { + "name": "SquareMetersCommitted", + "type": "S32", + "size": 1 + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + } + ] + }, + { + "name": "TransactionInfo", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionType", + "type": "S32", + "size": 1 + }, + { + "name": "SourceID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IsSourceGroup", + "type": "BOOL", + "size": 1 + }, + { + "name": "DestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IsDestGroup", + "type": "BOOL", + "size": 1 + }, + { + "name": "Amount", + "type": "S32", + "size": 1 + }, + { + "name": "ItemDescription", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "ActivateGestures", + "frequency": "Low", + "id": "316", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AssetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GestureFlags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "DeactivateGestures", + "frequency": "Low", + "id": "317", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GestureFlags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "MuteListUpdate", + "frequency": "Low", + "id": "318", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "MuteData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Filename", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "UseCachedMuteList", + "frequency": "Low", + "id": "319", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GrantUserRights", + "frequency": "Low", + "id": "320", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Rights", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AgentRelated", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RelatedRights", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ChangeUserRights", + "frequency": "Low", + "id": "321", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Rights", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AgentRelated", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RelatedRights", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "OnlineNotification", + "frequency": "Low", + "id": "322", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "OfflineNotification", + "frequency": "Low", + "id": "323", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "SetStartLocationRequest", + "frequency": "Low", + "id": "324", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "StartLocationData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SimName", + "type": "Variable", + "size": "1" + }, + { + "name": "LocationID", + "type": "U32", + "size": 1 + }, + { + "name": "LocationPos", + "type": "LLVector3", + "size": 1 + }, + { + "name": "LocationLookAt", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "SetStartLocation", + "frequency": "Low", + "id": "325", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "StartLocationData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RegionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "LocationID", + "type": "U32", + "size": 1 + }, + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + }, + { + "name": "LocationPos", + "type": "LLVector3", + "size": 1 + }, + { + "name": "LocationLookAt", + "type": "LLVector3", + "size": 1 + } + ] + } + ] + }, + { + "name": "NetTest", + "frequency": "Low", + "id": "326", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "NetBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Port", + "type": "IPPORT", + "size": 1 + } + ] + } + ] + }, + { + "name": "SetCPURatio", + "frequency": "Low", + "id": "327", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Ratio", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "SimCrashed", + "frequency": "Low", + "id": "328", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RegionX", + "type": "U32", + "size": 1 + }, + { + "name": "RegionY", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "Users", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "NameValuePair", + "frequency": "Low", + "id": "329", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "TaskData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "NameValueData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "NVPair", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "RemoveNameValuePair", + "frequency": "Low", + "id": "330", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "TaskData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "NameValueData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "NVPair", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "UpdateAttachment", + "frequency": "Low", + "id": "331", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "AttachmentBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AttachmentPoint", + "type": "U8", + "size": 1 + } + ] + }, + { + "name": "OperationData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AddItem", + "type": "BOOL", + "size": 1 + }, + { + "name": "UseExistingAsset", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BaseMask", + "type": "U32", + "size": 1 + }, + { + "name": "OwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "AssetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "InvType", + "type": "S8", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "SaleType", + "type": "U8", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "CreationDate", + "type": "S32", + "size": 1 + }, + { + "name": "CRC", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "RemoveAttachment", + "frequency": "Low", + "id": "332", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "AttachmentBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AttachmentPoint", + "type": "U8", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "SoundTrigger", + "frequency": "High", + "id": "29", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "SoundData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SoundID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ParentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Handle", + "type": "U64", + "size": 1 + }, + { + "name": "Position", + "type": "LLVector3", + "size": 1 + }, + { + "name": "Gain", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "AttachedSound", + "frequency": "Medium", + "id": "13", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SoundID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Gain", + "type": "F32", + "size": 1 + }, + { + "name": "Flags", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "AttachedSoundGainChange", + "frequency": "Medium", + "id": "14", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Gain", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "PreloadSound", + "frequency": "Medium", + "id": "15", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SoundID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "ObjectAnimation", + "frequency": "High", + "id": "30", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "Sender", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "AnimationList", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AnimID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AnimSequenceID", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "AssetUploadRequest", + "frequency": "Low", + "id": "333", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AssetBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "Tempfile", + "type": "BOOL", + "size": 1 + }, + { + "name": "StoreLocal", + "type": "BOOL", + "size": 1 + }, + { + "name": "AssetData", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "AssetUploadComplete", + "frequency": "Low", + "id": "334", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AssetBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "UUID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "Success", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "EmailMessageRequest", + "frequency": "Low", + "id": "335", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FromAddress", + "type": "Variable", + "size": "1" + }, + { + "name": "Subject", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "EmailMessageReply", + "frequency": "Low", + "id": "336", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ObjectID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "More", + "type": "U32", + "size": 1 + }, + { + "name": "Time", + "type": "U32", + "size": 1 + }, + { + "name": "FromAddress", + "type": "Variable", + "size": "1" + }, + { + "name": "Subject", + "type": "Variable", + "size": "1" + }, + { + "name": "Data", + "type": "Variable", + "size": "2" + }, + { + "name": "MailFilter", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "InternalScriptMail", + "frequency": "Medium", + "id": "16", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "From", + "type": "Variable", + "size": "1" + }, + { + "name": "To", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Subject", + "type": "Variable", + "size": "1" + }, + { + "name": "Body", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "ScriptDataRequest", + "frequency": "Low", + "id": "337", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Hash", + "type": "U64", + "size": 1 + }, + { + "name": "RequestType", + "type": "S8", + "size": 1 + }, + { + "name": "Request", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "ScriptDataReply", + "frequency": "Low", + "id": "338", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Hash", + "type": "U64", + "size": 1 + }, + { + "name": "Reply", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "CreateGroupRequest", + "frequency": "Low", + "id": "339", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Charter", + "type": "Variable", + "size": "2" + }, + { + "name": "ShowInList", + "type": "BOOL", + "size": 1 + }, + { + "name": "InsigniaID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "MembershipFee", + "type": "S32", + "size": 1 + }, + { + "name": "OpenEnrollment", + "type": "BOOL", + "size": 1 + }, + { + "name": "AllowPublish", + "type": "BOOL", + "size": 1 + }, + { + "name": "MaturePublish", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "CreateGroupReply", + "frequency": "Low", + "id": "340", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ReplyData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Success", + "type": "BOOL", + "size": 1 + }, + { + "name": "Message", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "UpdateGroupInfo", + "frequency": "Low", + "id": "341", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Charter", + "type": "Variable", + "size": "2" + }, + { + "name": "ShowInList", + "type": "BOOL", + "size": 1 + }, + { + "name": "InsigniaID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "MembershipFee", + "type": "S32", + "size": 1 + }, + { + "name": "OpenEnrollment", + "type": "BOOL", + "size": 1 + }, + { + "name": "AllowPublish", + "type": "BOOL", + "size": 1 + }, + { + "name": "MaturePublish", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupRoleChanges", + "frequency": "Low", + "id": "342", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "RoleChange", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "RoleID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "MemberID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Change", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "JoinGroupRequest", + "frequency": "Low", + "id": "343", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "JoinGroupReply", + "frequency": "Low", + "id": "344", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Success", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "EjectGroupMemberRequest", + "frequency": "Low", + "id": "345", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "EjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "EjecteeID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "EjectGroupMemberReply", + "frequency": "Low", + "id": "346", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "EjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Success", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "LeaveGroupRequest", + "frequency": "Low", + "id": "347", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "LeaveGroupReply", + "frequency": "Low", + "id": "348", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Success", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "InviteGroupRequest", + "frequency": "Low", + "id": "349", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InviteData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "InviteeID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RoleID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "InviteGroupResponse", + "frequency": "Low", + "id": "350", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "InviteData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "InviteeID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RoleID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "MembershipFee", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupLimit", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupProfileRequest", + "frequency": "Low", + "id": "351", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupProfileReply", + "frequency": "Low", + "id": "352", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Charter", + "type": "Variable", + "size": "2" + }, + { + "name": "ShowInList", + "type": "BOOL", + "size": 1 + }, + { + "name": "MemberTitle", + "type": "Variable", + "size": "1" + }, + { + "name": "PowersMask", + "type": "U64", + "size": 1 + }, + { + "name": "InsigniaID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FounderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "MembershipFee", + "type": "S32", + "size": 1 + }, + { + "name": "OpenEnrollment", + "type": "BOOL", + "size": 1 + }, + { + "name": "Money", + "type": "S32", + "size": 1 + }, + { + "name": "GroupMembershipCount", + "type": "S32", + "size": 1 + }, + { + "name": "GroupRolesCount", + "type": "S32", + "size": 1 + }, + { + "name": "AllowPublish", + "type": "BOOL", + "size": 1 + }, + { + "name": "MaturePublish", + "type": "BOOL", + "size": 1 + }, + { + "name": "OwnerRole", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupAccountSummaryRequest", + "frequency": "Low", + "id": "353", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MoneyData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IntervalDays", + "type": "S32", + "size": 1 + }, + { + "name": "CurrentInterval", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupAccountSummaryReply", + "frequency": "Low", + "id": "354", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MoneyData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IntervalDays", + "type": "S32", + "size": 1 + }, + { + "name": "CurrentInterval", + "type": "S32", + "size": 1 + }, + { + "name": "StartDate", + "type": "Variable", + "size": "1" + }, + { + "name": "Balance", + "type": "S32", + "size": 1 + }, + { + "name": "TotalCredits", + "type": "S32", + "size": 1 + }, + { + "name": "TotalDebits", + "type": "S32", + "size": 1 + }, + { + "name": "ObjectTaxCurrent", + "type": "S32", + "size": 1 + }, + { + "name": "LightTaxCurrent", + "type": "S32", + "size": 1 + }, + { + "name": "LandTaxCurrent", + "type": "S32", + "size": 1 + }, + { + "name": "GroupTaxCurrent", + "type": "S32", + "size": 1 + }, + { + "name": "ParcelDirFeeCurrent", + "type": "S32", + "size": 1 + }, + { + "name": "ObjectTaxEstimate", + "type": "S32", + "size": 1 + }, + { + "name": "LightTaxEstimate", + "type": "S32", + "size": 1 + }, + { + "name": "LandTaxEstimate", + "type": "S32", + "size": 1 + }, + { + "name": "GroupTaxEstimate", + "type": "S32", + "size": 1 + }, + { + "name": "ParcelDirFeeEstimate", + "type": "S32", + "size": 1 + }, + { + "name": "NonExemptMembers", + "type": "S32", + "size": 1 + }, + { + "name": "LastTaxDate", + "type": "Variable", + "size": "1" + }, + { + "name": "TaxDate", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "GroupAccountDetailsRequest", + "frequency": "Low", + "id": "355", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MoneyData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IntervalDays", + "type": "S32", + "size": 1 + }, + { + "name": "CurrentInterval", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupAccountDetailsReply", + "frequency": "Low", + "id": "356", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MoneyData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IntervalDays", + "type": "S32", + "size": 1 + }, + { + "name": "CurrentInterval", + "type": "S32", + "size": 1 + }, + { + "name": "StartDate", + "type": "Variable", + "size": "1" + } + ] + }, + { + "name": "HistoryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "Amount", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupAccountTransactionsRequest", + "frequency": "Low", + "id": "357", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MoneyData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IntervalDays", + "type": "S32", + "size": 1 + }, + { + "name": "CurrentInterval", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupAccountTransactionsReply", + "frequency": "Low", + "id": "358", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "MoneyData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IntervalDays", + "type": "S32", + "size": 1 + }, + { + "name": "CurrentInterval", + "type": "S32", + "size": 1 + }, + { + "name": "StartDate", + "type": "Variable", + "size": "1" + } + ] + }, + { + "name": "HistoryData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Time", + "type": "Variable", + "size": "1" + }, + { + "name": "User", + "type": "Variable", + "size": "1" + }, + { + "name": "Type", + "type": "S32", + "size": 1 + }, + { + "name": "Item", + "type": "Variable", + "size": "1" + }, + { + "name": "Amount", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupActiveProposalsRequest", + "frequency": "Low", + "id": "359", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "TransactionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupActiveProposalItemReply", + "frequency": "Low", + "id": "360", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "TransactionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TotalNumItems", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "ProposalData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "VoteID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "VoteInitiator", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TerseDateID", + "type": "Variable", + "size": "1" + }, + { + "name": "StartDateTime", + "type": "Variable", + "size": "1" + }, + { + "name": "EndDateTime", + "type": "Variable", + "size": "1" + }, + { + "name": "AlreadyVoted", + "type": "BOOL", + "size": 1 + }, + { + "name": "VoteCast", + "type": "Variable", + "size": "1" + }, + { + "name": "Majority", + "type": "F32", + "size": 1 + }, + { + "name": "Quorum", + "type": "S32", + "size": 1 + }, + { + "name": "ProposalText", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "GroupVoteHistoryRequest", + "frequency": "Low", + "id": "361", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "TransactionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupVoteHistoryItemReply", + "frequency": "Low", + "id": "362", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "TransactionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TotalNumItems", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "HistoryItemData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "VoteID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TerseDateID", + "type": "Variable", + "size": "1" + }, + { + "name": "StartDateTime", + "type": "Variable", + "size": "1" + }, + { + "name": "EndDateTime", + "type": "Variable", + "size": "1" + }, + { + "name": "VoteInitiator", + "type": "LLUUID", + "size": 1 + }, + { + "name": "VoteType", + "type": "Variable", + "size": "1" + }, + { + "name": "VoteResult", + "type": "Variable", + "size": "1" + }, + { + "name": "Majority", + "type": "F32", + "size": 1 + }, + { + "name": "Quorum", + "type": "S32", + "size": 1 + }, + { + "name": "ProposalText", + "type": "Variable", + "size": "2" + } + ] + }, + { + "name": "VoteItem", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "CandidateID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "VoteCast", + "type": "Variable", + "size": "1" + }, + { + "name": "NumVotes", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "StartGroupProposal", + "frequency": "Low", + "id": "363", + "flags": [ + "NotTrusted", + "Zerocoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ProposalData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Quorum", + "type": "S32", + "size": 1 + }, + { + "name": "Majority", + "type": "F32", + "size": 1 + }, + { + "name": "Duration", + "type": "S32", + "size": 1 + }, + { + "name": "ProposalText", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "GroupProposalBallot", + "frequency": "Low", + "id": "364", + "flags": [ + "NotTrusted", + "Unencoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ProposalData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ProposalID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "VoteCast", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "TallyVotes", + "frequency": "Low", + "id": "365", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [] + }, + { + "name": "GroupMembersRequest", + "frequency": "Low", + "id": "366", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupMembersReply", + "frequency": "Low", + "id": "367", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "MemberCount", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "MemberData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Contribution", + "type": "S32", + "size": 1 + }, + { + "name": "OnlineStatus", + "type": "Variable", + "size": "1" + }, + { + "name": "AgentPowers", + "type": "U64", + "size": 1 + }, + { + "name": "Title", + "type": "Variable", + "size": "1" + }, + { + "name": "IsOwner", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "ActivateGroup", + "frequency": "Low", + "id": "368", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "SetGroupContribution", + "frequency": "Low", + "id": "369", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Contribution", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "SetGroupAcceptNotices", + "frequency": "Low", + "id": "370", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AcceptNotices", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "NewData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ListInProfile", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupRoleDataRequest", + "frequency": "Low", + "id": "371", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupRoleDataReply", + "frequency": "Low", + "id": "372", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RoleCount", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "RoleData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "RoleID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Title", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "Powers", + "type": "U64", + "size": 1 + }, + { + "name": "Members", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupRoleMembersRequest", + "frequency": "Low", + "id": "373", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupRoleMembersReply", + "frequency": "Low", + "id": "374", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TotalPairs", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "MemberData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "RoleID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "MemberID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupTitlesRequest", + "frequency": "Low", + "id": "375", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupTitlesReply", + "frequency": "Low", + "id": "376", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Title", + "type": "Variable", + "size": "1" + }, + { + "name": "RoleID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Selected", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupTitleUpdate", + "frequency": "Low", + "id": "377", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TitleRoleID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "GroupRoleUpdate", + "frequency": "Low", + "id": "378", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "RoleData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "RoleID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "Title", + "type": "Variable", + "size": "1" + }, + { + "name": "Powers", + "type": "U64", + "size": 1 + }, + { + "name": "UpdateType", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "LiveHelpGroupRequest", + "frequency": "Low", + "id": "379", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "RequestData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "LiveHelpGroupReply", + "frequency": "Low", + "id": "380", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ReplyData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RequestID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Selection", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "AgentWearablesRequest", + "frequency": "Low", + "id": "381", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentWearablesUpdate", + "frequency": "Low", + "id": "382", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SerialNum", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "WearableData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AssetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "WearableType", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentIsNowWearing", + "frequency": "Low", + "id": "383", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "WearableData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "WearableType", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentCachedTexture", + "frequency": "Low", + "id": "384", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SerialNum", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "WearableData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TextureIndex", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentCachedTextureResponse", + "frequency": "Low", + "id": "385", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SerialNum", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "WearableData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "TextureID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TextureIndex", + "type": "U8", + "size": 1 + }, + { + "name": "HostName", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "AgentDataUpdateRequest", + "frequency": "Low", + "id": "386", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "AgentDataUpdate", + "frequency": "Low", + "id": "387", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FirstName", + "type": "Variable", + "size": "1" + }, + { + "name": "LastName", + "type": "Variable", + "size": "1" + }, + { + "name": "GroupTitle", + "type": "Variable", + "size": "1" + }, + { + "name": "ActiveGroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupPowers", + "type": "U64", + "size": 1 + }, + { + "name": "GroupName", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "GroupDataUpdate", + "frequency": "Low", + "id": "388", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentGroupData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AgentPowers", + "type": "U64", + "size": 1 + }, + { + "name": "GroupTitle", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "AgentGroupDataUpdate", + "frequency": "Low", + "id": "389", + "flags": [ + "Trusted", + "Zerocoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupPowers", + "type": "U64", + "size": 1 + }, + { + "name": "AcceptNotices", + "type": "BOOL", + "size": 1 + }, + { + "name": "GroupInsigniaID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Contribution", + "type": "S32", + "size": 1 + }, + { + "name": "GroupName", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "AgentDropGroup", + "frequency": "Low", + "id": "390", + "flags": [ + "Trusted", + "Zerocoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "LogTextMessage", + "frequency": "Low", + "id": "391", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "FromAgentId", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ToAgentId", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GlobalX", + "type": "F64", + "size": 1 + }, + { + "name": "GlobalY", + "type": "F64", + "size": 1 + }, + { + "name": "Time", + "type": "U32", + "size": 1 + }, + { + "name": "Message", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "ViewerEffect", + "frequency": "Medium", + "id": "17", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Effect", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "U8", + "size": 1 + }, + { + "name": "Duration", + "type": "F32", + "size": 1 + }, + { + "name": "Color", + "type": "Fixed", + "size": "4" + }, + { + "name": "TypeData", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "CreateTrustedCircuit", + "frequency": "Low", + "id": "392", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "EndPointID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Digest", + "type": "Fixed", + "size": "32" + } + ] + } + ] + }, + { + "name": "DenyTrustedCircuit", + "frequency": "Low", + "id": "393", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "EndPointID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "RequestTrustedCircuit", + "frequency": "Low", + "id": "394", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [] + }, + { + "name": "RezSingleAttachmentFromInv", + "frequency": "Low", + "id": "395", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AttachmentPt", + "type": "U8", + "size": 1 + }, + { + "name": "ItemFlags", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "RezMultipleAttachmentsFromInv", + "frequency": "Low", + "id": "396", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "HeaderData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "CompoundMsgID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TotalObjects", + "type": "U8", + "size": 1 + }, + { + "name": "FirstDetachAll", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AttachmentPt", + "type": "U8", + "size": 1 + }, + { + "name": "ItemFlags", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "DetachAttachmentIntoInv", + "frequency": "Low", + "id": "397", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ObjectData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "CreateNewOutfitAttachments", + "frequency": "Low", + "id": "398", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "HeaderData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "NewFolderID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "OldItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OldFolderID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "UserInfoRequest", + "frequency": "Low", + "id": "399", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "UserInfoReply", + "frequency": "Low", + "id": "400", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "UserData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "IMViaEMail", + "type": "BOOL", + "size": 1 + }, + { + "name": "DirectoryVisibility", + "type": "Variable", + "size": "1" + }, + { + "name": "EMail", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "UpdateUserInfo", + "frequency": "Low", + "id": "401", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "UserData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "IMViaEMail", + "type": "BOOL", + "size": 1 + }, + { + "name": "DirectoryVisibility", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "ParcelRename", + "frequency": "Low", + "id": "402", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "ParcelData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ParcelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "NewName", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "InitiateDownload", + "frequency": "Low", + "id": "403", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "FileData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "SimFilename", + "type": "Variable", + "size": "1" + }, + { + "name": "ViewerFilename", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "SystemMessage", + "frequency": "Low", + "id": "404", + "flags": [ + "Trusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "MethodData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Method", + "type": "Variable", + "size": "1" + }, + { + "name": "Invoice", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Digest", + "type": "Fixed", + "size": "32" + } + ] + }, + { + "name": "ParamList", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Parameter", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "MapLayerRequest", + "frequency": "Low", + "id": "405", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + }, + { + "name": "Godlike", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "MapLayerReply", + "frequency": "Low", + "id": "406", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "LayerData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "Left", + "type": "U32", + "size": 1 + }, + { + "name": "Right", + "type": "U32", + "size": 1 + }, + { + "name": "Top", + "type": "U32", + "size": 1 + }, + { + "name": "Bottom", + "type": "U32", + "size": 1 + }, + { + "name": "ImageID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "MapBlockRequest", + "frequency": "Low", + "id": "407", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + }, + { + "name": "Godlike", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "PositionData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "MinX", + "type": "U16", + "size": 1 + }, + { + "name": "MaxX", + "type": "U16", + "size": 1 + }, + { + "name": "MinY", + "type": "U16", + "size": 1 + }, + { + "name": "MaxY", + "type": "U16", + "size": 1 + } + ] + } + ] + }, + { + "name": "MapNameRequest", + "frequency": "Low", + "id": "408", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + }, + { + "name": "Godlike", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "NameData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Name", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "MapBlockReply", + "frequency": "Low", + "id": "409", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "X", + "type": "U16", + "size": 1 + }, + { + "name": "Y", + "type": "U16", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Access", + "type": "U8", + "size": 1 + }, + { + "name": "RegionFlags", + "type": "U32", + "size": 1 + }, + { + "name": "WaterHeight", + "type": "U8", + "size": 1 + }, + { + "name": "Agents", + "type": "U8", + "size": 1 + }, + { + "name": "MapImageID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Size", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "SizeX", + "type": "U16", + "size": 1 + }, + { + "name": "SizeY", + "type": "U16", + "size": 1 + } + ] + } + ] + }, + { + "name": "MapItemRequest", + "frequency": "Low", + "id": "410", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "EstateID", + "type": "U32", + "size": 1 + }, + { + "name": "Godlike", + "type": "BOOL", + "size": 1 + } + ] + }, + { + "name": "RequestData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ItemType", + "type": "U32", + "size": 1 + }, + { + "name": "RegionHandle", + "type": "U64", + "size": 1 + } + ] + } + ] + }, + { + "name": "MapItemReply", + "frequency": "Low", + "id": "411", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "RequestData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ItemType", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "X", + "type": "U32", + "size": 1 + }, + { + "name": "Y", + "type": "U32", + "size": 1 + }, + { + "name": "ID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Extra", + "type": "S32", + "size": 1 + }, + { + "name": "Extra2", + "type": "S32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "SendPostcard", + "frequency": "Low", + "id": "412", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "AssetID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "PosGlobal", + "type": "LLVector3d", + "size": 1 + }, + { + "name": "To", + "type": "Variable", + "size": "1" + }, + { + "name": "From", + "type": "Variable", + "size": "1" + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Subject", + "type": "Variable", + "size": "1" + }, + { + "name": "Msg", + "type": "Variable", + "size": "2" + }, + { + "name": "AllowPublish", + "type": "BOOL", + "size": 1 + }, + { + "name": "MaturePublish", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "RpcChannelRequest", + "frequency": "Low", + "id": "413", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GridX", + "type": "U32", + "size": 1 + }, + { + "name": "GridY", + "type": "U32", + "size": 1 + }, + { + "name": "TaskID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "RpcChannelReply", + "frequency": "Low", + "id": "414", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TaskID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ChannelID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "RpcScriptRequestInbound", + "frequency": "Low", + "id": "415", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "TargetBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GridX", + "type": "U32", + "size": 1 + }, + { + "name": "GridY", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TaskID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ChannelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IntValue", + "type": "U32", + "size": 1 + }, + { + "name": "StringValue", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "RpcScriptRequestInboundForward", + "frequency": "Low", + "id": "416", + "flags": [ + "Trusted", + "Unencoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "RPCServerIP", + "type": "IPADDR", + "size": 1 + }, + { + "name": "RPCServerPort", + "type": "IPPORT", + "size": 1 + }, + { + "name": "TaskID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ChannelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IntValue", + "type": "U32", + "size": 1 + }, + { + "name": "StringValue", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "RpcScriptReplyInbound", + "frequency": "Low", + "id": "417", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TaskID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "ChannelID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IntValue", + "type": "U32", + "size": 1 + }, + { + "name": "StringValue", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "ScriptMailRegistration", + "frequency": "Low", + "id": "418", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "TargetIP", + "type": "Variable", + "size": "1" + }, + { + "name": "TargetPort", + "type": "IPPORT", + "size": 1 + }, + { + "name": "TaskID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelMediaCommandMessage", + "frequency": "Low", + "id": "419", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "CommandBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "Command", + "type": "U32", + "size": 1 + }, + { + "name": "Time", + "type": "F32", + "size": 1 + } + ] + } + ] + }, + { + "name": "ParcelMediaUpdate", + "frequency": "Low", + "id": "420", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "DataBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "MediaURL", + "type": "Variable", + "size": "1" + }, + { + "name": "MediaID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "MediaAutoScale", + "type": "U8", + "size": 1 + } + ] + }, + { + "name": "DataBlockExtended", + "type": "Single", + "count": 1, + "params": [ + { + "name": "MediaType", + "type": "Variable", + "size": "1" + }, + { + "name": "MediaDesc", + "type": "Variable", + "size": "1" + }, + { + "name": "MediaWidth", + "type": "S32", + "size": 1 + }, + { + "name": "MediaHeight", + "type": "S32", + "size": 1 + }, + { + "name": "MediaLoop", + "type": "U8", + "size": 1 + } + ] + } + ] + }, + { + "name": "LandStatRequest", + "frequency": "Low", + "id": "421", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "RequestData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ReportType", + "type": "U32", + "size": 1 + }, + { + "name": "RequestFlags", + "type": "U32", + "size": 1 + }, + { + "name": "Filter", + "type": "Variable", + "size": "1" + }, + { + "name": "ParcelLocalID", + "type": "S32", + "size": 1 + } + ] + } + ] + }, + { + "name": "LandStatReply", + "frequency": "Low", + "id": "422", + "flags": [ + "Trusted", + "Unencoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "RequestData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ReportType", + "type": "U32", + "size": 1 + }, + { + "name": "RequestFlags", + "type": "U32", + "size": 1 + }, + { + "name": "TotalObjectCount", + "type": "U32", + "size": 1 + } + ] + }, + { + "name": "ReportData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "TaskLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "TaskID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "LocationX", + "type": "F32", + "size": 1 + }, + { + "name": "LocationY", + "type": "F32", + "size": 1 + }, + { + "name": "LocationZ", + "type": "F32", + "size": 1 + }, + { + "name": "Score", + "type": "F32", + "size": 1 + }, + { + "name": "TaskName", + "type": "Variable", + "size": "1" + }, + { + "name": "OwnerName", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "Error", + "frequency": "Low", + "id": "423", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "Data", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Code", + "type": "S32", + "size": 1 + }, + { + "name": "Token", + "type": "Variable", + "size": "1" + }, + { + "name": "ID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "System", + "type": "Variable", + "size": "1" + }, + { + "name": "Message", + "type": "Variable", + "size": "2" + }, + { + "name": "Data", + "type": "Variable", + "size": "2" + } + ] + } + ] + }, + { + "name": "ObjectIncludeInSearch", + "frequency": "Low", + "id": "424", + "flags": [ + "NotTrusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "ObjectData", + "type": "Variable", + "count": 1, + "params": [ + { + "name": "ObjectLocalID", + "type": "U32", + "size": 1 + }, + { + "name": "IncludeInSearch", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "RezRestoreToWorld", + "frequency": "Low", + "id": "425", + "flags": [ + "NotTrusted", + "Unencoded", + "UDPDeprecated" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "ItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "CreatorID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OwnerID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "BaseMask", + "type": "U32", + "size": 1 + }, + { + "name": "OwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupMask", + "type": "U32", + "size": 1 + }, + { + "name": "EveryoneMask", + "type": "U32", + "size": 1 + }, + { + "name": "NextOwnerMask", + "type": "U32", + "size": 1 + }, + { + "name": "GroupOwned", + "type": "BOOL", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "InvType", + "type": "S8", + "size": 1 + }, + { + "name": "Flags", + "type": "U32", + "size": 1 + }, + { + "name": "SaleType", + "type": "U8", + "size": 1 + }, + { + "name": "SalePrice", + "type": "S32", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + }, + { + "name": "CreationDate", + "type": "S32", + "size": 1 + }, + { + "name": "CRC", + "type": "U32", + "size": 1 + } + ] + } + ] + }, + { + "name": "LinkInventoryItem", + "frequency": "Low", + "id": "426", + "flags": [ + "NotTrusted", + "Zerocoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + } + ] + }, + { + "name": "InventoryBlock", + "type": "Single", + "count": 1, + "params": [ + { + "name": "CallbackID", + "type": "U32", + "size": 1 + }, + { + "name": "FolderID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "TransactionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "OldItemID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "Type", + "type": "S8", + "size": 1 + }, + { + "name": "InvType", + "type": "S8", + "size": 1 + }, + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Description", + "type": "Variable", + "size": "1" + } + ] + } + ] + }, + { + "name": "RetrieveIMsExtended", + "frequency": "Low", + "id": "427", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "IsPremium", + "type": "BOOL", + "size": 1 + } + ] + } + ] + }, + { + "name": "JoinGroupRequestExtended", + "frequency": "Low", + "id": "428", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupLimit", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "GroupID", + "type": "LLUUID", + "size": 1 + } + ] + } + ] + }, + { + "name": "CreateGroupRequestExtended", + "frequency": "Low", + "id": "429", + "flags": [ + "Trusted", + "Unencoded" + ], + "blocks": [ + { + "name": "AgentData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "AgentID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "SessionID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "GroupLimit", + "type": "S32", + "size": 1 + } + ] + }, + { + "name": "GroupData", + "type": "Single", + "count": 1, + "params": [ + { + "name": "Name", + "type": "Variable", + "size": "1" + }, + { + "name": "Charter", + "type": "Variable", + "size": "2" + }, + { + "name": "ShowInList", + "type": "BOOL", + "size": 1 + }, + { + "name": "InsigniaID", + "type": "LLUUID", + "size": 1 + }, + { + "name": "MembershipFee", + "type": "S32", + "size": 1 + }, + { + "name": "OpenEnrollment", + "type": "BOOL", + "size": 1 + }, + { + "name": "AllowPublish", + "type": "BOOL", + "size": 1 + }, + { + "name": "MaturePublish", + "type": "BOOL", + "size": 1 + } + ] + } + ] + } +] \ No newline at end of file diff --git a/tools/msg_template.msg b/tools/msg_template.msg index 14fe167..16b416b 100644 --- a/tools/msg_template.msg +++ b/tools/msg_template.msg @@ -1,9131 +1,9158 @@ -// Linden Lab development message templates - -version 2.0 - -// The Version 2.0 template requires preservation of message -// numbers. Each message must be numbered relative to the -// other messages of that type. The current highest number -// for each type is listed below: -// Low: 429 -// Medium: 18 -// High: 29 -// PLEASE UPDATE THIS WHEN YOU ADD A NEW MESSAGE! - - -// ************************************************************************* -// Test Message -// ************************************************************************* - -// Test Message - -{ - TestMessage Low 1 NotTrusted Zerocoded - { - TestBlock1 Single - { Test1 U32 } - } - { - NeighborBlock Multiple 4 - { Test0 U32 } - { Test1 U32 } - { Test2 U32 } - } -} - -// ************************************************************************* -// Messaging Internal Data Management Message -// ************************************************************************* - -// ************************* -// List fixed messages first -// ************************* - - -// Packet Ack - Ack a list of packets sent reliable -{ - PacketAck Fixed 0xFFFFFFFB NotTrusted Unencoded - { - Packets Variable - { ID U32 } - } -} - - -// OpenCircuit - Tells the recipient's messaging system to open the descibed circuit -{ - OpenCircuit Fixed 0xFFFFFFFC NotTrusted Unencoded UDPBlackListed - { - CircuitInfo Single - { IP IPADDR } - { Port IPPORT } - } -} - - -// CloseCircuit - Tells the recipient's messaging system to close the descibed circuit -{ - CloseCircuit Fixed 0xFFFFFFFD NotTrusted Unencoded -} - - -// ****************** -// End fixed messages -// ****************** - -// StartPingCheck - used to measure circuit ping times -// PingID is used to determine how backlogged the ping was that was -// returned (or how hosed the other side is) -{ - StartPingCheck High 1 NotTrusted Unencoded - { - PingID Single - { PingID U8 } - { OldestUnacked U32 } // Current oldest "unacked" packet on the sender side - } -} - -// CompletePingCheck - used to measure circuit ping times - -{ - CompletePingCheck High 2 NotTrusted Unencoded - { - PingID Single - { PingID U8 } - } -} - -// space->sim -// sim->sim -// AddCircuitCode - Tells the recipient's messaging system that this code -// is for a legal circuit -{ - AddCircuitCode Low 2 Trusted Unencoded - { - CircuitCode Single - { Code U32 } - { SessionID LLUUID } - { AgentID LLUUID } // WARNING - may be null in valid message - } -} - -// viewer->sim -// UseCircuitCode - Attempts to provide the recipient with IP and Port -// info. In the case of viewers, the id is the session id. For other -// machines it may be null. The session id will always be the session -// id of the process, which every server will generate on startup and -// the viewer will be handed after login. -{ - UseCircuitCode Low 3 NotTrusted Unencoded - { - CircuitCode Single - { Code U32 } - { SessionID LLUUID } - { ID LLUUID } // agent id - } -} - - -// ************************************************************************* -// SpaceServer to Simulator Messages -// ************************************************************************ - -// Neighbor List - Passed anytime neighbors change -{ - NeighborList High 3 Trusted Unencoded - { - NeighborBlock Multiple 4 - { IP IPADDR } - { Port IPPORT } - { PublicIP IPADDR } - { PublicPort IPPORT } - { RegionID LLUUID } - { Name Variable 1 } // string - { SimAccess U8 } - } -} - - -// AvatarTextureUpdate -// simulator -> dataserver -// reliable -{ - AvatarTextureUpdate Low 4 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { TexturesChanged BOOL } - } - { - WearableData Variable - { CacheID LLUUID } - { TextureIndex U8 } - { HostName Variable 1 } - } - { - TextureData Variable - { TextureID LLUUID } - } -} - - -// SimulatorMapUpdate -// simulator -> dataserver -// reliable -{ - SimulatorMapUpdate Low 5 Trusted Unencoded - { - MapData Single - { Flags U32 } - } -} - -// SimulatorSetMap -// simulator -> dataserver -// reliable -// Used to upload a map image into the database (currently used only for Land For Sale) -{ - SimulatorSetMap Low 6 Trusted Unencoded - { - MapData Single - { RegionHandle U64 } - { Type S32 } - { MapImage LLUUID } - } -} - -// SubscribeLoad -// spaceserver -> simulator -// reliable -{ - SubscribeLoad Low 7 Trusted Unencoded -} - -// UnsubscribeLoad -// spaceserver -> simulator -// reliable -{ - UnsubscribeLoad Low 8 Trusted Unencoded -} - - -// ************************************************************************ -// Simulator to SpaceServer Messages -// ************************************************************************ - -// SimulatorReady - indicates the sim has finished loading its state -// and is ready to receive updates from others -{ - SimulatorReady Low 9 Trusted Zerocoded - { - SimulatorBlock Single - { SimName Variable 1 } - { SimAccess U8 } - { RegionFlags U32 } - { RegionID LLUUID } - { EstateID U32 } - { ParentEstateID U32 } - } - { - TelehubBlock Single - { HasTelehub BOOL } - { TelehubPos LLVector3 } - } -} - -// TelehubInfo - fill in the UI for telehub creation floater. -// sim -> viewer -// reliable -{ - TelehubInfo Low 10 Trusted Unencoded - { - TelehubBlock Single - { ObjectID LLUUID } // null if no telehub - { ObjectName Variable 1 } // string - { TelehubPos LLVector3 } // fallback if viewer can't find object - { TelehubRot LLQuaternion } - } - { - SpawnPointBlock Variable - { SpawnPointPos LLVector3 } // relative to telehub position - } -} - -// SimulatorPresentAtLocation - indicates that the sim is present at a grid -// location and passes what it believes its neighbors are -{ - SimulatorPresentAtLocation Low 11 Trusted Unencoded - { - SimulatorPublicHostBlock Single - { Port IPPORT } - { SimulatorIP IPADDR } - { GridX U32 } - { GridY U32 } - } - { - NeighborBlock Multiple 4 - { IP IPADDR } - { Port IPPORT } - } - { - SimulatorBlock Single - { SimName Variable 1 } - { SimAccess U8 } - { RegionFlags U32 } - { RegionID LLUUID } - { EstateID U32 } - { ParentEstateID U32 } - } - { - TelehubBlock Variable - { HasTelehub BOOL } - { TelehubPos LLVector3 } - } -} - -// SimulatorLoad -// simulator -> spaceserver -// reliable -{ - SimulatorLoad Low 12 Trusted Unencoded - { - SimulatorLoad Single - { TimeDilation F32 } - { AgentCount S32 } - { CanAcceptAgents BOOL } - } - { - AgentList Variable - { CircuitCode U32 } - { X U8 } - { Y U8 } - } -} - -// Simulator Shutdown Request - Tells spaceserver that a simulator is trying to shutdown -{ - SimulatorShutdownRequest Low 13 Trusted Unencoded -} - -// **************************************************************************** -// Presense messages -// **************************************************************************** - -// sim -> dataserver -{ - RegionPresenceRequestByRegionID Low 14 Trusted Unencoded - { - RegionData Variable - { RegionID LLUUID } - } -} - -// sim -> dataserver -{ - RegionPresenceRequestByHandle Low 15 Trusted Unencoded - { - RegionData Variable - { RegionHandle U64 } - } -} - -// dataserver -> sim -{ - RegionPresenceResponse Low 16 Trusted Zerocoded - { - RegionData Variable - { RegionID LLUUID } - { RegionHandle U64 } - { InternalRegionIP IPADDR } - { ExternalRegionIP IPADDR } - { RegionPort IPPORT } - { ValidUntil F64 } - { Message Variable 1 } - } -} - - -// **************************************************************************** -// Simulator to dataserver messages -// **************************************************************************** - -// Updates SimName, EstateID and SimAccess using RegionID as a key -{ - UpdateSimulator Low 17 Trusted Unencoded - { - SimulatorInfo Single - { RegionID LLUUID } - { SimName Variable 1 } - { EstateID U32 } - { SimAccess U8 } - } -} - - -// record dwell time. -{ - LogDwellTime Low 18 Trusted Unencoded - { - DwellInfo Single - { AgentID LLUUID } - { SessionID LLUUID } - { Duration F32 } - { SimName Variable 1 } - { RegionX U32 } - { RegionY U32 } - { AvgAgentsInView U8 } - { AvgViewerFPS U8 } - } -} - -// Disabled feature response message -{ - FeatureDisabled Low 19 Trusted Unencoded - { - FailureInfo Single - { ErrorMessage Variable 1 } - { AgentID LLUUID } - { TransactionID LLUUID } - } -} - - -// record lost money transactions. This message could be generated -// from either the simulator or the dataserver, depending on how -// the transaction failed. -{ - LogFailedMoneyTransaction Low 20 Trusted Unencoded - { - TransactionData Single - { TransactionID LLUUID } - { TransactionTime U32 } // utc seconds since epoch - { TransactionType S32 } // see lltransactiontypes.h - { SourceID LLUUID } - { DestID LLUUID } // destination of the transfer - { Flags U8 } - { Amount S32 } - { SimulatorIP IPADDR } // U32 encoded IP - { GridX U32 } - { GridY U32 } - { FailureType U8 } - } -} - -// complaint/bug-report - sim -> dataserver. see UserReport for details. -// reliable -{ - UserReportInternal Low 21 Trusted Zerocoded - { - ReportData Single - { ReportType U8 } - { Category U8 } - { ReporterID LLUUID } - { ViewerPosition LLVector3 } - { AgentPosition LLVector3 } - { ScreenshotID LLUUID } - { ObjectID LLUUID } - { OwnerID LLUUID } - { LastOwnerID LLUUID } - { CreatorID LLUUID } - { RegionID LLUUID } - { AbuserID LLUUID } - { AbuseRegionName Variable 1 } - { AbuseRegionID LLUUID } - { Summary Variable 1 } - { Details Variable 2 } - { VersionString Variable 1 } - } -} - -// SetSimStatusInDatabase -// alters the "simulator" table in the database -// sim -> dataserver -// reliable -{ - SetSimStatusInDatabase Low 22 Trusted Unencoded - { - Data Single - { RegionID LLUUID } - { HostName Variable 1 } - { X S32 } - { Y S32 } - { PID S32 } - { AgentCount S32 } - { TimeToLive S32 } // in seconds - { Status Variable 1 } - } -} - -// SetSimPresenceInDatabase -// updates the "presence" table in the database to ensure -// that a given simulator is present and valid for a set amount of -// time -{ - SetSimPresenceInDatabase Low 23 Trusted Unencoded UDPDeprecated - { - SimData Single - { RegionID LLUUID } - { HostName Variable 1 } - { GridX U32 } - { GridY U32 } - { PID S32 } - { AgentCount S32 } - { TimeToLive S32 } // in seconds - { Status Variable 1 } - } -} - -// *************************************************************************** -// Economy messages -// *************************************************************************** - -// once we use local stats, this will include a region handle -{ - EconomyDataRequest Low 24 NotTrusted Unencoded -} - -// dataserver to sim, response w/ econ data -{ - EconomyData Low 25 Trusted Zerocoded - { - Info Single - { ObjectCapacity S32 } - { ObjectCount S32 } - { PriceEnergyUnit S32 } - { PriceObjectClaim S32 } - { PricePublicObjectDecay S32 } - { PricePublicObjectDelete S32 } - { PriceParcelClaim S32 } - { PriceParcelClaimFactor F32 } - { PriceUpload S32 } - { PriceRentLight S32 } - { TeleportMinPrice S32 } - { TeleportPriceExponent F32 } - { EnergyEfficiency F32 } - { PriceObjectRent F32 } - { PriceObjectScaleFactor F32 } - { PriceParcelRent S32 } - { PriceGroupCreate S32 } - } -} - -// *************************************************************************** -// Search messages -// *************************************************************************** - -// AvatarPickerRequest -// Get a list of names to select a person -// viewer -> sim -> data -// reliable -{ - AvatarPickerRequest Low 26 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { QueryID LLUUID } - } - { - Data Single - { Name Variable 1 } - } -} - -// backend implementation which tracks if the user is a god. -{ - AvatarPickerRequestBackend Low 27 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { QueryID LLUUID } - { GodLevel U8 } - } - { - Data Single - { Name Variable 1 } - } -} - -// AvatarPickerReply -// List of names to select a person -// reliable -{ - AvatarPickerReply Low 28 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { QueryID LLUUID } - } - { - Data Variable - { AvatarID LLUUID } - { FirstName Variable 1 } - { LastName Variable 1 } - } -} - -// PlacesQuery -// Used for getting a list of places for the group land panel -// and the user land holdings panel. NOT for the directory. -{ - PlacesQuery Low 29 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { QueryID LLUUID } - } - { - TransactionData Single - { TransactionID LLUUID } - } - { - QueryData Single - { QueryText Variable 1 } - { QueryFlags U32 } - { Category S8 } - { SimName Variable 1 } - } -} - -// PlacesReply -// dataserver -> simulator -> viewer -// If the user has specified a location, use that to compute -// global x,y,z. Otherwise, use center of the AABB. -// reliable -{ - PlacesReply Low 30 Trusted Zerocoded UDPDeprecated - { - AgentData Single - { AgentID LLUUID } - { QueryID LLUUID } - } - { - TransactionData Single - { TransactionID LLUUID } - } - { - QueryData Variable - { OwnerID LLUUID } - { Name Variable 1 } - { Desc Variable 1 } - { ActualArea S32 } - { BillableArea S32 } - { Flags U8 } - { GlobalX F32 } // meters - { GlobalY F32 } // meters - { GlobalZ F32 } // meters - { SimName Variable 1 } - { SnapshotID LLUUID } - { Dwell F32 } - { Price S32 } - //{ ProductSKU Variable 1 } - } -} - -// DirFindQuery viewer->sim -// Message to start asking questions for the directory -{ - DirFindQuery Low 31 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - { QueryText Variable 1 } - { QueryFlags U32 } - { QueryStart S32 } // prev/next page support - } -} - -// DirFindQueryBackend sim->data -// Trusted message generated by receipt of DirFindQuery to sim. -{ - DirFindQueryBackend Low 32 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - { QueryText Variable 1 } - { QueryFlags U32 } - { QueryStart S32 } // prev/next page support - { EstateID U32 } - { Godlike BOOL } - } -} - - -// DirPlacesQuery viewer->sim -// Used for the Find directory of places -{ - DirPlacesQuery Low 33 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - { QueryText Variable 1 } - { QueryFlags U32 } - { Category S8 } - { SimName Variable 1 } - { QueryStart S32 } - } -} - -// DirPlacesQueryBackend sim->dataserver -// Used for the Find directory of places. -{ - DirPlacesQueryBackend Low 34 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - { QueryText Variable 1 } - { QueryFlags U32 } - { Category S8 } - { SimName Variable 1 } - { EstateID U32 } - { Godlike BOOL } - { QueryStart S32 } - } -} - -// DirPlacesReply dataserver->sim->viewer -// If the user has specified a location, use that to compute -// global x,y,z. Otherwise, use center of the AABB. -// reliable -{ - DirPlacesReply Low 35 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - } - { - QueryData Variable - { QueryID LLUUID } - } - { - QueryReplies Variable - { ParcelID LLUUID } - { Name Variable 1 } - { ForSale BOOL } - { Auction BOOL } - { Dwell F32 } - } - { - StatusData Variable - { Status U32 } - } -} - -// DirPeopleReply -{ - DirPeopleReply Low 36 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - } - { - QueryReplies Variable - { AgentID LLUUID } - { FirstName Variable 1 } - { LastName Variable 1 } - { Group Variable 1 } - { Online BOOL } - { Reputation S32 } - } -} - -// DirEventsReply -{ - DirEventsReply Low 37 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - } - { - QueryReplies Variable - { OwnerID LLUUID } - { Name Variable 1 } - { EventID U32 } - { Date Variable 1 } - { UnixTime U32 } - { EventFlags U32 } - } - { - StatusData Variable - { Status U32 } - } -} - -// DirGroupsReply -// dataserver -> userserver -> viewer -// reliable -{ - DirGroupsReply Low 38 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - } - { - QueryReplies Variable - { GroupID LLUUID } - { GroupName Variable 1 } // string - { Members S32 } - { SearchOrder F32 } - } -} - - -// DirClassifiedQuery viewer->sim -// reliable -{ - DirClassifiedQuery Low 39 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - { QueryText Variable 1 } - { QueryFlags U32 } - { Category U32 } - { QueryStart S32 } - } -} - -// DirClassifiedQueryBackend sim->dataserver -// reliable -{ - DirClassifiedQueryBackend Low 40 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - { QueryText Variable 1 } - { QueryFlags U32 } - { Category U32 } - { EstateID U32 } - { Godlike BOOL } - { QueryStart S32 } - } -} - -// DirClassifiedReply dataserver->sim->viewer -// reliable -{ - DirClassifiedReply Low 41 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - } - { - QueryReplies Variable - { ClassifiedID LLUUID } - { Name Variable 1 } - { ClassifiedFlags U8 } - { CreationDate U32 } - { ExpirationDate U32 } - { PriceForListing S32 } - } - { - StatusData Variable - { Status U32 } - } -} - - -// AvatarClassifiedReply -// dataserver -> simulator -> viewer -// Send the header information for this avatar's classifieds -// This fills in the tabs of the Classifieds panel. -// reliable -{ - AvatarClassifiedReply Low 42 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { TargetID LLUUID } - } - { - Data Variable - { ClassifiedID LLUUID } - { Name Variable 1 } - } -} - - -// ClassifiedInfoRequest -// viewer -> simulator -// simulator -> dataserver -// reliable -{ - ClassifiedInfoRequest Low 43 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { ClassifiedID LLUUID } - } -} - - -// ClassifiedInfoReply -// dataserver -> simulator -// simulator -> viewer -// reliable -{ - ClassifiedInfoReply Low 44 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - Data Single - { ClassifiedID LLUUID } - { CreatorID LLUUID } - { CreationDate U32 } - { ExpirationDate U32 } - { Category U32 } - { Name Variable 1 } - { Desc Variable 2 } - { ParcelID LLUUID } - { ParentEstate U32 } - { SnapshotID LLUUID } - { SimName Variable 1 } - { PosGlobal LLVector3d } - { ParcelName Variable 1 } - { ClassifiedFlags U8 } - { PriceForListing S32 } - } -} - - -// ClassifiedInfoUpdate -// Update a classified. ParcelID and EstateID are set -// on the simulator as the message passes through. -// viewer -> simulator -> dataserver -// reliable -{ - ClassifiedInfoUpdate Low 45 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { ClassifiedID LLUUID } - { Category U32 } - { Name Variable 1 } - { Desc Variable 2 } - { ParcelID LLUUID } - { ParentEstate U32 } - { SnapshotID LLUUID } - { PosGlobal LLVector3d } - { ClassifiedFlags U8 } - { PriceForListing S32 } - } -} - - -// ClassifiedDelete -// Delete a classified from the database. -// viewer -> simulator -> dataserver -// reliable -{ - ClassifiedDelete Low 46 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { ClassifiedID LLUUID } - } -} - -// ClassifiedGodDelete -// Delete a classified from the database. -// QueryID is needed so database can send a repeat list of -// classified. -// viewer -> simulator -> dataserver -// reliable -{ - ClassifiedGodDelete Low 47 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { ClassifiedID LLUUID } - { QueryID LLUUID } - } -} - - -// DirLandQuery viewer->sim -// Special query for the land for sale/auction panel. -// reliable -{ - DirLandQuery Low 48 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - { QueryFlags U32 } - { SearchType U32 } - { Price S32 } - { Area S32 } - { QueryStart S32 } - } -} - -// DirLandQueryBackend sim->dataserver -// Special query for the land for sale/auction panel. -{ - DirLandQueryBackend Low 49 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - { QueryFlags U32 } - { SearchType U32 } - { Price S32 } - { Area S32 } - { QueryStart S32 } - { EstateID U32 } - { Godlike BOOL } - } -} - -// DirLandReply -// dataserver -> simulator -> viewer -// reliable -{ - DirLandReply Low 50 Trusted Zerocoded UDPDeprecated - { - AgentData Single - { AgentID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - } - { - QueryReplies Variable - { ParcelID LLUUID } - { Name Variable 1 } - { Auction BOOL } - { ForSale BOOL } - { SalePrice S32 } - { ActualArea S32 } - //{ ProductSKU Variable 1 } - } -} - -// DEPRECATED: DirPopularQuery viewer->sim -// Special query for the land for sale/auction panel. -// reliable -{ - DirPopularQuery Low 51 NotTrusted Zerocoded Deprecated - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - { QueryFlags U32 } - } -} - -// DEPRECATED: DirPopularQueryBackend sim->dataserver -// Special query for the land for sale/auction panel. -// reliable -{ - DirPopularQueryBackend Low 52 Trusted Zerocoded Deprecated - { - AgentData Single - { AgentID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - { QueryFlags U32 } - { EstateID U32 } - { Godlike BOOL } - } -} - -// DEPRECATED: DirPopularReply -// dataserver -> simulator -> viewer -// reliable -{ - DirPopularReply Low 53 Trusted Zerocoded Deprecated - { - AgentData Single - { AgentID LLUUID } - } - { - QueryData Single - { QueryID LLUUID } - } - { - QueryReplies Variable - { ParcelID LLUUID } - { Name Variable 1 } - { Dwell F32 } - } -} - -// ParcelInfoRequest -// viewer -> simulator -> dataserver -// reliable -{ - ParcelInfoRequest Low 54 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { ParcelID LLUUID } - } -} - -// ParcelInfoReply -// dataserver -> simulator -> viewer -// reliable -{ - ParcelInfoReply Low 55 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - } - { - Data Single - { ParcelID LLUUID } - { OwnerID LLUUID } - { Name Variable 1 } - { Desc Variable 1 } - { ActualArea S32 } - { BillableArea S32 } - { Flags U8 } - { GlobalX F32 } // meters - { GlobalY F32 } // meters - { GlobalZ F32 } // meters - { SimName Variable 1 } - { SnapshotID LLUUID } - { Dwell F32 } - { SalePrice S32 } - { AuctionID S32 } - } -} - - -// ParcelObjectOwnersRequest -// viewer -> simulator -// reliable -{ - ParcelObjectOwnersRequest Low 56 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ParcelData Single - { LocalID S32 } - } -} - - -// ParcelObjectOwnersReply -// simulator -> viewer -// reliable -{ - ParcelObjectOwnersReply Low 57 Trusted Zerocoded UDPDeprecated - { - Data Variable - { OwnerID LLUUID } - { IsGroupOwned BOOL } - { Count S32 } - { OnlineStatus BOOL } - } -} - -// GroupNoticeListRequest -// viewer -> simulator -> dataserver -// reliable -{ - GroupNoticesListRequest Low 58 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { GroupID LLUUID } - } -} - -// GroupNoticesListReply -// dataserver -> simulator -> viewer -// reliable -{ - GroupNoticesListReply Low 59 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { GroupID LLUUID } - } - { - Data Variable - { NoticeID LLUUID } - { Timestamp U32 } - { FromName Variable 2 } - { Subject Variable 2 } - { HasAttachment BOOL } - { AssetType U8 } - } -} - -// GroupNoticeRequest -// viewer -> simulator -// simulator -> dataserver -// reliable -{ - GroupNoticeRequest Low 60 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { GroupNoticeID LLUUID } - } -} - -// GroupNoticeAdd -// Add a group notice. -// simulator -> dataserver -// reliable -{ - GroupNoticeAdd Low 61 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - MessageBlock Single - { ToGroupID LLUUID } - { ID LLUUID } - { Dialog U8 } - { FromAgentName Variable 1 } - { Message Variable 2 } - { BinaryBucket Variable 2 } - } -} - - -// **************************************************************************** -// Teleport messages -// -// The teleport messages are numerous, so I have attempted to give them a -// consistent naming convention. Since there is a bit of glob pattern -// aliasing, the rules are applied in order. -// -// Teleport* - viewer->sim or sim->viewer message which announces a -// teleportation request, progrees, start, or end. -// Data* - sim->data or data->sim trusted message. -// Space* - sim->space or space->sim trusted messaging -// *Lure - A lure message to pass around information. -// -// All actual viewer teleports will begin with a Teleport* message and -// end in a TeleportStart, TeleportLocal or TeleportFailed message. The TeleportFailed -// message may be returned by any process and must be routed through the -// teleporting agent's simulator and back to the viewer. -// **************************************************************************** - -// TeleportRequest -// viewer -> sim specifying exact teleport destination -{ - TeleportRequest Low 62 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Info Single - { RegionID LLUUID } - { Position LLVector3 } - { LookAt LLVector3 } - } -} - -// TeleportLocationRequest -// viewer -> sim specifying exact teleport destination -{ - TeleportLocationRequest Low 63 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Info Single - { RegionHandle U64 } - { Position LLVector3 } - { LookAt LLVector3 } - } -} - -// TeleportLocal -// sim -> viewer reply telling the viewer that we've successfully TP'd -// to somewhere else within the sim -{ - TeleportLocal Low 64 Trusted Unencoded - { - Info Single - { AgentID LLUUID } - { LocationID U32 } - { Position LLVector3 } // region - { LookAt LLVector3 } - { TeleportFlags U32 } - } -} - -// TeleportLandmarkRequest viewer->sim -// teleport to landmark asset ID destination. use LLUUD::null for home. -{ - TeleportLandmarkRequest Low 65 NotTrusted Zerocoded - { - Info Single - { AgentID LLUUID } - { SessionID LLUUID } - { LandmarkID LLUUID } - } -} - -// TeleportProgress sim->viewer -// Tell the agent how the teleport is going. -{ - TeleportProgress Low 66 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - Info Single - { TeleportFlags U32 } - { Message Variable 1 } // string - } -} - -// DataHomeLocationRequest sim->data -// Request -{ - DataHomeLocationRequest Low 67 Trusted Zerocoded - { - Info Single - { AgentID LLUUID } - { KickedFromEstateID U32 } - } - { - AgentInfo Single - { AgentEffectiveMaturity U32 } - } -} - -// DataHomeLocationReply data->sim -// response is the location of agent home. -{ - DataHomeLocationReply Low 68 Trusted Unencoded - { - Info Single - { AgentID LLUUID } - { RegionHandle U64 } - { Position LLVector3 } // region coords - { LookAt LLVector3 } - } -} - - -// TeleportFinish sim->viewer -// called when all of the information has been collected and readied for -// the agent. -{ - TeleportFinish Low 69 Trusted Unencoded UDPBlackListed - { - Info Single - { AgentID LLUUID } - { LocationID U32 } - { SimIP IPADDR } - { SimPort IPPORT } - { RegionHandle U64 } - { SeedCapability Variable 2 } // URL - { SimAccess U8 } - { TeleportFlags U32 } - } -} - -// StartLure viewer->sim -// Sent from viewer to the local simulator to lure target id to near -// agent id. This will generate an instant message that will be routed -// through the space server and out to the userserver. When that IM -// goes through the userserver and the TargetID is online, the -// userserver will send an InitializeLure to the spaceserver. When that -// packet is acked, the original instant message is finally forwarded to -// TargetID. -{ - StartLure Low 70 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Info Single - { LureType U8 } - { Message Variable 1 } - } - { - TargetData Variable - { TargetID LLUUID } - } -} - -// TeleportLureRequest viewer->sim -// Message from target of lure to begin the teleport process on the -// local simulator. -{ - TeleportLureRequest Low 71 NotTrusted Unencoded - { - Info Single - { AgentID LLUUID } - { SessionID LLUUID } - { LureID LLUUID } - { TeleportFlags U32 } - } -} - -// TeleportCancel viewer->sim -// reliable -{ - TeleportCancel Low 72 NotTrusted Unencoded - { - Info Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - - -// TeleportStart sim->viewer -// announce a successful teleport request to the viewer. -{ - TeleportStart Low 73 Trusted Unencoded - { - Info Single - { TeleportFlags U32 } - } -} - -// TeleportFailed somewhere->sim->viewer -// announce failure of teleport request -{ - TeleportFailed Low 74 Trusted Unencoded - { - Info Single - { AgentID LLUUID } - { Reason Variable 1 } // string - } - { - AlertInfo Variable - { Message Variable 1 } // string id - { ExtraParams Variable 1 } // llsd extra parameters - } -} - - -// *************************************************************************** -// Viewer to Simulator Messages -// *************************************************************************** - -// Undo -{ - Undo Low 75 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - } - { - ObjectData Variable - { ObjectID LLUUID } - } -} - - -// Redo -{ - Redo Low 76 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - } - { - ObjectData Variable - { ObjectID LLUUID } - } -} - -// UndoLand -{ - UndoLand Low 77 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - - -// AgentPause - viewer occasionally will block, inform simulator of this fact -{ - AgentPause Low 78 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { SerialNum U32 } // U32, used by both pause and resume. Non-increasing numbers are ignored. - } -} - -// AgentResume - unblock the agent -{ - AgentResume Low 79 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { SerialNum U32 } // U32, used by both pause and resume. Non-increasing numbers are ignored. - } -} - - -// AgentUpdate - Camera info sent from viewer to simulator -// or, more simply, two axes and compute cross product -// State data is temporary, indicates current behavior state: -// 0 = walking -// 1 = mouselook -// 2 = typing -// -// Center is region local (JNC 8.16.2001) -// Camera center is region local (JNC 8.29.2001) -{ - AgentUpdate High 4 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { BodyRotation LLQuaternion } - { HeadRotation LLQuaternion } - { State U8 } - { CameraCenter LLVector3 } - { CameraAtAxis LLVector3 } - { CameraLeftAxis LLVector3 } - { CameraUpAxis LLVector3 } - { Far F32 } - { ControlFlags U32 } - { Flags U8 } - } -} - -// ChatFromViewer -// Specifies the text to be said and the "type", -// normal speech, shout, whisper. -// with the specified radius -{ - ChatFromViewer Low 80 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ChatData Single - { Message Variable 2 } - { Type U8 } - { Channel S32 } - } -} - - -// AgentThrottle -{ - AgentThrottle Low 81 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { CircuitCode U32 } - } - { - Throttle Single - { GenCounter U32 } - { Throttles Variable 1 } - } -} - - -// AgentFOV - Update to agent's field of view, angle is vertical, single F32 float in radians -{ - AgentFOV Low 82 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { CircuitCode U32 } - } - { - FOVBlock Single - { GenCounter U32 } - { VerticalAngle F32 } - } -} - - -// AgentHeightWidth - Update to height and aspect, sent as height/width to save space -// Usually sent when window resized or created -{ - AgentHeightWidth Low 83 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { CircuitCode U32 } - } - { - HeightWidthBlock Single - { GenCounter U32 } - { Height U16 } - { Width U16 } - } -} - - -// AgentSetAppearance - Update to agent appearance -{ - AgentSetAppearance Low 84 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { SerialNum U32 } // U32, Increases every time the appearance changes. A value of 0 resets. - { Size LLVector3 } - } - { - WearableData Variable - { CacheID LLUUID } - { TextureIndex U8 } - } - { - ObjectData Single - { TextureEntry Variable 2 } - } - { - VisualParam Variable - { ParamValue U8 } - } -} - -// AgentAnimation - Update animation state -// viewer --> simulator -{ - AgentAnimation High 5 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - AnimationList Variable - { AnimID LLUUID } - { StartAnim BOOL } - } - { - PhysicalAvatarEventList Variable - { TypeData Variable 1 } - } -} - -// AgentRequestSit - Try to sit on an object -{ - AgentRequestSit High 6 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - TargetObject Single - { TargetID LLUUID } - { Offset LLVector3 } - } -} - -// AgentSit - Actually sit on object -{ - AgentSit High 7 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - - -// quit message sent between simulators -{ - AgentQuitCopy Low 85 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - FuseBlock Single - { ViewerCircuitCode U32 } - } -} - - -// Request Image - Sent by the viewer to request a specified image at a specified resolution - -{ - RequestImage High 8 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - RequestImage Variable - { Image LLUUID } - { DiscardLevel S8 } - { DownloadPriority F32 } - { Packet U32 } - { Type U8 } - } -} - -// ImageNotInDatabase -// Simulator informs viewer that a requsted image definitely does not exist in the asset database -{ - ImageNotInDatabase Low 86 Trusted Unencoded - { - ImageID Single - { ID LLUUID } - } -} - -// RebakeAvatarTextures -// simulator -> viewer request when a temporary baked avatar texture is not found -{ - RebakeAvatarTextures Low 87 Trusted Unencoded - { - TextureData Single - { TextureID LLUUID } - } -} - - -// SetAlwaysRun -// Lets the viewer choose between running and walking -{ - SetAlwaysRun Low 88 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { AlwaysRun BOOL } - } -} - -// ObjectAdd - create new object in the world -// Simulator will assign ID and send message back to signal -// object actually created. -// -// AddFlags (see also ObjectUpdate) -// 0x01 - use physics -// 0x02 - create selected -// -// If only one ImageID is sent for an object type that has more than -// one face, the same image is repeated on each subsequent face. -// -// Data field is opaque type-specific data for this object -{ - ObjectAdd Medium 1 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - } - { - ObjectData Single - { PCode U8 } - { Material U8 } - { AddFlags U32 } // see object_flags.h - - { PathCurve U8 } - { ProfileCurve U8 } - { PathBegin U16 } // 0 to 1, quanta = 0.01 - { PathEnd U16 } // 0 to 1, quanta = 0.01 - { PathScaleX U8 } // 0 to 1, quanta = 0.01 - { PathScaleY U8 } // 0 to 1, quanta = 0.01 - { PathShearX U8 } // -.5 to .5, quanta = 0.01 - { PathShearY U8 } // -.5 to .5, quanta = 0.01 - { PathTwist S8 } // -1 to 1, quanta = 0.01 - { PathTwistBegin S8 } // -1 to 1, quanta = 0.01 - { PathRadiusOffset S8 } // -1 to 1, quanta = 0.01 - { PathTaperX S8 } // -1 to 1, quanta = 0.01 - { PathTaperY S8 } // -1 to 1, quanta = 0.01 - { PathRevolutions U8 } // 0 to 3, quanta = 0.015 - { PathSkew S8 } // -1 to 1, quanta = 0.01 - { ProfileBegin U16 } // 0 to 1, quanta = 0.01 - { ProfileEnd U16 } // 0 to 1, quanta = 0.01 - { ProfileHollow U16 } // 0 to 1, quanta = 0.01 - - { BypassRaycast U8 } - { RayStart LLVector3 } - { RayEnd LLVector3 } - { RayTargetID LLUUID } - { RayEndIsIntersection U8 } - - { Scale LLVector3 } - { Rotation LLQuaternion } - - { State U8 } - } -} - - -// ObjectDelete -// viewer -> simulator -{ - ObjectDelete Low 89 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { Force BOOL } // BOOL, god trying to force delete - } - { - ObjectData Variable - { ObjectLocalID U32 } - } -} - - -// ObjectDuplicate -// viewer -> simulator -// Makes a copy of a set of objects, offset by a given amount -{ - ObjectDuplicate Low 90 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - } - { - SharedData Single - { Offset LLVector3 } - { DuplicateFlags U32 } // see object_flags.h - } - { - ObjectData Variable - { ObjectLocalID U32 } - } -} - - -// ObjectDuplicateOnRay -// viewer -> simulator -// Makes a copy of an object, using the add object raycast -// code to abut it to other objects. -{ - ObjectDuplicateOnRay Low 91 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - { RayStart LLVector3 } // region local - { RayEnd LLVector3 } // region local - { BypassRaycast BOOL } - { RayEndIsIntersection BOOL } - { CopyCenters BOOL } - { CopyRotates BOOL } - { RayTargetID LLUUID } - { DuplicateFlags U32 } // see object_flags.h - } - { - ObjectData Variable - { ObjectLocalID U32 } - } -} - - -// MultipleObjectUpdate -// viewer -> simulator -// updates position, rotation and scale in one message -// positions sent as region-local floats -{ - MultipleObjectUpdate Medium 2 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - { Type U8 } - { Data Variable 1 } // custom type - } -} - -// RequestMultipleObjects -// viewer -> simulator -// reliable -// -// When the viewer gets a local_id/crc for an object that -// it either doesn't have, or doesn't have the current version -// of, it sends this upstream get get an update. -// -// CacheMissType 0 => full object (viewer doesn't have it) -// CacheMissType 1 => CRC mismatch only -{ - RequestMultipleObjects Medium 3 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { CacheMissType U8 } - { ID U32 } - } -} - - -// DEPRECATED: ObjectPosition -// == Old Behavior == -// Set the position on objects -// -// == Reason for deprecation == -// Unused code path was removed in the move to Havok4 -// Object position, scale and rotation messages were already unified -// to MultipleObjectUpdate and this message was unused cruft. -// -// == New Location == -// MultipleObjectUpdate can be used instead. -{ - ObjectPosition Medium 4 NotTrusted Zerocoded Deprecated - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - { Position LLVector3 } // region - } -} - - -// DEPRECATED: ObjectScale -// == Old Behavior == -// Set the scale on objects -// -// == Reason for deprecation == -// Unused code path was removed in the move to Havok4 -// Object position, scale and rotation messages were already unified -// to MultipleObjectUpdate and this message was unused cruft. -// -// == New Location == -// MultipleObjectUpdate can be used instead. -{ - ObjectScale Low 92 NotTrusted Zerocoded Deprecated - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - { Scale LLVector3 } - } -} - - -// ObjectRotation -// viewer -> simulator -{ - ObjectRotation Low 93 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - { Rotation LLQuaternion } - } -} - - -// ObjectFlagUpdate -// viewer -> simulator -{ - ObjectFlagUpdate Low 94 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { ObjectLocalID U32 } - { UsePhysics BOOL } - { IsTemporary BOOL } - { IsPhantom BOOL } - { CastsShadows BOOL } - } - { - ExtraPhysics Variable - { PhysicsShapeType U8 } - { Density F32 } - { Friction F32 } - { Restitution F32 } - { GravityMultiplier F32 } - } -} - - -// ObjectClickAction -// viewer -> simulator -{ - ObjectClickAction Low 95 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - { ClickAction U8 } - } -} - - -// ObjectImage -// viewer -> simulator -{ - ObjectImage Low 96 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - { MediaURL Variable 1 } - { TextureEntry Variable 2 } - } -} - - -{ - ObjectMaterial Low 97 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - { Material U8 } - } -} - - -{ - ObjectShape Low 98 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - { PathCurve U8 } - { ProfileCurve U8 } - { PathBegin U16 } // 0 to 1, quanta = 0.01 - { PathEnd U16 } // 0 to 1, quanta = 0.01 - { PathScaleX U8 } // 0 to 1, quanta = 0.01 - { PathScaleY U8 } // 0 to 1, quanta = 0.01 - { PathShearX U8 } // -.5 to .5, quanta = 0.01 - { PathShearY U8 } // -.5 to .5, quanta = 0.01 - { PathTwist S8 } // -1 to 1, quanta = 0.01 - { PathTwistBegin S8 } // -1 to 1, quanta = 0.01 - { PathRadiusOffset S8 } // -1 to 1, quanta = 0.01 - { PathTaperX S8 } // -1 to 1, quanta = 0.01 - { PathTaperY S8 } // -1 to 1, quanta = 0.01 - { PathRevolutions U8 } // 0 to 3, quanta = 0.015 - { PathSkew S8 } // -1 to 1, quanta = 0.01 - { ProfileBegin U16 } // 0 to 1, quanta = 0.01 - { ProfileEnd U16 } // 0 to 1, quanta = 0.01 - { ProfileHollow U16 } // 0 to 1, quanta = 0.01 - } -} - -{ - ObjectExtraParams Low 99 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - { ParamType U16 } - { ParamInUse BOOL } - { ParamSize U32 } - { ParamData Variable 1 } - } -} - - -// ObjectOwner -// To make public, set OwnerID to LLUUID::null. -// TODO: Eliminate god-bit. Maybe not. God-bit is ok, because it's -// known on the server. -{ - ObjectOwner Low 100 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - HeaderData Single - { Override BOOL } // BOOL, God-bit. - { OwnerID LLUUID } - { GroupID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - } -} - -// ObjectGroup -// To make the object part of no group, set GroupID = LLUUID::null. -// This call only works if objectid.ownerid == agentid. -{ - ObjectGroup Low 101 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - } -} - -// Attempt to buy an object. This will only pack root objects. -{ - ObjectBuy Low 102 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - { CategoryID LLUUID } // folder where it goes (if derezed) - } - { - ObjectData Variable - { ObjectLocalID U32 } - { SaleType U8 } // U8 -> EForSale - { SalePrice S32 } - } -} - -// viewer -> simulator - -// buy object inventory. If the transaction succeeds, it will add -// inventory to the agent, and potentially remove the original. -{ - BuyObjectInventory Low 103 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { ObjectID LLUUID } - { ItemID LLUUID } - { FolderID LLUUID } - } -} - -// sim -> viewer -// Used to propperly handle buying asset containers -{ - DerezContainer Low 104 Trusted Zerocoded - { - Data Single - { ObjectID LLUUID } - { Delete BOOL } // BOOL - } -} - -// ObjectPermissions -// Field - see llpermissionsflags.h -// If Set is true, tries to turn on bits in mask. -// If set is false, tries to turn off bits in mask. -// BUG: This just forces the permissions field. -{ - ObjectPermissions Low 105 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - HeaderData Single - { Override BOOL } // BOOL, God-bit. - } - { - ObjectData Variable - { ObjectLocalID U32 } - { Field U8 } - { Set U8 } - { Mask U32 } - } -} - -// set object sale information -{ - ObjectSaleInfo Low 106 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { LocalID U32 } - { SaleType U8 } // U8 -> EForSale - { SalePrice S32 } - } -} - - -// set object names -{ - ObjectName Low 107 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { LocalID U32 } - { Name Variable 1 } - } -} - -// set object descriptions -{ - ObjectDescription Low 108 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { LocalID U32 } - { Description Variable 1 } - } -} - -// set object category -{ - ObjectCategory Low 109 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { LocalID U32 } - { Category U32 } - } -} - -// ObjectSelect -// Variable object data because rectangular selection can -// generate a large list very quickly. -{ - ObjectSelect Low 110 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - } - -} - - -// ObjectDeselect -{ - ObjectDeselect Low 111 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - } - -} - -// ObjectAttach -{ - ObjectAttach Low 112 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { AttachmentPoint U8 } - } - { - ObjectData Variable - { ObjectLocalID U32 } - { Rotation LLQuaternion } - } -} - -// ObjectDetach -- derezzes an attachment, marking its item in your inventory as not "(worn)" -{ - ObjectDetach Low 113 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - } -} - - -// ObjectDrop -- drops an attachment from your avatar onto the ground -{ - ObjectDrop Low 114 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - } -} - - -// ObjectLink -{ - ObjectLink Low 115 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - } -} - -// ObjectDelink -{ - ObjectDelink Low 116 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - } -} - - -// ObjectGrab -{ - ObjectGrab Low 117 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Single - { LocalID U32 } - { GrabOffset LLVector3 } - } - { - SurfaceInfo Variable - { UVCoord LLVector3 } - { STCoord LLVector3 } - { FaceIndex S32 } - { Position LLVector3 } - { Normal LLVector3 } - { Binormal LLVector3 } - } -} - - -// ObjectGrabUpdate -// TODO: Quantize this data, reduce message size. -// TimeSinceLast could go to 1 byte, since capped -// at 100 on sim. -{ - ObjectGrabUpdate Low 118 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Single - { ObjectID LLUUID } - { GrabOffsetInitial LLVector3 } // LLVector3 - { GrabPosition LLVector3 } // LLVector3, region local - { TimeSinceLast U32 } - } - { - SurfaceInfo Variable - { UVCoord LLVector3 } - { STCoord LLVector3 } - { FaceIndex S32 } - { Position LLVector3 } - { Normal LLVector3 } - { Binormal LLVector3 } - } - -} - - -// ObjectDeGrab -{ - ObjectDeGrab Low 119 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Single - { LocalID U32 } - } - { - SurfaceInfo Variable - { UVCoord LLVector3 } - { STCoord LLVector3 } - { FaceIndex S32 } - { Position LLVector3 } - { Normal LLVector3 } - { Binormal LLVector3 } - } -} - - -// ObjectSpinStart -{ - ObjectSpinStart Low 120 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Single - { ObjectID LLUUID } - } -} - - -// ObjectSpinUpdate -{ - ObjectSpinUpdate Low 121 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Single - { ObjectID LLUUID } - { Rotation LLQuaternion } - } -} - - -// ObjectSpinStop -{ - ObjectSpinStop Low 122 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Single - { ObjectID LLUUID } - } -} - -// Export selected objects -// viewer->sim -{ - ObjectExportSelected Low 123 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { RequestID LLUUID } - { VolumeDetail S16 } - } - { - ObjectData Variable - { ObjectID LLUUID } - } -} - - -// ModifyLand - sent to modify a piece of land on a simulator. -// viewer -> sim -{ - ModifyLand Low 124 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ModifyBlock Single - { Action U8 } - { BrushSize U8 } - { Seconds F32 } - { Height F32 } - } - { - ParcelData Variable - { LocalID S32 } - { West F32 } - { South F32 } - { East F32 } - { North F32 } - } - { - ModifyBlockExtended Variable - { BrushSize F32 } - } -} - - -// VelocityInterpolateOn -// viewer->sim -// requires administrative access -{ - VelocityInterpolateOn Low 125 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - - -// VelocityInterpolateOff -// viewer->sim -// requires administrative access -{ - VelocityInterpolateOff Low 126 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - -// Save State -// viewer->sim -// requires administrative access -{ - StateSave Low 127 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - DataBlock Single - { Filename Variable 1 } - } -} - -// ReportAutosaveCrash -// sim->launcher -{ - ReportAutosaveCrash Low 128 NotTrusted Unencoded - { - AutosaveData Single - { PID S32 } - { Status S32 } - } -} - -// SimWideDeletes -{ - SimWideDeletes Low 129 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - DataBlock Single - { TargetID LLUUID } - { Flags U32 } - } -} - -// RequestObjectPropertiesFamily -// Ask for extended information, such as creator, permissions, resources, etc. -// Medium frequency because it is driven by mouse hovering over objects, which -// occurs at high rates. -{ - RequestObjectPropertiesFamily Medium 5 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Single - { RequestFlags U32 } - { ObjectID LLUUID } - } -} - - -// Track agent - this information is used when sending out the -// coarse location update so that we know who you are tracking. -// To stop tracking - send a null uuid as the prey. -{ - TrackAgent Low 130 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - TargetData Single - { PreyID LLUUID } - } -} - -// end viewer to simulator section - -{ - ViewerStats Low 131 NotTrusted Zerocoded UDPDeprecated - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { IP IPADDR } - { StartTime U32 } - { RunTime F32 } // F32 - { SimFPS F32 } // F32 - { FPS F32 } // F32 - { AgentsInView U8 } // - { Ping F32 } // F32 - { MetersTraveled F64 } - { RegionsVisited S32 } - { SysRAM U32 } - { SysOS Variable 1 } // String - { SysCPU Variable 1 } // String - { SysGPU Variable 1 } // String - } - - { - DownloadTotals Single - { World U32 } - { Objects U32 } - { Textures U32 } - } - - { - NetStats Multiple 2 - { Bytes U32 } - { Packets U32 } - { Compressed U32 } - { Savings U32 } - } - - { - FailStats Single - { SendPacket U32 } - { Dropped U32 } - { Resent U32 } - { FailedResends U32 } - { OffCircuit U32 } - { Invalid U32 } - } - - { - MiscStats Variable - { Type U32 } - { Value F64 } - } -} - -// ScriptAnswerYes -// reliable -{ - ScriptAnswerYes Low 132 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { TaskID LLUUID } - { ItemID LLUUID } - { Questions S32 } - } -} - - -// complaint/bug-report -// reliable -{ - UserReport Low 133 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ReportData Single - { ReportType U8 } // BUG=1, COMPLAINT=2 - { Category U8 } // see sequence.user_report_category - { Position LLVector3 } // screenshot position, region-local - { CheckFlags U8 } // checkboxflags - { ScreenshotID LLUUID } - { ObjectID LLUUID } - { AbuserID LLUUID } - { AbuseRegionName Variable 1 } - { AbuseRegionID LLUUID } - { Summary Variable 1 } - { Details Variable 2 } - { VersionString Variable 1 } - } -} - - -// *************************************************************************** -// Simulator to Viewer Messages -// *************************************************************************** - -// AlertMessage -// Specifies the text to be posted in an alert dialog -{ - AlertMessage Low 134 Trusted Unencoded - { - AlertData Single - { Message Variable 1 } - } - { - AlertInfo Variable - { Message Variable 1 } - { ExtraParams Variable 1 } - } - { - AgentInfo Variable - { AgentID LLUUID } - } -} - -// Send an AlertMessage to the named agent. -// usually dataserver->simulator -{ - AgentAlertMessage Low 135 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - AlertData Single - { Modal BOOL } - { Message Variable 1 } - } -} - - -// MeanCollisionAlert -// Specifies the text to be posted in an alert dialog -{ - MeanCollisionAlert Low 136 Trusted Zerocoded - { - MeanCollision Variable - { Victim LLUUID } - { Perp LLUUID } - { Time U32 } - { Mag F32 } - { Type U8 } - } -} - -// ViewerFrozenMessage -// Specifies the text to be posted in an alert dialog -{ - ViewerFrozenMessage Low 137 Trusted Unencoded - { - FrozenData Single - { Data BOOL } - } -} - -// Health Message -// Tells viewer what agent health is -{ - HealthMessage Low 138 Trusted Zerocoded - { - HealthData Single - { Health F32 } - } -} - -// ChatFromSimulator -// Chat text to appear on a user's screen -// Position is region local. -// Viewer can optionally use position to animate -// If audible is CHAT_NOT_AUDIBLE, message will not be valid -{ - ChatFromSimulator Low 139 Trusted Unencoded - { - ChatData Single - { FromName Variable 1 } - { SourceID LLUUID } // agent id or object id - { OwnerID LLUUID } // object's owner - { SourceType U8 } - { ChatType U8 } - { Audible U8 } - { Position LLVector3 } - { Message Variable 2 } // UTF-8 text - } -} - - -// Simulator statistics packet (goes out to viewer and dataserver/spaceserver) -{ - SimStats Low 140 Trusted Unencoded - { - Region Single - { RegionX U32 } - { RegionY U32 } - { RegionFlags U32 } - { ObjectCapacity U32 } - } - { - Stat Variable - { StatID U32 } - { StatValue F32 } - } - { - PidStat Single - { PID S32 } - } - { - RegionInfo Variable - { RegionFlagsExtended U64 } - } -} - -// viewer -> sim -// reliable -{ - RequestRegionInfo Low 141 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - -// RegionInfo -// Used to populate UI for both region/estate floater -// and god tools floater -// sim -> viewer -// reliable -{ - RegionInfo Low 142 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - RegionInfo Single - { SimName Variable 1 } // string - { EstateID U32 } - { ParentEstateID U32 } - { RegionFlags U32 } - { SimAccess U8 } - { MaxAgents U8 } - { BillableFactor F32 } - { ObjectBonusFactor F32 } - { WaterHeight F32 } - { TerrainRaiseLimit F32 } - { TerrainLowerLimit F32 } - { PricePerMeter S32 } - { RedirectGridX S32 } - { RedirectGridY S32 } - { UseEstateSun BOOL } - { SunHour F32 } // last value set by estate or region controls JC - } - { - RegionInfo2 Single - { ProductSKU Variable 1 } // string - { ProductName Variable 1 } // string - { MaxAgents32 U32 } // Identical to RegionInfo.MaxAgents but allows greater range - { HardMaxAgents U32 } - { HardMaxObjects U32 } - } - { - RegionInfo3 Variable - { RegionFlagsExtended U64 } - } -} - -// GodUpdateRegionInfo -// Sent from viewer to sim after a god has changed some -// of the parameters in the god tools floater -// viewer -> sim -// reliable -{ - GodUpdateRegionInfo Low 143 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - RegionInfo Single - { SimName Variable 1 } // string - { EstateID U32 } - { ParentEstateID U32 } - { RegionFlags U32 } - { BillableFactor F32 } - { PricePerMeter S32 } - { RedirectGridX S32 } - { RedirectGridY S32 } - } - { - RegionInfo2 Variable - { RegionFlagsExtended U64 } - } -} - -//NearestLandingRegionRequest -//sim->dataserver -//Sent from the region to the data server -//to request the most up to date region for the requesting -//region to redirect teleports to -{ - NearestLandingRegionRequest Low 144 Trusted Unencoded - { - RequestingRegionData Single - { RegionHandle U64 } - } -} - -//NearestLandingPointReply -//dataserver->sim -//Sent from the data server to a region in reply -//to the redirectregion request stating which region -//the requesting region should redirect teleports to if necessary -{ - NearestLandingRegionReply Low 145 Trusted Unencoded - { - LandingRegionData Single - { RegionHandle U64 } - } -} - -//NearestLandingPointUpdated -//sim->dataserver -//Sent from a region to the data server -//to have the dataserver note/clear in the db -//that the region has updated it's nearest landing point -{ - NearestLandingRegionUpdated Low 146 Trusted Unencoded - { - RegionData Single - { RegionHandle U64 } - } -} - - -//TeleportLandingStatusChanged -//sim->dataserver -//Sent from the region to the data server -//to note that the region's teleportation landing status has changed -{ - TeleportLandingStatusChanged Low 147 Trusted Unencoded - { - RegionData Single - { RegionHandle U64 } - } -} - -// RegionHandshake -// Sent by region to viewer after it has received UseCircuitCode -// from that viewer. -// sim -> viewer -// reliable -{ - RegionHandshake Low 148 Trusted Zerocoded - { - RegionInfo Single - { RegionFlags U32 } - { SimAccess U8 } - { SimName Variable 1 } // string - { SimOwner LLUUID } - { IsEstateManager BOOL } // this agent, for this sim - { WaterHeight F32 } - { BillableFactor F32 } - { CacheID LLUUID } - { TerrainBase0 LLUUID } - { TerrainBase1 LLUUID } - { TerrainBase2 LLUUID } - { TerrainBase3 LLUUID } - { TerrainDetail0 LLUUID } - { TerrainDetail1 LLUUID } - { TerrainDetail2 LLUUID } - { TerrainDetail3 LLUUID } - { TerrainStartHeight00 F32 } - { TerrainStartHeight01 F32 } - { TerrainStartHeight10 F32 } - { TerrainStartHeight11 F32 } - { TerrainHeightRange00 F32 } - { TerrainHeightRange01 F32 } - { TerrainHeightRange10 F32 } - { TerrainHeightRange11 F32 } - } - { - RegionInfo2 Single - { RegionID LLUUID } - } - { - RegionInfo3 Single - { CPUClassID S32 } - { CPURatio S32 } - { ColoName Variable 1 } // string - { ProductSKU Variable 1 } // string - { ProductName Variable 1 } // string - } - { - RegionInfo4 Variable - { RegionFlagsExtended U64 } - { RegionProtocols U64 } - } -} - -// RegionHandshakeReply -// viewer -> sim -// reliable -// Sent after viewer has initialized the (pre-existing) -// LLViewerRegion with the name, access level, etc. and -// has loaded the cache for the region. -// After the simulator receives this, it will start sending -// data about objects. -{ - RegionHandshakeReply Low 149 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - RegionInfo Single - { Flags U32 } - } -} - -// The CoarseLocationUpdate message is sent to notify the viewer of -// the location of mappable objects in the region. 1 meter resolution is -// sufficient for this. The index block is used to show where you are, -// and where someone you are tracking is located. They are -1 if not -// applicable. -{ - CoarseLocationUpdate Medium 6 Trusted Unencoded - { - Location Variable - { X U8 } - { Y U8 } - { Z U8 } // Z in meters / 4 - } - { - Index Single - { You S16 } - { Prey S16 } - } - { - AgentData Variable - { AgentID LLUUID } - } -} - -// ImageData - sent to viewer to transmit information about an image -{ - ImageData High 9 Trusted Unencoded - { - ImageID Single - { ID LLUUID } - { Codec U8 } - { Size U32 } - { Packets U16 } - } - { - ImageData Single - { Data Variable 2 } - } -} - -// ImagePacket - follow on image data for images having > 1 packet of data -{ - ImagePacket High 10 Trusted Unencoded - { - ImageID Single - { ID LLUUID } - { Packet U16 } - } - { - ImageData Single - { Data Variable 2 } - } -} - -// LayerData - Sent to viewer - encodes layer data - -{ - LayerData High 11 Trusted Unencoded - { - LayerID Single - { Type U8 } - - } - { - LayerData Single - { Data Variable 2 } - } -} - -// ObjectUpdate - Sent by objects from the simulator to the viewer -// -// If only one ImageID is sent for an object type that has more than -// one face, the same image is repeated on each subsequent face. -// -// NameValue is a list of name-value strings, separated by \n characters, -// terminated by \0 -// -// Data is type-specific opaque data for this object -{ - ObjectUpdate High 12 Trusted Zerocoded - { - RegionData Single - { RegionHandle U64 } - { TimeDilation U16 } - } - { - ObjectData Variable - { ID U32 } - { State U8 } - - { FullID LLUUID } - { CRC U32 } // TEMPORARY HACK FOR JAMES - { PCode U8 } - { Material U8 } - { ClickAction U8 } - { Scale LLVector3 } - { ObjectData Variable 1 } - - { ParentID U32 } - { UpdateFlags U32 } // U32, see object_flags.h - - { PathCurve U8 } - { ProfileCurve U8 } - { PathBegin U16 } // 0 to 1, quanta = 0.01 - { PathEnd U16 } // 0 to 1, quanta = 0.01 - { PathScaleX U8 } // 0 to 1, quanta = 0.01 - { PathScaleY U8 } // 0 to 1, quanta = 0.01 - { PathShearX U8 } // -.5 to .5, quanta = 0.01 - { PathShearY U8 } // -.5 to .5, quanta = 0.01 - { PathTwist S8 } // -1 to 1, quanta = 0.01 - { PathTwistBegin S8 } // -1 to 1, quanta = 0.01 - { PathRadiusOffset S8 } // -1 to 1, quanta = 0.01 - { PathTaperX S8 } // -1 to 1, quanta = 0.01 - { PathTaperY S8 } // -1 to 1, quanta = 0.01 - { PathRevolutions U8 } // 0 to 3, quanta = 0.015 - { PathSkew S8 } // -1 to 1, quanta = 0.01 - { ProfileBegin U16 } // 0 to 1, quanta = 0.01 - { ProfileEnd U16 } // 0 to 1, quanta = 0.01 - { ProfileHollow U16 } // 0 to 1, quanta = 0.01 - - { TextureEntry Variable 2 } - { TextureAnim Variable 1 } - - { NameValue Variable 2 } - { Data Variable 2 } - { Text Variable 1 } // llSetText() hovering text - { TextColor Fixed 4 } // actually, a LLColor4U - { MediaURL Variable 1 } // URL for web page, movie, etc. - - // Info for particle systems - { PSBlock Variable 1 } - - // Extra parameters - { ExtraParams Variable 1 } - - // info for looped attached sounds - // because these are almost always all zero - // the hit after zero-coding is only 2 bytes - // not the 42 you see here - { Sound LLUUID } - { OwnerID LLUUID } // HACK object's owner id, only set if non-null sound, for muting - { Gain F32 } - { Flags U8 } - { Radius F32 } // cutoff radius - - // joint info -- is sent in the update of each joint-child-root - { JointType U8 } - { JointPivot LLVector3 } - { JointAxisOrAnchor LLVector3 } - } -} - - -// ObjectUpdateCompressed -{ - ObjectUpdateCompressed High 13 Trusted Unencoded - { - RegionData Single - { RegionHandle U64 } - { TimeDilation U16 } - } - { - ObjectData Variable - { UpdateFlags U32 } - { Data Variable 2 } - } -} - -// ObjectUpdateCached -// reliable -{ - ObjectUpdateCached High 14 Trusted Unencoded - { - RegionData Single - { RegionHandle U64 } - { TimeDilation U16 } - } - { - ObjectData Variable - { ID U32 } - { CRC U32 } - { UpdateFlags U32 } - } -} - -// packed terse object update format -{ - ImprovedTerseObjectUpdate High 15 Trusted Unencoded - { - RegionData Single - { RegionHandle U64 } - { TimeDilation U16 } - } - { - ObjectData Variable - { Data Variable 1 } - { TextureEntry Variable 2 } - } -} - -// KillObject - Sent by objects to the viewer to tell them to kill themselves - -{ - KillObject High 16 Trusted Unencoded - { - ObjectData Variable - { ID U32 } - } -} - - -// CrossedRegion - new way to tell a viewer it has gone across a region -// boundary -{ - CrossedRegion Medium 7 Trusted Unencoded UDPBlackListed - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - RegionData Single - { SimIP IPADDR } - { SimPort IPPORT } - { RegionHandle U64 } - { SeedCapability Variable 2 } // URL - } - { - Info Single - { Position LLVector3 } - { LookAt LLVector3 } - } -} - -// SimulatorViewerTimeMessage - Allows viewer to resynch to world time - -{ - SimulatorViewerTimeMessage Low 150 Trusted Unencoded - { - TimeInfo Single - { UsecSinceStart U64 } - { SecPerDay U32 } - { SecPerYear U32 } - { SunDirection LLVector3 } - { SunPhase F32 } - { SunAngVelocity LLVector3 } - } -} - -// EnableSimulator - Preps a viewer to receive data from a simulator - -{ - EnableSimulator Low 151 Trusted Unencoded UDPBlackListed - { - SimulatorInfo Single - { Handle U64 } - { IP IPADDR } - { Port IPPORT } - } -} - -// DisableThisSimulator - Tells a viewer not to expect data from this simulator anymore - -{ - DisableSimulator Low 152 Trusted Unencoded -} - -// ConfirmEnableSimulator - A confirmation message sent from simulator to neighbors that the simulator -// has successfully been enabled by the viewer - -{ - ConfirmEnableSimulator Medium 8 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - -//----------------------------------------------------------------------------- -// New Transfer system -//----------------------------------------------------------------------------- - -// Request a new transfer (target->source) -{ - TransferRequest Low 153 NotTrusted Zerocoded - { - TransferInfo Single - { TransferID LLUUID } - { ChannelType S32 } - { SourceType S32 } - { Priority F32 } - { Params Variable 2 } - } -} - -// Return info about a transfer/initiate transfer (source->target) -// Possibly should have a Params field like above -{ - TransferInfo Low 154 NotTrusted Zerocoded - { - TransferInfo Single - { TransferID LLUUID } - { ChannelType S32 } - { TargetType S32 } - { Status S32 } - { Size S32 } - { Params Variable 2 } - } -} - -{ - TransferPacket High 17 NotTrusted Unencoded - { - TransferData Single - { TransferID LLUUID } - { ChannelType S32 } - { Packet S32 } - { Status S32 } - { Data Variable 2 } - } -} - -// Abort a transfer in progress (either from target->source or source->target) -{ - TransferAbort Low 155 NotTrusted Zerocoded - { - TransferInfo Single - { TransferID LLUUID } - { ChannelType S32 } - } -} - - -//----------------------------------------------------------------------------- -// General file transfer -//----------------------------------------------------------------------------- - -// RequestXfer - request an arbitrary xfer -{ - RequestXfer Low 156 NotTrusted Zerocoded - { - XferID Single - { ID U64 } - { Filename Variable 1 } - { FilePath U8 } // ELLPath - { DeleteOnCompletion BOOL } // BOOL - { UseBigPackets BOOL } // BOOL - { VFileID LLUUID } - { VFileType S16 } - } -} - -// SendXferPacket - send an additional packet of an arbitrary xfer from sim -> viewer -{ - SendXferPacket High 18 NotTrusted Unencoded - { - XferID Single - { ID U64 } - { Packet U32 } - } - { - DataPacket Single - { Data Variable 2 } - } -} - -// ConfirmXferPacket -{ - ConfirmXferPacket High 19 NotTrusted Unencoded - { - XferID Single - { ID U64 } - { Packet U32 } - } -} - -// AbortXfer -{ - AbortXfer Low 157 NotTrusted Unencoded - { - XferID Single - { ID U64 } - { Result S32 } - } -} - -//----------------------------------------------------------------------------- -// Avatar information -//----------------------------------------------------------------------------- - - -// AvatarAnimation - Update animation state -// simulator --> viewer -{ - AvatarAnimation High 20 Trusted Unencoded - { - Sender Single - { ID LLUUID } - } - { - AnimationList Variable - { AnimID LLUUID } - { AnimSequenceID S32 } - } - { - AnimationSourceList Variable - { ObjectID LLUUID } - } - { - PhysicalAvatarEventList Variable - { TypeData Variable 1 } - } - -} - -// AvatarAppearance - Update visual params -{ - AvatarAppearance Low 158 Trusted Zerocoded - { - Sender Single - { ID LLUUID } - { IsTrial BOOL } - } - { - ObjectData Single - { TextureEntry Variable 2 } - } - { - VisualParam Variable - { ParamValue U8 } - } - { - AppearanceData Variable - { AppearanceVersion U8 } - { CofVersion S32 } - { Flags U32 } - } - { - AppearanceHover Variable - { HoverHeight LLVector3 } - } -} - -// AvatarSitResponse - response to a request to sit on an object -{ - AvatarSitResponse High 21 Trusted Zerocoded - { - SitObject Single - { ID LLUUID } - } - { - SitTransform Single - { AutoPilot BOOL } - { SitPosition LLVector3 } - { SitRotation LLQuaternion } - { CameraEyeOffset LLVector3 } - { CameraAtOffset LLVector3 } - { ForceMouselook BOOL } - } -} - -// SetFollowCamProperties -{ - SetFollowCamProperties Low 159 Trusted Unencoded - { - ObjectData Single - { ObjectID LLUUID } - } - { - CameraProperty Variable - { Type S32 } - { Value F32 } - } -} - -// ClearFollowCamProperties -{ - ClearFollowCamProperties Low 160 Trusted Unencoded - { - ObjectData Single - { ObjectID LLUUID } - } -} - -// CameraConstraint - new camera distance limit (based on collision with objects) -{ - CameraConstraint High 22 Trusted Zerocoded - { - CameraCollidePlane Single - { Plane LLVector4 } - } -} - -// ObjectProperties -// Extended information such as creator, permissions, etc. -// Medium because potentially driven by mouse hover events. -{ - ObjectProperties Medium 9 Trusted Zerocoded - { - ObjectData Variable - { ObjectID LLUUID } - { CreatorID LLUUID } - { OwnerID LLUUID } - { GroupID LLUUID } - { CreationDate U64 } - { BaseMask U32 } - { OwnerMask U32 } - { GroupMask U32 } - { EveryoneMask U32 } - { NextOwnerMask U32 } - { OwnershipCost S32 } -// { TaxRate F32 } // F32 - { SaleType U8 } // U8 -> EForSale - { SalePrice S32 } - { AggregatePerms U8 } - { AggregatePermTextures U8 } - { AggregatePermTexturesOwner U8 } - { Category U32 } // LLCategory - { InventorySerial S16 } // S16 - { ItemID LLUUID } - { FolderID LLUUID } - { FromTaskID LLUUID } - { LastOwnerID LLUUID } - { Name Variable 1 } - { Description Variable 1 } - { TouchName Variable 1 } - { SitName Variable 1 } - { TextureID Variable 1 } - } -} - -// ObjectPropertiesFamily -// Medium because potentially driven by mouse hover events. -{ - ObjectPropertiesFamily Medium 10 Trusted Zerocoded - { - ObjectData Single - { RequestFlags U32 } - { ObjectID LLUUID } - { OwnerID LLUUID } - { GroupID LLUUID } - { BaseMask U32 } - { OwnerMask U32 } - { GroupMask U32 } - { EveryoneMask U32 } - { NextOwnerMask U32 } - { OwnershipCost S32 } - { SaleType U8 } // U8 -> EForSale - { SalePrice S32 } - { Category U32 } // LLCategory - { LastOwnerID LLUUID } - { Name Variable 1 } - { Description Variable 1 } - } -} - -// RequestPayPrice -// viewer -> sim -{ - RequestPayPrice Low 161 NotTrusted Unencoded - { - ObjectData Single - { ObjectID LLUUID } - } -} - -// PayPriceReply -// sim -> viewer -{ - PayPriceReply Low 162 Trusted Unencoded - { - ObjectData Single - { ObjectID LLUUID } - { DefaultPayPrice S32 } - } - { - ButtonData Variable - - { PayButton S32 } - } -} - -// KickUser -// *FIXME* -// Kick off a logged-in user, such as when two people log in with the -// same account name. -// ROUTED dataserver -> userserver -> spaceserver -> simulator -> viewer -// reliable, but that may not matter if a system component is quitting -{ - KickUser Low 163 Trusted Unencoded - { - TargetBlock Single - { TargetIP IPADDR } // U32 encoded IP - { TargetPort IPPORT } - } - { - UserInfo Single - { AgentID LLUUID } - { SessionID LLUUID } - { Reason Variable 2 } // string - } -} - -// ack sent from the simulator up to the main database so that login -// can continue. -{ - KickUserAck Low 164 Trusted Unencoded - { - UserInfo Single - { SessionID LLUUID } - { Flags U32 } - } -} - -// GodKickUser -// When a god wants someone kicked -// viewer -> sim -// reliable -{ - GodKickUser Low 165 NotTrusted Unencoded - { - UserInfo Single - { GodID LLUUID } - { GodSessionID LLUUID } - { AgentID LLUUID } - { KickFlags U32 } - { Reason Variable 2 } // string - } -} - -// SystemKickUser -// user->space, reliable -{ - SystemKickUser Low 166 Trusted Unencoded - { - AgentInfo Variable - { AgentID LLUUID } - } -} - -// EjectUser -// viewer -> sim -// reliable -{ - EjectUser Low 167 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { TargetID LLUUID } - { Flags U32 } - } -} - -// FreezeUser -// Freeze someone who is on my land. -// viewer -> sim -// reliable -{ - FreezeUser Low 168 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { TargetID LLUUID } - { Flags U32 } - } -} - - -// AvatarPropertiesRequest -// viewer -> simulator -// reliable -{ - AvatarPropertiesRequest Low 169 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { AvatarID LLUUID } - } -} - -// AvatarPropertiesRequestBackend -// simulator -> dataserver -// reliable -{ - AvatarPropertiesRequestBackend Low 170 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { AvatarID LLUUID } - { GodLevel U8 } - { WebProfilesDisabled BOOL } - } -} -// AvatarPropertiesReply -// dataserver -> simulator -// simulator -> viewer -// reliable -{ - AvatarPropertiesReply Low 171 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } // your id - { AvatarID LLUUID } // avatar you're asking about - } - { - PropertiesData Single - { ImageID LLUUID } - { FLImageID LLUUID } - { PartnerID LLUUID } - { AboutText Variable 2 } // string, up to 512 - { FLAboutText Variable 1 } // string - { BornOn Variable 1 } // string - { ProfileURL Variable 1 } // string - { CharterMember Variable 1 } // special - usually U8 - { Flags U32 } - } -} - -{ - AvatarInterestsReply Low 172 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } // your id - { AvatarID LLUUID } // avatar you're asking about - } - { - PropertiesData Single - { WantToMask U32 } - { WantToText Variable 1 } // string - { SkillsMask U32 } - { SkillsText Variable 1 } // string - { LanguagesText Variable 1 } // string - } -} - -// AvatarGroupsReply -// dataserver -> simulator -// simulator -> viewer -// reliable -{ - AvatarGroupsReply Low 173 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } // your id - { AvatarID LLUUID } // avatar you're asking about - } - { - GroupData Variable - { GroupPowers U64 } - { AcceptNotices BOOL } - { GroupTitle Variable 1 } - { GroupID LLUUID } - { GroupName Variable 1 } - { GroupInsigniaID LLUUID } - } - { - NewGroupData Single - { ListInProfile BOOL } // whether group displays in profile - } -} - - -// AvatarPropertiesUpdate -// viewer -> simulator -// reliable -{ - AvatarPropertiesUpdate Low 174 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - PropertiesData Single - { ImageID LLUUID } - { FLImageID LLUUID } - { AboutText Variable 2 } // string, up to 512 - { FLAboutText Variable 1 } - { AllowPublish BOOL } // whether profile is externally visible or not - { MaturePublish BOOL } // profile is "mature" - { ProfileURL Variable 1 } // string - } -} - -// AvatarInterestsUpdate -// viewer -> simulator -// reliable -{ - AvatarInterestsUpdate Low 175 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - PropertiesData Single - { WantToMask U32 } - { WantToText Variable 1 } // string - { SkillsMask U32 } - { SkillsText Variable 1 } // string - { LanguagesText Variable 1 } // string - } -} - - - -// AvatarNotesReply -// dataserver -> simulator -// simulator -> viewer -// reliable -{ - AvatarNotesReply Low 176 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - Data Single - { TargetID LLUUID } - { Notes Variable 2 } // string - } -} - - -// AvatarNotesUpdate -// viewer -> simulator -> dataserver -// reliable -{ - AvatarNotesUpdate Low 177 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { TargetID LLUUID } - { Notes Variable 2 } // string - } -} - - -// AvatarPicksReply -// dataserver -> simulator -> viewer -// Send the header information for this avatar's picks -// This fills in the tabs of the Picks panel. -// reliable -{ - AvatarPicksReply Low 178 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { TargetID LLUUID } - } - { - Data Variable - { PickID LLUUID } - { PickName Variable 1 } // string - } -} - - -// EventInfoRequest -// viewer -> simulator -// simulator -> dataserver -// reliable -{ - EventInfoRequest Low 179 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - EventData Single - { EventID U32 } - } -} - - -// EventInfoReply -// dataserver -> simulator -// simulator -> viewer -// reliable -{ - EventInfoReply Low 180 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - EventData Single - { EventID U32 } - { Creator Variable 1 } - { Name Variable 1 } - { Category Variable 1 } - { Desc Variable 2 } - { Date Variable 1 } - { DateUTC U32 } - { Duration U32 } - { Cover U32 } - { Amount U32 } - { SimName Variable 1 } - { GlobalPos LLVector3d } - { EventFlags U32 } - } -} - - -// EventNotificationAddRequest -// viewer -> simulator -// simulator -> dataserver -// reliable -{ - EventNotificationAddRequest Low 181 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - EventData Single - { EventID U32 } - } -} - - -// EventNotificationRemoveRequest -// viewer -> simulator -// simulator -> dataserver -// reliable -{ - EventNotificationRemoveRequest Low 182 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - EventData Single - { EventID U32 } - } -} - -// EventGodDelete -// viewer -> simulator -// simulator -> dataserver -// QueryData is used to resend a search result after the deletion -// reliable -{ - EventGodDelete Low 183 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - EventData Single - { EventID U32 } - } - { - QueryData Single - { QueryID LLUUID } - { QueryText Variable 1 } - { QueryFlags U32 } - { QueryStart S32 } // prev/next page support - } -} - - -// PickInfoReply -// dataserver -> simulator -// simulator -> viewer -// reliable -{ - PickInfoReply Low 184 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - Data Single - { PickID LLUUID } - { CreatorID LLUUID } - { TopPick BOOL } - { ParcelID LLUUID } - { Name Variable 1 } - { Desc Variable 2 } - { SnapshotID LLUUID } - { User Variable 1 } - { OriginalName Variable 1 } - { SimName Variable 1 } - { PosGlobal LLVector3d } - { SortOrder S32 } - { Enabled BOOL } - } -} - - -// PickInfoUpdate -// Update a pick. ParcelID is set on the simulator as the message -// passes through. -// If TopPick is TRUE, the simulator will only pass on the message -// if the agent_id is a god. -// viewer -> simulator -> dataserver -// reliable -{ - PickInfoUpdate Low 185 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { PickID LLUUID } - { CreatorID LLUUID } - { TopPick BOOL } - { ParcelID LLUUID } - { Name Variable 1 } - { Desc Variable 2 } - { SnapshotID LLUUID } - { PosGlobal LLVector3d } - { SortOrder S32 } - { Enabled BOOL } - } -} - - -// PickDelete -// Delete a non-top pick from the database. -// viewer -> simulator -> dataserver -// reliable -{ - PickDelete Low 186 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { PickID LLUUID } - } -} - -// PickGodDelete -// Delete a pick from the database. -// QueryID is needed so database can send a repeat list of -// picks. -// viewer -> simulator -> dataserver -// reliable -{ - PickGodDelete Low 187 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { PickID LLUUID } - { QueryID LLUUID } - } -} - - -// ScriptQuestion -// reliable -{ - ScriptQuestion Low 188 Trusted Unencoded - { - Data Single - { TaskID LLUUID } - { ItemID LLUUID } - { ObjectName Variable 1 } - { ObjectOwner Variable 1 } - { Questions S32 } - } - { - Experience Single - { ExperienceID LLUUID } - } -} - -// ScriptControlChange -// reliable -{ - ScriptControlChange Low 189 Trusted Unencoded - { - Data Variable - { TakeControls BOOL } - { Controls U32 } - { PassToAgent BOOL } - } -} - -// ScriptDialog -// sim -> viewer -// reliable -{ - ScriptDialog Low 190 Trusted Zerocoded - { - Data Single - { ObjectID LLUUID } - { FirstName Variable 1 } - { LastName Variable 1 } - { ObjectName Variable 1 } - { Message Variable 2 } - { ChatChannel S32 } - { ImageID LLUUID } - } - { - Buttons Variable - { ButtonLabel Variable 1 } - } - { - OwnerData Variable - { OwnerID LLUUID } - } -} - - -// ScriptDialogReply -// viewer -> sim -// reliable -{ - ScriptDialogReply Low 191 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { ObjectID LLUUID } - { ChatChannel S32 } - { ButtonIndex S32 } - { ButtonLabel Variable 1 } - } -} - - -// ForceScriptControlRelease -// reliable -{ - ForceScriptControlRelease Low 192 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - -// RevokePermissions -// reliable -{ - RevokePermissions Low 193 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { ObjectID LLUUID } - { ObjectPermissions U32 } - } -} - -// LoadURL -// sim -> viewer -// Ask the user if they would like to load a URL -// reliable -{ - LoadURL Low 194 Trusted Unencoded - { - Data Single - { ObjectName Variable 1 } - { ObjectID LLUUID } - { OwnerID LLUUID } - { OwnerIsGroup BOOL } - { Message Variable 1 } - { URL Variable 1 } - } -} - -// ScriptTeleportRequest -// reliable -{ - ScriptTeleportRequest Low 195 Trusted Unencoded - { - Data Single - { ObjectName Variable 1 } - { SimName Variable 1 } - { SimPosition LLVector3 } - { LookAt LLVector3 } - } -} - - - - -// *************************************************************************** -// Land Parcel system -// *************************************************************************** - -// ParcelOverlay -// We send N packets per region to the viewer. -// N = 4, currently. At 256x256 meter regions, 4x4 meter parcel grid, -// there are 4096 parcel units per region. At N = 4, that's 1024 units -// per packet, allowing 8 bit bytes. -// sim -> viewer -// reliable -{ - ParcelOverlay Low 196 Trusted Zerocoded - { - ParcelData Single - { SequenceID S32 } // 0...3, which piece of region - { Data Variable 2 } // packed bit-field, (grids*grids)/N - } -} - - -// ParcelPropertiesRequest -// SequenceID should be -1 or -2, and is echoed back in the -// parcel properties message. -// viewer -> sim -// reliable -{ - ParcelPropertiesRequest Medium 11 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ParcelData Single - { SequenceID S32 } - { West F32 } - { South F32 } - { East F32 } - { North F32 } - { SnapSelection BOOL } - } -} - -// ParcelPropertiesRequestByID -// viewer -> sim -// reliable -{ - ParcelPropertiesRequestByID Low 197 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ParcelData Single - { SequenceID S32 } - { LocalID S32 } - } -} - -// ParcelProperties -// sequence id = -1 for parcels that you explicitly selected -// For agents, sequence id increments every time the agent transits into -// a new parcel. It is used to detect out-of-order agent parcel info updates. -// Bitmap = packed bit field, one bit per parcel grid, on if that grid is -// part of the selected parcel. -// sim -> viewer -// WARNING: This packet is potentially large. With max length name, -// description, music URL and media URL, it is 1526 + sizeof ( LLUUID ) bytes. -{ - ParcelProperties High 23 Trusted Zerocoded UDPDeprecated - { - ParcelData Single - { RequestResult S32 } - { SequenceID S32 } - { SnapSelection BOOL } - { SelfCount S32 } - { OtherCount S32 } - { PublicCount S32 } - { LocalID S32 } - { OwnerID LLUUID } - { IsGroupOwned BOOL } - { AuctionID U32 } - { ClaimDate S32 } // time_t - { ClaimPrice S32 } - { RentPrice S32 } - { AABBMin LLVector3 } - { AABBMax LLVector3 } - { Bitmap Variable 2 } // packed bit-field - { Area S32 } - { Status U8 } // owned vs. pending - { SimWideMaxPrims S32 } - { SimWideTotalPrims S32 } - { MaxPrims S32 } - { TotalPrims S32 } - { OwnerPrims S32 } - { GroupPrims S32 } - { OtherPrims S32 } - { SelectedPrims S32 } - { ParcelPrimBonus F32 } - - { OtherCleanTime S32 } - - { ParcelFlags U32 } - { SalePrice S32 } - { Name Variable 1 } // string - { Desc Variable 1 } // string - { MusicURL Variable 1 } // string - { MediaURL Variable 1 } // string - { MediaID LLUUID } - { MediaAutoScale U8 } - { GroupID LLUUID } - { PassPrice S32 } - { PassHours F32 } - { Category U8 } - { AuthBuyerID LLUUID } - { SnapshotID LLUUID } - { UserLocation LLVector3 } - { UserLookAt LLVector3 } - { LandingType U8 } - { RegionPushOverride BOOL } - { RegionDenyAnonymous BOOL } - { RegionDenyIdentified BOOL } - { RegionDenyTransacted BOOL } - // in llsd message, SeeAVs, GroupAVSounds and AnyAVSounds BOOLs are also sent - } - { - AgeVerificationBlock Single - { RegionDenyAgeUnverified BOOL } - } - { - RegionAllowAccessBlock Single - { RegionAllowAccessOverride BOOL } - } -} - -// ParcelPropertiesUpdate -// viewer -> sim -// reliable -{ - ParcelPropertiesUpdate Low 198 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ParcelData Single - { LocalID S32 } - { Flags U32 } - - { ParcelFlags U32 } - { SalePrice S32 } - { Name Variable 1 } // string - { Desc Variable 1 } // string - { MusicURL Variable 1 } // string - { MediaURL Variable 1 } // string - { MediaID LLUUID } - { MediaAutoScale U8 } - { GroupID LLUUID } - { PassPrice S32 } - { PassHours F32 } - { Category U8 } - { AuthBuyerID LLUUID } - { SnapshotID LLUUID } - { UserLocation LLVector3 } - { UserLookAt LLVector3 } - { LandingType U8 } - } -} - -// ParcelReturnObjects -// viewer -> sim -// reliable -{ - ParcelReturnObjects Low 199 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ParcelData Single - { LocalID S32 } - { ReturnType U32 } - } - { - TaskIDs Variable - { TaskID LLUUID } - } - { - OwnerIDs Variable - { OwnerID LLUUID } - } -} - -// ParcelSetOtherCleanTime -// viewer -> sim -// reliable -{ - ParcelSetOtherCleanTime Low 200 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ParcelData Single - { LocalID S32 } - { OtherCleanTime S32 } - } -} - - -// Disable makes objects nonphysical and turns off their scripts. -// ParcelDisableObjects -// viewer -> sim -// reliable -{ - ParcelDisableObjects Low 201 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ParcelData Single - { LocalID S32 } - { ReturnType U32 } - } - { - TaskIDs Variable - { TaskID LLUUID } - } - { - OwnerIDs Variable - { OwnerID LLUUID } - } -} - - -// ParcelSelectObjects -// viewer -> sim -// reliable -{ - ParcelSelectObjects Low 202 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ParcelData Single - { LocalID S32 } - { ReturnType U32 } - } - { - ReturnIDs Variable - { ReturnID LLUUID } - } -} - - -// EstateCovenantRequest -// viewer -> sim -// reliable -{ - EstateCovenantRequest Low 203 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - -// EstateCovenantReply -// sim -> viewer -// reliable -{ - EstateCovenantReply Low 204 Trusted Unencoded - { - Data Single - { CovenantID LLUUID } - { CovenantTimestamp U32 } - { EstateName Variable 1 } // string - { EstateOwnerID LLUUID } - } -} - - -// ForceObjectSelect -// sim -> viewer -// reliable -{ - ForceObjectSelect Low 205 Trusted Unencoded - { - Header Single - { ResetList BOOL } - } - { - Data Variable - { LocalID U32 } - } -} - - -// ParcelBuyPass - purchase a temporary access pass -// viewer -> sim -// reliable -{ - ParcelBuyPass Low 206 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ParcelData Single - { LocalID S32 } - } -} - -// ParcelDeedToGroup - deed a patch of land to a group -// viewer -> sim -// reliable -{ - ParcelDeedToGroup Low 207 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { GroupID LLUUID } - { LocalID S32 } // parcel id - } -} - -// reserved for when island owners force re-claim parcel -{ - ParcelReclaim Low 208 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { LocalID S32 } // parcel id - } -} - -// ParcelClaim - change the owner of a patch of land -// viewer -> sim -// reliable -{ - ParcelClaim Low 209 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { GroupID LLUUID } - { IsGroupOwned BOOL } - { Final BOOL } // true if buyer is in tier - } - { - ParcelData Variable - { West F32 } - { South F32 } - { East F32 } - { North F32 } - } -} - -// ParcelJoin - Take all parcels which are owned by agent and inside -// rectangle, and make them 1 parcel if they all are leased. -// viewer -> sim -// reliable -{ - ParcelJoin Low 210 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ParcelData Single - { West F32 } - { South F32 } - { East F32 } - { North F32 } - } -} - -// ParcelDivide -// If the selection is a subsection of exactly one parcel, -// chop out that section and make a new parcel of it. -// viewer -> sim -// reliable -{ - ParcelDivide Low 211 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ParcelData Single - { West F32 } - { South F32 } - { East F32 } - { North F32 } - } -} - -// ParcelRelease -// Release a parcel to public -// viewer -> sim -// reliable -{ - ParcelRelease Low 212 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { LocalID S32 } // parcel ID - } -} - -// ParcelBuy - change the owner of a patch of land. -// viewer -> sim -// reliable -{ - ParcelBuy Low 213 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { GroupID LLUUID } - { IsGroupOwned BOOL } - { RemoveContribution BOOL } - { LocalID S32 } - { Final BOOL } // true if buyer is in tier - } - { - ParcelData Single - { Price S32 } - { Area S32 } - } -} - - -// ParcelGodForceOwner Unencoded -{ - ParcelGodForceOwner Low 214 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { OwnerID LLUUID } - { LocalID S32 } // parcel ID - } -} - - -// viewer -> sim -// ParcelAccessListRequest -{ - ParcelAccessListRequest Low 215 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { SequenceID S32 } - { Flags U32 } - { LocalID S32 } - } -} - - -// sim -> viewer -// ParcelAccessListReply -{ - ParcelAccessListReply Low 216 Trusted Zerocoded - { - Data Single - { AgentID LLUUID } - { SequenceID S32 } - { Flags U32 } - { LocalID S32 } - } - { - List Variable - { ID LLUUID } - { Time S32 } // time_t - { Flags U32 } - } -} - -// viewer -> sim -// ParcelAccessListUpdate -{ - ParcelAccessListUpdate Low 217 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { Flags U32 } - { LocalID S32 } - { TransactionID LLUUID } - { SequenceID S32 } - { Sections S32 } - } - { - List Variable - { ID LLUUID } - { Time S32 } // time_t - { Flags U32 } - } -} - - -// viewer -> sim -> dataserver -// reliable -{ - ParcelDwellRequest Low 218 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { LocalID S32 } - { ParcelID LLUUID } // filled in on sim - } -} - - -// dataserver -> sim -> viewer -// reliable -{ - ParcelDwellReply Low 219 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - Data Single - { LocalID S32 } - { ParcelID LLUUID } - { Dwell F32 } - } -} - -// sim -> dataserver -// This message is used to check if a user can buy a parcel. If -// successful, the transaction is approved through a money balance reply -// with the same transaction id. -{ - RequestParcelTransfer Low 220 Trusted Zerocoded - { - Data Single - { TransactionID LLUUID } - { TransactionTime U32 } // utc seconds since epoch - { SourceID LLUUID } - { DestID LLUUID } - { OwnerID LLUUID } - { Flags U8 } // see lltransactiontypes.h - { TransactionType S32 } // see lltransactiontypes.h - { Amount S32 } - { BillableArea S32 } - { ActualArea S32 } - { Final BOOL } // true if buyer should be in tier - } - { - RegionData Single // included so region name shows up in transaction logs - { RegionID LLUUID } - { GridX U32 } - { GridY U32 } - } -} - -// sim ->dataserver -// This message is used to send up complete parcel properties for -// persistance in the database. -// If you add something here, you should probably also change the -// simulator's database update query on startup. -{ - UpdateParcel Low 221 Trusted Zerocoded - { - ParcelData Single - { ParcelID LLUUID } - { RegionHandle U64 } - { OwnerID LLUUID } - { GroupOwned BOOL } - { Status U8 } - { Name Variable 1 } - { Description Variable 1 } - { MusicURL Variable 1 } - { RegionX F32 } - { RegionY F32 } - { ActualArea S32 } - { BillableArea S32 } - { ShowDir BOOL } - { IsForSale BOOL } - { Category U8 } - { SnapshotID LLUUID } - { UserLocation LLVector3 } - { SalePrice S32 } - { AuthorizedBuyerID LLUUID } - { AllowPublish BOOL } - { MaturePublish BOOL } - } -} - -// sim -> dataserver or space ->sim -// This message is used to tell the dataserver that a parcel has been -// removed. -{ - RemoveParcel Low 222 Trusted Unencoded - { - ParcelData Variable - { ParcelID LLUUID } - } -} - -// sim -> dataserver -// Merges some of the database information for parcels (dwell). -{ - MergeParcel Low 223 Trusted Unencoded - { - MasterParcelData Single - { MasterID LLUUID } - } - { - SlaveParcelData Variable - { SlaveID LLUUID } - } -} - -// sim -> dataserver -{ - LogParcelChanges Low 224 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - } - { - RegionData Single - { RegionHandle U64 } - } - { - ParcelData Variable - { ParcelID LLUUID } - { OwnerID LLUUID } - { IsOwnerGroup BOOL } - { ActualArea S32 } - { Action S8 } - { TransactionID LLUUID } - } -} - -// sim -> dataserver -{ - CheckParcelSales Low 225 Trusted Unencoded - { - RegionData Variable - { RegionHandle U64 } - } -} - -// dataserver -> simulator -// tell a particular simulator to finish parcel sale. -{ - ParcelSales Low 226 Trusted Unencoded - { - ParcelData Variable - { ParcelID LLUUID } - { BuyerID LLUUID } - } -} - -// viewer -> sim -// mark parcel and double secret agent content on parcel as owned by -// governor/maint and adjusts permissions approriately. Godlike request. -{ - ParcelGodMarkAsContent Low 227 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ParcelData Single - { LocalID S32 } - } -} - - -// viewer -> sim -// start an auction. viewer fills in the appropriate date, simulator -// validates and fills in the rest of the information to start an auction -// on a parcel. Processing currently requires that AgentID is a god. -{ - ViewerStartAuction Low 228 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ParcelData Single - { LocalID S32 } - { SnapshotID LLUUID } - } -} - -// sim -> dataserver -// Once all of the data has been gathered, -{ - StartAuction Low 229 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - ParcelData Single - { ParcelID LLUUID } - { SnapshotID LLUUID } - { Name Variable 1 } // string - } -} - -// dataserver -> sim -{ - ConfirmAuctionStart Low 230 Trusted Unencoded - { - AuctionData Single - { ParcelID LLUUID } - { AuctionID U32 } - } -} - -// sim -> dataserver -// Tell the dataserver that an auction has completed. -{ - CompleteAuction Low 231 Trusted Unencoded - { - ParcelData Variable - { ParcelID LLUUID } - } -} - -// Tell the dataserver that an auction has been canceled. -{ - CancelAuction Low 232 Trusted Unencoded - { - ParcelData Variable - { ParcelID LLUUID } - } -} - -// sim -> dataserver -{ - CheckParcelAuctions Low 233 Trusted Unencoded - { - RegionData Variable - { RegionHandle U64 } - } -} - -// dataserver -> sim -// tell a particular simulator to finish parcel sale. -{ - ParcelAuctions Low 234 Trusted Unencoded - { - ParcelData Variable - { ParcelID LLUUID } - { WinnerID LLUUID } - } -} - -// *************************************************************************** -// UUID to name lookup -// *************************************************************************** - -// UUIDNameRequest -// Translate a UUID into first and last names -{ - UUIDNameRequest Low 235 NotTrusted Unencoded - { - UUIDNameBlock Variable - { ID LLUUID } - } -} - -// UUIDNameReply -// Translate a UUID into first and last names -{ - UUIDNameReply Low 236 Trusted Unencoded - { - UUIDNameBlock Variable - { ID LLUUID } - { FirstName Variable 1 } - { LastName Variable 1 } - } -} - -// UUIDGroupNameRequest -// Translate a UUID into a group name -{ - UUIDGroupNameRequest Low 237 NotTrusted Unencoded - { - UUIDNameBlock Variable - { ID LLUUID } - } -} - -// UUIDGroupNameReply -// Translate a UUID into a group name -{ - UUIDGroupNameReply Low 238 Trusted Unencoded - { - UUIDNameBlock Variable - { ID LLUUID } - { GroupName Variable 1 } - } -} - -// end uuid to name lookup - -// *************************************************************************** -// Simulator to Simulator Messages -// *************************************************************************** - -// ChatPass -// Chat message transmission to neighbors -// Chat is region local to receiving simulator. -// Type is one of CHAT_TYPE_NORMAL, _WHISPER, _SHOUT -{ - ChatPass Low 239 Trusted Zerocoded - { - ChatData Single - { Channel S32 } - { Position LLVector3 } - { ID LLUUID } - { OwnerID LLUUID } - { Name Variable 1 } - { SourceType U8 } - { Type U8 } - { Radius F32 } - { SimAccess U8 } - { Message Variable 2 } - } -} - -// Edge data - compressed edge data - -{ - EdgeDataPacket High 24 Trusted Zerocoded - { - EdgeData Single - { LayerType U8 } - { Direction U8 } - { LayerData Variable 2 } - } -} - -// Sim status, condition of this sim -// sent reliably, when dirty -{ - SimStatus Medium 12 Trusted Unencoded - { - SimStatus Single - { CanAcceptAgents BOOL } - { CanAcceptTasks BOOL } - } - { - SimFlags Single - { Flags U64 } - } -} - -// Child Agent Update - agents send child agents to neighboring simulators. -// This will create a child camera if there isn't one at the target already -// Can't send viewer IP and port between simulators -- the port may get remapped -// if the viewer is behind a Network Address Translation (NAT) box. -// -// Note: some of the fields of this message really only need to be sent when an -// agent crosses a region boundary and changes from a child to a main agent -// (such as Head/BodyRotation, ControlFlags, Animations etc) -// simulator -> simulator -// reliable -{ - ChildAgentUpdate High 25 Trusted Zerocoded - { - AgentData Single - - { RegionHandle U64 } - { ViewerCircuitCode U32 } - { AgentID LLUUID } - { SessionID LLUUID } - - { AgentPos LLVector3 } - { AgentVel LLVector3 } - { Center LLVector3 } - { Size LLVector3 } - { AtAxis LLVector3 } - { LeftAxis LLVector3 } - { UpAxis LLVector3 } - { ChangedGrid BOOL } // BOOL - - { Far F32 } - { Aspect F32 } - { Throttles Variable 1 } - { LocomotionState U32 } - { HeadRotation LLQuaternion } - { BodyRotation LLQuaternion } - { ControlFlags U32 } - { EnergyLevel F32 } - { GodLevel U8 } // Changed from BOOL to U8, and renamed GodLevel (from Godlike) - { AlwaysRun BOOL } - { PreyAgent LLUUID } - { AgentAccess U8 } - { AgentTextures Variable 2 } - { ActiveGroupID LLUUID } - } - { - GroupData Variable - { GroupID LLUUID } - { GroupPowers U64 } - { AcceptNotices BOOL } - } - { - AnimationData Variable - { Animation LLUUID } - { ObjectID LLUUID } - } - { - GranterBlock Variable - { GranterID LLUUID } - } - { - NVPairData Variable - { NVPairs Variable 2 } - } - { - VisualParam Variable - { ParamValue U8 } - } - { - AgentAccess Variable - { AgentLegacyAccess U8 } - { AgentMaxAccess U8 } - } - { - AgentInfo Variable - { Flags U32 } - } - { - AgentInventoryHost Variable - { InventoryHost Variable 1 } //String - } -} - -// ChildAgentAlive -// sent to child agents just to keep them alive -{ - ChildAgentAlive High 26 Trusted Unencoded - { - AgentData Single - { RegionHandle U64 } - { ViewerCircuitCode U32 } - { AgentID LLUUID } - { SessionID LLUUID } - } -} - -// ChildAgentPositionUpdate -// sent to child agents just to keep them alive -{ - ChildAgentPositionUpdate High 27 Trusted Unencoded - { - AgentData Single - - { RegionHandle U64 } - { ViewerCircuitCode U32 } - { AgentID LLUUID } - { SessionID LLUUID } - - { AgentPos LLVector3 } - { AgentVel LLVector3 } - { Center LLVector3 } - { Size LLVector3 } - { AtAxis LLVector3 } - { LeftAxis LLVector3 } - { UpAxis LLVector3 } - { ChangedGrid BOOL } - } -} - - -// Obituary for child agents - make sure the parent know the child is dead -// This way, children can be reliably restarted -{ - ChildAgentDying Low 240 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - - -// This is sent if a full child agent hasn't been accepted yet -{ - ChildAgentUnknown Low 241 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - - -// This message is sent how objects get passed between regions. -{ - AtomicPassObject High 28 Trusted Unencoded - { - TaskData Single - { TaskID LLUUID } - { AttachmentNeedsSave BOOL } // true iff is attachment and needs asset saved - } -} - - -// KillChildAgents - A new agent has connected to the simulator . . . make sure that any old child cameras are blitzed -{ - KillChildAgents Low 242 Trusted Unencoded - { - IDBlock Single - { AgentID LLUUID } - } -} - - -// GetScriptRunning - asks if a script is running or not. the simulator -// responds with ScriptRunningReply -{ - GetScriptRunning Low 243 NotTrusted Unencoded - { - Script Single - { ObjectID LLUUID } - { ItemID LLUUID } - } -} - -// ScriptRunningReply - response from simulator to message above -{ - ScriptRunningReply Low 244 NotTrusted Unencoded UDPDeprecated - { - Script Single - { ObjectID LLUUID } - { ItemID LLUUID } - { Running BOOL } -// { Mono BOOL } Added to LLSD message - } -} - - -// SetScriptRunning - makes a script active or inactive (Enable may be -// true or false) -{ - SetScriptRunning Low 245 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Script Single - { ObjectID LLUUID } - { ItemID LLUUID } - { Running BOOL } - } -} - -// ScriptReset - causes a script to reset -{ - ScriptReset Low 246 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Script Single - { ObjectID LLUUID } - { ItemID LLUUID } - } -} - -// ScriptSensorRequest - causes the receiving sim to run a script sensor and return the results -{ - ScriptSensorRequest Low 247 Trusted Zerocoded - { - Requester Single - { SourceID LLUUID } - { RequestID LLUUID } - { SearchID LLUUID } - { SearchPos LLVector3 } - { SearchDir LLQuaternion } - { SearchName Variable 1 } - { Type S32 } - { Range F32 } - { Arc F32 } - { RegionHandle U64 } - { SearchRegions U8 } - } -} - -// ScriptSensorReply - returns the request script search information back to the requester -{ - ScriptSensorReply Low 248 Trusted Zerocoded - { - Requester Single - { SourceID LLUUID } - } - { - SensedData Variable - { ObjectID LLUUID } - { OwnerID LLUUID } - { GroupID LLUUID } - { Position LLVector3 } - { Velocity LLVector3 } - { Rotation LLQuaternion } - { Name Variable 1 } - { Type S32 } - { Range F32 } - } -} - -//----------------------------------------------------------------------------- -// Login and Agent Motion -//----------------------------------------------------------------------------- - -// viewer -> sim -// agent is coming into the region. The region should be expecting the -// agent. -{ - CompleteAgentMovement Low 249 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { CircuitCode U32 } - } -} - -// sim -> viewer -{ - AgentMovementComplete Low 250 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { Position LLVector3 } - { LookAt LLVector3 } - { RegionHandle U64 } - { Timestamp U32 } - } - { - SimData Single - { ChannelVersion Variable 2 } - } -} - - -//----------------------------------------------------------------------------- -// Logout -//----------------------------------------------------------------------------- - -// userserver -> dataserver -{ - DataServerLogout Low 251 Trusted Unencoded - { - UserData Single - { AgentID LLUUID } - { ViewerIP IPADDR } - { Disconnect BOOL } - { SessionID LLUUID } - } -} - -// LogoutRequest -// viewer -> sim -// reliable -{ - LogoutRequest Low 252 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - - -// LogoutReply -// it's ok for the viewer to quit. -// sim -> viewer -// reliable -// Includes inventory items to update with new asset ids -{ - LogoutReply Low 253 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - InventoryData Variable - { ItemID LLUUID } // null if list is actually empty (but has one entry 'cause it can't have none) - } -} - - -//----------------------------------------------------------------------------- -// Instant Message -//----------------------------------------------------------------------------- - -// ImprovedInstantMessage -// This message can potentially route all over the place -// ParentEstateID: parent estate id of the source estate -// RegionID: region id of the source of the IM. -// Position: position of the sender in region local coordinates -// Dialog see llinstantmessage.h for values -// ID May be used by dialog. Interpretation depends on context. -// BinaryBucket May be used by some dialog types -// reliable -{ - ImprovedInstantMessage Low 254 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - MessageBlock Single - { FromGroup BOOL } - { ToAgentID LLUUID } - { ParentEstateID U32 } - { RegionID LLUUID } - { Position LLVector3 } - { Offline U8 } - { Dialog U8 } // U8 - IM type - { ID LLUUID } - { Timestamp U32 } - { FromAgentName Variable 1 } - { Message Variable 2 } - { BinaryBucket Variable 2 } - } - { - EstateBlock Single - { EstateID U32 } - } -} - -// RetrieveInstantMessages - used to get instant messages that -// were persisted out to the database while the user was offline -// Sent from viewer->simulator. Also see RetrieveIMsExtended (back-end only) -{ - RetrieveInstantMessages Low 255 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - -// FindAgent - used to find an agent's global position. I used a -// variable sized LocationBlock so that the message can be recycled with -// minimum new messages and handlers. -{ - FindAgent Low 256 NotTrusted Unencoded - { - AgentBlock Single - { Hunter LLUUID } - { Prey LLUUID } - { SpaceIP IPADDR } - } - { - LocationBlock Variable - { GlobalX F64 } - { GlobalY F64 } - } -} - -// Set godlike to 1 if you want to become godlike. -// Set godlike to 0 if you want to relinquish god powers. -// viewer -> simulator -> dataserver -// reliable -{ - RequestGodlikePowers Low 257 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - RequestBlock Single - { Godlike BOOL } - { Token LLUUID } // viewer packs a null, sim packs token - } -} - -// At the simulator, turn the godlike bit on. -// At the viewer, show the god menu. -// dataserver -> simulator -> viewer -// reliable -{ - GrantGodlikePowers Low 258 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - GrantData Single - { GodLevel U8 } - { Token LLUUID } // checked on sim, ignored on viewer - } -} - -// GodlikeMessage - generalized construct for Gods to send messages -// around the system. Each Request has it's own internal protocol. -{ - GodlikeMessage Low 259 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { TransactionID LLUUID } - } - { - MethodData Single - { Method Variable 1 } - { Invoice LLUUID } - } - { - ParamList Variable - { Parameter Variable 1 } - } -} - -// EstateOwnerMessage -// format must be identical to above -{ - EstateOwnerMessage Low 260 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { TransactionID LLUUID } - } - { - MethodData Single - { Method Variable 1 } - { Invoice LLUUID } - } - { - ParamList Variable - { Parameter Variable 1 } - } -} - -// GenericMessage -// format must be identical to above -// As above, but don't have to be god or estate owner to send. -{ - GenericMessage Low 261 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { TransactionID LLUUID } - } - { - MethodData Single - { Method Variable 1 } - { Invoice LLUUID } - } - { - ParamList Variable - { Parameter Variable 1 } - } -} - -// *************************************************************************** -// Requests for possessions, acquisition, money, etc -// *************************************************************************** - -// request for mute list -{ - MuteListRequest Low 262 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - MuteData Single - { MuteCRC U32 } - } -} - -// update/add someone in the mute list -{ - UpdateMuteListEntry Low 263 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - MuteData Single - { MuteID LLUUID } - { MuteName Variable 1 } - { MuteType S32 } - { MuteFlags U32 } - } -} - -// Remove a mute list entry. -{ - RemoveMuteListEntry Low 264 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - MuteData Single - { MuteID LLUUID } - { MuteName Variable 1 } - } -} - - -// -// Inventory update messages -// UDP DEPRECATED - Now a viewer capability. - -{ - CopyInventoryFromNotecard Low 265 NotTrusted Zerocoded UDPDeprecated - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - NotecardData Single - { NotecardItemID LLUUID } - { ObjectID LLUUID } - } - { - InventoryData Variable - { ItemID LLUUID } - { FolderID LLUUID } - } -} - -// -// This is used bi-directionally between sim, dataserver, and viewer. -// THIS MESSAGE CAN NOT CREATE NEW INVENTORY ITEMS. -// -{ - UpdateInventoryItem Low 266 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { TransactionID LLUUID } - } - { - InventoryData Variable - { ItemID LLUUID } - { FolderID LLUUID } - { CallbackID U32 } // Async Response - - { CreatorID LLUUID } // permissions - { OwnerID LLUUID } // permissions - { GroupID LLUUID } // permissions - { BaseMask U32 } // permissions - { OwnerMask U32 } // permissions - { GroupMask U32 } // permissions - { EveryoneMask U32 } // permissions - { NextOwnerMask U32 } // permissions - { GroupOwned BOOL } // permissions - - { TransactionID LLUUID } // TransactionID: new assets only - { Type S8 } - { InvType S8 } - { Flags U32 } - { SaleType U8 } - { SalePrice S32 } - { Name Variable 1 } - { Description Variable 1 } - { CreationDate S32 } - { CRC U32 } - } -} - -// -// For sim to request update/create. -// DO NOT ALLOW THIS FROM THE VIEWER. -// -{ - UpdateCreateInventoryItem Low 267 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SimApproved BOOL } - { TransactionID LLUUID } - } - { - InventoryData Variable - { ItemID LLUUID } - { FolderID LLUUID } - { CallbackID U32 } // Async Response - - { CreatorID LLUUID } // permissions - { OwnerID LLUUID } // permissions - { GroupID LLUUID } // permissions - { BaseMask U32 } // permissions - { OwnerMask U32 } // permissions - { GroupMask U32 } // permissions - { EveryoneMask U32 } // permissions - { NextOwnerMask U32 } // permissions - { GroupOwned BOOL } // permissions - - { AssetID LLUUID } - { Type S8 } - { InvType S8 } - { Flags U32 } - { SaleType U8 } - { SalePrice S32 } - { Name Variable 1 } - { Description Variable 1 } - { CreationDate S32 } - { CRC U32 } - } -} - -{ - MoveInventoryItem Low 268 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { Stamp BOOL } // should the server re-timestamp? - } - { - InventoryData Variable - { ItemID LLUUID } - { FolderID LLUUID } - { NewName Variable 1 } - } -} - -// copy inventory item by item id to specified destination folder, -// send out bulk inventory update when done. -// -// Inventory items are only unique for {agent, inv_id} pairs; -// the OldItemID needs to be paired with the OldAgentID to -// produce a unique inventory item. -{ - CopyInventoryItem Low 269 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - InventoryData Variable - { CallbackID U32 } // Async response - { OldAgentID LLUUID } - { OldItemID LLUUID } - { NewFolderID LLUUID } - { NewName Variable 1 } - } -} - -{ - RemoveInventoryItem Low 270 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - InventoryData Variable - { ItemID LLUUID } - } -} - -{ - ChangeInventoryItemFlags Low 271 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - InventoryData Variable - { ItemID LLUUID } - { Flags U32 } - } -} - -// -// Sim outgoing only (to dataserver, to viewer) -// NOT viewer to sim, sim should not have handler, ever -// This message is currently only uses objects, so the viewer ignores -// the asset id. -{ - SaveAssetIntoInventory Low 272 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - InventoryData Single - { ItemID LLUUID } - { NewAssetID LLUUID } - } -} - -{ - CreateInventoryFolder Low 273 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - FolderData Single - { FolderID LLUUID } - { ParentID LLUUID } - { Type S8 } - { Name Variable 1 } - } -} - -{ - UpdateInventoryFolder Low 274 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - FolderData Variable - { FolderID LLUUID } - { ParentID LLUUID } - { Type S8 } - { Name Variable 1 } - } -} - -{ - MoveInventoryFolder Low 275 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { Stamp BOOL } // should the server re-timestamp children - } - { - InventoryData Variable - { FolderID LLUUID } - { ParentID LLUUID } - } -} - -{ - RemoveInventoryFolder Low 276 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - FolderData Variable - { FolderID LLUUID } - } -} - -// Get inventory segment. -{ - FetchInventoryDescendents Low 277 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - InventoryData Single - { FolderID LLUUID } - { OwnerID LLUUID } - { SortOrder S32 } // 0 = name, 1 = time - { FetchFolders BOOL } // false will omit folders in query - { FetchItems BOOL } // false will omit items in query - } -} - -// return inventory segment. -// *NOTE: This could be compressed more since we already know the -// parent_id for folders and the folder_id for items, but this is -// reasonable until we heve server side inventory. -{ - InventoryDescendents Low 278 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { FolderID LLUUID } - { OwnerID LLUUID } // owner of the folders creatd. - { Version S32 } // version of the folder for caching - { Descendents S32 } // count to help with caching - } - { - FolderData Variable - { FolderID LLUUID } - { ParentID LLUUID } - { Type S8 } - { Name Variable 1 } - } - { - ItemData Variable - { ItemID LLUUID } - { FolderID LLUUID } - { CreatorID LLUUID } // permissions - { OwnerID LLUUID } // permissions - { GroupID LLUUID } // permissions - { BaseMask U32 } // permissions - { OwnerMask U32 } // permissions - { GroupMask U32 } // permissions - { EveryoneMask U32 } // permissions - { NextOwnerMask U32 } // permissions - { GroupOwned BOOL } // permissions - { AssetID LLUUID } - { Type S8 } - { InvType S8 } - { Flags U32 } - { SaleType U8 } - { SalePrice S32 } - { Name Variable 1 } - { Description Variable 1 } - { CreationDate S32 } - { CRC U32 } - } -} - -// Get inventory item(s) - response comes through FetchInventoryReply -{ - FetchInventory Low 279 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - InventoryData Variable - { OwnerID LLUUID } - { ItemID LLUUID } - } -} - -// response to fetch inventory -{ - FetchInventoryReply Low 280 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - } - { - InventoryData Variable - { ItemID LLUUID } - { FolderID LLUUID } - - { CreatorID LLUUID } // permissions - { OwnerID LLUUID } // permissions - { GroupID LLUUID } // permissions - { BaseMask U32 } // permissions - { OwnerMask U32 } // permissions - { GroupMask U32 } // permissions - { EveryoneMask U32 } // permissions - { NextOwnerMask U32 } // permissions - { GroupOwned BOOL } // permissions - - { AssetID LLUUID } - { Type S8 } - { InvType S8 } - { Flags U32 } - { SaleType U8 } - { SalePrice S32 } - { Name Variable 1 } - { Description Variable 1 } - { CreationDate S32 } - { CRC U32 } - } -} - -// Can only fit around 7 items per packet - that's the way it goes. At -// least many bulk updates can be packed. -// Only from dataserver->sim->viewer -{ - BulkUpdateInventory Low 281 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { TransactionID LLUUID } - } - { - FolderData Variable - { FolderID LLUUID } - { ParentID LLUUID } - { Type S8 } - { Name Variable 1 } - } - { - ItemData Variable - { ItemID LLUUID } - { CallbackID U32 } // Async Response - { FolderID LLUUID } - { CreatorID LLUUID } // permissions - { OwnerID LLUUID } // permissions - { GroupID LLUUID } // permissions - { BaseMask U32 } // permissions - { OwnerMask U32 } // permissions - { GroupMask U32 } // permissions - { EveryoneMask U32 } // permissions - { NextOwnerMask U32 } // permissions - { GroupOwned BOOL } // permissions - { AssetID LLUUID } - { Type S8 } - { InvType S8 } - { Flags U32 } - { SaleType U8 } - { SalePrice S32 } - { Name Variable 1 } - { Description Variable 1 } - { CreationDate S32 } - { CRC U32 } - } -} - - - -// request permissions for agent id to get the asset for owner_id's -// item_id. -{ - RequestInventoryAsset Low 282 Trusted Unencoded - { - QueryData Single - { QueryID LLUUID } - { AgentID LLUUID } - { OwnerID LLUUID } - { ItemID LLUUID } - } -} - -// response to RequestInventoryAsset -// lluuid will be null if agentid in the request above cannot read asset -{ - InventoryAssetResponse Low 283 Trusted Unencoded - { - QueryData Single - { QueryID LLUUID } - { AssetID LLUUID } - { IsReadable BOOL } - } -} - -// This is the new improved way to remove inventory items. It is -// currently only supported in viewer->userserver->dataserver -// messages typically initiated by an empty trash method. -{ - RemoveInventoryObjects Low 284 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - FolderData Variable - { FolderID LLUUID } - } - { - ItemData Variable - { ItemID LLUUID } - } -} - -// This is how you remove inventory when you're not even sure what it -// is - only it's parenting. -{ - PurgeInventoryDescendents Low 285 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - InventoryData Single - { FolderID LLUUID } - } -} - -// These messages are viewer->simulator requests to update a task's -// inventory. -// if Key == 0, itemid is the key. if Key == 1, assetid is the key. -{ - UpdateTaskInventory Low 286 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - UpdateData Single - { LocalID U32 } - { Key U8 } - } - { - InventoryData Single - { ItemID LLUUID } - { FolderID LLUUID } - { CreatorID LLUUID } // permissions - { OwnerID LLUUID } // permissions - { GroupID LLUUID } // permissions - { BaseMask U32 } // permissions - { OwnerMask U32 } // permissions - { GroupMask U32 } // permissions - { EveryoneMask U32 } // permissions - { NextOwnerMask U32 } // permissions - { GroupOwned BOOL } // permissions - { TransactionID LLUUID } - { Type S8 } - { InvType S8 } - { Flags U32 } - { SaleType U8 } - { SalePrice S32 } - { Name Variable 1 } - { Description Variable 1 } - { CreationDate S32 } - { CRC U32 } - } -} - -{ - RemoveTaskInventory Low 287 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - InventoryData Single - { LocalID U32 } - { ItemID LLUUID } - } -} - -{ - MoveTaskInventory Low 288 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { FolderID LLUUID } - } - { - InventoryData Single - { LocalID U32 } - { ItemID LLUUID } - } -} - -{ - RequestTaskInventory Low 289 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - InventoryData Single - { LocalID U32 } - } -} - -{ - ReplyTaskInventory Low 290 Trusted Zerocoded - { - InventoryData Single - { TaskID LLUUID } - { Serial S16 } // S16 - { Filename Variable 1 } - } -} - -// These messages are viewer->simulator requests regarding objects -// which are currently being simulated. The viewer will get an -// UpdateInventoryItem response if a DeRez succeeds, and the object -// will appear if a RezObject succeeds. -// The Destination field tells where the derez should wind up, and the -// meaning of DestinationID depends on it. For example, if the -// destination is a category, then the destination is the category id. If -// the destination is a task inventory, then the destination id is the -// task id. -// The transaction id is generated by the viewer on derez, and then -// the packets are counted and numbered. The rest of the information is -// just duplicated (it's not that much, and derezzes that span multiple -// packets will be rare.) -{ - DeRezObject Low 291 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - AgentBlock Single - { GroupID LLUUID } - { Destination U8 } - { DestinationID LLUUID } // see above - { TransactionID LLUUID } - { PacketCount U8 } - { PacketNumber U8 } - } - { - ObjectData Variable - { ObjectLocalID U32 } // object id in world - } -} - -// This message is sent when a derez succeeds, but there's no way to -// know, since no inventory is created on the viewer. For example, when -// saving into task inventory. -{ - DeRezAck Low 292 Trusted Unencoded - { - TransactionData Single - { TransactionID LLUUID } - { Success BOOL } - } -} - -// This message is sent from viewer -> simulator when the viewer wants -// to rez an object out of inventory. -{ - RezObject Low 293 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - } - { - RezData Single - { FromTaskID LLUUID } - { BypassRaycast U8 } - { RayStart LLVector3 } - { RayEnd LLVector3 } - { RayTargetID LLUUID } - { RayEndIsIntersection BOOL } - { RezSelected BOOL } - { RemoveItem BOOL } - { ItemFlags U32 } - { GroupMask U32 } - { EveryoneMask U32 } - { NextOwnerMask U32 } - } - { - InventoryData Single - { ItemID LLUUID } - { FolderID LLUUID } - { CreatorID LLUUID } // permissions - { OwnerID LLUUID } // permissions - { GroupID LLUUID } // permissions - { BaseMask U32 } // permissions - { OwnerMask U32 } // permissions - { GroupMask U32 } // permissions - { EveryoneMask U32 } // permissions - { NextOwnerMask U32 } // permissions - { GroupOwned BOOL } // permissions - { TransactionID LLUUID } - { Type S8 } - { InvType S8 } - { Flags U32 } - { SaleType U8 } - { SalePrice S32 } - { Name Variable 1 } - { Description Variable 1 } - { CreationDate S32 } - { CRC U32 } - } -} - -// This message is sent from viewer -> simulator when the viewer wants -// to rez an object from a notecard. -{ - RezObjectFromNotecard Low 294 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - } - { - RezData Single - { FromTaskID LLUUID } - { BypassRaycast U8 } - { RayStart LLVector3 } - { RayEnd LLVector3 } - { RayTargetID LLUUID } - { RayEndIsIntersection BOOL } - { RezSelected BOOL } - { RemoveItem BOOL } - { ItemFlags U32 } - { GroupMask U32 } - { EveryoneMask U32 } - { NextOwnerMask U32 } - } - { - NotecardData Single - { NotecardItemID LLUUID } - { ObjectID LLUUID } - } - { - InventoryData Variable - { ItemID LLUUID } - } -} - - -// sim -> dataserver -// sent during agent to agent inventory transfers -{ - TransferInventory Low 295 Trusted Zerocoded - { - InfoBlock Single - { SourceID LLUUID } - { DestID LLUUID } - { TransactionID LLUUID } - } - { - InventoryBlock Variable - { InventoryID LLUUID } - { Type S8 } - } - { - ValidationBlock Single - { NeedsValidation BOOL } - { EstateID U32 } - } -} - -// dataserver -> sim -// InventoryID is the id of the inventory object that the end user -// should discard if they deny the transfer. -{ - TransferInventoryAck Low 296 Trusted Zerocoded - { - InfoBlock Single - { TransactionID LLUUID } - { InventoryID LLUUID } - } -} - - -{ - AcceptFriendship Low 297 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - TransactionBlock Single - { TransactionID LLUUID } - } - { - FolderData Variable - { FolderID LLUUID } // place to put calling card. - } -} - -{ - DeclineFriendship Low 298 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - TransactionBlock Single - { TransactionID LLUUID } - } -} - -{ - FormFriendship Low 299 Trusted Unencoded - { - AgentBlock Single - { SourceID LLUUID } - { DestID LLUUID } - } -} - -// Cancels user relationship -// Updates inventory for both users. -// Stops agent tracking in userserver. -// viewer -> userserver -> dataserver -// reliable -{ - TerminateFriendship Low 300 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ExBlock Single - { OtherID LLUUID } - } -} - -// used to give someone a calling card. -{ - OfferCallingCard Low 301 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - AgentBlock Single - { DestID LLUUID } - { TransactionID LLUUID } - } -} - -{ - AcceptCallingCard Low 302 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - TransactionBlock Single - { TransactionID LLUUID } - } - { - FolderData Variable - { FolderID LLUUID } // place to put calling card. - } -} - -{ - DeclineCallingCard Low 303 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - TransactionBlock Single - { TransactionID LLUUID } - } -} - - -// Rez a script onto an object -{ - RezScript Low 304 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - } - { - UpdateBlock Single - { ObjectLocalID U32 } // object id in world - { Enabled BOOL } // is script rezzed in enabled? - } - { - InventoryBlock Single - { ItemID LLUUID } - { FolderID LLUUID } - { CreatorID LLUUID } // permissions - { OwnerID LLUUID } // permissions - { GroupID LLUUID } // permissions - { BaseMask U32 } // permissions - { OwnerMask U32 } // permissions - { GroupMask U32 } // permissions - { EveryoneMask U32 } // permissions - { NextOwnerMask U32 } // permissions - { GroupOwned BOOL } // permissions - { TransactionID LLUUID } - { Type S8 } - { InvType S8 } - { Flags U32 } - { SaleType U8 } - { SalePrice S32 } - { Name Variable 1 } - { Description Variable 1 } - { CreationDate S32 } - { CRC U32 } - } -} - -// Create inventory -{ - CreateInventoryItem Low 305 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - InventoryBlock Single - { CallbackID U32 } // Async Response - { FolderID LLUUID } - { TransactionID LLUUID } // Going to become TransactionID - { NextOwnerMask U32 } - { Type S8 } - { InvType S8 } - { WearableType U8 } - { Name Variable 1 } - { Description Variable 1 } - } -} - -// give agent a landmark for an event. -{ - CreateLandmarkForEvent Low 306 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - EventData Single - { EventID U32 } - } - { - InventoryBlock Single - { FolderID LLUUID } - { Name Variable 1 } - } -} - -{ - EventLocationRequest Low 307 Trusted Zerocoded - { - QueryData Single - { QueryID LLUUID } - } - { - EventData Single - { EventID U32 } - } -} - -{ - EventLocationReply Low 308 Trusted Zerocoded - { - QueryData Single - { QueryID LLUUID } - } - { - EventData Single - { Success BOOL } - { RegionID LLUUID } - { RegionPos LLVector3 } - } -} - -// get information about landmarks. Used by viewers for determining -// the location of a landmark, and by simulators for teleport -{ - RegionHandleRequest Low 309 NotTrusted Unencoded - { - RequestBlock Single - { RegionID LLUUID } - } -} - -{ - RegionIDAndHandleReply Low 310 Trusted Unencoded - { - ReplyBlock Single - { RegionID LLUUID } - { RegionHandle U64 } - } -} - -// Move money from one agent to another. Validation will happen at the -// simulator, the dataserver will actually do the work. Dataserver -// generates a MoneyBalance message in reply. The simulator -// will generate a MoneyTransferBackend in response to this. -// viewer -> simulator -> dataserver -{ - MoneyTransferRequest Low 311 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - MoneyData Single - { SourceID LLUUID } - { DestID LLUUID } // destination of the transfer - { Flags U8 } - { Amount S32 } - { AggregatePermNextOwner U8 } - { AggregatePermInventory U8 } - { TransactionType S32 } // see lltransactiontypes.h - { Description Variable 1 } // string, name of item for purchases - } -} - -// And, the money transfer -// *NOTE: Unused as of 2010-04-06, because all back-end money transactions -// are done with web services via L$ API. JC -{ - MoneyTransferBackend Low 312 Trusted Zerocoded - { - MoneyData Single - { TransactionID LLUUID } - { TransactionTime U32 } // utc seconds since epoch - { SourceID LLUUID } - { DestID LLUUID } // destination of the transfer - { Flags U8 } - { Amount S32 } - { AggregatePermNextOwner U8 } - { AggregatePermInventory U8 } - { TransactionType S32 } // see lltransactiontypes.h - { RegionID LLUUID } // region sending the request, for logging - { GridX U32 } // *HACK: database doesn't have region_id in schema - { GridY U32 } // *HACK: database doesn't have region_id in schema - { Description Variable 1 } // string, name of item for purchases - } -} - - -// viewer -> userserver -> dataserver -// Reliable -{ - MoneyBalanceRequest Low 313 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - MoneyData Single - { TransactionID LLUUID } - } -} - - -// dataserver -> simulator -> viewer -{ - MoneyBalanceReply Low 314 Trusted Zerocoded - { - MoneyData Single - { AgentID LLUUID } - { TransactionID LLUUID } - { TransactionSuccess BOOL } // BOOL - { MoneyBalance S32 } - { SquareMetersCredit S32 } - { SquareMetersCommitted S32 } - { Description Variable 1 } // string - } - // For replies that are part of a transaction (buying something) provide - // metadata for localization. If TransactionType is 0, the message is - // purely a balance update. Added for server 1.40 and viewer 2.1. JC - { - TransactionInfo Single - { TransactionType S32 } // lltransactiontype.h - { SourceID LLUUID } - { IsSourceGroup BOOL } - { DestID LLUUID } - { IsDestGroup BOOL } - { Amount S32 } - { ItemDescription Variable 1 } // string - } -} - - -// RoutedMoneyBalanceReply -// This message is used when a dataserver needs to send updated -// money balance information to a simulator other than the one it -// is connected to. It uses the standard TransferBlock format. -// dataserver -> simulator -> spaceserver -> simulator -> viewer -// reliable -{ - RoutedMoneyBalanceReply Low 315 Trusted Zerocoded UDPDeprecated - { - TargetBlock Single - { TargetIP IPADDR } // U32 encoded IP - { TargetPort IPPORT } - } - { - MoneyData Single - { AgentID LLUUID } - { TransactionID LLUUID } - { TransactionSuccess BOOL } // BOOL - { MoneyBalance S32 } - { SquareMetersCredit S32 } - { SquareMetersCommitted S32 } - { Description Variable 1 } // string - } - // See MoneyBalanceReply above. - { - TransactionInfo Single - { TransactionType S32 } // lltransactiontype.h - { SourceID LLUUID } - { IsSourceGroup BOOL } - { DestID LLUUID } - { IsDestGroup BOOL } - { Amount S32 } - { ItemDescription Variable 1 } // string - } -} - - - -//--------------------------------------------------------------------------- -// Gesture saves/loads -//--------------------------------------------------------------------------- - - -// Tell the database that some gestures are now active -// viewer -> sim -> data -{ - ActivateGestures Low 316 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { Flags U32 } - } - { - Data Variable - { ItemID LLUUID } - { AssetID LLUUID } - { GestureFlags U32 } - } -} - -// Tell the database some gestures are no longer active -// viewer -> sim -> data -{ - DeactivateGestures Low 317 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { Flags U32 } - } - { - Data Variable - { ItemID LLUUID } - { GestureFlags U32 } - } -} - -//--------------------------------------------------------------------------- -// -//--------------------------------------------------------------------------- - -// userserver -> viewer, up-to-date inventory is here -// could be sent as a result of spam -// as well as in response to InventoryRequest -//{ -// InventoryUpdate Low Trusted Unencoded -// { -// AgentData Single -// { AgentID LLUUID } -// } -// { -// InventoryData Single -// { IsComplete U8 } -// { Filename Variable 1 } -// } -//} - -// dataserver-> userserver -> viewer to move around the mute list -{ - MuteListUpdate Low 318 Trusted Unencoded - { - MuteData Single - { AgentID LLUUID } - { Filename Variable 1 } - } -} - -// tell viewer to use the local mute cache -{ - UseCachedMuteList Low 319 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } -} - -// Sent from viewer to simulator to set user rights. This message will be -// relayed up to the dataserver through a PUT. If that -// succeeds, an UpdateUserRights will be relayed to the originating -// viewer, and a presence lookup will be performed to find -// agent-related and the same PUT will be issued to the sim host if -// they are online. -{ - GrantUserRights Low 320 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Rights Variable - { AgentRelated LLUUID } - { RelatedRights S32 } - } -} - -// This message is sent from the simulator to the viewer to indicate a -// targets granted rights. This is only sent to the originator of the -// request and the target agent if it is a modify or map -// right. Adding/removing online status rights will show up as an -// online/offline notification. -{ - ChangeUserRights Low 321 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - Rights Variable - { AgentRelated LLUUID } - { RelatedRights S32 } - } -} - -// notification for login and logout. -// source_sim -> dest_viewer -{ - OnlineNotification Low 322 Trusted Unencoded - { - AgentBlock Variable - { AgentID LLUUID } - } -} -{ - OfflineNotification Low 323 Trusted Unencoded - { - AgentBlock Variable - { AgentID LLUUID } - } -} - - -// SetStartLocationRequest -// viewer -> sim -// failure checked at sim and triggers ImprovedInstantMessage -// success triggers SetStartLocation -{ - SetStartLocationRequest Low 324 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - StartLocationData Single - { SimName Variable 1 } // string - { LocationID U32 } - { LocationPos LLVector3 } // region coords - { LocationLookAt LLVector3 } - } -} - -// SetStartLocation -// sim -> dataserver -{ - SetStartLocation Low 325 Trusted Zerocoded - { - StartLocationData Single - { AgentID LLUUID } - { RegionID LLUUID } - { LocationID U32 } - { RegionHandle U64 } - { LocationPos LLVector3 } // region coords - { LocationLookAt LLVector3 } - } -} - - -// *************************************************************************** -// Launcher messages -// *************************************************************************** - - -// NetTest - This goes back and forth to the space server because of -// problems determining the port -{ - NetTest Low 326 NotTrusted Unencoded - { - NetBlock Single - { Port IPPORT } - } -} - -// SetChildCount - Sent to launcher to adjust nominal child count -// Simulator sends this increase the sim/cpu ratio on startup -{ - SetCPURatio Low 327 NotTrusted Unencoded - { - Data Single - { Ratio U8 } - } -} - - - -// SimCrashed - Sent to dataserver when the sim goes down. -// Maybe we should notify the spaceserver as well? -{ - SimCrashed Low 328 NotTrusted Unencoded - { - Data Single - { RegionX U32 } - { RegionY U32 } - } - { - Users Variable - { AgentID LLUUID } - } -} - -// *************************************************************************** -// Name Value Pair messages -// *************************************************************************** - -// NameValuePair - if the specific task exists on simulator, add or replace this name value pair -{ - NameValuePair Low 329 Trusted Unencoded - { - TaskData Single - { ID LLUUID } - } - { - NameValueData Variable - { NVPair Variable 2 } - } -} - -// NameValuePair - if the specific task exists on simulator or dataserver, remove the name value pair (value is ignored) -{ - RemoveNameValuePair Low 330 Trusted Unencoded - { - TaskData Single - { ID LLUUID } - } - { - NameValueData Variable - { NVPair Variable 2 } - } -} - - -// *************************************************************************** -// Add/Remove Attachment messages -// *************************************************************************** - -// -// Simulator informs Dataserver of new attachment or attachment asset update -// DO NOT ALLOW THIS FROM THE VIEWER -// -{ - UpdateAttachment Low 331 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - AttachmentBlock Single - { AttachmentPoint U8 } - } - { - OperationData Single - { AddItem BOOL } - { UseExistingAsset BOOL } - } - { - InventoryData Single // Standard inventory item block - { ItemID LLUUID } - { FolderID LLUUID } - - { CreatorID LLUUID } // permissions - { OwnerID LLUUID } // permissions - { GroupID LLUUID } // permissions - { BaseMask U32 } // permissions - { OwnerMask U32 } // permissions - { GroupMask U32 } // permissions - { EveryoneMask U32 } // permissions - { NextOwnerMask U32 } // permissions - { GroupOwned BOOL } // permissions - - { AssetID LLUUID } - { Type S8 } - { InvType S8 } - { Flags U32 } - { SaleType U8 } - { SalePrice S32 } - { Name Variable 1 } - { Description Variable 1 } - { CreationDate S32 } - { CRC U32 } - } -} - -// Simulator informs Dataserver that attachment has been taken off -{ - RemoveAttachment Low 332 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - AttachmentBlock Single - { AttachmentPoint U8 } - { ItemID LLUUID } - } -} - - -// *************************************************************************** -// GUIDed Sound messages -// *************************************************************************** - -// SoundTrigger - Sent by simulator to viewer to trigger sound outside current region -{ - SoundTrigger High 29 NotTrusted Unencoded - { - SoundData Single - { SoundID LLUUID } - { OwnerID LLUUID } - { ObjectID LLUUID } - { ParentID LLUUID } // null if this object is the parent - { Handle U64 } // region handle - { Position LLVector3 } // region local - { Gain F32 } - } -} - -// AttachedSound - Sent by simulator to viewer to play sound attached with an object -{ - AttachedSound Medium 13 Trusted Unencoded - { - DataBlock Single - { SoundID LLUUID } - { ObjectID LLUUID } - { OwnerID LLUUID } - { Gain F32 } - { Flags U8 } - } -} - -// AttachedSoundGainChange - Sent by simulator to viewer to change an attached sounds' volume - -{ - AttachedSoundGainChange Medium 14 Trusted Unencoded - { - DataBlock Single - { ObjectID LLUUID } - { Gain F32 } - } -} - - -// PreloadSound - Sent by simulator to viewer to preload sound for an object - -{ - PreloadSound Medium 15 Trusted Unencoded - { - DataBlock Variable - { ObjectID LLUUID } - { OwnerID LLUUID } - { SoundID LLUUID } - } -} - - -// ************************************************************************* -// Asset storage messages -// ************************************************************************* - -// current assumes an existing UUID, need to enhance for new assets -{ - AssetUploadRequest Low 333 NotTrusted Unencoded - { - AssetBlock Single - { TransactionID LLUUID } - { Type S8 } - { Tempfile BOOL } - { StoreLocal BOOL } - { AssetData Variable 2 } // Optional: the actual asset data if the whole thing will fit it this packet - } -} - -{ - AssetUploadComplete Low 334 NotTrusted Unencoded - { - AssetBlock Single - { UUID LLUUID } - { Type S8 } - { Success BOOL } - } -} - - -// Script on simulator asks dataserver if there are any email messages -// waiting. -{ - EmailMessageRequest Low 335 Trusted Unencoded - { - DataBlock Single - { ObjectID LLUUID } - { FromAddress Variable 1 } - { Subject Variable 1 } - } -} - -// Dataserver gives simulator the oldest email message in the queue, along with -// how many messages are left in the queue. And passes back the filter used to request emails. -{ - EmailMessageReply Low 336 Trusted Unencoded - { - DataBlock Single - { ObjectID LLUUID } - { More U32 } //U32 - { Time U32 } //U32 - { FromAddress Variable 1 } - { Subject Variable 1 } - { Data Variable 2 } - { MailFilter Variable 1 } - } -} - -// Script on simulator sends mail to another script -{ - InternalScriptMail Medium 16 Trusted Unencoded - { - DataBlock Single - { From Variable 1 } - { To LLUUID } - { Subject Variable 1 } - { Body Variable 2 } - } -} - -// Script on simulator asks dataserver for information -{ - ScriptDataRequest Low 337 Trusted Unencoded - { - DataBlock Variable - { Hash U64 } - { RequestType S8 } - { Request Variable 2 } - } -} - -// Data server responds with data -{ - ScriptDataReply Low 338 Trusted Unencoded - { - DataBlock Variable - { Hash U64 } - { Reply Variable 2 } - } -} - - -//----------------------------------------------------------------------------- -// Group messages -//----------------------------------------------------------------------------- - -// CreateGroupRequest -// viewer -> simulator -// reliable -{ - CreateGroupRequest Low 339 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - GroupData Single - { Name Variable 1 } // string - { Charter Variable 2 } // string - { ShowInList BOOL } - { InsigniaID LLUUID } - { MembershipFee S32 } // S32 - { OpenEnrollment BOOL } // BOOL (U8) - { AllowPublish BOOL } // whether profile is externally visible or not - { MaturePublish BOOL } // profile is "mature" - } -} - -// CreateGroupReply -// dataserver -> simulator -// simulator -> viewer -// reliable -{ - CreateGroupReply Low 340 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - ReplyData Single - { GroupID LLUUID } - { Success BOOL } - { Message Variable 1 } // string - } -} - -// UpdateGroupInfo -// viewer -> simulator -// simulator -> dataserver -// reliable -{ - UpdateGroupInfo Low 341 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - { Charter Variable 2 } // string - { ShowInList BOOL } - { InsigniaID LLUUID } - { MembershipFee S32 } - { OpenEnrollment BOOL } - { AllowPublish BOOL } - { MaturePublish BOOL } - } -} - -// GroupRoleChanges -// viewer -> simulator -> dataserver -// reliable -{ - GroupRoleChanges Low 342 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - } - { - RoleChange Variable - { RoleID LLUUID } - { MemberID LLUUID } - { Change U32 } - } -} - -// JoinGroupRequest -// viewer -> simulator -// reliable -{ - JoinGroupRequest Low 343 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - } -} - -// JoinGroupReply -// dataserver -> simulator -> viewer -{ - JoinGroupReply Low 344 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - { Success BOOL } - } -} - - -// EjectGroupMemberRequest -// viewer -> simulator -> dataserver -// reliable -{ - EjectGroupMemberRequest Low 345 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - } - { - EjectData Variable - { EjecteeID LLUUID } - } -} - -// EjectGroupMemberReply -// dataserver -> simulator -> viewer -// reliable -{ - EjectGroupMemberReply Low 346 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - } - { - EjectData Single - { Success BOOL } - } -} - -// LeaveGroupRequest -// viewer -> simulator -> dataserver -// reliable -{ - LeaveGroupRequest Low 347 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - } -} - -// LeaveGroupReply -// dataserver -> simulator -> viewer -{ - LeaveGroupReply Low 348 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - { Success BOOL } - } -} - -// InviteGroupRequest -// viewer -> simulator -> dataserver -// reliable -{ - InviteGroupRequest Low 349 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } // UUID of inviting agent - { SessionID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - } - { - InviteData Variable - { InviteeID LLUUID } - { RoleID LLUUID } - } -} - -// InviteGroupResponse -// simulator -> dataserver -// reliable -{ - InviteGroupResponse Low 350 Trusted Unencoded - { - InviteData Single - { AgentID LLUUID } - { InviteeID LLUUID } - { GroupID LLUUID } - { RoleID LLUUID } - { MembershipFee S32 } - } - { - GroupData Single - { GroupLimit S32 } // Extra block for the agent's group limit - } -} - -// GroupProfileRequest -// viewer-> simulator -> dataserver -// reliable -{ - GroupProfileRequest Low 351 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - } -} - -// GroupProfileReply -// dataserver -> simulator -> viewer -// reliable -{ - GroupProfileReply Low 352 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - { Name Variable 1 } // string - { Charter Variable 2 } // string - { ShowInList BOOL } - { MemberTitle Variable 1 } // string - { PowersMask U64 } // U32 mask - { InsigniaID LLUUID } - { FounderID LLUUID } - { MembershipFee S32 } - { OpenEnrollment BOOL } // BOOL (U8) - { Money S32 } - { GroupMembershipCount S32 } - { GroupRolesCount S32 } - { AllowPublish BOOL } - { MaturePublish BOOL } - { OwnerRole LLUUID } - } -} - -// CurrentInterval = 0 => this period (week, day, etc.) -// CurrentInterval = 1 => last period -// viewer -> simulator -> dataserver -// reliable -{ - GroupAccountSummaryRequest Low 353 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - } - { - MoneyData Single - { RequestID LLUUID } - { IntervalDays S32 } - { CurrentInterval S32 } - } -} - - -// dataserver -> simulator -> viewer -// Reliable -{ - GroupAccountSummaryReply Low 354 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { GroupID LLUUID } - } - { - MoneyData Single - { RequestID LLUUID } - { IntervalDays S32 } - { CurrentInterval S32 } - { StartDate Variable 1 } // string - { Balance S32 } - { TotalCredits S32 } - { TotalDebits S32 } - { ObjectTaxCurrent S32 } - { LightTaxCurrent S32 } - { LandTaxCurrent S32 } - { GroupTaxCurrent S32 } - { ParcelDirFeeCurrent S32 } - { ObjectTaxEstimate S32 } - { LightTaxEstimate S32 } - { LandTaxEstimate S32 } - { GroupTaxEstimate S32 } - { ParcelDirFeeEstimate S32 } - { NonExemptMembers S32 } - { LastTaxDate Variable 1 } // string - { TaxDate Variable 1 } // string - } -} - - -// Reliable -{ - GroupAccountDetailsRequest Low 355 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - } - { - MoneyData Single - { RequestID LLUUID } - { IntervalDays S32 } - { CurrentInterval S32 } - } -} - -// Reliable -{ - GroupAccountDetailsReply Low 356 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { GroupID LLUUID } - } - { - MoneyData Single - { RequestID LLUUID } - { IntervalDays S32 } - { CurrentInterval S32 } - { StartDate Variable 1 } // string - } - { - HistoryData Variable - { Description Variable 1 } // string - { Amount S32 } - } -} - - -// Reliable -{ - GroupAccountTransactionsRequest Low 357 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - } - { - MoneyData Single - { RequestID LLUUID } - { IntervalDays S32 } - { CurrentInterval S32 } - } -} - -// Reliable -{ - GroupAccountTransactionsReply Low 358 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { GroupID LLUUID } - } - { - MoneyData Single - { RequestID LLUUID } - { IntervalDays S32 } - { CurrentInterval S32 } - { StartDate Variable 1 } // string - } - { - HistoryData Variable - { Time Variable 1 } // string - { User Variable 1 } // string - { Type S32 } - { Item Variable 1 } // string - { Amount S32 } - } -} - -// GroupActiveProposalsRequest -// viewer -> simulator -> dataserver -//reliable -{ - GroupActiveProposalsRequest Low 359 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - } - { - TransactionData Single - { TransactionID LLUUID } - } -} - -// GroupActiveProposalItemReply -// dataserver -> simulator -> viewer -// reliable -{ - GroupActiveProposalItemReply Low 360 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { GroupID LLUUID } - } - { - TransactionData Single - { TransactionID LLUUID } - { TotalNumItems U32 } - } - { - ProposalData Variable - { VoteID LLUUID } - { VoteInitiator LLUUID } - { TerseDateID Variable 1 } // string - { StartDateTime Variable 1 } // string - { EndDateTime Variable 1 } // string - { AlreadyVoted BOOL } - { VoteCast Variable 1 } // string - { Majority F32 } - { Quorum S32 } - { ProposalText Variable 1 } // string - } -} - -// GroupVoteHistoryRequest -// viewer -> simulator -> dataserver -//reliable -{ - GroupVoteHistoryRequest Low 361 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - } - { - TransactionData Single - { TransactionID LLUUID } - } -} - -// GroupVoteHistoryItemReply -// dataserver -> simulator -> viewer -// reliable -{ - GroupVoteHistoryItemReply Low 362 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { GroupID LLUUID } - } - { - TransactionData Single - { TransactionID LLUUID } - { TotalNumItems U32 } - } - { - HistoryItemData Single - { VoteID LLUUID } - { TerseDateID Variable 1 } // string - { StartDateTime Variable 1 } // string - { EndDateTime Variable 1 } // string - { VoteInitiator LLUUID } - { VoteType Variable 1 } // string - { VoteResult Variable 1 } // string - { Majority F32 } - { Quorum S32 } - { ProposalText Variable 2 } // string - } - { - VoteItem Variable - { CandidateID LLUUID } - { VoteCast Variable 1 } // string - { NumVotes S32 } - } -} - -// StartGroupProposal -// viewer -> simulator -> dataserver -// reliable -{ - StartGroupProposal Low 363 NotTrusted Zerocoded UDPDeprecated - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ProposalData Single - { GroupID LLUUID } - { Quorum S32 } - { Majority F32 } // F32 - { Duration S32 } // S32, seconds - { ProposalText Variable 1 } // string - } -} - -// GroupProposalBallot -// viewer -> simulator -> dataserver -// reliable -{ - GroupProposalBallot Low 364 NotTrusted Unencoded UDPDeprecated - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ProposalData Single - { ProposalID LLUUID } - { GroupID LLUUID } - { VoteCast Variable 1 } // string - } -} - -// TallyVotes userserver -> dataserver -// reliable -{ - TallyVotes Low 365 Trusted Unencoded -} - - - -// GroupMembersRequest -// get the group members -// simulator -> dataserver -// reliable -{ - GroupMembersRequest Low 366 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - { RequestID LLUUID } - } -} - -// GroupMembersReply -// list of uuids for the group members -// dataserver -> simulator -// reliable -{ - GroupMembersReply Low 367 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - { RequestID LLUUID } - { MemberCount S32 } - } - { - MemberData Variable - { AgentID LLUUID } - { Contribution S32 } - { OnlineStatus Variable 1 } // string - { AgentPowers U64 } - { Title Variable 1 } // string - { IsOwner BOOL } - } -} - -// used to switch an agent's currently active group. -// viewer -> simulator -> dataserver -> AgentDataUpdate... -{ - ActivateGroup Low 368 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - } -} - -// viewer -> simulator -> dataserver -{ - SetGroupContribution Low 369 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { GroupID LLUUID } - { Contribution S32 } - } -} - -// viewer -> simulator -> dataserver -{ - SetGroupAcceptNotices Low 370 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Data Single - { GroupID LLUUID } - { AcceptNotices BOOL } - } - { - NewData Single - { ListInProfile BOOL } - } -} - -// GroupRoleDataRequest -// viewer -> simulator -> dataserver -{ - GroupRoleDataRequest Low 371 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - { RequestID LLUUID } - } -} - - -// GroupRoleDataReply -// All role data for this group -// dataserver -> simulator -> agent -{ - GroupRoleDataReply Low 372 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - { RequestID LLUUID } - { RoleCount S32 } - } - { - RoleData Variable - { RoleID LLUUID } - { Name Variable 1 } - { Title Variable 1 } - { Description Variable 1 } - { Powers U64 } - { Members U32 } - } -} - -// GroupRoleMembersRequest -// viewer -> simulator -> dataserver -{ - GroupRoleMembersRequest Low 373 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - GroupData Single - { GroupID LLUUID } - { RequestID LLUUID } - } -} - -// GroupRoleMembersReply -// All role::member pairs for this group. -// dataserver -> simulator -> agent -{ - GroupRoleMembersReply Low 374 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { GroupID LLUUID } - { RequestID LLUUID } - { TotalPairs U32 } - } - { - MemberData Variable - { RoleID LLUUID } - { MemberID LLUUID } - } -} - -// GroupTitlesRequest -// viewer -> simulator -> dataserver -{ - GroupTitlesRequest Low 375 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - { RequestID LLUUID } - } -} - - -// GroupTitlesReply -// dataserver -> simulator -> viewer -{ - GroupTitlesReply Low 376 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { GroupID LLUUID } - { RequestID LLUUID } - } - { - GroupData Variable - { Title Variable 1 } // string - { RoleID LLUUID } - { Selected BOOL } - } -} - -// GroupTitleUpdate -// viewer -> simulator -> dataserver -{ - GroupTitleUpdate Low 377 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - { TitleRoleID LLUUID } - } -} - -// GroupRoleUpdate -// viewer -> simulator -> dataserver -{ - GroupRoleUpdate Low 378 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupID LLUUID } - } - { - RoleData Variable - { RoleID LLUUID } - { Name Variable 1 } - { Description Variable 1 } - { Title Variable 1 } - { Powers U64 } - { UpdateType U8 } - } -} - - - -// Request the members of the live help group needed for requesting agent. -// userserver -> dataserver -{ - LiveHelpGroupRequest Low 379 Trusted Unencoded - { - RequestData Single - { RequestID LLUUID } - { AgentID LLUUID } - } -} - -// Send down the group -// dataserver -> userserver -{ - LiveHelpGroupReply Low 380 Trusted Unencoded - { - ReplyData Single - { RequestID LLUUID } - { GroupID LLUUID } - { Selection Variable 1 } // selection criteria all or active - } -} - -//----------------------------------------------------------------------------- -// Wearable messages -//----------------------------------------------------------------------------- - -// AgentWearablesRequest -// (a.k.a. "Tell me what the avatar is wearing.") -// viewer -> simulator -> dataserver -// reliable -{ - AgentWearablesRequest Low 381 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - -// AgentWearablesUpdate -// (a.k.a. "Here's what your avatar should be wearing now.") -// dataserver -> userserver -> viewer -// reliable -// NEVER from viewer to sim -{ - AgentWearablesUpdate Low 382 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { SerialNum U32 } // U32, Increases every time the wearables change for a given agent. Used to avoid processing out of order packets. - } - { - WearableData Variable - { ItemID LLUUID } - { AssetID LLUUID } - { WearableType U8 } // U8, LLWearable::EWearType - } -} - -// -// AgentIsNowWearing -// (a.k.a. "Here's what I'm wearing now.") -// viewer->sim->dataserver -// reliable -{ - AgentIsNowWearing Low 383 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - WearableData Variable - { ItemID LLUUID } - { WearableType U8 } - } -} - - -// AgentCachedTexture -// viewer queries for cached textures on dataserver (via simulator) -// viewer -> simulator -> dataserver -// reliable -{ - AgentCachedTexture Low 384 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { SerialNum S32 } - } - { - WearableData Variable - { ID LLUUID } - { TextureIndex U8 } - } -} - -// AgentCachedTextureResponse -// response to viewer queries for cached textures on dataserver (via simulator) -// dataserver -> simulator -> viewer -// reliable -{ - AgentCachedTextureResponse Low 385 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { SerialNum S32 } - } - { - WearableData Variable - { TextureID LLUUID } - { TextureIndex U8 } - { HostName Variable 1 } - } -} - -// Request an AgentDataUpdate without changing any agent data. -{ - AgentDataUpdateRequest Low 386 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - -// AgentDataUpdate -// Updates a viewer or simulator's impression of agent-specific information. -// Used, for example, when an agent's group changes. -// dataserver -> simulator -> viewer -// reliable -{ - AgentDataUpdate Low 387 Trusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { FirstName Variable 1 } // string - { LastName Variable 1 } // string - { GroupTitle Variable 1 } // string - { ActiveGroupID LLUUID } // active group - { GroupPowers U64 } - { GroupName Variable 1 } // string - } -} - - -// GroupDataUpdate -// This is a bunch of group data that needs to be appropriatly routed based on presence info. -// dataserver -> simulator -{ - GroupDataUpdate Low 388 Trusted Zerocoded - { - AgentGroupData Variable - { AgentID LLUUID } - { GroupID LLUUID } - { AgentPowers U64 } - { GroupTitle Variable 1 } - } -} - -// AgentGroupDataUpdate -// Updates a viewer or simulator's impression of the groups an agent is in. -// dataserver -> simulator -> viewer -// reliable -{ - AgentGroupDataUpdate Low 389 Trusted Zerocoded UDPDeprecated - { - AgentData Single - { AgentID LLUUID } - } - { - GroupData Variable - { GroupID LLUUID } - { GroupPowers U64 } - { AcceptNotices BOOL } - { GroupInsigniaID LLUUID } - { Contribution S32 } - { GroupName Variable 1 } // string - } -} - -// AgentDropGroup -// Updates the viewer / simulator that an agent is no longer part of a group -// dataserver -> simulator -> viewer -// dataserver -> userserver -// reliable -{ - AgentDropGroup Low 390 Trusted Zerocoded UDPDeprecated - { - AgentData Single - { AgentID LLUUID } - { GroupID LLUUID } - } -} - -// LogTextMessage -// Asks the dataserver to log the contents of this message in the -// chat and IM log table. -// Sent from userserver (IM logging) and simulator (chat logging). -{ - LogTextMessage Low 391 Trusted Zerocoded - { - DataBlock Variable - { FromAgentId LLUUID } - { ToAgentId LLUUID } - { GlobalX F64 } - { GlobalY F64 } - { Time U32 } // utc seconds since epoch - { Message Variable 2 } // string - } -} - -// ViewerEffect -// Viewer side effect that's sent from one viewer, and broadcast to other agents nearby -// viewer-->sim (single effect created by viewer) -// sim-->viewer (multiple effects that can be seen by viewer) -// the AgentData block used for authentication for viewer-->sim messages -{ - ViewerEffect Medium 17 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - Effect Variable - { ID LLUUID } // unique UUID of the effect - { AgentID LLUUID } // yes, pack AgentID again (note this block is variable) - { Type U8 } // Type of the effect - { Duration F32 } // F32 time (seconds) - { Color Fixed 4 } // Color4U - { TypeData Variable 1 } // Type specific data - } -} - - -// CreateTrustedCircuit -// Sent to establish a trust relationship between two components. -// Only sent in response to a DenyTrustedCircuit message. -{ - CreateTrustedCircuit Low 392 NotTrusted Unencoded - { - DataBlock Single - { EndPointID LLUUID } - { Digest Fixed 32 } // 32 hex digits == 1 MD5 Digest - } -} - -// DenyTrustedCircuit -// Sent : -// - in response to failed CreateTrustedCircuit -// - to force the remote end-point to try to establish a trusted circuit -// - the reception of a trusted message on a non-trusted circuit -// This allows us to re-auth a circuit if it gets closed due to timeouts or network failures. -{ - DenyTrustedCircuit Low 393 NotTrusted Unencoded - { - DataBlock Single - { EndPointID LLUUID } - } -} - -// RequestTrustedCircuit -// If the destination does not trust the sender, a Deny is sent back. -{ - RequestTrustedCircuit Low 394 Trusted Unencoded -} - - -{ - RezSingleAttachmentFromInv Low 395 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Single - { ItemID LLUUID } - { OwnerID LLUUID } - { AttachmentPt U8 } // 0 for default - { ItemFlags U32 } - { GroupMask U32 } - { EveryoneMask U32 } - { NextOwnerMask U32 } - { Name Variable 1 } - { Description Variable 1 } - } -} - -{ - RezMultipleAttachmentsFromInv Low 396 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - HeaderData Single - { CompoundMsgID LLUUID } // All messages a single "compound msg" must have the same id - { TotalObjects U8 } - { FirstDetachAll BOOL } - } - { - ObjectData Variable // 1 to 4 of these per packet - { ItemID LLUUID } - { OwnerID LLUUID } - { AttachmentPt U8 } // 0 for default - { ItemFlags U32 } - { GroupMask U32 } - { EveryoneMask U32 } - { NextOwnerMask U32 } - { Name Variable 1 } - { Description Variable 1 } - } -} - - -{ - DetachAttachmentIntoInv Low 397 NotTrusted Unencoded - { - ObjectData Single - { AgentID LLUUID } - { ItemID LLUUID } - } -} - - -// Viewer -> Sim -// Used in "Make New Outfit" -{ - CreateNewOutfitAttachments Low 398 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - HeaderData Single - { NewFolderID LLUUID } - } - { - ObjectData Variable - { OldItemID LLUUID } - { OldFolderID LLUUID } - } -} - -//----------------------------------------------------------------------------- -// Personal information messages -//----------------------------------------------------------------------------- - -{ - UserInfoRequest Low 399 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } -} - -{ - UserInfoReply Low 400 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - UserData Single - { IMViaEMail BOOL } - { DirectoryVisibility Variable 1 } - { EMail Variable 2 } - } -} - -{ - UpdateUserInfo Low 401 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - UserData Single - { IMViaEMail BOOL } - { DirectoryVisibility Variable 1 } - } -} - - -//----------------------------------------------------------------------------- -// System operations and maintenance -//----------------------------------------------------------------------------- - - -// spaceserver -> sim -// tell a particular simulator to rename a parcel -{ - ParcelRename Low 402 Trusted Unencoded - { - ParcelData Variable - { ParcelID LLUUID } - { NewName Variable 1 } // string - } -} - - -// sim -> viewer -// initiate upload. primarily used for uploading raw files. -{ - InitiateDownload Low 403 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - } - { - FileData Single - { SimFilename Variable 1 } // string - { ViewerFilename Variable 1 } // string - } -} - -// Generalized system message. Each Requst has its own protocol for -// the StringData block format and contents. -{ - SystemMessage Low 404 Trusted Zerocoded - { - MethodData Single - { Method Variable 1 } - { Invoice LLUUID } - { Digest Fixed 32 } // 32 hex digits == 1 MD5 Digest - } - { - ParamList Variable - { Parameter Variable 1 } - } -} - - -//----------------------------------------------------------------------------- -// map messages -//----------------------------------------------------------------------------- - -// viewer -> sim -// reliable -// This message is sent up from the viewer to (eventually) get a list -// of all map layers and NULL-layer sims. -// Returns: MapLayerReply and MapBlockReply -{ - MapLayerRequest Low 405 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { Flags U32 } - { EstateID U32 } // filled in on sim - { Godlike BOOL } // filled in on sim - } -} - -// sim -> viewer -{ - MapLayerReply Low 406 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { Flags U32 } - } - { - LayerData Variable - { Left U32 } - { Right U32 } - { Top U32 } - { Bottom U32 } - { ImageID LLUUID } - } -} - -// viewer -> sim -// This message is sent up from the viewer to get a list -// of the sims in a specified region. -// Returns: MapBlockReply -{ - MapBlockRequest Low 407 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { Flags U32 } - { EstateID U32 } // filled in on sim - { Godlike BOOL } // filled in on sim - } - { - PositionData Single - { MinX U16 } // in region-widths - { MaxX U16 } // in region-widths - { MinY U16 } // in region-widths - { MaxY U16 } // in region-widths - } -} - -// viewer -> sim -// This message is sent up from the viewer to get a list -// of the sims with a given name. -// Returns: MapBlockReply -{ - MapNameRequest Low 408 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { Flags U32 } - { EstateID U32 } // filled in on sim - { Godlike BOOL } // filled in on sim - } - { - NameData Single - { Name Variable 1 } // string - } -} - -// sim -> viewer -{ - MapBlockReply Low 409 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { Flags U32 } - } - { - Data Variable - { X U16 } // in region-widths - { Y U16 } // in region-widths - { Name Variable 1 } // string - { Access U8 } // PG, mature, etc. - { RegionFlags U32 } - { WaterHeight U8 } // meters - { Agents U8 } - { MapImageID LLUUID } - } -} - -// viewer -> sim -// This message is sent up from the viewer to get a list -// of the items of a particular type on the map. -// Used for Telehubs, Agents, Events, Popular Places, etc. -// Returns: MapBlockReply -{ - MapItemRequest Low 410 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { Flags U32 } - { EstateID U32 } // filled in on sim - { Godlike BOOL } // filled in on sim - } - { - RequestData Single - { ItemType U32 } - { RegionHandle U64 } // filled in on sim - } -} - -// sim -> viewer -{ - MapItemReply Low 411 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { Flags U32 } - } - { - RequestData Single - { ItemType U32 } - } - { - Data Variable - { X U32 } // global position - { Y U32 } // global position - { ID LLUUID } // identifier id - { Extra S32 } // extra information - { Extra2 S32 } // extra information - { Name Variable 1 } // identifier string - } -} - -//----------------------------------------------------------------------------- -// Postcard messages -//----------------------------------------------------------------------------- -// reliable -{ - SendPostcard Low 412 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { AssetID LLUUID } - { PosGlobal LLVector3d } // Where snapshot was taken - { To Variable 1 } // dest email address(es) - { From Variable 1 } // src email address(es) - { Name Variable 1 } // src name - { Subject Variable 1 } // mail subject - { Msg Variable 2 } // message text - { AllowPublish BOOL } // Allow publishing on the web. - { MaturePublish BOOL } // profile is "mature" - } -} - -// RPC messages -// Script on simulator requests rpc channel from rpcserver -// simulator -> dataserver -> MySQL -{ - RpcChannelRequest Low 413 Trusted Unencoded - { - DataBlock Single - { GridX U32 } - { GridY U32 } - { TaskID LLUUID } - { ItemID LLUUID } - } -} - -// RpcServer allocated a session for the script -// ChannelID will be the NULL UUID if unable to register -// dataserver -> simulator -{ - RpcChannelReply Low 414 Trusted Unencoded - { - DataBlock Single - { TaskID LLUUID } - { ItemID LLUUID } - { ChannelID LLUUID } - } -} - -// Inbound RPC requests follow this path: -// RpcScriptRequestInbound: rpcserver -> spaceserver -// RpcScriptRequestInboundForward: spaceserver -> simulator -// reply: simulator -> rpcserver -{ - RpcScriptRequestInbound Low 415 NotTrusted Unencoded - { - TargetBlock Single - { GridX U32 } - { GridY U32 } - } - { - DataBlock Single - { TaskID LLUUID } - { ItemID LLUUID } - { ChannelID LLUUID } - { IntValue U32 } - { StringValue Variable 2 } // string - } -} - -// spaceserver -> simulator -{ - RpcScriptRequestInboundForward Low 416 Trusted Unencoded UDPDeprecated - { - DataBlock Single - { RPCServerIP IPADDR } - { RPCServerPort IPPORT } - { TaskID LLUUID } - { ItemID LLUUID } - { ChannelID LLUUID } - { IntValue U32 } - { StringValue Variable 2 } // string - } -} - -// simulator -> rpcserver -// Not trusted because trust establishment doesn't work here. -{ - RpcScriptReplyInbound Low 417 NotTrusted Unencoded - { - DataBlock Single - { TaskID LLUUID } - { ItemID LLUUID } - { ChannelID LLUUID } - { IntValue U32 } - { StringValue Variable 2 } // string - } -} - - -// ScriptMailRegistration -// Simulator -> dataserver -{ - ScriptMailRegistration Low 418 Trusted Unencoded - { - DataBlock Single - { TargetIP Variable 1 } // String IP - { TargetPort IPPORT } - { TaskID LLUUID } - { Flags U32 } - } -} - -// ParcelMediaCommandMessage -// Sends a parcel media command -{ - ParcelMediaCommandMessage Low 419 Trusted Unencoded - { - CommandBlock Single - { Flags U32 } - { Command U32 } - { Time F32 } - } -} - -// ParcelMediaUpdate -// Sends a parcel media update to a single user -// For global updates use the parcel manager. -{ - ParcelMediaUpdate Low 420 Trusted Unencoded - { - DataBlock Single - { MediaURL Variable 1 } // string - { MediaID LLUUID } - { MediaAutoScale U8 } - } - { - DataBlockExtended Single - { MediaType Variable 1 } - { MediaDesc Variable 1 } - { MediaWidth S32 } - { MediaHeight S32 } - { MediaLoop U8 } - } -} - -// LandStatRequest -// Sent by the viewer to request collider/script information for a parcel -{ - LandStatRequest Low 421 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - RequestData Single - { ReportType U32 } - { RequestFlags U32 } - { Filter Variable 1 } - { ParcelLocalID S32 } - } -} - -// LandStatReply -// Sent by the simulator in response to LandStatRequest -{ - LandStatReply Low 422 Trusted Unencoded UDPDeprecated - { - RequestData Single - { ReportType U32 } - { RequestFlags U32 } - { TotalObjectCount U32 } - } - { - ReportData Variable - { TaskLocalID U32 } - { TaskID LLUUID } - { LocationX F32 } - { LocationY F32 } - { LocationZ F32 } - { Score F32 } - { TaskName Variable 1 } - { OwnerName Variable 1 } - } -} - -// Generic Error -- this is used for sending an error message -// to a UDP recipient. The lowest common denominator is to at least -// log the message. More sophisticated receivers can do something -// smarter, for example, a money transaction failure can put up a -// more user visible UI widget. -{ - Error Low 423 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } // will forward to agentid if coming from trusted circuit - } - { - Data Single - { Code S32 } // matches http status codes - { Token Variable 1 } // some specific short string based message - { ID LLUUID } // the transactionid/uniqueid/sessionid whatever. - { System Variable 1 } // The hierarchical path to the system, eg, "message/handler" - { Message Variable 2 } // Human readable message - { Data Variable 2 } // Binary serialized LLSD for extra info. - } -} - -// ObjectIncludeInSearch -// viewer -> simulator -{ - ObjectIncludeInSearch Low 424 NotTrusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - ObjectData Variable - { ObjectLocalID U32 } - { IncludeInSearch BOOL } - } -} - - -// This message is sent from viewer -> simulator when the viewer wants -// to rez an object out of inventory back to its position before it -// last moved into the inventory -{ - RezRestoreToWorld Low 425 NotTrusted Unencoded UDPDeprecated - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - InventoryData Single - { ItemID LLUUID } - { FolderID LLUUID } - { CreatorID LLUUID } // permissions - { OwnerID LLUUID } // permissions - { GroupID LLUUID } // permissions - { BaseMask U32 } // permissions - { OwnerMask U32 } // permissions - { GroupMask U32 } // permissions - { EveryoneMask U32 } // permissions - { NextOwnerMask U32 } // permissions - { GroupOwned BOOL } // permissions - { TransactionID LLUUID } - { Type S8 } - { InvType S8 } - { Flags U32 } - { SaleType U8 } - { SalePrice S32 } - { Name Variable 1 } - { Description Variable 1 } - { CreationDate S32 } - { CRC U32 } - } -} - -// Link inventory -{ - LinkInventoryItem Low 426 NotTrusted Zerocoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - } - { - InventoryBlock Single - { CallbackID U32 } // Async Response - { FolderID LLUUID } - { TransactionID LLUUID } // Going to become TransactionID - { OldItemID LLUUID } - { Type S8 } - { InvType S8 } - { Name Variable 1 } - { Description Variable 1 } - - } -} - -// RetrieveIMsExtended - extended version of RetrieveInstantMessages, -// used to get instant messages that were persisted out to the database while the user was offline -// sent between the simulator and dataserver -{ - RetrieveIMsExtended Low 427 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { IsPremium BOOL } - } -} - -// JoinGroupRequestExtended -// Extends JoinGroupRequest from viewer and passed to dataserver -// simulator -> dataserver -// reliable -{ - JoinGroupRequestExtended Low 428 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupLimit S32 } - } - { - GroupData Single - { GroupID LLUUID } - } -} - -// CreateGroupRequestExtended -// simulator -> dataserver, extends data from CreateGroupRequest -// reliable -{ - CreateGroupRequestExtended Low 429 Trusted Unencoded - { - AgentData Single - { AgentID LLUUID } - { SessionID LLUUID } - { GroupLimit S32 } - } - { - GroupData Single - { Name Variable 1 } // string - { Charter Variable 2 } // string - { ShowInList BOOL } - { InsigniaID LLUUID } - { MembershipFee S32 } // S32 - { OpenEnrollment BOOL } // BOOL (U8) - { AllowPublish BOOL } // whether profile is externally visible or not - { MaturePublish BOOL } // profile is "mature" - } -} \ No newline at end of file +// Linden Lab development message templates + +version 2.0 + +// The Version 2.0 template requires preservation of message +// numbers. Each message must be numbered relative to the +// other messages of that type. The current highest number +// for each type is listed below: +// Low: 429 +// Medium: 18 +// High: 30 +// PLEASE UPDATE THIS WHEN YOU ADD A NEW MESSAGE! + + +// ************************************************************************* +// Test Message +// ************************************************************************* + +// Test Message + +{ + TestMessage Low 1 NotTrusted Zerocoded + { + TestBlock1 Single + { Test1 U32 } + } + { + NeighborBlock Multiple 4 + { Test0 U32 } + { Test1 U32 } + { Test2 U32 } + } +} + +// ************************************************************************* +// Messaging Internal Data Management Message +// ************************************************************************* + +// ************************* +// List fixed messages first +// ************************* + + +// Packet Ack - Ack a list of packets sent reliable +{ + PacketAck Fixed 0xFFFFFFFB NotTrusted Unencoded + { + Packets Variable + { ID U32 } + } +} + + +// OpenCircuit - Tells the recipient's messaging system to open the descibed circuit +{ + OpenCircuit Fixed 0xFFFFFFFC NotTrusted Unencoded UDPBlackListed + { + CircuitInfo Single + { IP IPADDR } + { Port IPPORT } + } +} + + +// CloseCircuit - Tells the recipient's messaging system to close the descibed circuit +{ + CloseCircuit Fixed 0xFFFFFFFD NotTrusted Unencoded +} + + +// ****************** +// End fixed messages +// ****************** + +// StartPingCheck - used to measure circuit ping times +// PingID is used to determine how backlogged the ping was that was +// returned (or how hosed the other side is) +{ + StartPingCheck High 1 NotTrusted Unencoded + { + PingID Single + { PingID U8 } + { OldestUnacked U32 } // Current oldest "unacked" packet on the sender side + } +} + +// CompletePingCheck - used to measure circuit ping times + +{ + CompletePingCheck High 2 NotTrusted Unencoded + { + PingID Single + { PingID U8 } + } +} + +// space->sim +// sim->sim +// AddCircuitCode - Tells the recipient's messaging system that this code +// is for a legal circuit +{ + AddCircuitCode Low 2 Trusted Unencoded + { + CircuitCode Single + { Code U32 } + { SessionID LLUUID } + { AgentID LLUUID } // WARNING - may be null in valid message + } +} + +// viewer->sim +// UseCircuitCode - Attempts to provide the recipient with IP and Port +// info. In the case of viewers, the id is the session id. For other +// machines it may be null. The session id will always be the session +// id of the process, which every server will generate on startup and +// the viewer will be handed after login. +{ + UseCircuitCode Low 3 NotTrusted Unencoded + { + CircuitCode Single + { Code U32 } + { SessionID LLUUID } + { ID LLUUID } // agent id + } +} + + +// ************************************************************************* +// SpaceServer to Simulator Messages +// ************************************************************************ + +// Neighbor List - Passed anytime neighbors change +{ + NeighborList High 3 Trusted Unencoded + { + NeighborBlock Multiple 4 + { IP IPADDR } + { Port IPPORT } + { PublicIP IPADDR } + { PublicPort IPPORT } + { RegionID LLUUID } + { Name Variable 1 } // string + { SimAccess U8 } + } +} + + +// AvatarTextureUpdate +// simulator -> dataserver +// reliable +{ + AvatarTextureUpdate Low 4 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { TexturesChanged BOOL } + } + { + WearableData Variable + { CacheID LLUUID } + { TextureIndex U8 } + { HostName Variable 1 } + } + { + TextureData Variable + { TextureID LLUUID } + } +} + + +// SimulatorMapUpdate +// simulator -> dataserver +// reliable +{ + SimulatorMapUpdate Low 5 Trusted Unencoded + { + MapData Single + { Flags U32 } + } +} + +// SimulatorSetMap +// simulator -> dataserver +// reliable +// Used to upload a map image into the database (currently used only for Land For Sale) +{ + SimulatorSetMap Low 6 Trusted Unencoded + { + MapData Single + { RegionHandle U64 } + { Type S32 } + { MapImage LLUUID } + } +} + +// SubscribeLoad +// spaceserver -> simulator +// reliable +{ + SubscribeLoad Low 7 Trusted Unencoded +} + +// UnsubscribeLoad +// spaceserver -> simulator +// reliable +{ + UnsubscribeLoad Low 8 Trusted Unencoded +} + + +// ************************************************************************ +// Simulator to SpaceServer Messages +// ************************************************************************ + +// SimulatorReady - indicates the sim has finished loading its state +// and is ready to receive updates from others +{ + SimulatorReady Low 9 Trusted Zerocoded + { + SimulatorBlock Single + { SimName Variable 1 } + { SimAccess U8 } + { RegionFlags U32 } + { RegionID LLUUID } + { EstateID U32 } + { ParentEstateID U32 } + } + { + TelehubBlock Single + { HasTelehub BOOL } + { TelehubPos LLVector3 } + } +} + +// TelehubInfo - fill in the UI for telehub creation floater. +// sim -> viewer +// reliable +{ + TelehubInfo Low 10 Trusted Unencoded + { + TelehubBlock Single + { ObjectID LLUUID } // null if no telehub + { ObjectName Variable 1 } // string + { TelehubPos LLVector3 } // fallback if viewer can't find object + { TelehubRot LLQuaternion } + } + { + SpawnPointBlock Variable + { SpawnPointPos LLVector3 } // relative to telehub position + } +} + +// SimulatorPresentAtLocation - indicates that the sim is present at a grid +// location and passes what it believes its neighbors are +{ + SimulatorPresentAtLocation Low 11 Trusted Unencoded + { + SimulatorPublicHostBlock Single + { Port IPPORT } + { SimulatorIP IPADDR } + { GridX U32 } + { GridY U32 } + } + { + NeighborBlock Multiple 4 + { IP IPADDR } + { Port IPPORT } + } + { + SimulatorBlock Single + { SimName Variable 1 } + { SimAccess U8 } + { RegionFlags U32 } + { RegionID LLUUID } + { EstateID U32 } + { ParentEstateID U32 } + } + { + TelehubBlock Variable + { HasTelehub BOOL } + { TelehubPos LLVector3 } + } +} + +// SimulatorLoad +// simulator -> spaceserver +// reliable +{ + SimulatorLoad Low 12 Trusted Unencoded + { + SimulatorLoad Single + { TimeDilation F32 } + { AgentCount S32 } + { CanAcceptAgents BOOL } + } + { + AgentList Variable + { CircuitCode U32 } + { X U8 } + { Y U8 } + } +} + +// Simulator Shutdown Request - Tells spaceserver that a simulator is trying to shutdown +{ + SimulatorShutdownRequest Low 13 Trusted Unencoded +} + +// **************************************************************************** +// Presense messages +// **************************************************************************** + +// sim -> dataserver +{ + RegionPresenceRequestByRegionID Low 14 Trusted Unencoded + { + RegionData Variable + { RegionID LLUUID } + } +} + +// sim -> dataserver +{ + RegionPresenceRequestByHandle Low 15 Trusted Unencoded + { + RegionData Variable + { RegionHandle U64 } + } +} + +// dataserver -> sim +{ + RegionPresenceResponse Low 16 Trusted Zerocoded + { + RegionData Variable + { RegionID LLUUID } + { RegionHandle U64 } + { InternalRegionIP IPADDR } + { ExternalRegionIP IPADDR } + { RegionPort IPPORT } + { ValidUntil F64 } + { Message Variable 1 } + } +} + + +// **************************************************************************** +// Simulator to dataserver messages +// **************************************************************************** + +// Updates SimName, EstateID and SimAccess using RegionID as a key +{ + UpdateSimulator Low 17 Trusted Unencoded + { + SimulatorInfo Single + { RegionID LLUUID } + { SimName Variable 1 } + { EstateID U32 } + { SimAccess U8 } + } +} + + +// record dwell time. +{ + LogDwellTime Low 18 Trusted Unencoded + { + DwellInfo Single + { AgentID LLUUID } + { SessionID LLUUID } + { Duration F32 } + { SimName Variable 1 } + { RegionX U32 } + { RegionY U32 } + { AvgAgentsInView U8 } + { AvgViewerFPS U8 } + } +} + +// Disabled feature response message +{ + FeatureDisabled Low 19 Trusted Unencoded + { + FailureInfo Single + { ErrorMessage Variable 1 } + { AgentID LLUUID } + { TransactionID LLUUID } + } +} + + +// record lost money transactions. This message could be generated +// from either the simulator or the dataserver, depending on how +// the transaction failed. +{ + LogFailedMoneyTransaction Low 20 Trusted Unencoded + { + TransactionData Single + { TransactionID LLUUID } + { TransactionTime U32 } // utc seconds since epoch + { TransactionType S32 } // see lltransactiontypes.h + { SourceID LLUUID } + { DestID LLUUID } // destination of the transfer + { Flags U8 } + { Amount S32 } + { SimulatorIP IPADDR } // U32 encoded IP + { GridX U32 } + { GridY U32 } + { FailureType U8 } + } +} + +// complaint/bug-report - sim -> dataserver. see UserReport for details. +// reliable +{ + UserReportInternal Low 21 Trusted Zerocoded + { + ReportData Single + { ReportType U8 } + { Category U8 } + { ReporterID LLUUID } + { ViewerPosition LLVector3 } + { AgentPosition LLVector3 } + { ScreenshotID LLUUID } + { ObjectID LLUUID } + { OwnerID LLUUID } + { LastOwnerID LLUUID } + { CreatorID LLUUID } + { RegionID LLUUID } + { AbuserID LLUUID } + { AbuseRegionName Variable 1 } + { AbuseRegionID LLUUID } + { Summary Variable 1 } + { Details Variable 2 } + { VersionString Variable 1 } + } +} + +// SetSimStatusInDatabase +// alters the "simulator" table in the database +// sim -> dataserver +// reliable +{ + SetSimStatusInDatabase Low 22 Trusted Unencoded + { + Data Single + { RegionID LLUUID } + { HostName Variable 1 } + { X S32 } + { Y S32 } + { PID S32 } + { AgentCount S32 } + { TimeToLive S32 } // in seconds + { Status Variable 1 } + } +} + +// SetSimPresenceInDatabase +// updates the "presence" table in the database to ensure +// that a given simulator is present and valid for a set amount of +// time +{ + SetSimPresenceInDatabase Low 23 Trusted Unencoded UDPDeprecated + { + SimData Single + { RegionID LLUUID } + { HostName Variable 1 } + { GridX U32 } + { GridY U32 } + { PID S32 } + { AgentCount S32 } + { TimeToLive S32 } // in seconds + { Status Variable 1 } + } +} + +// *************************************************************************** +// Economy messages +// *************************************************************************** + +// once we use local stats, this will include a region handle +{ + EconomyDataRequest Low 24 NotTrusted Unencoded +} + +// dataserver to sim, response w/ econ data +{ + EconomyData Low 25 Trusted Zerocoded + { + Info Single + { ObjectCapacity S32 } + { ObjectCount S32 } + { PriceEnergyUnit S32 } + { PriceObjectClaim S32 } + { PricePublicObjectDecay S32 } + { PricePublicObjectDelete S32 } + { PriceParcelClaim S32 } + { PriceParcelClaimFactor F32 } + { PriceUpload S32 } + { PriceRentLight S32 } + { TeleportMinPrice S32 } + { TeleportPriceExponent F32 } + { EnergyEfficiency F32 } + { PriceObjectRent F32 } + { PriceObjectScaleFactor F32 } + { PriceParcelRent S32 } + { PriceGroupCreate S32 } + } +} + +// *************************************************************************** +// Search messages +// *************************************************************************** + +// AvatarPickerRequest +// Get a list of names to select a person +// viewer -> sim -> data +// reliable +{ + AvatarPickerRequest Low 26 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { QueryID LLUUID } + } + { + Data Single + { Name Variable 1 } + } +} + +// backend implementation which tracks if the user is a god. +{ + AvatarPickerRequestBackend Low 27 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { QueryID LLUUID } + { GodLevel U8 } + } + { + Data Single + { Name Variable 1 } + } +} + +// AvatarPickerReply +// List of names to select a person +// reliable +{ + AvatarPickerReply Low 28 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { QueryID LLUUID } + } + { + Data Variable + { AvatarID LLUUID } + { FirstName Variable 1 } + { LastName Variable 1 } + } +} + +// PlacesQuery +// Used for getting a list of places for the group land panel +// and the user land holdings panel. NOT for the directory. +{ + PlacesQuery Low 29 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { QueryID LLUUID } + } + { + TransactionData Single + { TransactionID LLUUID } + } + { + QueryData Single + { QueryText Variable 1 } + { QueryFlags U32 } + { Category S8 } + { SimName Variable 1 } + } +} + +// PlacesReply +// dataserver -> simulator -> viewer +// If the user has specified a location, use that to compute +// global x,y,z. Otherwise, use center of the AABB. +// reliable +{ + PlacesReply Low 30 Trusted Zerocoded UDPDeprecated + { + AgentData Single + { AgentID LLUUID } + { QueryID LLUUID } + } + { + TransactionData Single + { TransactionID LLUUID } + } + { + QueryData Variable + { OwnerID LLUUID } + { Name Variable 1 } + { Desc Variable 1 } + { ActualArea S32 } + { BillableArea S32 } + { Flags U8 } + { GlobalX F32 } // meters + { GlobalY F32 } // meters + { GlobalZ F32 } // meters + { SimName Variable 1 } + { SnapshotID LLUUID } + { Dwell F32 } + { Price S32 } + //{ ProductSKU Variable 1 } + } +} + +// DirFindQuery viewer->sim +// Message to start asking questions for the directory +{ + DirFindQuery Low 31 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + { QueryText Variable 1 } + { QueryFlags U32 } + { QueryStart S32 } // prev/next page support + } +} + +// DirFindQueryBackend sim->data +// Trusted message generated by receipt of DirFindQuery to sim. +{ + DirFindQueryBackend Low 32 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + { QueryText Variable 1 } + { QueryFlags U32 } + { QueryStart S32 } // prev/next page support + { EstateID U32 } + { Godlike BOOL } + } +} + + +// DirPlacesQuery viewer->sim +// Used for the Find directory of places +{ + DirPlacesQuery Low 33 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + { QueryText Variable 1 } + { QueryFlags U32 } + { Category S8 } + { SimName Variable 1 } + { QueryStart S32 } + } +} + +// DirPlacesQueryBackend sim->dataserver +// Used for the Find directory of places. +{ + DirPlacesQueryBackend Low 34 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + { QueryText Variable 1 } + { QueryFlags U32 } + { Category S8 } + { SimName Variable 1 } + { EstateID U32 } + { Godlike BOOL } + { QueryStart S32 } + } +} + +// DirPlacesReply dataserver->sim->viewer +// If the user has specified a location, use that to compute +// global x,y,z. Otherwise, use center of the AABB. +// reliable +{ + DirPlacesReply Low 35 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + } + { + QueryData Variable + { QueryID LLUUID } + } + { + QueryReplies Variable + { ParcelID LLUUID } + { Name Variable 1 } + { ForSale BOOL } + { Auction BOOL } + { Dwell F32 } + } + { + StatusData Variable + { Status U32 } + } +} + +// DirPeopleReply +{ + DirPeopleReply Low 36 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + } + { + QueryReplies Variable + { AgentID LLUUID } + { FirstName Variable 1 } + { LastName Variable 1 } + { Group Variable 1 } + { Online BOOL } + { Reputation S32 } + } +} + +// DirEventsReply +{ + DirEventsReply Low 37 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + } + { + QueryReplies Variable + { OwnerID LLUUID } + { Name Variable 1 } + { EventID U32 } + { Date Variable 1 } + { UnixTime U32 } + { EventFlags U32 } + } + { + StatusData Variable + { Status U32 } + } +} + +// DirGroupsReply +// dataserver -> userserver -> viewer +// reliable +{ + DirGroupsReply Low 38 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + } + { + QueryReplies Variable + { GroupID LLUUID } + { GroupName Variable 1 } // string + { Members S32 } + { SearchOrder F32 } + } +} + + +// DirClassifiedQuery viewer->sim +// reliable +{ + DirClassifiedQuery Low 39 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + { QueryText Variable 1 } + { QueryFlags U32 } + { Category U32 } + { QueryStart S32 } + } +} + +// DirClassifiedQueryBackend sim->dataserver +// reliable +{ + DirClassifiedQueryBackend Low 40 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + { QueryText Variable 1 } + { QueryFlags U32 } + { Category U32 } + { EstateID U32 } + { Godlike BOOL } + { QueryStart S32 } + } +} + +// DirClassifiedReply dataserver->sim->viewer +// reliable +{ + DirClassifiedReply Low 41 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + } + { + QueryReplies Variable + { ClassifiedID LLUUID } + { Name Variable 1 } + { ClassifiedFlags U8 } + { CreationDate U32 } + { ExpirationDate U32 } + { PriceForListing S32 } + } + { + StatusData Variable + { Status U32 } + } +} + + +// AvatarClassifiedReply +// dataserver -> simulator -> viewer +// Send the header information for this avatar's classifieds +// This fills in the tabs of the Classifieds panel. +// reliable +{ + AvatarClassifiedReply Low 42 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { TargetID LLUUID } + } + { + Data Variable + { ClassifiedID LLUUID } + { Name Variable 1 } + } +} + + +// ClassifiedInfoRequest +// viewer -> simulator +// simulator -> dataserver +// reliable +{ + ClassifiedInfoRequest Low 43 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { ClassifiedID LLUUID } + } +} + + +// ClassifiedInfoReply +// dataserver -> simulator +// simulator -> viewer +// reliable +{ + ClassifiedInfoReply Low 44 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + Data Single + { ClassifiedID LLUUID } + { CreatorID LLUUID } + { CreationDate U32 } + { ExpirationDate U32 } + { Category U32 } + { Name Variable 1 } + { Desc Variable 2 } + { ParcelID LLUUID } + { ParentEstate U32 } + { SnapshotID LLUUID } + { SimName Variable 1 } + { PosGlobal LLVector3d } + { ParcelName Variable 1 } + { ClassifiedFlags U8 } + { PriceForListing S32 } + } +} + + +// ClassifiedInfoUpdate +// Update a classified. ParcelID and EstateID are set +// on the simulator as the message passes through. +// viewer -> simulator -> dataserver +// reliable +{ + ClassifiedInfoUpdate Low 45 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { ClassifiedID LLUUID } + { Category U32 } + { Name Variable 1 } + { Desc Variable 2 } + { ParcelID LLUUID } + { ParentEstate U32 } + { SnapshotID LLUUID } + { PosGlobal LLVector3d } + { ClassifiedFlags U8 } + { PriceForListing S32 } + } +} + + +// ClassifiedDelete +// Delete a classified from the database. +// viewer -> simulator -> dataserver +// reliable +{ + ClassifiedDelete Low 46 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { ClassifiedID LLUUID } + } +} + +// ClassifiedGodDelete +// Delete a classified from the database. +// QueryID is needed so database can send a repeat list of +// classified. +// viewer -> simulator -> dataserver +// reliable +{ + ClassifiedGodDelete Low 47 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { ClassifiedID LLUUID } + { QueryID LLUUID } + } +} + + +// DirLandQuery viewer->sim +// Special query for the land for sale/auction panel. +// reliable +{ + DirLandQuery Low 48 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + { QueryFlags U32 } + { SearchType U32 } + { Price S32 } + { Area S32 } + { QueryStart S32 } + } +} + +// DirLandQueryBackend sim->dataserver +// Special query for the land for sale/auction panel. +{ + DirLandQueryBackend Low 49 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + { QueryFlags U32 } + { SearchType U32 } + { Price S32 } + { Area S32 } + { QueryStart S32 } + { EstateID U32 } + { Godlike BOOL } + } +} + +// DirLandReply +// dataserver -> simulator -> viewer +// reliable +{ + DirLandReply Low 50 Trusted Zerocoded UDPDeprecated + { + AgentData Single + { AgentID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + } + { + QueryReplies Variable + { ParcelID LLUUID } + { Name Variable 1 } + { Auction BOOL } + { ForSale BOOL } + { SalePrice S32 } + { ActualArea S32 } + //{ ProductSKU Variable 1 } + } +} + +// DEPRECATED: DirPopularQuery viewer->sim +// Special query for the land for sale/auction panel. +// reliable +{ + DirPopularQuery Low 51 NotTrusted Zerocoded Deprecated + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + { QueryFlags U32 } + } +} + +// DEPRECATED: DirPopularQueryBackend sim->dataserver +// Special query for the land for sale/auction panel. +// reliable +{ + DirPopularQueryBackend Low 52 Trusted Zerocoded Deprecated + { + AgentData Single + { AgentID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + { QueryFlags U32 } + { EstateID U32 } + { Godlike BOOL } + } +} + +// DEPRECATED: DirPopularReply +// dataserver -> simulator -> viewer +// reliable +{ + DirPopularReply Low 53 Trusted Zerocoded Deprecated + { + AgentData Single + { AgentID LLUUID } + } + { + QueryData Single + { QueryID LLUUID } + } + { + QueryReplies Variable + { ParcelID LLUUID } + { Name Variable 1 } + { Dwell F32 } + } +} + +// ParcelInfoRequest +// viewer -> simulator -> dataserver +// reliable +{ + ParcelInfoRequest Low 54 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { ParcelID LLUUID } + } +} + +// ParcelInfoReply +// dataserver -> simulator -> viewer +// reliable +{ + ParcelInfoReply Low 55 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + } + { + Data Single + { ParcelID LLUUID } + { OwnerID LLUUID } + { Name Variable 1 } + { Desc Variable 1 } + { ActualArea S32 } + { BillableArea S32 } + { Flags U8 } + { GlobalX F32 } // meters + { GlobalY F32 } // meters + { GlobalZ F32 } // meters + { SimName Variable 1 } + { SnapshotID LLUUID } + { Dwell F32 } + { SalePrice S32 } + { AuctionID S32 } + } +} + + +// ParcelObjectOwnersRequest +// viewer -> simulator +// reliable +{ + ParcelObjectOwnersRequest Low 56 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ParcelData Single + { LocalID S32 } + } +} + + +// ParcelObjectOwnersReply +// simulator -> viewer +// reliable +{ + ParcelObjectOwnersReply Low 57 Trusted Zerocoded UDPDeprecated + { + Data Variable + { OwnerID LLUUID } + { IsGroupOwned BOOL } + { Count S32 } + { OnlineStatus BOOL } + } +} + +// GroupNoticeListRequest +// viewer -> simulator -> dataserver +// reliable +{ + GroupNoticesListRequest Low 58 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { GroupID LLUUID } + } +} + +// GroupNoticesListReply +// dataserver -> simulator -> viewer +// reliable +{ + GroupNoticesListReply Low 59 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { GroupID LLUUID } + } + { + Data Variable + { NoticeID LLUUID } + { Timestamp U32 } + { FromName Variable 2 } + { Subject Variable 2 } + { HasAttachment BOOL } + { AssetType U8 } + } +} + +// GroupNoticeRequest +// viewer -> simulator +// simulator -> dataserver +// reliable +{ + GroupNoticeRequest Low 60 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { GroupNoticeID LLUUID } + } +} + +// GroupNoticeAdd +// Add a group notice. +// simulator -> dataserver +// reliable +{ + GroupNoticeAdd Low 61 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + MessageBlock Single + { ToGroupID LLUUID } + { ID LLUUID } + { Dialog U8 } + { FromAgentName Variable 1 } + { Message Variable 2 } + { BinaryBucket Variable 2 } + } +} + + +// **************************************************************************** +// Teleport messages +// +// The teleport messages are numerous, so I have attempted to give them a +// consistent naming convention. Since there is a bit of glob pattern +// aliasing, the rules are applied in order. +// +// Teleport* - viewer->sim or sim->viewer message which announces a +// teleportation request, progrees, start, or end. +// Data* - sim->data or data->sim trusted message. +// Space* - sim->space or space->sim trusted messaging +// *Lure - A lure message to pass around information. +// +// All actual viewer teleports will begin with a Teleport* message and +// end in a TeleportStart, TeleportLocal or TeleportFailed message. The TeleportFailed +// message may be returned by any process and must be routed through the +// teleporting agent's simulator and back to the viewer. +// **************************************************************************** + +// TeleportRequest +// viewer -> sim specifying exact teleport destination +{ + TeleportRequest Low 62 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Info Single + { RegionID LLUUID } + { Position LLVector3 } + { LookAt LLVector3 } + } +} + +// TeleportLocationRequest +// viewer -> sim specifying exact teleport destination +{ + TeleportLocationRequest Low 63 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Info Single + { RegionHandle U64 } + { Position LLVector3 } + { LookAt LLVector3 } + } +} + +// TeleportLocal +// sim -> viewer reply telling the viewer that we've successfully TP'd +// to somewhere else within the sim +{ + TeleportLocal Low 64 Trusted Unencoded + { + Info Single + { AgentID LLUUID } + { LocationID U32 } + { Position LLVector3 } // region + { LookAt LLVector3 } + { TeleportFlags U32 } + } +} + +// TeleportLandmarkRequest viewer->sim +// teleport to landmark asset ID destination. use LLUUD::null for home. +{ + TeleportLandmarkRequest Low 65 NotTrusted Zerocoded + { + Info Single + { AgentID LLUUID } + { SessionID LLUUID } + { LandmarkID LLUUID } + } +} + +// TeleportProgress sim->viewer +// Tell the agent how the teleport is going. +{ + TeleportProgress Low 66 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + Info Single + { TeleportFlags U32 } + { Message Variable 1 } // string + } +} + +// DataHomeLocationRequest sim->data +// Request +{ + DataHomeLocationRequest Low 67 Trusted Zerocoded + { + Info Single + { AgentID LLUUID } + { KickedFromEstateID U32 } + } + { + AgentInfo Single + { AgentEffectiveMaturity U32 } + } +} + +// DataHomeLocationReply data->sim +// response is the location of agent home. +{ + DataHomeLocationReply Low 68 Trusted Unencoded + { + Info Single + { AgentID LLUUID } + { RegionHandle U64 } + { Position LLVector3 } // region coords + { LookAt LLVector3 } + } +} + + +// TeleportFinish sim->viewer +// called when all of the information has been collected and readied for +// the agent. +{ + TeleportFinish Low 69 Trusted Unencoded UDPBlackListed + { + Info Single + { AgentID LLUUID } + { LocationID U32 } + { SimIP IPADDR } + { SimPort IPPORT } + { RegionHandle U64 } + { SeedCapability Variable 2 } // URL + { SimAccess U8 } + { TeleportFlags U32 } + } +} + +// StartLure viewer->sim +// Sent from viewer to the local simulator to lure target id to near +// agent id. This will generate an instant message that will be routed +// through the space server and out to the userserver. When that IM +// goes through the userserver and the TargetID is online, the +// userserver will send an InitializeLure to the spaceserver. When that +// packet is acked, the original instant message is finally forwarded to +// TargetID. +{ + StartLure Low 70 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Info Single + { LureType U8 } + { Message Variable 1 } + } + { + TargetData Variable + { TargetID LLUUID } + } +} + +// TeleportLureRequest viewer->sim +// Message from target of lure to begin the teleport process on the +// local simulator. +{ + TeleportLureRequest Low 71 NotTrusted Unencoded + { + Info Single + { AgentID LLUUID } + { SessionID LLUUID } + { LureID LLUUID } + { TeleportFlags U32 } + } +} + +// TeleportCancel viewer->sim +// reliable +{ + TeleportCancel Low 72 NotTrusted Unencoded + { + Info Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + + +// TeleportStart sim->viewer +// announce a successful teleport request to the viewer. +{ + TeleportStart Low 73 Trusted Unencoded + { + Info Single + { TeleportFlags U32 } + } +} + +// TeleportFailed somewhere->sim->viewer +// announce failure of teleport request +{ + TeleportFailed Low 74 Trusted Unencoded + { + Info Single + { AgentID LLUUID } + { Reason Variable 1 } // string + } + { + AlertInfo Variable + { Message Variable 1 } // string id + { ExtraParams Variable 1 } // llsd extra parameters + } +} + + +// *************************************************************************** +// Viewer to Simulator Messages +// *************************************************************************** + +// Undo +{ + Undo Low 75 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + } + { + ObjectData Variable + { ObjectID LLUUID } + } +} + + +// Redo +{ + Redo Low 76 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + } + { + ObjectData Variable + { ObjectID LLUUID } + } +} + +// UndoLand +{ + UndoLand Low 77 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + + +// AgentPause - viewer occasionally will block, inform simulator of this fact +{ + AgentPause Low 78 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { SerialNum U32 } // U32, used by both pause and resume. Non-increasing numbers are ignored. + } +} + +// AgentResume - unblock the agent +{ + AgentResume Low 79 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { SerialNum U32 } // U32, used by both pause and resume. Non-increasing numbers are ignored. + } +} + + +// AgentUpdate - Camera info sent from viewer to simulator +// or, more simply, two axes and compute cross product +// State data is temporary, indicates current behavior state: +// 0 = walking +// 1 = mouselook +// 2 = typing +// +// Center is region local (JNC 8.16.2001) +// Camera center is region local (JNC 8.29.2001) +{ + AgentUpdate High 4 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { BodyRotation LLQuaternion } + { HeadRotation LLQuaternion } + { State U8 } + { CameraCenter LLVector3 } + { CameraAtAxis LLVector3 } + { CameraLeftAxis LLVector3 } + { CameraUpAxis LLVector3 } + { Far F32 } + { ControlFlags U32 } + { Flags U8 } + } +} + +// ChatFromViewer +// Specifies the text to be said and the "type", +// normal speech, shout, whisper. +// with the specified radius +{ + ChatFromViewer Low 80 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ChatData Single + { Message Variable 2 } + { Type U8 } + { Channel S32 } + } +} + + +// AgentThrottle +{ + AgentThrottle Low 81 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { CircuitCode U32 } + } + { + Throttle Single + { GenCounter U32 } + { Throttles Variable 1 } + } +} + + +// AgentFOV - Update to agent's field of view, angle is vertical, single F32 float in radians +{ + AgentFOV Low 82 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { CircuitCode U32 } + } + { + FOVBlock Single + { GenCounter U32 } + { VerticalAngle F32 } + } +} + + +// AgentHeightWidth - Update to height and aspect, sent as height/width to save space +// Usually sent when window resized or created +{ + AgentHeightWidth Low 83 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { CircuitCode U32 } + } + { + HeightWidthBlock Single + { GenCounter U32 } + { Height U16 } + { Width U16 } + } +} + + +// AgentSetAppearance - Update to agent appearance +{ + AgentSetAppearance Low 84 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { SerialNum U32 } // U32, Increases every time the appearance changes. A value of 0 resets. + { Size LLVector3 } + } + { + WearableData Variable + { CacheID LLUUID } + { TextureIndex U8 } + } + { + ObjectData Single + { TextureEntry Variable 2 } + } + { + VisualParam Variable + { ParamValue U8 } + } +} + +// AgentAnimation - Update animation state +// viewer --> simulator +{ + AgentAnimation High 5 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + AnimationList Variable + { AnimID LLUUID } + { StartAnim BOOL } + } + { + PhysicalAvatarEventList Variable + { TypeData Variable 1 } + } +} + +// AgentRequestSit - Try to sit on an object +{ + AgentRequestSit High 6 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + TargetObject Single + { TargetID LLUUID } + { Offset LLVector3 } + } +} + +// AgentSit - Actually sit on object +{ + AgentSit High 7 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + + +// quit message sent between simulators +{ + AgentQuitCopy Low 85 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + FuseBlock Single + { ViewerCircuitCode U32 } + } +} + + +// Request Image - Sent by the viewer to request a specified image at a specified resolution + +{ + RequestImage High 8 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + RequestImage Variable + { Image LLUUID } + { DiscardLevel S8 } + { DownloadPriority F32 } + { Packet U32 } + { Type U8 } + } +} + +// ImageNotInDatabase +// Simulator informs viewer that a requsted image definitely does not exist in the asset database +{ + ImageNotInDatabase Low 86 Trusted Unencoded + { + ImageID Single + { ID LLUUID } + } +} + +// RebakeAvatarTextures +// simulator -> viewer request when a temporary baked avatar texture is not found +{ + RebakeAvatarTextures Low 87 Trusted Unencoded + { + TextureData Single + { TextureID LLUUID } + } +} + + +// SetAlwaysRun +// Lets the viewer choose between running and walking +{ + SetAlwaysRun Low 88 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { AlwaysRun BOOL } + } +} + +// ObjectAdd - create new object in the world +// Simulator will assign ID and send message back to signal +// object actually created. +// +// AddFlags (see also ObjectUpdate) +// 0x01 - use physics +// 0x02 - create selected +// +// If only one ImageID is sent for an object type that has more than +// one face, the same image is repeated on each subsequent face. +// +// Data field is opaque type-specific data for this object +{ + ObjectAdd Medium 1 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + } + { + ObjectData Single + { PCode U8 } + { Material U8 } + { AddFlags U32 } // see object_flags.h + + { PathCurve U8 } + { ProfileCurve U8 } + { PathBegin U16 } // 0 to 1, quanta = 0.01 + { PathEnd U16 } // 0 to 1, quanta = 0.01 + { PathScaleX U8 } // 0 to 1, quanta = 0.01 + { PathScaleY U8 } // 0 to 1, quanta = 0.01 + { PathShearX U8 } // -.5 to .5, quanta = 0.01 + { PathShearY U8 } // -.5 to .5, quanta = 0.01 + { PathTwist S8 } // -1 to 1, quanta = 0.01 + { PathTwistBegin S8 } // -1 to 1, quanta = 0.01 + { PathRadiusOffset S8 } // -1 to 1, quanta = 0.01 + { PathTaperX S8 } // -1 to 1, quanta = 0.01 + { PathTaperY S8 } // -1 to 1, quanta = 0.01 + { PathRevolutions U8 } // 0 to 3, quanta = 0.015 + { PathSkew S8 } // -1 to 1, quanta = 0.01 + { ProfileBegin U16 } // 0 to 1, quanta = 0.01 + { ProfileEnd U16 } // 0 to 1, quanta = 0.01 + { ProfileHollow U16 } // 0 to 1, quanta = 0.01 + + { BypassRaycast U8 } + { RayStart LLVector3 } + { RayEnd LLVector3 } + { RayTargetID LLUUID } + { RayEndIsIntersection U8 } + + { Scale LLVector3 } + { Rotation LLQuaternion } + + { State U8 } + } +} + + +// ObjectDelete +// viewer -> simulator +{ + ObjectDelete Low 89 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { Force BOOL } // BOOL, god trying to force delete + } + { + ObjectData Variable + { ObjectLocalID U32 } + } +} + + +// ObjectDuplicate +// viewer -> simulator +// Makes a copy of a set of objects, offset by a given amount +{ + ObjectDuplicate Low 90 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + } + { + SharedData Single + { Offset LLVector3 } + { DuplicateFlags U32 } // see object_flags.h + } + { + ObjectData Variable + { ObjectLocalID U32 } + } +} + + +// ObjectDuplicateOnRay +// viewer -> simulator +// Makes a copy of an object, using the add object raycast +// code to abut it to other objects. +{ + ObjectDuplicateOnRay Low 91 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + { RayStart LLVector3 } // region local + { RayEnd LLVector3 } // region local + { BypassRaycast BOOL } + { RayEndIsIntersection BOOL } + { CopyCenters BOOL } + { CopyRotates BOOL } + { RayTargetID LLUUID } + { DuplicateFlags U32 } // see object_flags.h + } + { + ObjectData Variable + { ObjectLocalID U32 } + } +} + + +// MultipleObjectUpdate +// viewer -> simulator +// updates position, rotation and scale in one message +// positions sent as region-local floats +{ + MultipleObjectUpdate Medium 2 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + { Type U8 } + { Data Variable 1 } // custom type + } +} + +// RequestMultipleObjects +// viewer -> simulator +// reliable +// +// When the viewer gets a local_id/crc for an object that +// it either doesn't have, or doesn't have the current version +// of, it sends this upstream get get an update. +// +// CacheMissType 0 => full object (viewer doesn't have it) +// CacheMissType 1 => CRC mismatch only +{ + RequestMultipleObjects Medium 3 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { CacheMissType U8 } + { ID U32 } + } +} + + +// DEPRECATED: ObjectPosition +// == Old Behavior == +// Set the position on objects +// +// == Reason for deprecation == +// Unused code path was removed in the move to Havok4 +// Object position, scale and rotation messages were already unified +// to MultipleObjectUpdate and this message was unused cruft. +// +// == New Location == +// MultipleObjectUpdate can be used instead. +{ + ObjectPosition Medium 4 NotTrusted Zerocoded Deprecated + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + { Position LLVector3 } // region + } +} + + +// DEPRECATED: ObjectScale +// == Old Behavior == +// Set the scale on objects +// +// == Reason for deprecation == +// Unused code path was removed in the move to Havok4 +// Object position, scale and rotation messages were already unified +// to MultipleObjectUpdate and this message was unused cruft. +// +// == New Location == +// MultipleObjectUpdate can be used instead. +{ + ObjectScale Low 92 NotTrusted Zerocoded Deprecated + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + { Scale LLVector3 } + } +} + + +// ObjectRotation +// viewer -> simulator +{ + ObjectRotation Low 93 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + { Rotation LLQuaternion } + } +} + + +// ObjectFlagUpdate +// viewer -> simulator +{ + ObjectFlagUpdate Low 94 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { ObjectLocalID U32 } + { UsePhysics BOOL } + { IsTemporary BOOL } + { IsPhantom BOOL } + { CastsShadows BOOL } + } + { + ExtraPhysics Variable + { PhysicsShapeType U8 } + { Density F32 } + { Friction F32 } + { Restitution F32 } + { GravityMultiplier F32 } + } +} + + +// ObjectClickAction +// viewer -> simulator +{ + ObjectClickAction Low 95 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + { ClickAction U8 } + } +} + + +// ObjectImage +// viewer -> simulator +{ + ObjectImage Low 96 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + { MediaURL Variable 1 } + { TextureEntry Variable 2 } + } +} + + +{ + ObjectMaterial Low 97 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + { Material U8 } + } +} + + +{ + ObjectShape Low 98 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + { PathCurve U8 } + { ProfileCurve U8 } + { PathBegin U16 } // 0 to 1, quanta = 0.01 + { PathEnd U16 } // 0 to 1, quanta = 0.01 + { PathScaleX U8 } // 0 to 1, quanta = 0.01 + { PathScaleY U8 } // 0 to 1, quanta = 0.01 + { PathShearX U8 } // -.5 to .5, quanta = 0.01 + { PathShearY U8 } // -.5 to .5, quanta = 0.01 + { PathTwist S8 } // -1 to 1, quanta = 0.01 + { PathTwistBegin S8 } // -1 to 1, quanta = 0.01 + { PathRadiusOffset S8 } // -1 to 1, quanta = 0.01 + { PathTaperX S8 } // -1 to 1, quanta = 0.01 + { PathTaperY S8 } // -1 to 1, quanta = 0.01 + { PathRevolutions U8 } // 0 to 3, quanta = 0.015 + { PathSkew S8 } // -1 to 1, quanta = 0.01 + { ProfileBegin U16 } // 0 to 1, quanta = 0.01 + { ProfileEnd U16 } // 0 to 1, quanta = 0.01 + { ProfileHollow U16 } // 0 to 1, quanta = 0.01 + } +} + +{ + ObjectExtraParams Low 99 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + { ParamType U16 } + { ParamInUse BOOL } + { ParamSize U32 } + { ParamData Variable 1 } + } +} + + +// ObjectOwner +// To make public, set OwnerID to LLUUID::null. +// TODO: Eliminate god-bit. Maybe not. God-bit is ok, because it's +// known on the server. +{ + ObjectOwner Low 100 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + HeaderData Single + { Override BOOL } // BOOL, God-bit. + { OwnerID LLUUID } + { GroupID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + } +} + +// ObjectGroup +// To make the object part of no group, set GroupID = LLUUID::null. +// This call only works if objectid.ownerid == agentid. +{ + ObjectGroup Low 101 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + } +} + +// Attempt to buy an object. This will only pack root objects. +{ + ObjectBuy Low 102 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + { CategoryID LLUUID } // folder where it goes (if derezed) + } + { + ObjectData Variable + { ObjectLocalID U32 } + { SaleType U8 } // U8 -> EForSale + { SalePrice S32 } + } +} + +// viewer -> simulator + +// buy object inventory. If the transaction succeeds, it will add +// inventory to the agent, and potentially remove the original. +{ + BuyObjectInventory Low 103 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { ObjectID LLUUID } + { ItemID LLUUID } + { FolderID LLUUID } + } +} + +// sim -> viewer +// Used to propperly handle buying asset containers +{ + DerezContainer Low 104 Trusted Zerocoded + { + Data Single + { ObjectID LLUUID } + { Delete BOOL } // BOOL + } +} + +// ObjectPermissions +// Field - see llpermissionsflags.h +// If Set is true, tries to turn on bits in mask. +// If set is false, tries to turn off bits in mask. +// BUG: This just forces the permissions field. +{ + ObjectPermissions Low 105 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + HeaderData Single + { Override BOOL } // BOOL, God-bit. + } + { + ObjectData Variable + { ObjectLocalID U32 } + { Field U8 } + { Set U8 } + { Mask U32 } + } +} + +// set object sale information +{ + ObjectSaleInfo Low 106 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { LocalID U32 } + { SaleType U8 } // U8 -> EForSale + { SalePrice S32 } + } +} + + +// set object names +{ + ObjectName Low 107 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { LocalID U32 } + { Name Variable 1 } + } +} + +// set object descriptions +{ + ObjectDescription Low 108 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { LocalID U32 } + { Description Variable 1 } + } +} + +// set object category +{ + ObjectCategory Low 109 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { LocalID U32 } + { Category U32 } + } +} + +// ObjectSelect +// Variable object data because rectangular selection can +// generate a large list very quickly. +{ + ObjectSelect Low 110 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + } + +} + + +// ObjectDeselect +{ + ObjectDeselect Low 111 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + } + +} + +// ObjectAttach +{ + ObjectAttach Low 112 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { AttachmentPoint U8 } + } + { + ObjectData Variable + { ObjectLocalID U32 } + { Rotation LLQuaternion } + } +} + +// ObjectDetach -- derezzes an attachment, marking its item in your inventory as not "(worn)" +{ + ObjectDetach Low 113 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + } +} + + +// ObjectDrop -- drops an attachment from your avatar onto the ground +{ + ObjectDrop Low 114 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + } +} + + +// ObjectLink +{ + ObjectLink Low 115 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + } +} + +// ObjectDelink +{ + ObjectDelink Low 116 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + } +} + + +// ObjectGrab +{ + ObjectGrab Low 117 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Single + { LocalID U32 } + { GrabOffset LLVector3 } + } + { + SurfaceInfo Variable + { UVCoord LLVector3 } + { STCoord LLVector3 } + { FaceIndex S32 } + { Position LLVector3 } + { Normal LLVector3 } + { Binormal LLVector3 } + } +} + + +// ObjectGrabUpdate +// TODO: Quantize this data, reduce message size. +// TimeSinceLast could go to 1 byte, since capped +// at 100 on sim. +{ + ObjectGrabUpdate Low 118 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Single + { ObjectID LLUUID } + { GrabOffsetInitial LLVector3 } // LLVector3 + { GrabPosition LLVector3 } // LLVector3, region local + { TimeSinceLast U32 } + } + { + SurfaceInfo Variable + { UVCoord LLVector3 } + { STCoord LLVector3 } + { FaceIndex S32 } + { Position LLVector3 } + { Normal LLVector3 } + { Binormal LLVector3 } + } + +} + + +// ObjectDeGrab +{ + ObjectDeGrab Low 119 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Single + { LocalID U32 } + } + { + SurfaceInfo Variable + { UVCoord LLVector3 } + { STCoord LLVector3 } + { FaceIndex S32 } + { Position LLVector3 } + { Normal LLVector3 } + { Binormal LLVector3 } + } +} + + +// ObjectSpinStart +{ + ObjectSpinStart Low 120 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Single + { ObjectID LLUUID } + } +} + + +// ObjectSpinUpdate +{ + ObjectSpinUpdate Low 121 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Single + { ObjectID LLUUID } + { Rotation LLQuaternion } + } +} + + +// ObjectSpinStop +{ + ObjectSpinStop Low 122 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Single + { ObjectID LLUUID } + } +} + +// Export selected objects +// viewer->sim +{ + ObjectExportSelected Low 123 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { RequestID LLUUID } + { VolumeDetail S16 } + } + { + ObjectData Variable + { ObjectID LLUUID } + } +} + + +// ModifyLand - sent to modify a piece of land on a simulator. +// viewer -> sim +{ + ModifyLand Low 124 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ModifyBlock Single + { Action U8 } + { BrushSize U8 } + { Seconds F32 } + { Height F32 } + } + { + ParcelData Variable + { LocalID S32 } + { West F32 } + { South F32 } + { East F32 } + { North F32 } + } + { + ModifyBlockExtended Variable + { BrushSize F32 } + } +} + + +// VelocityInterpolateOn +// viewer->sim +// requires administrative access +{ + VelocityInterpolateOn Low 125 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + + +// VelocityInterpolateOff +// viewer->sim +// requires administrative access +{ + VelocityInterpolateOff Low 126 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + +// Save State +// viewer->sim +// requires administrative access +{ + StateSave Low 127 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + DataBlock Single + { Filename Variable 1 } + } +} + +// ReportAutosaveCrash +// sim->launcher +{ + ReportAutosaveCrash Low 128 NotTrusted Unencoded + { + AutosaveData Single + { PID S32 } + { Status S32 } + } +} + +// SimWideDeletes +{ + SimWideDeletes Low 129 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + DataBlock Single + { TargetID LLUUID } + { Flags U32 } + } +} + +// RequestObjectPropertiesFamily +// Ask for extended information, such as creator, permissions, resources, etc. +// Medium frequency because it is driven by mouse hovering over objects, which +// occurs at high rates. +{ + RequestObjectPropertiesFamily Medium 5 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Single + { RequestFlags U32 } + { ObjectID LLUUID } + } +} + + +// Track agent - this information is used when sending out the +// coarse location update so that we know who you are tracking. +// To stop tracking - send a null uuid as the prey. +{ + TrackAgent Low 130 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + TargetData Single + { PreyID LLUUID } + } +} + +// end viewer to simulator section + +{ + ViewerStats Low 131 NotTrusted Zerocoded UDPDeprecated + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { IP IPADDR } + { StartTime U32 } + { RunTime F32 } // F32 + { SimFPS F32 } // F32 + { FPS F32 } // F32 + { AgentsInView U8 } // + { Ping F32 } // F32 + { MetersTraveled F64 } + { RegionsVisited S32 } + { SysRAM U32 } + { SysOS Variable 1 } // String + { SysCPU Variable 1 } // String + { SysGPU Variable 1 } // String + } + + { + DownloadTotals Single + { World U32 } + { Objects U32 } + { Textures U32 } + } + + { + NetStats Multiple 2 + { Bytes U32 } + { Packets U32 } + { Compressed U32 } + { Savings U32 } + } + + { + FailStats Single + { SendPacket U32 } + { Dropped U32 } + { Resent U32 } + { FailedResends U32 } + { OffCircuit U32 } + { Invalid U32 } + } + + { + MiscStats Variable + { Type U32 } + { Value F64 } + } +} + +// ScriptAnswerYes +// reliable +{ + ScriptAnswerYes Low 132 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { TaskID LLUUID } + { ItemID LLUUID } + { Questions S32 } + } +} + + +// complaint/bug-report +// reliable +{ + UserReport Low 133 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ReportData Single + { ReportType U8 } // BUG=1, COMPLAINT=2 + { Category U8 } // see sequence.user_report_category + { Position LLVector3 } // screenshot position, region-local + { CheckFlags U8 } // checkboxflags + { ScreenshotID LLUUID } + { ObjectID LLUUID } + { AbuserID LLUUID } + { AbuseRegionName Variable 1 } + { AbuseRegionID LLUUID } + { Summary Variable 1 } + { Details Variable 2 } + { VersionString Variable 1 } + } +} + + +// *************************************************************************** +// Simulator to Viewer Messages +// *************************************************************************** + +// AlertMessage +// Specifies the text to be posted in an alert dialog +{ + AlertMessage Low 134 Trusted Unencoded + { + AlertData Single + { Message Variable 1 } + } + { + AlertInfo Variable + { Message Variable 1 } + { ExtraParams Variable 1 } + } + { + AgentInfo Variable + { AgentID LLUUID } + } +} + +// Send an AlertMessage to the named agent. +// usually dataserver->simulator +{ + AgentAlertMessage Low 135 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + AlertData Single + { Modal BOOL } + { Message Variable 1 } + } +} + + +// MeanCollisionAlert +// Specifies the text to be posted in an alert dialog +{ + MeanCollisionAlert Low 136 Trusted Zerocoded + { + MeanCollision Variable + { Victim LLUUID } + { Perp LLUUID } + { Time U32 } + { Mag F32 } + { Type U8 } + } +} + +// ViewerFrozenMessage +// Specifies the text to be posted in an alert dialog +{ + ViewerFrozenMessage Low 137 Trusted Unencoded + { + FrozenData Single + { Data BOOL } + } +} + +// Health Message +// Tells viewer what agent health is +{ + HealthMessage Low 138 Trusted Zerocoded + { + HealthData Single + { Health F32 } + } +} + +// ChatFromSimulator +// Chat text to appear on a user's screen +// Position is region local. +// Viewer can optionally use position to animate +// If audible is CHAT_NOT_AUDIBLE, message will not be valid +{ + ChatFromSimulator Low 139 Trusted Unencoded + { + ChatData Single + { FromName Variable 1 } + { SourceID LLUUID } // agent id or object id + { OwnerID LLUUID } // object's owner + { SourceType U8 } + { ChatType U8 } + { Audible U8 } + { Position LLVector3 } + { Message Variable 2 } // UTF-8 text + } +} + + +// Simulator statistics packet (goes out to viewer and dataserver/spaceserver) +{ + SimStats Low 140 Trusted Unencoded + { + Region Single + { RegionX U32 } + { RegionY U32 } + { RegionFlags U32 } + { ObjectCapacity U32 } + } + { + Stat Variable + { StatID U32 } + { StatValue F32 } + } + { + PidStat Single + { PID S32 } + } + { + RegionInfo Variable + { RegionFlagsExtended U64 } + } +} + +// viewer -> sim +// reliable +{ + RequestRegionInfo Low 141 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + +// RegionInfo +// Used to populate UI for both region/estate floater +// and god tools floater +// sim -> viewer +// reliable +{ + RegionInfo Low 142 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + RegionInfo Single + { SimName Variable 1 } // string + { EstateID U32 } + { ParentEstateID U32 } + { RegionFlags U32 } + { SimAccess U8 } + { MaxAgents U8 } + { BillableFactor F32 } + { ObjectBonusFactor F32 } + { WaterHeight F32 } + { TerrainRaiseLimit F32 } + { TerrainLowerLimit F32 } + { PricePerMeter S32 } + { RedirectGridX S32 } + { RedirectGridY S32 } + { UseEstateSun BOOL } + { SunHour F32 } // last value set by estate or region controls JC + } + { + RegionInfo2 Single + { ProductSKU Variable 1 } // string + { ProductName Variable 1 } // string + { MaxAgents32 U32 } // Identical to RegionInfo.MaxAgents but allows greater range + { HardMaxAgents U32 } + { HardMaxObjects U32 } + } + { + RegionInfo3 Variable + { RegionFlagsExtended U64 } + } +} + +// GodUpdateRegionInfo +// Sent from viewer to sim after a god has changed some +// of the parameters in the god tools floater +// viewer -> sim +// reliable +{ + GodUpdateRegionInfo Low 143 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + RegionInfo Single + { SimName Variable 1 } // string + { EstateID U32 } + { ParentEstateID U32 } + { RegionFlags U32 } + { BillableFactor F32 } + { PricePerMeter S32 } + { RedirectGridX S32 } + { RedirectGridY S32 } + } + { + RegionInfo2 Variable + { RegionFlagsExtended U64 } + } +} + +//NearestLandingRegionRequest +//sim->dataserver +//Sent from the region to the data server +//to request the most up to date region for the requesting +//region to redirect teleports to +{ + NearestLandingRegionRequest Low 144 Trusted Unencoded + { + RequestingRegionData Single + { RegionHandle U64 } + } +} + +//NearestLandingPointReply +//dataserver->sim +//Sent from the data server to a region in reply +//to the redirectregion request stating which region +//the requesting region should redirect teleports to if necessary +{ + NearestLandingRegionReply Low 145 Trusted Unencoded + { + LandingRegionData Single + { RegionHandle U64 } + } +} + +//NearestLandingPointUpdated +//sim->dataserver +//Sent from a region to the data server +//to have the dataserver note/clear in the db +//that the region has updated it's nearest landing point +{ + NearestLandingRegionUpdated Low 146 Trusted Unencoded + { + RegionData Single + { RegionHandle U64 } + } +} + + +//TeleportLandingStatusChanged +//sim->dataserver +//Sent from the region to the data server +//to note that the region's teleportation landing status has changed +{ + TeleportLandingStatusChanged Low 147 Trusted Unencoded + { + RegionData Single + { RegionHandle U64 } + } +} + +// RegionHandshake +// Sent by region to viewer after it has received UseCircuitCode +// from that viewer. +// sim -> viewer +// reliable +{ + RegionHandshake Low 148 Trusted Zerocoded + { + RegionInfo Single + { RegionFlags U32 } + { SimAccess U8 } + { SimName Variable 1 } // string + { SimOwner LLUUID } + { IsEstateManager BOOL } // this agent, for this sim + { WaterHeight F32 } + { BillableFactor F32 } + { CacheID LLUUID } + { TerrainBase0 LLUUID } + { TerrainBase1 LLUUID } + { TerrainBase2 LLUUID } + { TerrainBase3 LLUUID } + { TerrainDetail0 LLUUID } + { TerrainDetail1 LLUUID } + { TerrainDetail2 LLUUID } + { TerrainDetail3 LLUUID } + { TerrainStartHeight00 F32 } + { TerrainStartHeight01 F32 } + { TerrainStartHeight10 F32 } + { TerrainStartHeight11 F32 } + { TerrainHeightRange00 F32 } + { TerrainHeightRange01 F32 } + { TerrainHeightRange10 F32 } + { TerrainHeightRange11 F32 } + } + { + RegionInfo2 Single + { RegionID LLUUID } + } + { + RegionInfo3 Single + { CPUClassID S32 } + { CPURatio S32 } + { ColoName Variable 1 } // string + { ProductSKU Variable 1 } // string + { ProductName Variable 1 } // string + } + { + RegionInfo4 Variable + { RegionFlagsExtended U64 } + { RegionProtocols U64 } + } +} + +// RegionHandshakeReply +// viewer -> sim +// reliable +// Sent after viewer has initialized the (pre-existing) +// LLViewerRegion with the name, access level, etc. and +// has loaded the cache for the region. +// After the simulator receives this, it will start sending +// data about objects. +{ + RegionHandshakeReply Low 149 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + RegionInfo Single + { Flags U32 } + } +} + +// The CoarseLocationUpdate message is sent to notify the viewer of +// the location of mappable objects in the region. 1 meter resolution is +// sufficient for this. The index block is used to show where you are, +// and where someone you are tracking is located. They are -1 if not +// applicable. +{ + CoarseLocationUpdate Medium 6 Trusted Unencoded + { + Location Variable + { X U8 } + { Y U8 } + { Z U8 } // Z in meters / 4 + } + { + Index Single + { You S16 } + { Prey S16 } + } + { + AgentData Variable + { AgentID LLUUID } + } +} + +// ImageData - sent to viewer to transmit information about an image +{ + ImageData High 9 Trusted Unencoded + { + ImageID Single + { ID LLUUID } + { Codec U8 } + { Size U32 } + { Packets U16 } + } + { + ImageData Single + { Data Variable 2 } + } +} + +// ImagePacket - follow on image data for images having > 1 packet of data +{ + ImagePacket High 10 Trusted Unencoded + { + ImageID Single + { ID LLUUID } + { Packet U16 } + } + { + ImageData Single + { Data Variable 2 } + } +} + +// LayerData - Sent to viewer - encodes layer data + +{ + LayerData High 11 Trusted Unencoded + { + LayerID Single + { Type U8 } + + } + { + LayerData Single + { Data Variable 2 } + } +} + +// ObjectUpdate - Sent by objects from the simulator to the viewer +// +// If only one ImageID is sent for an object type that has more than +// one face, the same image is repeated on each subsequent face. +// +// NameValue is a list of name-value strings, separated by \n characters, +// terminated by \0 +// +// Data is type-specific opaque data for this object +{ + ObjectUpdate High 12 Trusted Zerocoded + { + RegionData Single + { RegionHandle U64 } + { TimeDilation U16 } + } + { + ObjectData Variable + { ID U32 } + { State U8 } + + { FullID LLUUID } + { CRC U32 } // TEMPORARY HACK FOR JAMES + { PCode U8 } + { Material U8 } + { ClickAction U8 } + { Scale LLVector3 } + { ObjectData Variable 1 } + + { ParentID U32 } + { UpdateFlags U32 } // U32, see object_flags.h + + { PathCurve U8 } + { ProfileCurve U8 } + { PathBegin U16 } // 0 to 1, quanta = 0.01 + { PathEnd U16 } // 0 to 1, quanta = 0.01 + { PathScaleX U8 } // 0 to 1, quanta = 0.01 + { PathScaleY U8 } // 0 to 1, quanta = 0.01 + { PathShearX U8 } // -.5 to .5, quanta = 0.01 + { PathShearY U8 } // -.5 to .5, quanta = 0.01 + { PathTwist S8 } // -1 to 1, quanta = 0.01 + { PathTwistBegin S8 } // -1 to 1, quanta = 0.01 + { PathRadiusOffset S8 } // -1 to 1, quanta = 0.01 + { PathTaperX S8 } // -1 to 1, quanta = 0.01 + { PathTaperY S8 } // -1 to 1, quanta = 0.01 + { PathRevolutions U8 } // 0 to 3, quanta = 0.015 + { PathSkew S8 } // -1 to 1, quanta = 0.01 + { ProfileBegin U16 } // 0 to 1, quanta = 0.01 + { ProfileEnd U16 } // 0 to 1, quanta = 0.01 + { ProfileHollow U16 } // 0 to 1, quanta = 0.01 + + { TextureEntry Variable 2 } + { TextureAnim Variable 1 } + + { NameValue Variable 2 } + { Data Variable 2 } + { Text Variable 1 } // llSetText() hovering text + { TextColor Fixed 4 } // actually, a LLColor4U + { MediaURL Variable 1 } // URL for web page, movie, etc. + + // Info for particle systems + { PSBlock Variable 1 } + + // Extra parameters + { ExtraParams Variable 1 } + + // info for looped attached sounds + // because these are almost always all zero + // the hit after zero-coding is only 2 bytes + // not the 42 you see here + { Sound LLUUID } + { OwnerID LLUUID } // HACK object's owner id, only set if non-null sound, for muting + { Gain F32 } + { Flags U8 } + { Radius F32 } // cutoff radius + + // joint info -- is sent in the update of each joint-child-root + { JointType U8 } + { JointPivot LLVector3 } + { JointAxisOrAnchor LLVector3 } + } +} + + +// ObjectUpdateCompressed +{ + ObjectUpdateCompressed High 13 Trusted Unencoded + { + RegionData Single + { RegionHandle U64 } + { TimeDilation U16 } + } + { + ObjectData Variable + { UpdateFlags U32 } + { Data Variable 2 } + } +} + +// ObjectUpdateCached +// reliable +{ + ObjectUpdateCached High 14 Trusted Unencoded + { + RegionData Single + { RegionHandle U64 } + { TimeDilation U16 } + } + { + ObjectData Variable + { ID U32 } + { CRC U32 } + { UpdateFlags U32 } + } +} + +// packed terse object update format +{ + ImprovedTerseObjectUpdate High 15 Trusted Unencoded + { + RegionData Single + { RegionHandle U64 } + { TimeDilation U16 } + } + { + ObjectData Variable + { Data Variable 1 } + { TextureEntry Variable 2 } + } +} + +// KillObject - Sent by objects to the viewer to tell them to kill themselves + +{ + KillObject High 16 Trusted Unencoded + { + ObjectData Variable + { ID U32 } + } +} + + +// CrossedRegion - new way to tell a viewer it has gone across a region +// boundary +{ + CrossedRegion Medium 7 Trusted Unencoded UDPBlackListed + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + RegionData Single + { SimIP IPADDR } + { SimPort IPPORT } + { RegionHandle U64 } + { SeedCapability Variable 2 } // URL + } + { + Info Single + { Position LLVector3 } + { LookAt LLVector3 } + } +} + +// SimulatorViewerTimeMessage - Allows viewer to resynch to world time + +{ + SimulatorViewerTimeMessage Low 150 Trusted Unencoded + { + TimeInfo Single + { UsecSinceStart U64 } + { SecPerDay U32 } + { SecPerYear U32 } + { SunDirection LLVector3 } + { SunPhase F32 } + { SunAngVelocity LLVector3 } + } +} + +// EnableSimulator - Preps a viewer to receive data from a simulator + +{ + EnableSimulator Low 151 Trusted Unencoded UDPBlackListed + { + SimulatorInfo Single + { Handle U64 } + { IP IPADDR } + { Port IPPORT } + } +} + +// DisableThisSimulator - Tells a viewer not to expect data from this simulator anymore + +{ + DisableSimulator Low 152 Trusted Unencoded +} + +// ConfirmEnableSimulator - A confirmation message sent from simulator to neighbors that the simulator +// has successfully been enabled by the viewer + +{ + ConfirmEnableSimulator Medium 8 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + +//----------------------------------------------------------------------------- +// New Transfer system +//----------------------------------------------------------------------------- + +// Request a new transfer (target->source) +{ + TransferRequest Low 153 NotTrusted Zerocoded + { + TransferInfo Single + { TransferID LLUUID } + { ChannelType S32 } + { SourceType S32 } + { Priority F32 } + { Params Variable 2 } + } +} + +// Return info about a transfer/initiate transfer (source->target) +// Possibly should have a Params field like above +{ + TransferInfo Low 154 NotTrusted Zerocoded + { + TransferInfo Single + { TransferID LLUUID } + { ChannelType S32 } + { TargetType S32 } + { Status S32 } + { Size S32 } + { Params Variable 2 } + } +} + +{ + TransferPacket High 17 NotTrusted Unencoded + { + TransferData Single + { TransferID LLUUID } + { ChannelType S32 } + { Packet S32 } + { Status S32 } + { Data Variable 2 } + } +} + +// Abort a transfer in progress (either from target->source or source->target) +{ + TransferAbort Low 155 NotTrusted Zerocoded + { + TransferInfo Single + { TransferID LLUUID } + { ChannelType S32 } + } +} + + +//----------------------------------------------------------------------------- +// General file transfer +//----------------------------------------------------------------------------- + +// RequestXfer - request an arbitrary xfer +{ + RequestXfer Low 156 NotTrusted Zerocoded + { + XferID Single + { ID U64 } + { Filename Variable 1 } + { FilePath U8 } // ELLPath + { DeleteOnCompletion BOOL } // BOOL + { UseBigPackets BOOL } // BOOL + { VFileID LLUUID } + { VFileType S16 } + } +} + +// SendXferPacket - send an additional packet of an arbitrary xfer from sim -> viewer +{ + SendXferPacket High 18 NotTrusted Unencoded + { + XferID Single + { ID U64 } + { Packet U32 } + } + { + DataPacket Single + { Data Variable 2 } + } +} + +// ConfirmXferPacket +{ + ConfirmXferPacket High 19 NotTrusted Unencoded + { + XferID Single + { ID U64 } + { Packet U32 } + } +} + +// AbortXfer +{ + AbortXfer Low 157 NotTrusted Unencoded + { + XferID Single + { ID U64 } + { Result S32 } + } +} + +//----------------------------------------------------------------------------- +// Avatar information +//----------------------------------------------------------------------------- + + +// AvatarAnimation - Update animation state +// simulator --> viewer +{ + AvatarAnimation High 20 Trusted Unencoded + { + Sender Single + { ID LLUUID } + } + { + AnimationList Variable + { AnimID LLUUID } + { AnimSequenceID S32 } + } + { + AnimationSourceList Variable + { ObjectID LLUUID } + } + { + PhysicalAvatarEventList Variable + { TypeData Variable 1 } + } + +} +// AvatarAppearance - Update visual params +{ + AvatarAppearance Low 158 Trusted Zerocoded + { + Sender Single + { ID LLUUID } + { IsTrial BOOL } + } + { + ObjectData Single + { TextureEntry Variable 2 } + } + { + VisualParam Variable + { ParamValue U8 } + } + { + AppearanceData Variable + { AppearanceVersion U8 } + { CofVersion S32 } + { Flags U32 } + } + { + AppearanceHover Variable + { HoverHeight LLVector3 } + } +} + +// AvatarSitResponse - response to a request to sit on an object +{ + AvatarSitResponse High 21 Trusted Zerocoded + { + SitObject Single + { ID LLUUID } + } + { + SitTransform Single + { AutoPilot BOOL } + { SitPosition LLVector3 } + { SitRotation LLQuaternion } + { CameraEyeOffset LLVector3 } + { CameraAtOffset LLVector3 } + { ForceMouselook BOOL } + } +} + +// SetFollowCamProperties +{ + SetFollowCamProperties Low 159 Trusted Unencoded + { + ObjectData Single + { ObjectID LLUUID } + } + { + CameraProperty Variable + { Type S32 } + { Value F32 } + } +} + +// ClearFollowCamProperties +{ + ClearFollowCamProperties Low 160 Trusted Unencoded + { + ObjectData Single + { ObjectID LLUUID } + } +} + +// CameraConstraint - new camera distance limit (based on collision with objects) +{ + CameraConstraint High 22 Trusted Zerocoded + { + CameraCollidePlane Single + { Plane LLVector4 } + } +} + +// ObjectProperties +// Extended information such as creator, permissions, etc. +// Medium because potentially driven by mouse hover events. +{ + ObjectProperties Medium 9 Trusted Zerocoded + { + ObjectData Variable + { ObjectID LLUUID } + { CreatorID LLUUID } + { OwnerID LLUUID } + { GroupID LLUUID } + { CreationDate U64 } + { BaseMask U32 } + { OwnerMask U32 } + { GroupMask U32 } + { EveryoneMask U32 } + { NextOwnerMask U32 } + { OwnershipCost S32 } +// { TaxRate F32 } // F32 + { SaleType U8 } // U8 -> EForSale + { SalePrice S32 } + { AggregatePerms U8 } + { AggregatePermTextures U8 } + { AggregatePermTexturesOwner U8 } + { Category U32 } // LLCategory + { InventorySerial S16 } // S16 + { ItemID LLUUID } + { FolderID LLUUID } + { FromTaskID LLUUID } + { LastOwnerID LLUUID } + { Name Variable 1 } + { Description Variable 1 } + { TouchName Variable 1 } + { SitName Variable 1 } + { TextureID Variable 1 } + } +} + +// ObjectPropertiesFamily +// Medium because potentially driven by mouse hover events. +{ + ObjectPropertiesFamily Medium 10 Trusted Zerocoded + { + ObjectData Single + { RequestFlags U32 } + { ObjectID LLUUID } + { OwnerID LLUUID } + { GroupID LLUUID } + { BaseMask U32 } + { OwnerMask U32 } + { GroupMask U32 } + { EveryoneMask U32 } + { NextOwnerMask U32 } + { OwnershipCost S32 } + { SaleType U8 } // U8 -> EForSale + { SalePrice S32 } + { Category U32 } // LLCategory + { LastOwnerID LLUUID } + { Name Variable 1 } + { Description Variable 1 } + } +} + +// RequestPayPrice +// viewer -> sim +{ + RequestPayPrice Low 161 NotTrusted Unencoded + { + ObjectData Single + { ObjectID LLUUID } + } +} + +// PayPriceReply +// sim -> viewer +{ + PayPriceReply Low 162 Trusted Unencoded + { + ObjectData Single + { ObjectID LLUUID } + { DefaultPayPrice S32 } + } + { + ButtonData Variable + + { PayButton S32 } + } +} + +// KickUser +// *FIXME* +// Kick off a logged-in user, such as when two people log in with the +// same account name. +// ROUTED dataserver -> userserver -> spaceserver -> simulator -> viewer +// reliable, but that may not matter if a system component is quitting +{ + KickUser Low 163 Trusted Unencoded + { + TargetBlock Single + { TargetIP IPADDR } // U32 encoded IP + { TargetPort IPPORT } + } + { + UserInfo Single + { AgentID LLUUID } + { SessionID LLUUID } + { Reason Variable 2 } // string + } +} + +// ack sent from the simulator up to the main database so that login +// can continue. +{ + KickUserAck Low 164 Trusted Unencoded + { + UserInfo Single + { SessionID LLUUID } + { Flags U32 } + } +} + +// GodKickUser +// When a god wants someone kicked +// viewer -> sim +// reliable +{ + GodKickUser Low 165 NotTrusted Unencoded + { + UserInfo Single + { GodID LLUUID } + { GodSessionID LLUUID } + { AgentID LLUUID } + { KickFlags U32 } + { Reason Variable 2 } // string + } +} + +// SystemKickUser +// user->space, reliable +{ + SystemKickUser Low 166 Trusted Unencoded + { + AgentInfo Variable + { AgentID LLUUID } + } +} + +// EjectUser +// viewer -> sim +// reliable +{ + EjectUser Low 167 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { TargetID LLUUID } + { Flags U32 } + } +} + +// FreezeUser +// Freeze someone who is on my land. +// viewer -> sim +// reliable +{ + FreezeUser Low 168 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { TargetID LLUUID } + { Flags U32 } + } +} + + +// AvatarPropertiesRequest +// viewer -> simulator +// reliable +{ + AvatarPropertiesRequest Low 169 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { AvatarID LLUUID } + } +} + +// AvatarPropertiesRequestBackend +// simulator -> dataserver +// reliable +{ + AvatarPropertiesRequestBackend Low 170 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { AvatarID LLUUID } + { GodLevel U8 } + { WebProfilesDisabled BOOL } + } +} +// AvatarPropertiesReply +// dataserver -> simulator +// simulator -> viewer +// reliable +{ + AvatarPropertiesReply Low 171 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } // your id + { AvatarID LLUUID } // avatar you're asking about + } + { + PropertiesData Single + { ImageID LLUUID } + { FLImageID LLUUID } + { PartnerID LLUUID } + { AboutText Variable 2 } // string, up to 512 + { FLAboutText Variable 1 } // string + { BornOn Variable 1 } // string + { ProfileURL Variable 1 } // string + { CharterMember Variable 1 } // special - usually U8 + { Flags U32 } + } +} + +{ + AvatarInterestsReply Low 172 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } // your id + { AvatarID LLUUID } // avatar you're asking about + } + { + PropertiesData Single + { WantToMask U32 } + { WantToText Variable 1 } // string + { SkillsMask U32 } + { SkillsText Variable 1 } // string + { LanguagesText Variable 1 } // string + } +} + +// AvatarGroupsReply +// dataserver -> simulator +// simulator -> viewer +// reliable +{ + AvatarGroupsReply Low 173 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } // your id + { AvatarID LLUUID } // avatar you're asking about + } + { + GroupData Variable + { GroupPowers U64 } + { AcceptNotices BOOL } + { GroupTitle Variable 1 } + { GroupID LLUUID } + { GroupName Variable 1 } + { GroupInsigniaID LLUUID } + } + { + NewGroupData Single + { ListInProfile BOOL } // whether group displays in profile + } +} + + +// AvatarPropertiesUpdate +// viewer -> simulator +// reliable +{ + AvatarPropertiesUpdate Low 174 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + PropertiesData Single + { ImageID LLUUID } + { FLImageID LLUUID } + { AboutText Variable 2 } // string, up to 512 + { FLAboutText Variable 1 } + { AllowPublish BOOL } // whether profile is externally visible or not + { MaturePublish BOOL } // profile is "mature" + { ProfileURL Variable 1 } // string + } +} + +// AvatarInterestsUpdate +// viewer -> simulator +// reliable +{ + AvatarInterestsUpdate Low 175 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + PropertiesData Single + { WantToMask U32 } + { WantToText Variable 1 } // string + { SkillsMask U32 } + { SkillsText Variable 1 } // string + { LanguagesText Variable 1 } // string + } +} + + + +// AvatarNotesReply +// dataserver -> simulator +// simulator -> viewer +// reliable +{ + AvatarNotesReply Low 176 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + Data Single + { TargetID LLUUID } + { Notes Variable 2 } // string + } +} + + +// AvatarNotesUpdate +// viewer -> simulator -> dataserver +// reliable +{ + AvatarNotesUpdate Low 177 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { TargetID LLUUID } + { Notes Variable 2 } // string + } +} + + +// AvatarPicksReply +// dataserver -> simulator -> viewer +// Send the header information for this avatar's picks +// This fills in the tabs of the Picks panel. +// reliable +{ + AvatarPicksReply Low 178 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { TargetID LLUUID } + } + { + Data Variable + { PickID LLUUID } + { PickName Variable 1 } // string + } +} + + +// EventInfoRequest +// viewer -> simulator +// simulator -> dataserver +// reliable +{ + EventInfoRequest Low 179 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + EventData Single + { EventID U32 } + } +} + + +// EventInfoReply +// dataserver -> simulator +// simulator -> viewer +// reliable +{ + EventInfoReply Low 180 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + EventData Single + { EventID U32 } + { Creator Variable 1 } + { Name Variable 1 } + { Category Variable 1 } + { Desc Variable 2 } + { Date Variable 1 } + { DateUTC U32 } + { Duration U32 } + { Cover U32 } + { Amount U32 } + { SimName Variable 1 } + { GlobalPos LLVector3d } + { EventFlags U32 } + } +} + + +// EventNotificationAddRequest +// viewer -> simulator +// simulator -> dataserver +// reliable +{ + EventNotificationAddRequest Low 181 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + EventData Single + { EventID U32 } + } +} + + +// EventNotificationRemoveRequest +// viewer -> simulator +// simulator -> dataserver +// reliable +{ + EventNotificationRemoveRequest Low 182 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + EventData Single + { EventID U32 } + } +} + +// EventGodDelete +// viewer -> simulator +// simulator -> dataserver +// QueryData is used to resend a search result after the deletion +// reliable +{ + EventGodDelete Low 183 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + EventData Single + { EventID U32 } + } + { + QueryData Single + { QueryID LLUUID } + { QueryText Variable 1 } + { QueryFlags U32 } + { QueryStart S32 } // prev/next page support + } +} + + +// PickInfoReply +// dataserver -> simulator +// simulator -> viewer +// reliable +{ + PickInfoReply Low 184 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + Data Single + { PickID LLUUID } + { CreatorID LLUUID } + { TopPick BOOL } + { ParcelID LLUUID } + { Name Variable 1 } + { Desc Variable 2 } + { SnapshotID LLUUID } + { User Variable 1 } + { OriginalName Variable 1 } + { SimName Variable 1 } + { PosGlobal LLVector3d } + { SortOrder S32 } + { Enabled BOOL } + } +} + + +// PickInfoUpdate +// Update a pick. ParcelID is set on the simulator as the message +// passes through. +// If TopPick is TRUE, the simulator will only pass on the message +// if the agent_id is a god. +// viewer -> simulator -> dataserver +// reliable +{ + PickInfoUpdate Low 185 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { PickID LLUUID } + { CreatorID LLUUID } + { TopPick BOOL } + { ParcelID LLUUID } + { Name Variable 1 } + { Desc Variable 2 } + { SnapshotID LLUUID } + { PosGlobal LLVector3d } + { SortOrder S32 } + { Enabled BOOL } + } +} + + +// PickDelete +// Delete a non-top pick from the database. +// viewer -> simulator -> dataserver +// reliable +{ + PickDelete Low 186 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { PickID LLUUID } + } +} + +// PickGodDelete +// Delete a pick from the database. +// QueryID is needed so database can send a repeat list of +// picks. +// viewer -> simulator -> dataserver +// reliable +{ + PickGodDelete Low 187 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { PickID LLUUID } + { QueryID LLUUID } + } +} + + +// ScriptQuestion +// reliable +{ + ScriptQuestion Low 188 Trusted Unencoded + { + Data Single + { TaskID LLUUID } + { ItemID LLUUID } + { ObjectName Variable 1 } + { ObjectOwner Variable 1 } + { Questions S32 } + } + { + Experience Single + { ExperienceID LLUUID } + } +} + +// ScriptControlChange +// reliable +{ + ScriptControlChange Low 189 Trusted Unencoded + { + Data Variable + { TakeControls BOOL } + { Controls U32 } + { PassToAgent BOOL } + } +} + +// ScriptDialog +// sim -> viewer +// reliable +{ + ScriptDialog Low 190 Trusted Zerocoded + { + Data Single + { ObjectID LLUUID } + { FirstName Variable 1 } + { LastName Variable 1 } + { ObjectName Variable 1 } + { Message Variable 2 } + { ChatChannel S32 } + { ImageID LLUUID } + } + { + Buttons Variable + { ButtonLabel Variable 1 } + } + { + OwnerData Variable + { OwnerID LLUUID } + } +} + + +// ScriptDialogReply +// viewer -> sim +// reliable +{ + ScriptDialogReply Low 191 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { ObjectID LLUUID } + { ChatChannel S32 } + { ButtonIndex S32 } + { ButtonLabel Variable 1 } + } +} + + +// ForceScriptControlRelease +// reliable +{ + ForceScriptControlRelease Low 192 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + +// RevokePermissions +// reliable +{ + RevokePermissions Low 193 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { ObjectID LLUUID } + { ObjectPermissions U32 } + } +} + +// LoadURL +// sim -> viewer +// Ask the user if they would like to load a URL +// reliable +{ + LoadURL Low 194 Trusted Unencoded + { + Data Single + { ObjectName Variable 1 } + { ObjectID LLUUID } + { OwnerID LLUUID } + { OwnerIsGroup BOOL } + { Message Variable 1 } + { URL Variable 1 } + } +} + +// ScriptTeleportRequest +// reliable +{ + ScriptTeleportRequest Low 195 Trusted Unencoded + { + Data Single + { ObjectName Variable 1 } + { SimName Variable 1 } + { SimPosition LLVector3 } + { LookAt LLVector3 } + } +} + + + + +// *************************************************************************** +// Land Parcel system +// *************************************************************************** + +// ParcelOverlay +// We send N packets per region to the viewer. +// N = 4, currently. At 256x256 meter regions, 4x4 meter parcel grid, +// there are 4096 parcel units per region. At N = 4, that's 1024 units +// per packet, allowing 8 bit bytes. +// sim -> viewer +// reliable +{ + ParcelOverlay Low 196 Trusted Zerocoded + { + ParcelData Single + { SequenceID S32 } // 0...3, which piece of region + { Data Variable 2 } // packed bit-field, (grids*grids)/N + } +} + + +// ParcelPropertiesRequest +// SequenceID should be -1 or -2, and is echoed back in the +// parcel properties message. +// viewer -> sim +// reliable +{ + ParcelPropertiesRequest Medium 11 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ParcelData Single + { SequenceID S32 } + { West F32 } + { South F32 } + { East F32 } + { North F32 } + { SnapSelection BOOL } + } +} + +// ParcelPropertiesRequestByID +// viewer -> sim +// reliable +{ + ParcelPropertiesRequestByID Low 197 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ParcelData Single + { SequenceID S32 } + { LocalID S32 } + } +} + +// ParcelProperties +// sequence id = -1 for parcels that you explicitly selected +// For agents, sequence id increments every time the agent transits into +// a new parcel. It is used to detect out-of-order agent parcel info updates. +// Bitmap = packed bit field, one bit per parcel grid, on if that grid is +// part of the selected parcel. +// sim -> viewer +// WARNING: This packet is potentially large. With max length name, +// description, music URL and media URL, it is 1526 + sizeof ( LLUUID ) bytes. +{ + ParcelProperties High 23 Trusted Zerocoded UDPDeprecated + { + ParcelData Single + { RequestResult S32 } + { SequenceID S32 } + { SnapSelection BOOL } + { SelfCount S32 } + { OtherCount S32 } + { PublicCount S32 } + { LocalID S32 } + { OwnerID LLUUID } + { IsGroupOwned BOOL } + { AuctionID U32 } + { ClaimDate S32 } // time_t + { ClaimPrice S32 } + { RentPrice S32 } + { AABBMin LLVector3 } + { AABBMax LLVector3 } + { Bitmap Variable 2 } // packed bit-field + { Area S32 } + { Status U8 } // owned vs. pending + { SimWideMaxPrims S32 } + { SimWideTotalPrims S32 } + { MaxPrims S32 } + { TotalPrims S32 } + { OwnerPrims S32 } + { GroupPrims S32 } + { OtherPrims S32 } + { SelectedPrims S32 } + { ParcelPrimBonus F32 } + + { OtherCleanTime S32 } + + { ParcelFlags U32 } + { SalePrice S32 } + { Name Variable 1 } // string + { Desc Variable 1 } // string + { MusicURL Variable 1 } // string + { MediaURL Variable 1 } // string + { MediaID LLUUID } + { MediaAutoScale U8 } + { GroupID LLUUID } + { PassPrice S32 } + { PassHours F32 } + { Category U8 } + { AuthBuyerID LLUUID } + { SnapshotID LLUUID } + { UserLocation LLVector3 } + { UserLookAt LLVector3 } + { LandingType U8 } + { RegionPushOverride BOOL } + { RegionDenyAnonymous BOOL } + { RegionDenyIdentified BOOL } + { RegionDenyTransacted BOOL } + // in llsd message, SeeAVs, GroupAVSounds and AnyAVSounds BOOLs are also sent + } + { + AgeVerificationBlock Single + { RegionDenyAgeUnverified BOOL } + } + { + RegionAllowAccessBlock Single + { RegionAllowAccessOverride BOOL } + } +} + +// ParcelPropertiesUpdate +// viewer -> sim +// reliable +{ + ParcelPropertiesUpdate Low 198 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ParcelData Single + { LocalID S32 } + { Flags U32 } + + { ParcelFlags U32 } + { SalePrice S32 } + { Name Variable 1 } // string + { Desc Variable 1 } // string + { MusicURL Variable 1 } // string + { MediaURL Variable 1 } // string + { MediaID LLUUID } + { MediaAutoScale U8 } + { GroupID LLUUID } + { PassPrice S32 } + { PassHours F32 } + { Category U8 } + { AuthBuyerID LLUUID } + { SnapshotID LLUUID } + { UserLocation LLVector3 } + { UserLookAt LLVector3 } + { LandingType U8 } + } +} + +// ParcelReturnObjects +// viewer -> sim +// reliable +{ + ParcelReturnObjects Low 199 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ParcelData Single + { LocalID S32 } + { ReturnType U32 } + } + { + TaskIDs Variable + { TaskID LLUUID } + } + { + OwnerIDs Variable + { OwnerID LLUUID } + } +} + +// ParcelSetOtherCleanTime +// viewer -> sim +// reliable +{ + ParcelSetOtherCleanTime Low 200 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ParcelData Single + { LocalID S32 } + { OtherCleanTime S32 } + } +} + + +// Disable makes objects nonphysical and turns off their scripts. +// ParcelDisableObjects +// viewer -> sim +// reliable +{ + ParcelDisableObjects Low 201 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ParcelData Single + { LocalID S32 } + { ReturnType U32 } + } + { + TaskIDs Variable + { TaskID LLUUID } + } + { + OwnerIDs Variable + { OwnerID LLUUID } + } +} + + +// ParcelSelectObjects +// viewer -> sim +// reliable +{ + ParcelSelectObjects Low 202 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ParcelData Single + { LocalID S32 } + { ReturnType U32 } + } + { + ReturnIDs Variable + { ReturnID LLUUID } + } +} + + +// EstateCovenantRequest +// viewer -> sim +// reliable +{ + EstateCovenantRequest Low 203 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + +// EstateCovenantReply +// sim -> viewer +// reliable +{ + EstateCovenantReply Low 204 Trusted Unencoded + { + Data Single + { CovenantID LLUUID } + { CovenantTimestamp U32 } + { EstateName Variable 1 } // string + { EstateOwnerID LLUUID } + } +} + + +// ForceObjectSelect +// sim -> viewer +// reliable +{ + ForceObjectSelect Low 205 Trusted Unencoded + { + Header Single + { ResetList BOOL } + } + { + Data Variable + { LocalID U32 } + } +} + + +// ParcelBuyPass - purchase a temporary access pass +// viewer -> sim +// reliable +{ + ParcelBuyPass Low 206 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ParcelData Single + { LocalID S32 } + } +} + +// ParcelDeedToGroup - deed a patch of land to a group +// viewer -> sim +// reliable +{ + ParcelDeedToGroup Low 207 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { GroupID LLUUID } + { LocalID S32 } // parcel id + } +} + +// reserved for when island owners force re-claim parcel +{ + ParcelReclaim Low 208 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { LocalID S32 } // parcel id + } +} + +// ParcelClaim - change the owner of a patch of land +// viewer -> sim +// reliable +{ + ParcelClaim Low 209 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { GroupID LLUUID } + { IsGroupOwned BOOL } + { Final BOOL } // true if buyer is in tier + } + { + ParcelData Variable + { West F32 } + { South F32 } + { East F32 } + { North F32 } + } +} + +// ParcelJoin - Take all parcels which are owned by agent and inside +// rectangle, and make them 1 parcel if they all are leased. +// viewer -> sim +// reliable +{ + ParcelJoin Low 210 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ParcelData Single + { West F32 } + { South F32 } + { East F32 } + { North F32 } + } +} + +// ParcelDivide +// If the selection is a subsection of exactly one parcel, +// chop out that section and make a new parcel of it. +// viewer -> sim +// reliable +{ + ParcelDivide Low 211 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ParcelData Single + { West F32 } + { South F32 } + { East F32 } + { North F32 } + } +} + +// ParcelRelease +// Release a parcel to public +// viewer -> sim +// reliable +{ + ParcelRelease Low 212 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { LocalID S32 } // parcel ID + } +} + +// ParcelBuy - change the owner of a patch of land. +// viewer -> sim +// reliable +{ + ParcelBuy Low 213 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { GroupID LLUUID } + { IsGroupOwned BOOL } + { RemoveContribution BOOL } + { LocalID S32 } + { Final BOOL } // true if buyer is in tier + } + { + ParcelData Single + { Price S32 } + { Area S32 } + } +} + + +// ParcelGodForceOwner Unencoded +{ + ParcelGodForceOwner Low 214 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { OwnerID LLUUID } + { LocalID S32 } // parcel ID + } +} + + +// viewer -> sim +// ParcelAccessListRequest +{ + ParcelAccessListRequest Low 215 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { SequenceID S32 } + { Flags U32 } + { LocalID S32 } + } +} + + +// sim -> viewer +// ParcelAccessListReply +{ + ParcelAccessListReply Low 216 Trusted Zerocoded + { + Data Single + { AgentID LLUUID } + { SequenceID S32 } + { Flags U32 } + { LocalID S32 } + } + { + List Variable + { ID LLUUID } + { Time S32 } // time_t + { Flags U32 } + } +} + +// viewer -> sim +// ParcelAccessListUpdate +{ + ParcelAccessListUpdate Low 217 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { Flags U32 } + { LocalID S32 } + { TransactionID LLUUID } + { SequenceID S32 } + { Sections S32 } + } + { + List Variable + { ID LLUUID } + { Time S32 } // time_t + { Flags U32 } + } +} + + +// viewer -> sim -> dataserver +// reliable +{ + ParcelDwellRequest Low 218 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { LocalID S32 } + { ParcelID LLUUID } // filled in on sim + } +} + + +// dataserver -> sim -> viewer +// reliable +{ + ParcelDwellReply Low 219 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + Data Single + { LocalID S32 } + { ParcelID LLUUID } + { Dwell F32 } + } +} + +// sim -> dataserver +// This message is used to check if a user can buy a parcel. If +// successful, the transaction is approved through a money balance reply +// with the same transaction id. +{ + RequestParcelTransfer Low 220 Trusted Zerocoded + { + Data Single + { TransactionID LLUUID } + { TransactionTime U32 } // utc seconds since epoch + { SourceID LLUUID } + { DestID LLUUID } + { OwnerID LLUUID } + { Flags U8 } // see lltransactiontypes.h + { TransactionType S32 } // see lltransactiontypes.h + { Amount S32 } + { BillableArea S32 } + { ActualArea S32 } + { Final BOOL } // true if buyer should be in tier + } + { + RegionData Single // included so region name shows up in transaction logs + { RegionID LLUUID } + { GridX U32 } + { GridY U32 } + } +} + +// sim ->dataserver +// This message is used to send up complete parcel properties for +// persistance in the database. +// If you add something here, you should probably also change the +// simulator's database update query on startup. +{ + UpdateParcel Low 221 Trusted Zerocoded + { + ParcelData Single + { ParcelID LLUUID } + { RegionHandle U64 } + { OwnerID LLUUID } + { GroupOwned BOOL } + { Status U8 } + { Name Variable 1 } + { Description Variable 1 } + { MusicURL Variable 1 } + { RegionX F32 } + { RegionY F32 } + { ActualArea S32 } + { BillableArea S32 } + { ShowDir BOOL } + { IsForSale BOOL } + { Category U8 } + { SnapshotID LLUUID } + { UserLocation LLVector3 } + { SalePrice S32 } + { AuthorizedBuyerID LLUUID } + { AllowPublish BOOL } + { MaturePublish BOOL } + } +} + +// sim -> dataserver or space ->sim +// This message is used to tell the dataserver that a parcel has been +// removed. +{ + RemoveParcel Low 222 Trusted Unencoded + { + ParcelData Variable + { ParcelID LLUUID } + } +} + +// sim -> dataserver +// Merges some of the database information for parcels (dwell). +{ + MergeParcel Low 223 Trusted Unencoded + { + MasterParcelData Single + { MasterID LLUUID } + } + { + SlaveParcelData Variable + { SlaveID LLUUID } + } +} + +// sim -> dataserver +{ + LogParcelChanges Low 224 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + } + { + RegionData Single + { RegionHandle U64 } + } + { + ParcelData Variable + { ParcelID LLUUID } + { OwnerID LLUUID } + { IsOwnerGroup BOOL } + { ActualArea S32 } + { Action S8 } + { TransactionID LLUUID } + } +} + +// sim -> dataserver +{ + CheckParcelSales Low 225 Trusted Unencoded + { + RegionData Variable + { RegionHandle U64 } + } +} + +// dataserver -> simulator +// tell a particular simulator to finish parcel sale. +{ + ParcelSales Low 226 Trusted Unencoded + { + ParcelData Variable + { ParcelID LLUUID } + { BuyerID LLUUID } + } +} + +// viewer -> sim +// mark parcel and double secret agent content on parcel as owned by +// governor/maint and adjusts permissions approriately. Godlike request. +{ + ParcelGodMarkAsContent Low 227 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ParcelData Single + { LocalID S32 } + } +} + + +// viewer -> sim +// start an auction. viewer fills in the appropriate date, simulator +// validates and fills in the rest of the information to start an auction +// on a parcel. Processing currently requires that AgentID is a god. +{ + ViewerStartAuction Low 228 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ParcelData Single + { LocalID S32 } + { SnapshotID LLUUID } + } +} + +// sim -> dataserver +// Once all of the data has been gathered, +{ + StartAuction Low 229 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + ParcelData Single + { ParcelID LLUUID } + { SnapshotID LLUUID } + { Name Variable 1 } // string + } +} + +// dataserver -> sim +{ + ConfirmAuctionStart Low 230 Trusted Unencoded + { + AuctionData Single + { ParcelID LLUUID } + { AuctionID U32 } + } +} + +// sim -> dataserver +// Tell the dataserver that an auction has completed. +{ + CompleteAuction Low 231 Trusted Unencoded + { + ParcelData Variable + { ParcelID LLUUID } + } +} + +// Tell the dataserver that an auction has been canceled. +{ + CancelAuction Low 232 Trusted Unencoded + { + ParcelData Variable + { ParcelID LLUUID } + } +} + +// sim -> dataserver +{ + CheckParcelAuctions Low 233 Trusted Unencoded + { + RegionData Variable + { RegionHandle U64 } + } +} + +// dataserver -> sim +// tell a particular simulator to finish parcel sale. +{ + ParcelAuctions Low 234 Trusted Unencoded + { + ParcelData Variable + { ParcelID LLUUID } + { WinnerID LLUUID } + } +} + +// *************************************************************************** +// UUID to name lookup +// *************************************************************************** + +// UUIDNameRequest +// Translate a UUID into first and last names +{ + UUIDNameRequest Low 235 NotTrusted Unencoded + { + UUIDNameBlock Variable + { ID LLUUID } + } +} + +// UUIDNameReply +// Translate a UUID into first and last names +{ + UUIDNameReply Low 236 Trusted Unencoded + { + UUIDNameBlock Variable + { ID LLUUID } + { FirstName Variable 1 } + { LastName Variable 1 } + } +} + +// UUIDGroupNameRequest +// Translate a UUID into a group name +{ + UUIDGroupNameRequest Low 237 NotTrusted Unencoded + { + UUIDNameBlock Variable + { ID LLUUID } + } +} + +// UUIDGroupNameReply +// Translate a UUID into a group name +{ + UUIDGroupNameReply Low 238 Trusted Unencoded + { + UUIDNameBlock Variable + { ID LLUUID } + { GroupName Variable 1 } + } +} + +// end uuid to name lookup + +// *************************************************************************** +// Simulator to Simulator Messages +// *************************************************************************** + +// ChatPass +// Chat message transmission to neighbors +// Chat is region local to receiving simulator. +// Type is one of CHAT_TYPE_NORMAL, _WHISPER, _SHOUT +{ + ChatPass Low 239 Trusted Zerocoded + { + ChatData Single + { Channel S32 } + { Position LLVector3 } + { ID LLUUID } + { OwnerID LLUUID } + { Name Variable 1 } + { SourceType U8 } + { Type U8 } + { Radius F32 } + { SimAccess U8 } + { Message Variable 2 } + } +} + +// Edge data - compressed edge data + +{ + EdgeDataPacket High 24 Trusted Zerocoded + { + EdgeData Single + { LayerType U8 } + { Direction U8 } + { LayerData Variable 2 } + } +} + +// Sim status, condition of this sim +// sent reliably, when dirty +{ + SimStatus Medium 12 Trusted Unencoded + { + SimStatus Single + { CanAcceptAgents BOOL } + { CanAcceptTasks BOOL } + } + { + SimFlags Single + { Flags U64 } + } +} + +// Child Agent Update - agents send child agents to neighboring simulators. +// This will create a child camera if there isn't one at the target already +// Can't send viewer IP and port between simulators -- the port may get remapped +// if the viewer is behind a Network Address Translation (NAT) box. +// +// Note: some of the fields of this message really only need to be sent when an +// agent crosses a region boundary and changes from a child to a main agent +// (such as Head/BodyRotation, ControlFlags, Animations etc) +// simulator -> simulator +// reliable +{ + ChildAgentUpdate High 25 Trusted Zerocoded + { + AgentData Single + + { RegionHandle U64 } + { ViewerCircuitCode U32 } + { AgentID LLUUID } + { SessionID LLUUID } + + { AgentPos LLVector3 } + { AgentVel LLVector3 } + { Center LLVector3 } + { Size LLVector3 } + { AtAxis LLVector3 } + { LeftAxis LLVector3 } + { UpAxis LLVector3 } + { ChangedGrid BOOL } // BOOL + + { Far F32 } + { Aspect F32 } + { Throttles Variable 1 } + { LocomotionState U32 } + { HeadRotation LLQuaternion } + { BodyRotation LLQuaternion } + { ControlFlags U32 } + { EnergyLevel F32 } + { GodLevel U8 } // Changed from BOOL to U8, and renamed GodLevel (from Godlike) + { AlwaysRun BOOL } + { PreyAgent LLUUID } + { AgentAccess U8 } + { AgentTextures Variable 2 } + { ActiveGroupID LLUUID } + } + { + GroupData Variable + { GroupID LLUUID } + { GroupPowers U64 } + { AcceptNotices BOOL } + } + { + AnimationData Variable + { Animation LLUUID } + { ObjectID LLUUID } + } + { + GranterBlock Variable + { GranterID LLUUID } + } + { + NVPairData Variable + { NVPairs Variable 2 } + } + { + VisualParam Variable + { ParamValue U8 } + } + { + AgentAccess Variable + { AgentLegacyAccess U8 } + { AgentMaxAccess U8 } + } + { + AgentInfo Variable + { Flags U32 } + } + { + AgentInventoryHost Variable + { InventoryHost Variable 1 } //String + } +} + +// ChildAgentAlive +// sent to child agents just to keep them alive +{ + ChildAgentAlive High 26 Trusted Unencoded + { + AgentData Single + { RegionHandle U64 } + { ViewerCircuitCode U32 } + { AgentID LLUUID } + { SessionID LLUUID } + } +} + +// ChildAgentPositionUpdate +// sent to child agents just to keep them alive +{ + ChildAgentPositionUpdate High 27 Trusted Unencoded + { + AgentData Single + + { RegionHandle U64 } + { ViewerCircuitCode U32 } + { AgentID LLUUID } + { SessionID LLUUID } + + { AgentPos LLVector3 } + { AgentVel LLVector3 } + { Center LLVector3 } + { Size LLVector3 } + { AtAxis LLVector3 } + { LeftAxis LLVector3 } + { UpAxis LLVector3 } + { ChangedGrid BOOL } + } +} + + +// Obituary for child agents - make sure the parent know the child is dead +// This way, children can be reliably restarted +{ + ChildAgentDying Low 240 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + + +// This is sent if a full child agent hasn't been accepted yet +{ + ChildAgentUnknown Low 241 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + + +// This message is sent how objects get passed between regions. +{ + AtomicPassObject High 28 Trusted Unencoded + { + TaskData Single + { TaskID LLUUID } + { AttachmentNeedsSave BOOL } // true iff is attachment and needs asset saved + } +} + + +// KillChildAgents - A new agent has connected to the simulator . . . make sure that any old child cameras are blitzed +{ + KillChildAgents Low 242 Trusted Unencoded + { + IDBlock Single + { AgentID LLUUID } + } +} + + +// GetScriptRunning - asks if a script is running or not. the simulator +// responds with ScriptRunningReply +{ + GetScriptRunning Low 243 NotTrusted Unencoded + { + Script Single + { ObjectID LLUUID } + { ItemID LLUUID } + } +} + +// ScriptRunningReply - response from simulator to message above +{ + ScriptRunningReply Low 244 NotTrusted Unencoded UDPDeprecated + { + Script Single + { ObjectID LLUUID } + { ItemID LLUUID } + { Running BOOL } +// { Mono BOOL } Added to LLSD message + } +} + + +// SetScriptRunning - makes a script active or inactive (Enable may be +// true or false) +{ + SetScriptRunning Low 245 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Script Single + { ObjectID LLUUID } + { ItemID LLUUID } + { Running BOOL } + } +} + +// ScriptReset - causes a script to reset +{ + ScriptReset Low 246 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Script Single + { ObjectID LLUUID } + { ItemID LLUUID } + } +} + +// ScriptSensorRequest - causes the receiving sim to run a script sensor and return the results +{ + ScriptSensorRequest Low 247 Trusted Zerocoded + { + Requester Single + { SourceID LLUUID } + { RequestID LLUUID } + { SearchID LLUUID } + { SearchPos LLVector3 } + { SearchDir LLQuaternion } + { SearchName Variable 1 } + { Type S32 } + { Range F32 } + { Arc F32 } + { RegionHandle U64 } + { SearchRegions U8 } + } +} + +// ScriptSensorReply - returns the request script search information back to the requester +{ + ScriptSensorReply Low 248 Trusted Zerocoded + { + Requester Single + { SourceID LLUUID } + } + { + SensedData Variable + { ObjectID LLUUID } + { OwnerID LLUUID } + { GroupID LLUUID } + { Position LLVector3 } + { Velocity LLVector3 } + { Rotation LLQuaternion } + { Name Variable 1 } + { Type S32 } + { Range F32 } + } +} + +//----------------------------------------------------------------------------- +// Login and Agent Motion +//----------------------------------------------------------------------------- + +// viewer -> sim +// agent is coming into the region. The region should be expecting the +// agent. +{ + CompleteAgentMovement Low 249 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { CircuitCode U32 } + } +} + +// sim -> viewer +{ + AgentMovementComplete Low 250 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { Position LLVector3 } + { LookAt LLVector3 } + { RegionHandle U64 } + { Timestamp U32 } + } + { + SimData Single + { ChannelVersion Variable 2 } + } +} + + +//----------------------------------------------------------------------------- +// Logout +//----------------------------------------------------------------------------- + +// userserver -> dataserver +{ + DataServerLogout Low 251 Trusted Unencoded + { + UserData Single + { AgentID LLUUID } + { ViewerIP IPADDR } + { Disconnect BOOL } + { SessionID LLUUID } + } +} + +// LogoutRequest +// viewer -> sim +// reliable +{ + LogoutRequest Low 252 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + + +// LogoutReply +// it's ok for the viewer to quit. +// sim -> viewer +// reliable +// Includes inventory items to update with new asset ids +{ + LogoutReply Low 253 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + InventoryData Variable + { ItemID LLUUID } // null if list is actually empty (but has one entry 'cause it can't have none) + } +} + + +//----------------------------------------------------------------------------- +// Instant Message +//----------------------------------------------------------------------------- + +// ImprovedInstantMessage +// This message can potentially route all over the place +// ParentEstateID: parent estate id of the source estate +// RegionID: region id of the source of the IM. +// Position: position of the sender in region local coordinates +// Dialog see llinstantmessage.h for values +// ID May be used by dialog. Interpretation depends on context. +// BinaryBucket May be used by some dialog types +// reliable +{ + ImprovedInstantMessage Low 254 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + MessageBlock Single + { FromGroup BOOL } + { ToAgentID LLUUID } + { ParentEstateID U32 } + { RegionID LLUUID } + { Position LLVector3 } + { Offline U8 } + { Dialog U8 } // U8 - IM type + { ID LLUUID } + { Timestamp U32 } + { FromAgentName Variable 1 } + { Message Variable 2 } + { BinaryBucket Variable 2 } + } + { + EstateBlock Single + { EstateID U32 } + } +} + +// RetrieveInstantMessages - used to get instant messages that +// were persisted out to the database while the user was offline +// Sent from viewer->simulator. Also see RetrieveIMsExtended (back-end only) +{ + RetrieveInstantMessages Low 255 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + +// FindAgent - used to find an agent's global position. I used a +// variable sized LocationBlock so that the message can be recycled with +// minimum new messages and handlers. +{ + FindAgent Low 256 NotTrusted Unencoded + { + AgentBlock Single + { Hunter LLUUID } + { Prey LLUUID } + { SpaceIP IPADDR } + } + { + LocationBlock Variable + { GlobalX F64 } + { GlobalY F64 } + } +} + +// Set godlike to 1 if you want to become godlike. +// Set godlike to 0 if you want to relinquish god powers. +// viewer -> simulator -> dataserver +// reliable +{ + RequestGodlikePowers Low 257 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + RequestBlock Single + { Godlike BOOL } + { Token LLUUID } // viewer packs a null, sim packs token + } +} + +// At the simulator, turn the godlike bit on. +// At the viewer, show the god menu. +// dataserver -> simulator -> viewer +// reliable +{ + GrantGodlikePowers Low 258 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + GrantData Single + { GodLevel U8 } + { Token LLUUID } // checked on sim, ignored on viewer + } +} + +// GodlikeMessage - generalized construct for Gods to send messages +// around the system. Each Request has it's own internal protocol. +{ + GodlikeMessage Low 259 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { TransactionID LLUUID } + } + { + MethodData Single + { Method Variable 1 } + { Invoice LLUUID } + } + { + ParamList Variable + { Parameter Variable 1 } + } +} + +// EstateOwnerMessage +// format must be identical to above +{ + EstateOwnerMessage Low 260 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { TransactionID LLUUID } + } + { + MethodData Single + { Method Variable 1 } + { Invoice LLUUID } + } + { + ParamList Variable + { Parameter Variable 1 } + } +} + +// GenericMessage +// format must be identical to above +// As above, but don't have to be god or estate owner to send. +{ + GenericMessage Low 261 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { TransactionID LLUUID } + } + { + MethodData Single + { Method Variable 1 } + { Invoice LLUUID } + } + { + ParamList Variable + { Parameter Variable 1 } + } +} + +// *************************************************************************** +// Requests for possessions, acquisition, money, etc +// *************************************************************************** + +// request for mute list +{ + MuteListRequest Low 262 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + MuteData Single + { MuteCRC U32 } + } +} + +// update/add someone in the mute list +{ + UpdateMuteListEntry Low 263 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + MuteData Single + { MuteID LLUUID } + { MuteName Variable 1 } + { MuteType S32 } + { MuteFlags U32 } + } +} + +// Remove a mute list entry. +{ + RemoveMuteListEntry Low 264 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + MuteData Single + { MuteID LLUUID } + { MuteName Variable 1 } + } +} + + +// +// Inventory update messages +// UDP DEPRECATED - Now a viewer capability. + +{ + CopyInventoryFromNotecard Low 265 NotTrusted Zerocoded UDPDeprecated + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + NotecardData Single + { NotecardItemID LLUUID } + { ObjectID LLUUID } + } + { + InventoryData Variable + { ItemID LLUUID } + { FolderID LLUUID } + } +} + +// +// This is used bi-directionally between sim, dataserver, and viewer. +// THIS MESSAGE CAN NOT CREATE NEW INVENTORY ITEMS. +// +{ + UpdateInventoryItem Low 266 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { TransactionID LLUUID } + } + { + InventoryData Variable + { ItemID LLUUID } + { FolderID LLUUID } + { CallbackID U32 } // Async Response + + { CreatorID LLUUID } // permissions + { OwnerID LLUUID } // permissions + { GroupID LLUUID } // permissions + { BaseMask U32 } // permissions + { OwnerMask U32 } // permissions + { GroupMask U32 } // permissions + { EveryoneMask U32 } // permissions + { NextOwnerMask U32 } // permissions + { GroupOwned BOOL } // permissions + + { TransactionID LLUUID } // TransactionID: new assets only + { Type S8 } + { InvType S8 } + { Flags U32 } + { SaleType U8 } + { SalePrice S32 } + { Name Variable 1 } + { Description Variable 1 } + { CreationDate S32 } + { CRC U32 } + } +} + +// +// For sim to request update/create. +// DO NOT ALLOW THIS FROM THE VIEWER. +// +{ + UpdateCreateInventoryItem Low 267 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SimApproved BOOL } + { TransactionID LLUUID } + } + { + InventoryData Variable + { ItemID LLUUID } + { FolderID LLUUID } + { CallbackID U32 } // Async Response + + { CreatorID LLUUID } // permissions + { OwnerID LLUUID } // permissions + { GroupID LLUUID } // permissions + { BaseMask U32 } // permissions + { OwnerMask U32 } // permissions + { GroupMask U32 } // permissions + { EveryoneMask U32 } // permissions + { NextOwnerMask U32 } // permissions + { GroupOwned BOOL } // permissions + + { AssetID LLUUID } + { Type S8 } + { InvType S8 } + { Flags U32 } + { SaleType U8 } + { SalePrice S32 } + { Name Variable 1 } + { Description Variable 1 } + { CreationDate S32 } + { CRC U32 } + } +} + +{ + MoveInventoryItem Low 268 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { Stamp BOOL } // should the server re-timestamp? + } + { + InventoryData Variable + { ItemID LLUUID } + { FolderID LLUUID } + { NewName Variable 1 } + } +} + +// copy inventory item by item id to specified destination folder, +// send out bulk inventory update when done. +// +// Inventory items are only unique for {agent, inv_id} pairs; +// the OldItemID needs to be paired with the OldAgentID to +// produce a unique inventory item. +{ + CopyInventoryItem Low 269 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + InventoryData Variable + { CallbackID U32 } // Async response + { OldAgentID LLUUID } + { OldItemID LLUUID } + { NewFolderID LLUUID } + { NewName Variable 1 } + } +} + +{ + RemoveInventoryItem Low 270 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + InventoryData Variable + { ItemID LLUUID } + } +} + +{ + ChangeInventoryItemFlags Low 271 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + InventoryData Variable + { ItemID LLUUID } + { Flags U32 } + } +} + +// +// Sim outgoing only (to dataserver, to viewer) +// NOT viewer to sim, sim should not have handler, ever +// This message is currently only uses objects, so the viewer ignores +// the asset id. +{ + SaveAssetIntoInventory Low 272 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + InventoryData Single + { ItemID LLUUID } + { NewAssetID LLUUID } + } +} + +{ + CreateInventoryFolder Low 273 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + FolderData Single + { FolderID LLUUID } + { ParentID LLUUID } + { Type S8 } + { Name Variable 1 } + } +} + +{ + UpdateInventoryFolder Low 274 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + FolderData Variable + { FolderID LLUUID } + { ParentID LLUUID } + { Type S8 } + { Name Variable 1 } + } +} + +{ + MoveInventoryFolder Low 275 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { Stamp BOOL } // should the server re-timestamp children + } + { + InventoryData Variable + { FolderID LLUUID } + { ParentID LLUUID } + } +} + +{ + RemoveInventoryFolder Low 276 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + FolderData Variable + { FolderID LLUUID } + } +} + +// Get inventory segment. +{ + FetchInventoryDescendents Low 277 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + InventoryData Single + { FolderID LLUUID } + { OwnerID LLUUID } + { SortOrder S32 } // 0 = name, 1 = time + { FetchFolders BOOL } // false will omit folders in query + { FetchItems BOOL } // false will omit items in query + } +} + +// return inventory segment. +// *NOTE: This could be compressed more since we already know the +// parent_id for folders and the folder_id for items, but this is +// reasonable until we heve server side inventory. +{ + InventoryDescendents Low 278 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { FolderID LLUUID } + { OwnerID LLUUID } // owner of the folders creatd. + { Version S32 } // version of the folder for caching + { Descendents S32 } // count to help with caching + } + { + FolderData Variable + { FolderID LLUUID } + { ParentID LLUUID } + { Type S8 } + { Name Variable 1 } + } + { + ItemData Variable + { ItemID LLUUID } + { FolderID LLUUID } + { CreatorID LLUUID } // permissions + { OwnerID LLUUID } // permissions + { GroupID LLUUID } // permissions + { BaseMask U32 } // permissions + { OwnerMask U32 } // permissions + { GroupMask U32 } // permissions + { EveryoneMask U32 } // permissions + { NextOwnerMask U32 } // permissions + { GroupOwned BOOL } // permissions + { AssetID LLUUID } + { Type S8 } + { InvType S8 } + { Flags U32 } + { SaleType U8 } + { SalePrice S32 } + { Name Variable 1 } + { Description Variable 1 } + { CreationDate S32 } + { CRC U32 } + } +} + +// Get inventory item(s) - response comes through FetchInventoryReply +{ + FetchInventory Low 279 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + InventoryData Variable + { OwnerID LLUUID } + { ItemID LLUUID } + } +} + +// response to fetch inventory +{ + FetchInventoryReply Low 280 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + } + { + InventoryData Variable + { ItemID LLUUID } + { FolderID LLUUID } + + { CreatorID LLUUID } // permissions + { OwnerID LLUUID } // permissions + { GroupID LLUUID } // permissions + { BaseMask U32 } // permissions + { OwnerMask U32 } // permissions + { GroupMask U32 } // permissions + { EveryoneMask U32 } // permissions + { NextOwnerMask U32 } // permissions + { GroupOwned BOOL } // permissions + + { AssetID LLUUID } + { Type S8 } + { InvType S8 } + { Flags U32 } + { SaleType U8 } + { SalePrice S32 } + { Name Variable 1 } + { Description Variable 1 } + { CreationDate S32 } + { CRC U32 } + } +} + +// Can only fit around 7 items per packet - that's the way it goes. At +// least many bulk updates can be packed. +// Only from dataserver->sim->viewer +{ + BulkUpdateInventory Low 281 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { TransactionID LLUUID } + } + { + FolderData Variable + { FolderID LLUUID } + { ParentID LLUUID } + { Type S8 } + { Name Variable 1 } + } + { + ItemData Variable + { ItemID LLUUID } + { CallbackID U32 } // Async Response + { FolderID LLUUID } + { CreatorID LLUUID } // permissions + { OwnerID LLUUID } // permissions + { GroupID LLUUID } // permissions + { BaseMask U32 } // permissions + { OwnerMask U32 } // permissions + { GroupMask U32 } // permissions + { EveryoneMask U32 } // permissions + { NextOwnerMask U32 } // permissions + { GroupOwned BOOL } // permissions + { AssetID LLUUID } + { Type S8 } + { InvType S8 } + { Flags U32 } + { SaleType U8 } + { SalePrice S32 } + { Name Variable 1 } + { Description Variable 1 } + { CreationDate S32 } + { CRC U32 } + } +} + + + +// request permissions for agent id to get the asset for owner_id's +// item_id. +{ + RequestInventoryAsset Low 282 Trusted Unencoded + { + QueryData Single + { QueryID LLUUID } + { AgentID LLUUID } + { OwnerID LLUUID } + { ItemID LLUUID } + } +} + +// response to RequestInventoryAsset +// lluuid will be null if agentid in the request above cannot read asset +{ + InventoryAssetResponse Low 283 Trusted Unencoded + { + QueryData Single + { QueryID LLUUID } + { AssetID LLUUID } + { IsReadable BOOL } + } +} + +// This is the new improved way to remove inventory items. It is +// currently only supported in viewer->userserver->dataserver +// messages typically initiated by an empty trash method. +{ + RemoveInventoryObjects Low 284 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + FolderData Variable + { FolderID LLUUID } + } + { + ItemData Variable + { ItemID LLUUID } + } +} + +// This is how you remove inventory when you're not even sure what it +// is - only it's parenting. +{ + PurgeInventoryDescendents Low 285 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + InventoryData Single + { FolderID LLUUID } + } +} + +// These messages are viewer->simulator requests to update a task's +// inventory. +// if Key == 0, itemid is the key. if Key == 1, assetid is the key. +{ + UpdateTaskInventory Low 286 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + UpdateData Single + { LocalID U32 } + { Key U8 } + } + { + InventoryData Single + { ItemID LLUUID } + { FolderID LLUUID } + { CreatorID LLUUID } // permissions + { OwnerID LLUUID } // permissions + { GroupID LLUUID } // permissions + { BaseMask U32 } // permissions + { OwnerMask U32 } // permissions + { GroupMask U32 } // permissions + { EveryoneMask U32 } // permissions + { NextOwnerMask U32 } // permissions + { GroupOwned BOOL } // permissions + { TransactionID LLUUID } + { Type S8 } + { InvType S8 } + { Flags U32 } + { SaleType U8 } + { SalePrice S32 } + { Name Variable 1 } + { Description Variable 1 } + { CreationDate S32 } + { CRC U32 } + } +} + +{ + RemoveTaskInventory Low 287 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + InventoryData Single + { LocalID U32 } + { ItemID LLUUID } + } +} + +{ + MoveTaskInventory Low 288 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { FolderID LLUUID } + } + { + InventoryData Single + { LocalID U32 } + { ItemID LLUUID } + } +} + +{ + RequestTaskInventory Low 289 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + InventoryData Single + { LocalID U32 } + } +} + +{ + ReplyTaskInventory Low 290 Trusted Zerocoded + { + InventoryData Single + { TaskID LLUUID } + { Serial S16 } // S16 + { Filename Variable 1 } + } +} + +// These messages are viewer->simulator requests regarding objects +// which are currently being simulated. The viewer will get an +// UpdateInventoryItem response if a DeRez succeeds, and the object +// will appear if a RezObject succeeds. +// The Destination field tells where the derez should wind up, and the +// meaning of DestinationID depends on it. For example, if the +// destination is a category, then the destination is the category id. If +// the destination is a task inventory, then the destination id is the +// task id. +// The transaction id is generated by the viewer on derez, and then +// the packets are counted and numbered. The rest of the information is +// just duplicated (it's not that much, and derezzes that span multiple +// packets will be rare.) +{ + DeRezObject Low 291 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + AgentBlock Single + { GroupID LLUUID } + { Destination U8 } + { DestinationID LLUUID } // see above + { TransactionID LLUUID } + { PacketCount U8 } + { PacketNumber U8 } + } + { + ObjectData Variable + { ObjectLocalID U32 } // object id in world + } +} + +// This message is sent when a derez succeeds, but there's no way to +// know, since no inventory is created on the viewer. For example, when +// saving into task inventory. +{ + DeRezAck Low 292 Trusted Unencoded + { + TransactionData Single + { TransactionID LLUUID } + { Success BOOL } + } +} + +// This message is sent from viewer -> simulator when the viewer wants +// to rez an object out of inventory. +{ + RezObject Low 293 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + } + { + RezData Single + { FromTaskID LLUUID } + { BypassRaycast U8 } + { RayStart LLVector3 } + { RayEnd LLVector3 } + { RayTargetID LLUUID } + { RayEndIsIntersection BOOL } + { RezSelected BOOL } + { RemoveItem BOOL } + { ItemFlags U32 } + { GroupMask U32 } + { EveryoneMask U32 } + { NextOwnerMask U32 } + } + { + InventoryData Single + { ItemID LLUUID } + { FolderID LLUUID } + { CreatorID LLUUID } // permissions + { OwnerID LLUUID } // permissions + { GroupID LLUUID } // permissions + { BaseMask U32 } // permissions + { OwnerMask U32 } // permissions + { GroupMask U32 } // permissions + { EveryoneMask U32 } // permissions + { NextOwnerMask U32 } // permissions + { GroupOwned BOOL } // permissions + { TransactionID LLUUID } + { Type S8 } + { InvType S8 } + { Flags U32 } + { SaleType U8 } + { SalePrice S32 } + { Name Variable 1 } + { Description Variable 1 } + { CreationDate S32 } + { CRC U32 } + } +} + +// This message is sent from viewer -> simulator when the viewer wants +// to rez an object from a notecard. +{ + RezObjectFromNotecard Low 294 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + } + { + RezData Single + { FromTaskID LLUUID } + { BypassRaycast U8 } + { RayStart LLVector3 } + { RayEnd LLVector3 } + { RayTargetID LLUUID } + { RayEndIsIntersection BOOL } + { RezSelected BOOL } + { RemoveItem BOOL } + { ItemFlags U32 } + { GroupMask U32 } + { EveryoneMask U32 } + { NextOwnerMask U32 } + } + { + NotecardData Single + { NotecardItemID LLUUID } + { ObjectID LLUUID } + } + { + InventoryData Variable + { ItemID LLUUID } + } +} + + +// sim -> dataserver +// sent during agent to agent inventory transfers +{ + TransferInventory Low 295 Trusted Zerocoded + { + InfoBlock Single + { SourceID LLUUID } + { DestID LLUUID } + { TransactionID LLUUID } + } + { + InventoryBlock Variable + { InventoryID LLUUID } + { Type S8 } + } + { + ValidationBlock Single + { NeedsValidation BOOL } + { EstateID U32 } + } +} + +// dataserver -> sim +// InventoryID is the id of the inventory object that the end user +// should discard if they deny the transfer. +{ + TransferInventoryAck Low 296 Trusted Zerocoded + { + InfoBlock Single + { TransactionID LLUUID } + { InventoryID LLUUID } + } +} + + +{ + AcceptFriendship Low 297 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + TransactionBlock Single + { TransactionID LLUUID } + } + { + FolderData Variable + { FolderID LLUUID } // place to put calling card. + } +} + +{ + DeclineFriendship Low 298 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + TransactionBlock Single + { TransactionID LLUUID } + } +} + +{ + FormFriendship Low 299 Trusted Unencoded + { + AgentBlock Single + { SourceID LLUUID } + { DestID LLUUID } + } +} + +// Cancels user relationship +// Updates inventory for both users. +// Stops agent tracking in userserver. +// viewer -> userserver -> dataserver +// reliable +{ + TerminateFriendship Low 300 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ExBlock Single + { OtherID LLUUID } + } +} + +// used to give someone a calling card. +{ + OfferCallingCard Low 301 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + AgentBlock Single + { DestID LLUUID } + { TransactionID LLUUID } + } +} + +{ + AcceptCallingCard Low 302 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + TransactionBlock Single + { TransactionID LLUUID } + } + { + FolderData Variable + { FolderID LLUUID } // place to put calling card. + } +} + +{ + DeclineCallingCard Low 303 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + TransactionBlock Single + { TransactionID LLUUID } + } +} + + +// Rez a script onto an object +{ + RezScript Low 304 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + } + { + UpdateBlock Single + { ObjectLocalID U32 } // object id in world + { Enabled BOOL } // is script rezzed in enabled? + } + { + InventoryBlock Single + { ItemID LLUUID } + { FolderID LLUUID } + { CreatorID LLUUID } // permissions + { OwnerID LLUUID } // permissions + { GroupID LLUUID } // permissions + { BaseMask U32 } // permissions + { OwnerMask U32 } // permissions + { GroupMask U32 } // permissions + { EveryoneMask U32 } // permissions + { NextOwnerMask U32 } // permissions + { GroupOwned BOOL } // permissions + { TransactionID LLUUID } + { Type S8 } + { InvType S8 } + { Flags U32 } + { SaleType U8 } + { SalePrice S32 } + { Name Variable 1 } + { Description Variable 1 } + { CreationDate S32 } + { CRC U32 } + } +} + +// Create inventory +{ + CreateInventoryItem Low 305 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + InventoryBlock Single + { CallbackID U32 } // Async Response + { FolderID LLUUID } + { TransactionID LLUUID } // Going to become TransactionID + { NextOwnerMask U32 } + { Type S8 } + { InvType S8 } + { WearableType U8 } + { Name Variable 1 } + { Description Variable 1 } + } +} + +// give agent a landmark for an event. +{ + CreateLandmarkForEvent Low 306 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + EventData Single + { EventID U32 } + } + { + InventoryBlock Single + { FolderID LLUUID } + { Name Variable 1 } + } +} + +{ + EventLocationRequest Low 307 Trusted Zerocoded + { + QueryData Single + { QueryID LLUUID } + } + { + EventData Single + { EventID U32 } + } +} + +{ + EventLocationReply Low 308 Trusted Zerocoded + { + QueryData Single + { QueryID LLUUID } + } + { + EventData Single + { Success BOOL } + { RegionID LLUUID } + { RegionPos LLVector3 } + } +} + +// get information about landmarks. Used by viewers for determining +// the location of a landmark, and by simulators for teleport +{ + RegionHandleRequest Low 309 NotTrusted Unencoded + { + RequestBlock Single + { RegionID LLUUID } + } +} + +{ + RegionIDAndHandleReply Low 310 Trusted Unencoded + { + ReplyBlock Single + { RegionID LLUUID } + { RegionHandle U64 } + } +} + +// Move money from one agent to another. Validation will happen at the +// simulator, the dataserver will actually do the work. Dataserver +// generates a MoneyBalance message in reply. The simulator +// will generate a MoneyTransferBackend in response to this. +// viewer -> simulator -> dataserver +{ + MoneyTransferRequest Low 311 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + MoneyData Single + { SourceID LLUUID } + { DestID LLUUID } // destination of the transfer + { Flags U8 } + { Amount S32 } + { AggregatePermNextOwner U8 } + { AggregatePermInventory U8 } + { TransactionType S32 } // see lltransactiontypes.h + { Description Variable 1 } // string, name of item for purchases + } +} + +// And, the money transfer +// *NOTE: Unused as of 2010-04-06, because all back-end money transactions +// are done with web services via L$ API. JC +{ + MoneyTransferBackend Low 312 Trusted Zerocoded + { + MoneyData Single + { TransactionID LLUUID } + { TransactionTime U32 } // utc seconds since epoch + { SourceID LLUUID } + { DestID LLUUID } // destination of the transfer + { Flags U8 } + { Amount S32 } + { AggregatePermNextOwner U8 } + { AggregatePermInventory U8 } + { TransactionType S32 } // see lltransactiontypes.h + { RegionID LLUUID } // region sending the request, for logging + { GridX U32 } // *HACK: database doesn't have region_id in schema + { GridY U32 } // *HACK: database doesn't have region_id in schema + { Description Variable 1 } // string, name of item for purchases + } +} + + +// viewer -> userserver -> dataserver +// Reliable +{ + MoneyBalanceRequest Low 313 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + MoneyData Single + { TransactionID LLUUID } + } +} + + +// dataserver -> simulator -> viewer +{ + MoneyBalanceReply Low 314 Trusted Zerocoded + { + MoneyData Single + { AgentID LLUUID } + { TransactionID LLUUID } + { TransactionSuccess BOOL } // BOOL + { MoneyBalance S32 } + { SquareMetersCredit S32 } + { SquareMetersCommitted S32 } + { Description Variable 1 } // string + } + // For replies that are part of a transaction (buying something) provide + // metadata for localization. If TransactionType is 0, the message is + // purely a balance update. Added for server 1.40 and viewer 2.1. JC + { + TransactionInfo Single + { TransactionType S32 } // lltransactiontype.h + { SourceID LLUUID } + { IsSourceGroup BOOL } + { DestID LLUUID } + { IsDestGroup BOOL } + { Amount S32 } + { ItemDescription Variable 1 } // string + } +} + + +// RoutedMoneyBalanceReply +// This message is used when a dataserver needs to send updated +// money balance information to a simulator other than the one it +// is connected to. It uses the standard TransferBlock format. +// dataserver -> simulator -> spaceserver -> simulator -> viewer +// reliable +{ + RoutedMoneyBalanceReply Low 315 Trusted Zerocoded UDPDeprecated + { + TargetBlock Single + { TargetIP IPADDR } // U32 encoded IP + { TargetPort IPPORT } + } + { + MoneyData Single + { AgentID LLUUID } + { TransactionID LLUUID } + { TransactionSuccess BOOL } // BOOL + { MoneyBalance S32 } + { SquareMetersCredit S32 } + { SquareMetersCommitted S32 } + { Description Variable 1 } // string + } + // See MoneyBalanceReply above. + { + TransactionInfo Single + { TransactionType S32 } // lltransactiontype.h + { SourceID LLUUID } + { IsSourceGroup BOOL } + { DestID LLUUID } + { IsDestGroup BOOL } + { Amount S32 } + { ItemDescription Variable 1 } // string + } +} + + + +//--------------------------------------------------------------------------- +// Gesture saves/loads +//--------------------------------------------------------------------------- + + +// Tell the database that some gestures are now active +// viewer -> sim -> data +{ + ActivateGestures Low 316 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { Flags U32 } + } + { + Data Variable + { ItemID LLUUID } + { AssetID LLUUID } + { GestureFlags U32 } + } +} + +// Tell the database some gestures are no longer active +// viewer -> sim -> data +{ + DeactivateGestures Low 317 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { Flags U32 } + } + { + Data Variable + { ItemID LLUUID } + { GestureFlags U32 } + } +} + +//--------------------------------------------------------------------------- +// +//--------------------------------------------------------------------------- + +// userserver -> viewer, up-to-date inventory is here +// could be sent as a result of spam +// as well as in response to InventoryRequest +//{ +// InventoryUpdate Low Trusted Unencoded +// { +// AgentData Single +// { AgentID LLUUID } +// } +// { +// InventoryData Single +// { IsComplete U8 } +// { Filename Variable 1 } +// } +//} + +// dataserver-> userserver -> viewer to move around the mute list +{ + MuteListUpdate Low 318 Trusted Unencoded + { + MuteData Single + { AgentID LLUUID } + { Filename Variable 1 } + } +} + +// tell viewer to use the local mute cache +{ + UseCachedMuteList Low 319 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } +} + +// Sent from viewer to simulator to set user rights. This message will be +// relayed up to the dataserver through a PUT. If that +// succeeds, an UpdateUserRights will be relayed to the originating +// viewer, and a presence lookup will be performed to find +// agent-related and the same PUT will be issued to the sim host if +// they are online. +{ + GrantUserRights Low 320 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Rights Variable + { AgentRelated LLUUID } + { RelatedRights S32 } + } +} + +// This message is sent from the simulator to the viewer to indicate a +// targets granted rights. This is only sent to the originator of the +// request and the target agent if it is a modify or map +// right. Adding/removing online status rights will show up as an +// online/offline notification. +{ + ChangeUserRights Low 321 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + Rights Variable + { AgentRelated LLUUID } + { RelatedRights S32 } + } +} + +// notification for login and logout. +// source_sim -> dest_viewer +{ + OnlineNotification Low 322 Trusted Unencoded + { + AgentBlock Variable + { AgentID LLUUID } + } +} +{ + OfflineNotification Low 323 Trusted Unencoded + { + AgentBlock Variable + { AgentID LLUUID } + } +} + + +// SetStartLocationRequest +// viewer -> sim +// failure checked at sim and triggers ImprovedInstantMessage +// success triggers SetStartLocation +{ + SetStartLocationRequest Low 324 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + StartLocationData Single + { SimName Variable 1 } // string + { LocationID U32 } + { LocationPos LLVector3 } // region coords + { LocationLookAt LLVector3 } + } +} + +// SetStartLocation +// sim -> dataserver +{ + SetStartLocation Low 325 Trusted Zerocoded + { + StartLocationData Single + { AgentID LLUUID } + { RegionID LLUUID } + { LocationID U32 } + { RegionHandle U64 } + { LocationPos LLVector3 } // region coords + { LocationLookAt LLVector3 } + } +} + + +// *************************************************************************** +// Launcher messages +// *************************************************************************** + + +// NetTest - This goes back and forth to the space server because of +// problems determining the port +{ + NetTest Low 326 NotTrusted Unencoded + { + NetBlock Single + { Port IPPORT } + } +} + +// SetChildCount - Sent to launcher to adjust nominal child count +// Simulator sends this increase the sim/cpu ratio on startup +{ + SetCPURatio Low 327 NotTrusted Unencoded + { + Data Single + { Ratio U8 } + } +} + + + +// SimCrashed - Sent to dataserver when the sim goes down. +// Maybe we should notify the spaceserver as well? +{ + SimCrashed Low 328 NotTrusted Unencoded + { + Data Single + { RegionX U32 } + { RegionY U32 } + } + { + Users Variable + { AgentID LLUUID } + } +} + +// *************************************************************************** +// Name Value Pair messages +// *************************************************************************** + +// NameValuePair - if the specific task exists on simulator, add or replace this name value pair +{ + NameValuePair Low 329 Trusted Unencoded + { + TaskData Single + { ID LLUUID } + } + { + NameValueData Variable + { NVPair Variable 2 } + } +} + +// NameValuePair - if the specific task exists on simulator or dataserver, remove the name value pair (value is ignored) +{ + RemoveNameValuePair Low 330 Trusted Unencoded + { + TaskData Single + { ID LLUUID } + } + { + NameValueData Variable + { NVPair Variable 2 } + } +} + + +// *************************************************************************** +// Add/Remove Attachment messages +// *************************************************************************** + +// +// Simulator informs Dataserver of new attachment or attachment asset update +// DO NOT ALLOW THIS FROM THE VIEWER +// +{ + UpdateAttachment Low 331 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + AttachmentBlock Single + { AttachmentPoint U8 } + } + { + OperationData Single + { AddItem BOOL } + { UseExistingAsset BOOL } + } + { + InventoryData Single // Standard inventory item block + { ItemID LLUUID } + { FolderID LLUUID } + + { CreatorID LLUUID } // permissions + { OwnerID LLUUID } // permissions + { GroupID LLUUID } // permissions + { BaseMask U32 } // permissions + { OwnerMask U32 } // permissions + { GroupMask U32 } // permissions + { EveryoneMask U32 } // permissions + { NextOwnerMask U32 } // permissions + { GroupOwned BOOL } // permissions + + { AssetID LLUUID } + { Type S8 } + { InvType S8 } + { Flags U32 } + { SaleType U8 } + { SalePrice S32 } + { Name Variable 1 } + { Description Variable 1 } + { CreationDate S32 } + { CRC U32 } + } +} + +// Simulator informs Dataserver that attachment has been taken off +{ + RemoveAttachment Low 332 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + AttachmentBlock Single + { AttachmentPoint U8 } + { ItemID LLUUID } + } +} + + +// *************************************************************************** +// GUIDed Sound messages +// *************************************************************************** + +// SoundTrigger - Sent by simulator to viewer to trigger sound outside current region +{ + SoundTrigger High 29 NotTrusted Unencoded + { + SoundData Single + { SoundID LLUUID } + { OwnerID LLUUID } + { ObjectID LLUUID } + { ParentID LLUUID } // null if this object is the parent + { Handle U64 } // region handle + { Position LLVector3 } // region local + { Gain F32 } + } +} + +// AttachedSound - Sent by simulator to viewer to play sound attached with an object +{ + AttachedSound Medium 13 Trusted Unencoded + { + DataBlock Single + { SoundID LLUUID } + { ObjectID LLUUID } + { OwnerID LLUUID } + { Gain F32 } + { Flags U8 } + } +} + +// AttachedSoundGainChange - Sent by simulator to viewer to change an attached sounds' volume + +{ + AttachedSoundGainChange Medium 14 Trusted Unencoded + { + DataBlock Single + { ObjectID LLUUID } + { Gain F32 } + } +} + + +// PreloadSound - Sent by simulator to viewer to preload sound for an object + +{ + PreloadSound Medium 15 Trusted Unencoded + { + DataBlock Variable + { ObjectID LLUUID } + { OwnerID LLUUID } + { SoundID LLUUID } + } +} + + +// ************************************************************************* +// Object animation messages +// ************************************************************************* + +// Note this is basically identical to AvatarAnimation. +// Needs to be a different message because existing viewers +// have insufficiently smart handler functions. + +// ObjectAnimation - Update animation state +// simulator --> viewer +{ + ObjectAnimation High 30 Trusted Unencoded + { + Sender Single + { ID LLUUID } + } + { + AnimationList Variable + { AnimID LLUUID } + { AnimSequenceID S32 } + } +} + +// ************************************************************************* +// Asset storage messages +// ************************************************************************* + +// current assumes an existing UUID, need to enhance for new assets +{ + AssetUploadRequest Low 333 NotTrusted Unencoded + { + AssetBlock Single + { TransactionID LLUUID } + { Type S8 } + { Tempfile BOOL } + { StoreLocal BOOL } + { AssetData Variable 2 } // Optional: the actual asset data if the whole thing will fit it this packet + } +} + +{ + AssetUploadComplete Low 334 NotTrusted Unencoded + { + AssetBlock Single + { UUID LLUUID } + { Type S8 } + { Success BOOL } + } +} + + +// Script on simulator asks dataserver if there are any email messages +// waiting. +{ + EmailMessageRequest Low 335 Trusted Unencoded + { + DataBlock Single + { ObjectID LLUUID } + { FromAddress Variable 1 } + { Subject Variable 1 } + } +} + +// Dataserver gives simulator the oldest email message in the queue, along with +// how many messages are left in the queue. And passes back the filter used to request emails. +{ + EmailMessageReply Low 336 Trusted Unencoded + { + DataBlock Single + { ObjectID LLUUID } + { More U32 } //U32 + { Time U32 } //U32 + { FromAddress Variable 1 } + { Subject Variable 1 } + { Data Variable 2 } + { MailFilter Variable 1 } + } +} + +// Script on simulator sends mail to another script +{ + InternalScriptMail Medium 16 Trusted Unencoded + { + DataBlock Single + { From Variable 1 } + { To LLUUID } + { Subject Variable 1 } + { Body Variable 2 } + } +} + +// Script on simulator asks dataserver for information +{ + ScriptDataRequest Low 337 Trusted Unencoded + { + DataBlock Variable + { Hash U64 } + { RequestType S8 } + { Request Variable 2 } + } +} + +// Data server responds with data +{ + ScriptDataReply Low 338 Trusted Unencoded + { + DataBlock Variable + { Hash U64 } + { Reply Variable 2 } + } +} + + +//----------------------------------------------------------------------------- +// Group messages +//----------------------------------------------------------------------------- + +// CreateGroupRequest +// viewer -> simulator +// reliable +{ + CreateGroupRequest Low 339 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + GroupData Single + { Name Variable 1 } // string + { Charter Variable 2 } // string + { ShowInList BOOL } + { InsigniaID LLUUID } + { MembershipFee S32 } // S32 + { OpenEnrollment BOOL } // BOOL (U8) + { AllowPublish BOOL } // whether profile is externally visible or not + { MaturePublish BOOL } // profile is "mature" + } +} + +// CreateGroupReply +// dataserver -> simulator +// simulator -> viewer +// reliable +{ + CreateGroupReply Low 340 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + ReplyData Single + { GroupID LLUUID } + { Success BOOL } + { Message Variable 1 } // string + } +} + +// UpdateGroupInfo +// viewer -> simulator +// simulator -> dataserver +// reliable +{ + UpdateGroupInfo Low 341 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + { Charter Variable 2 } // string + { ShowInList BOOL } + { InsigniaID LLUUID } + { MembershipFee S32 } + { OpenEnrollment BOOL } + { AllowPublish BOOL } + { MaturePublish BOOL } + } +} + +// GroupRoleChanges +// viewer -> simulator -> dataserver +// reliable +{ + GroupRoleChanges Low 342 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + } + { + RoleChange Variable + { RoleID LLUUID } + { MemberID LLUUID } + { Change U32 } + } +} + +// JoinGroupRequest +// viewer -> simulator +// reliable +{ + JoinGroupRequest Low 343 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + } +} + +// JoinGroupReply +// dataserver -> simulator -> viewer +{ + JoinGroupReply Low 344 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + { Success BOOL } + } +} + + +// EjectGroupMemberRequest +// viewer -> simulator -> dataserver +// reliable +{ + EjectGroupMemberRequest Low 345 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + } + { + EjectData Variable + { EjecteeID LLUUID } + } +} + +// EjectGroupMemberReply +// dataserver -> simulator -> viewer +// reliable +{ + EjectGroupMemberReply Low 346 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + } + { + EjectData Single + { Success BOOL } + } +} + +// LeaveGroupRequest +// viewer -> simulator -> dataserver +// reliable +{ + LeaveGroupRequest Low 347 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + } +} + +// LeaveGroupReply +// dataserver -> simulator -> viewer +{ + LeaveGroupReply Low 348 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + { Success BOOL } + } +} + +// InviteGroupRequest +// viewer -> simulator -> dataserver +// reliable +{ + InviteGroupRequest Low 349 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } // UUID of inviting agent + { SessionID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + } + { + InviteData Variable + { InviteeID LLUUID } + { RoleID LLUUID } + } +} + +// InviteGroupResponse +// simulator -> dataserver +// reliable +{ + InviteGroupResponse Low 350 Trusted Unencoded + { + InviteData Single + { AgentID LLUUID } + { InviteeID LLUUID } + { GroupID LLUUID } + { RoleID LLUUID } + { MembershipFee S32 } + } + { + GroupData Single + { GroupLimit S32 } // Extra block for the agent's group limit + } +} + +// GroupProfileRequest +// viewer-> simulator -> dataserver +// reliable +{ + GroupProfileRequest Low 351 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + } +} + +// GroupProfileReply +// dataserver -> simulator -> viewer +// reliable +{ + GroupProfileReply Low 352 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + { Name Variable 1 } // string + { Charter Variable 2 } // string + { ShowInList BOOL } + { MemberTitle Variable 1 } // string + { PowersMask U64 } // U32 mask + { InsigniaID LLUUID } + { FounderID LLUUID } + { MembershipFee S32 } + { OpenEnrollment BOOL } // BOOL (U8) + { Money S32 } + { GroupMembershipCount S32 } + { GroupRolesCount S32 } + { AllowPublish BOOL } + { MaturePublish BOOL } + { OwnerRole LLUUID } + } +} + +// CurrentInterval = 0 => this period (week, day, etc.) +// CurrentInterval = 1 => last period +// viewer -> simulator -> dataserver +// reliable +{ + GroupAccountSummaryRequest Low 353 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + } + { + MoneyData Single + { RequestID LLUUID } + { IntervalDays S32 } + { CurrentInterval S32 } + } +} + + +// dataserver -> simulator -> viewer +// Reliable +{ + GroupAccountSummaryReply Low 354 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { GroupID LLUUID } + } + { + MoneyData Single + { RequestID LLUUID } + { IntervalDays S32 } + { CurrentInterval S32 } + { StartDate Variable 1 } // string + { Balance S32 } + { TotalCredits S32 } + { TotalDebits S32 } + { ObjectTaxCurrent S32 } + { LightTaxCurrent S32 } + { LandTaxCurrent S32 } + { GroupTaxCurrent S32 } + { ParcelDirFeeCurrent S32 } + { ObjectTaxEstimate S32 } + { LightTaxEstimate S32 } + { LandTaxEstimate S32 } + { GroupTaxEstimate S32 } + { ParcelDirFeeEstimate S32 } + { NonExemptMembers S32 } + { LastTaxDate Variable 1 } // string + { TaxDate Variable 1 } // string + } +} + + +// Reliable +{ + GroupAccountDetailsRequest Low 355 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + } + { + MoneyData Single + { RequestID LLUUID } + { IntervalDays S32 } + { CurrentInterval S32 } + } +} + +// Reliable +{ + GroupAccountDetailsReply Low 356 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { GroupID LLUUID } + } + { + MoneyData Single + { RequestID LLUUID } + { IntervalDays S32 } + { CurrentInterval S32 } + { StartDate Variable 1 } // string + } + { + HistoryData Variable + { Description Variable 1 } // string + { Amount S32 } + } +} + + +// Reliable +{ + GroupAccountTransactionsRequest Low 357 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + } + { + MoneyData Single + { RequestID LLUUID } + { IntervalDays S32 } + { CurrentInterval S32 } + } +} + +// Reliable +{ + GroupAccountTransactionsReply Low 358 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { GroupID LLUUID } + } + { + MoneyData Single + { RequestID LLUUID } + { IntervalDays S32 } + { CurrentInterval S32 } + { StartDate Variable 1 } // string + } + { + HistoryData Variable + { Time Variable 1 } // string + { User Variable 1 } // string + { Type S32 } + { Item Variable 1 } // string + { Amount S32 } + } +} + +// GroupActiveProposalsRequest +// viewer -> simulator -> dataserver +//reliable +{ + GroupActiveProposalsRequest Low 359 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + } + { + TransactionData Single + { TransactionID LLUUID } + } +} + +// GroupActiveProposalItemReply +// dataserver -> simulator -> viewer +// reliable +{ + GroupActiveProposalItemReply Low 360 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { GroupID LLUUID } + } + { + TransactionData Single + { TransactionID LLUUID } + { TotalNumItems U32 } + } + { + ProposalData Variable + { VoteID LLUUID } + { VoteInitiator LLUUID } + { TerseDateID Variable 1 } // string + { StartDateTime Variable 1 } // string + { EndDateTime Variable 1 } // string + { AlreadyVoted BOOL } + { VoteCast Variable 1 } // string + { Majority F32 } + { Quorum S32 } + { ProposalText Variable 1 } // string + } +} + +// GroupVoteHistoryRequest +// viewer -> simulator -> dataserver +//reliable +{ + GroupVoteHistoryRequest Low 361 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + } + { + TransactionData Single + { TransactionID LLUUID } + } +} + +// GroupVoteHistoryItemReply +// dataserver -> simulator -> viewer +// reliable +{ + GroupVoteHistoryItemReply Low 362 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { GroupID LLUUID } + } + { + TransactionData Single + { TransactionID LLUUID } + { TotalNumItems U32 } + } + { + HistoryItemData Single + { VoteID LLUUID } + { TerseDateID Variable 1 } // string + { StartDateTime Variable 1 } // string + { EndDateTime Variable 1 } // string + { VoteInitiator LLUUID } + { VoteType Variable 1 } // string + { VoteResult Variable 1 } // string + { Majority F32 } + { Quorum S32 } + { ProposalText Variable 2 } // string + } + { + VoteItem Variable + { CandidateID LLUUID } + { VoteCast Variable 1 } // string + { NumVotes S32 } + } +} + +// StartGroupProposal +// viewer -> simulator -> dataserver +// reliable +{ + StartGroupProposal Low 363 NotTrusted Zerocoded UDPDeprecated + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ProposalData Single + { GroupID LLUUID } + { Quorum S32 } + { Majority F32 } // F32 + { Duration S32 } // S32, seconds + { ProposalText Variable 1 } // string + } +} + +// GroupProposalBallot +// viewer -> simulator -> dataserver +// reliable +{ + GroupProposalBallot Low 364 NotTrusted Unencoded UDPDeprecated + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ProposalData Single + { ProposalID LLUUID } + { GroupID LLUUID } + { VoteCast Variable 1 } // string + } +} + +// TallyVotes userserver -> dataserver +// reliable +{ + TallyVotes Low 365 Trusted Unencoded +} + + + +// GroupMembersRequest +// get the group members +// simulator -> dataserver +// reliable +{ + GroupMembersRequest Low 366 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + { RequestID LLUUID } + } +} + +// GroupMembersReply +// list of uuids for the group members +// dataserver -> simulator +// reliable +{ + GroupMembersReply Low 367 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + { RequestID LLUUID } + { MemberCount S32 } + } + { + MemberData Variable + { AgentID LLUUID } + { Contribution S32 } + { OnlineStatus Variable 1 } // string + { AgentPowers U64 } + { Title Variable 1 } // string + { IsOwner BOOL } + } +} + +// used to switch an agent's currently active group. +// viewer -> simulator -> dataserver -> AgentDataUpdate... +{ + ActivateGroup Low 368 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + } +} + +// viewer -> simulator -> dataserver +{ + SetGroupContribution Low 369 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { GroupID LLUUID } + { Contribution S32 } + } +} + +// viewer -> simulator -> dataserver +{ + SetGroupAcceptNotices Low 370 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Data Single + { GroupID LLUUID } + { AcceptNotices BOOL } + } + { + NewData Single + { ListInProfile BOOL } + } +} + +// GroupRoleDataRequest +// viewer -> simulator -> dataserver +{ + GroupRoleDataRequest Low 371 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + { RequestID LLUUID } + } +} + + +// GroupRoleDataReply +// All role data for this group +// dataserver -> simulator -> agent +{ + GroupRoleDataReply Low 372 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + { RequestID LLUUID } + { RoleCount S32 } + } + { + RoleData Variable + { RoleID LLUUID } + { Name Variable 1 } + { Title Variable 1 } + { Description Variable 1 } + { Powers U64 } + { Members U32 } + } +} + +// GroupRoleMembersRequest +// viewer -> simulator -> dataserver +{ + GroupRoleMembersRequest Low 373 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + GroupData Single + { GroupID LLUUID } + { RequestID LLUUID } + } +} + +// GroupRoleMembersReply +// All role::member pairs for this group. +// dataserver -> simulator -> agent +{ + GroupRoleMembersReply Low 374 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { GroupID LLUUID } + { RequestID LLUUID } + { TotalPairs U32 } + } + { + MemberData Variable + { RoleID LLUUID } + { MemberID LLUUID } + } +} + +// GroupTitlesRequest +// viewer -> simulator -> dataserver +{ + GroupTitlesRequest Low 375 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + { RequestID LLUUID } + } +} + + +// GroupTitlesReply +// dataserver -> simulator -> viewer +{ + GroupTitlesReply Low 376 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { GroupID LLUUID } + { RequestID LLUUID } + } + { + GroupData Variable + { Title Variable 1 } // string + { RoleID LLUUID } + { Selected BOOL } + } +} + +// GroupTitleUpdate +// viewer -> simulator -> dataserver +{ + GroupTitleUpdate Low 377 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + { TitleRoleID LLUUID } + } +} + +// GroupRoleUpdate +// viewer -> simulator -> dataserver +{ + GroupRoleUpdate Low 378 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupID LLUUID } + } + { + RoleData Variable + { RoleID LLUUID } + { Name Variable 1 } + { Description Variable 1 } + { Title Variable 1 } + { Powers U64 } + { UpdateType U8 } + } +} + + + +// Request the members of the live help group needed for requesting agent. +// userserver -> dataserver +{ + LiveHelpGroupRequest Low 379 Trusted Unencoded + { + RequestData Single + { RequestID LLUUID } + { AgentID LLUUID } + } +} + +// Send down the group +// dataserver -> userserver +{ + LiveHelpGroupReply Low 380 Trusted Unencoded + { + ReplyData Single + { RequestID LLUUID } + { GroupID LLUUID } + { Selection Variable 1 } // selection criteria all or active + } +} + +//----------------------------------------------------------------------------- +// Wearable messages +//----------------------------------------------------------------------------- + +// AgentWearablesRequest +// (a.k.a. "Tell me what the avatar is wearing.") +// viewer -> simulator -> dataserver +// reliable +{ + AgentWearablesRequest Low 381 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + +// AgentWearablesUpdate +// (a.k.a. "Here's what your avatar should be wearing now.") +// dataserver -> userserver -> viewer +// reliable +// NEVER from viewer to sim +{ + AgentWearablesUpdate Low 382 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { SerialNum U32 } // U32, Increases every time the wearables change for a given agent. Used to avoid processing out of order packets. + } + { + WearableData Variable + { ItemID LLUUID } + { AssetID LLUUID } + { WearableType U8 } // U8, LLWearable::EWearType + } +} + +// +// AgentIsNowWearing +// (a.k.a. "Here's what I'm wearing now.") +// viewer->sim->dataserver +// reliable +{ + AgentIsNowWearing Low 383 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + WearableData Variable + { ItemID LLUUID } + { WearableType U8 } + } +} + + +// AgentCachedTexture +// viewer queries for cached textures on dataserver (via simulator) +// viewer -> simulator -> dataserver +// reliable +{ + AgentCachedTexture Low 384 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { SerialNum S32 } + } + { + WearableData Variable + { ID LLUUID } + { TextureIndex U8 } + } +} + +// AgentCachedTextureResponse +// response to viewer queries for cached textures on dataserver (via simulator) +// dataserver -> simulator -> viewer +// reliable +{ + AgentCachedTextureResponse Low 385 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { SerialNum S32 } + } + { + WearableData Variable + { TextureID LLUUID } + { TextureIndex U8 } + { HostName Variable 1 } + } +} + +// Request an AgentDataUpdate without changing any agent data. +{ + AgentDataUpdateRequest Low 386 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + +// AgentDataUpdate +// Updates a viewer or simulator's impression of agent-specific information. +// Used, for example, when an agent's group changes. +// dataserver -> simulator -> viewer +// reliable +{ + AgentDataUpdate Low 387 Trusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { FirstName Variable 1 } // string + { LastName Variable 1 } // string + { GroupTitle Variable 1 } // string + { ActiveGroupID LLUUID } // active group + { GroupPowers U64 } + { GroupName Variable 1 } // string + } +} + + +// GroupDataUpdate +// This is a bunch of group data that needs to be appropriatly routed based on presence info. +// dataserver -> simulator +{ + GroupDataUpdate Low 388 Trusted Zerocoded + { + AgentGroupData Variable + { AgentID LLUUID } + { GroupID LLUUID } + { AgentPowers U64 } + { GroupTitle Variable 1 } + } +} + +// AgentGroupDataUpdate +// Updates a viewer or simulator's impression of the groups an agent is in. +// dataserver -> simulator -> viewer +// reliable +{ + AgentGroupDataUpdate Low 389 Trusted Zerocoded UDPDeprecated + { + AgentData Single + { AgentID LLUUID } + } + { + GroupData Variable + { GroupID LLUUID } + { GroupPowers U64 } + { AcceptNotices BOOL } + { GroupInsigniaID LLUUID } + { Contribution S32 } + { GroupName Variable 1 } // string + } +} + +// AgentDropGroup +// Updates the viewer / simulator that an agent is no longer part of a group +// dataserver -> simulator -> viewer +// dataserver -> userserver +// reliable +{ + AgentDropGroup Low 390 Trusted Zerocoded UDPDeprecated + { + AgentData Single + { AgentID LLUUID } + { GroupID LLUUID } + } +} + +// LogTextMessage +// Asks the dataserver to log the contents of this message in the +// chat and IM log table. +// Sent from userserver (IM logging) and simulator (chat logging). +{ + LogTextMessage Low 391 Trusted Zerocoded + { + DataBlock Variable + { FromAgentId LLUUID } + { ToAgentId LLUUID } + { GlobalX F64 } + { GlobalY F64 } + { Time U32 } // utc seconds since epoch + { Message Variable 2 } // string + } +} + +// ViewerEffect +// Viewer side effect that's sent from one viewer, and broadcast to other agents nearby +// viewer-->sim (single effect created by viewer) +// sim-->viewer (multiple effects that can be seen by viewer) +// the AgentData block used for authentication for viewer-->sim messages +{ + ViewerEffect Medium 17 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + Effect Variable + { ID LLUUID } // unique UUID of the effect + { AgentID LLUUID } // yes, pack AgentID again (note this block is variable) + { Type U8 } // Type of the effect + { Duration F32 } // F32 time (seconds) + { Color Fixed 4 } // Color4U + { TypeData Variable 1 } // Type specific data + } +} + + +// CreateTrustedCircuit +// Sent to establish a trust relationship between two components. +// Only sent in response to a DenyTrustedCircuit message. +{ + CreateTrustedCircuit Low 392 NotTrusted Unencoded + { + DataBlock Single + { EndPointID LLUUID } + { Digest Fixed 32 } // 32 hex digits == 1 MD5 Digest + } +} + +// DenyTrustedCircuit +// Sent : +// - in response to failed CreateTrustedCircuit +// - to force the remote end-point to try to establish a trusted circuit +// - the reception of a trusted message on a non-trusted circuit +// This allows us to re-auth a circuit if it gets closed due to timeouts or network failures. +{ + DenyTrustedCircuit Low 393 NotTrusted Unencoded + { + DataBlock Single + { EndPointID LLUUID } + } +} + +// RequestTrustedCircuit +// If the destination does not trust the sender, a Deny is sent back. +{ + RequestTrustedCircuit Low 394 Trusted Unencoded +} + + +{ + RezSingleAttachmentFromInv Low 395 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Single + { ItemID LLUUID } + { OwnerID LLUUID } + { AttachmentPt U8 } // 0 for default + { ItemFlags U32 } + { GroupMask U32 } + { EveryoneMask U32 } + { NextOwnerMask U32 } + { Name Variable 1 } + { Description Variable 1 } + } +} + +{ + RezMultipleAttachmentsFromInv Low 396 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + HeaderData Single + { CompoundMsgID LLUUID } // All messages a single "compound msg" must have the same id + { TotalObjects U8 } + { FirstDetachAll BOOL } + } + { + ObjectData Variable // 1 to 4 of these per packet + { ItemID LLUUID } + { OwnerID LLUUID } + { AttachmentPt U8 } // 0 for default + { ItemFlags U32 } + { GroupMask U32 } + { EveryoneMask U32 } + { NextOwnerMask U32 } + { Name Variable 1 } + { Description Variable 1 } + } +} + + +{ + DetachAttachmentIntoInv Low 397 NotTrusted Unencoded + { + ObjectData Single + { AgentID LLUUID } + { ItemID LLUUID } + } +} + + +// Viewer -> Sim +// Used in "Make New Outfit" +{ + CreateNewOutfitAttachments Low 398 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + HeaderData Single + { NewFolderID LLUUID } + } + { + ObjectData Variable + { OldItemID LLUUID } + { OldFolderID LLUUID } + } +} + +//----------------------------------------------------------------------------- +// Personal information messages +//----------------------------------------------------------------------------- + +{ + UserInfoRequest Low 399 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } +} + +{ + UserInfoReply Low 400 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + UserData Single + { IMViaEMail BOOL } + { DirectoryVisibility Variable 1 } + { EMail Variable 2 } + } +} + +{ + UpdateUserInfo Low 401 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + UserData Single + { IMViaEMail BOOL } + { DirectoryVisibility Variable 1 } + } +} + + +//----------------------------------------------------------------------------- +// System operations and maintenance +//----------------------------------------------------------------------------- + + +// spaceserver -> sim +// tell a particular simulator to rename a parcel +{ + ParcelRename Low 402 Trusted Unencoded + { + ParcelData Variable + { ParcelID LLUUID } + { NewName Variable 1 } // string + } +} + + +// sim -> viewer +// initiate upload. primarily used for uploading raw files. +{ + InitiateDownload Low 403 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + } + { + FileData Single + { SimFilename Variable 1 } // string + { ViewerFilename Variable 1 } // string + } +} + +// Generalized system message. Each Requst has its own protocol for +// the StringData block format and contents. +{ + SystemMessage Low 404 Trusted Zerocoded + { + MethodData Single + { Method Variable 1 } + { Invoice LLUUID } + { Digest Fixed 32 } // 32 hex digits == 1 MD5 Digest + } + { + ParamList Variable + { Parameter Variable 1 } + } +} + + +//----------------------------------------------------------------------------- +// map messages +//----------------------------------------------------------------------------- + +// viewer -> sim +// reliable +// This message is sent up from the viewer to (eventually) get a list +// of all map layers and NULL-layer sims. +// Returns: MapLayerReply and MapBlockReply +{ + MapLayerRequest Low 405 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { Flags U32 } + { EstateID U32 } // filled in on sim + { Godlike BOOL } // filled in on sim + } +} + +// sim -> viewer +{ + MapLayerReply Low 406 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { Flags U32 } + } + { + LayerData Variable + { Left U32 } + { Right U32 } + { Top U32 } + { Bottom U32 } + { ImageID LLUUID } + } +} + +// viewer -> sim +// This message is sent up from the viewer to get a list +// of the sims in a specified region. +// Returns: MapBlockReply +{ + MapBlockRequest Low 407 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { Flags U32 } + { EstateID U32 } // filled in on sim + { Godlike BOOL } // filled in on sim + } + { + PositionData Single + { MinX U16 } // in region-widths + { MaxX U16 } // in region-widths + { MinY U16 } // in region-widths + { MaxY U16 } // in region-widths + } +} + +// viewer -> sim +// This message is sent up from the viewer to get a list +// of the sims with a given name. +// Returns: MapBlockReply +{ + MapNameRequest Low 408 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { Flags U32 } + { EstateID U32 } // filled in on sim + { Godlike BOOL } // filled in on sim + } + { + NameData Single + { Name Variable 1 } // string + } +} + +// sim -> viewer +{ + MapBlockReply Low 409 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { Flags U32 } + } + { + Data Variable + { X U16 } // in region-widths + { Y U16 } // in region-widths + { Name Variable 1 } // string + { Access U8 } // PG, mature, etc. + { RegionFlags U32 } + { WaterHeight U8 } // meters + { Agents U8 } + { MapImageID LLUUID } + } + { + Size Variable + { SizeX U16 } + { SizeY U16 } + } +} + +// viewer -> sim +// This message is sent up from the viewer to get a list +// of the items of a particular type on the map. +// Used for Telehubs, Agents, Events, Popular Places, etc. +// Returns: MapBlockReply +{ + MapItemRequest Low 410 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { Flags U32 } + { EstateID U32 } // filled in on sim + { Godlike BOOL } // filled in on sim + } + { + RequestData Single + { ItemType U32 } + { RegionHandle U64 } // filled in on sim + } +} + +// sim -> viewer +{ + MapItemReply Low 411 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { Flags U32 } + } + { + RequestData Single + { ItemType U32 } + } + { + Data Variable + { X U32 } // global position + { Y U32 } // global position + { ID LLUUID } // identifier id + { Extra S32 } // extra information + { Extra2 S32 } // extra information + { Name Variable 1 } // identifier string + } +} + +//----------------------------------------------------------------------------- +// Postcard messages +//----------------------------------------------------------------------------- +// reliable +{ + SendPostcard Low 412 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { AssetID LLUUID } + { PosGlobal LLVector3d } // Where snapshot was taken + { To Variable 1 } // dest email address(es) + { From Variable 1 } // src email address(es) + { Name Variable 1 } // src name + { Subject Variable 1 } // mail subject + { Msg Variable 2 } // message text + { AllowPublish BOOL } // Allow publishing on the web. + { MaturePublish BOOL } // profile is "mature" + } +} + +// RPC messages +// Script on simulator requests rpc channel from rpcserver +// simulator -> dataserver -> MySQL +{ + RpcChannelRequest Low 413 Trusted Unencoded + { + DataBlock Single + { GridX U32 } + { GridY U32 } + { TaskID LLUUID } + { ItemID LLUUID } + } +} + +// RpcServer allocated a session for the script +// ChannelID will be the NULL UUID if unable to register +// dataserver -> simulator +{ + RpcChannelReply Low 414 Trusted Unencoded + { + DataBlock Single + { TaskID LLUUID } + { ItemID LLUUID } + { ChannelID LLUUID } + } +} + +// Inbound RPC requests follow this path: +// RpcScriptRequestInbound: rpcserver -> spaceserver +// RpcScriptRequestInboundForward: spaceserver -> simulator +// reply: simulator -> rpcserver +{ + RpcScriptRequestInbound Low 415 NotTrusted Unencoded + { + TargetBlock Single + { GridX U32 } + { GridY U32 } + } + { + DataBlock Single + { TaskID LLUUID } + { ItemID LLUUID } + { ChannelID LLUUID } + { IntValue U32 } + { StringValue Variable 2 } // string + } +} + +// spaceserver -> simulator +{ + RpcScriptRequestInboundForward Low 416 Trusted Unencoded UDPDeprecated + { + DataBlock Single + { RPCServerIP IPADDR } + { RPCServerPort IPPORT } + { TaskID LLUUID } + { ItemID LLUUID } + { ChannelID LLUUID } + { IntValue U32 } + { StringValue Variable 2 } // string + } +} + +// simulator -> rpcserver +// Not trusted because trust establishment doesn't work here. +{ + RpcScriptReplyInbound Low 417 NotTrusted Unencoded + { + DataBlock Single + { TaskID LLUUID } + { ItemID LLUUID } + { ChannelID LLUUID } + { IntValue U32 } + { StringValue Variable 2 } // string + } +} + + +// ScriptMailRegistration +// Simulator -> dataserver +{ + ScriptMailRegistration Low 418 Trusted Unencoded + { + DataBlock Single + { TargetIP Variable 1 } // String IP + { TargetPort IPPORT } + { TaskID LLUUID } + { Flags U32 } + } +} + +// ParcelMediaCommandMessage +// Sends a parcel media command +{ + ParcelMediaCommandMessage Low 419 Trusted Unencoded + { + CommandBlock Single + { Flags U32 } + { Command U32 } + { Time F32 } + } +} + +// ParcelMediaUpdate +// Sends a parcel media update to a single user +// For global updates use the parcel manager. +{ + ParcelMediaUpdate Low 420 Trusted Unencoded + { + DataBlock Single + { MediaURL Variable 1 } // string + { MediaID LLUUID } + { MediaAutoScale U8 } + } + { + DataBlockExtended Single + { MediaType Variable 1 } + { MediaDesc Variable 1 } + { MediaWidth S32 } + { MediaHeight S32 } + { MediaLoop U8 } + } +} + +// LandStatRequest +// Sent by the viewer to request collider/script information for a parcel +{ + LandStatRequest Low 421 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + RequestData Single + { ReportType U32 } + { RequestFlags U32 } + { Filter Variable 1 } + { ParcelLocalID S32 } + } +} + +// LandStatReply +// Sent by the simulator in response to LandStatRequest +{ + LandStatReply Low 422 Trusted Unencoded UDPDeprecated + { + RequestData Single + { ReportType U32 } + { RequestFlags U32 } + { TotalObjectCount U32 } + } + { + ReportData Variable + { TaskLocalID U32 } + { TaskID LLUUID } + { LocationX F32 } + { LocationY F32 } + { LocationZ F32 } + { Score F32 } + { TaskName Variable 1 } + { OwnerName Variable 1 } + } +} + +// Generic Error -- this is used for sending an error message +// to a UDP recipient. The lowest common denominator is to at least +// log the message. More sophisticated receivers can do something +// smarter, for example, a money transaction failure can put up a +// more user visible UI widget. +{ + Error Low 423 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } // will forward to agentid if coming from trusted circuit + } + { + Data Single + { Code S32 } // matches http status codes + { Token Variable 1 } // some specific short string based message + { ID LLUUID } // the transactionid/uniqueid/sessionid whatever. + { System Variable 1 } // The hierarchical path to the system, eg, "message/handler" + { Message Variable 2 } // Human readable message + { Data Variable 2 } // Binary serialized LLSD for extra info. + } +} + +// ObjectIncludeInSearch +// viewer -> simulator +{ + ObjectIncludeInSearch Low 424 NotTrusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + ObjectData Variable + { ObjectLocalID U32 } + { IncludeInSearch BOOL } + } +} + + +// This message is sent from viewer -> simulator when the viewer wants +// to rez an object out of inventory back to its position before it +// last moved into the inventory +{ + RezRestoreToWorld Low 425 NotTrusted Unencoded UDPDeprecated + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + InventoryData Single + { ItemID LLUUID } + { FolderID LLUUID } + { CreatorID LLUUID } // permissions + { OwnerID LLUUID } // permissions + { GroupID LLUUID } // permissions + { BaseMask U32 } // permissions + { OwnerMask U32 } // permissions + { GroupMask U32 } // permissions + { EveryoneMask U32 } // permissions + { NextOwnerMask U32 } // permissions + { GroupOwned BOOL } // permissions + { TransactionID LLUUID } + { Type S8 } + { InvType S8 } + { Flags U32 } + { SaleType U8 } + { SalePrice S32 } + { Name Variable 1 } + { Description Variable 1 } + { CreationDate S32 } + { CRC U32 } + } +} + +// Link inventory +{ + LinkInventoryItem Low 426 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + InventoryBlock Single + { CallbackID U32 } // Async Response + { FolderID LLUUID } + { TransactionID LLUUID } // Going to become TransactionID + { OldItemID LLUUID } + { Type S8 } + { InvType S8 } + { Name Variable 1 } + { Description Variable 1 } + + } +} + +// RetrieveIMsExtended - extended version of RetrieveInstantMessages, +// used to get instant messages that were persisted out to the database while the user was offline +// sent between the simulator and dataserver +{ + RetrieveIMsExtended Low 427 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { IsPremium BOOL } + } +} + +// JoinGroupRequestExtended +// Extends JoinGroupRequest from viewer and passed to dataserver +// simulator -> dataserver +// reliable +{ + JoinGroupRequestExtended Low 428 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupLimit S32 } + } + { + GroupData Single + { GroupID LLUUID } + } +} + +// CreateGroupRequestExtended +// simulator -> dataserver, extends data from CreateGroupRequest +// reliable +{ + CreateGroupRequestExtended Low 429 Trusted Unencoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + { GroupLimit S32 } + } + { + GroupData Single + { Name Variable 1 } // string + { Charter Variable 2 } // string + { ShowInList BOOL } + { InsigniaID LLUUID } + { MembershipFee S32 } // S32 + { OpenEnrollment BOOL } // BOOL (U8) + { AllowPublish BOOL } // whether profile is externally visible or not + { MaturePublish BOOL } // profile is "mature" + } +} diff --git a/tools/parseMessageTemplate.js b/tools/parseMessageTemplate.js index 3d601a7..f46c18f 100644 --- a/tools/parseMessageTemplate.js +++ b/tools/parseMessageTemplate.js @@ -150,9 +150,9 @@ fs.readFile('./msg_template.msg', (err, data) => msgObjects.push(newMessage); }); - fs.writeFile('./msg_template.json', JSON.stringify(msgObjects), (err) => + fs.writeFile('./msg_template.json', JSON.stringify(msgObjects, null, 4), (err) => { console.log("JSON written"); }); } -}); \ No newline at end of file +}); diff --git a/tools/writePacketClasses.js b/tools/writePacketClasses.js index 24a4e6c..4993968 100644 --- a/tools/writePacketClasses.js +++ b/tools/writePacketClasses.js @@ -60,31 +60,31 @@ messages.forEach((message) => }); if (uuid) { - classString += 'import {UUID} from \'../UUID\';\n' + classString += 'import { UUID } from \'../UUID\';\n' } if (ipaddr) { - classString += 'import {IPAddress} from \'../IPAddress\';\n' + classString += 'import { IPAddress } from \'../IPAddress\';\n' } if (vector3) { - classString += 'import {Vector3} from \'../Vector3\';\n' + classString += 'import { Vector3 } from \'../Vector3\';\n' } if (vector4) { - classString += 'import {Vector4} from \'../Vector4\';\n' + classString += 'import { Vector4 } from \'../Vector4\';\n' } if (long) { - classString += 'import Long = require(\'long\');\n' + classString += 'import * as Long from \'long\';\n' } if (quaternion) { - classString += 'import {Quaternion} from \'../Quaternion\';\n' + classString += 'import { Quaternion } from \'../Quaternion\';\n' } - classString += 'import {MessageFlags} from \'../../enums/MessageFlags\';\n' + - 'import {MessageBase} from \'../MessageBase\';\n' + - 'import {Message} from \'../../enums/Message\';\n\n'; + classString += 'import { MessageFlags } from \'../../enums/MessageFlags\';\n' + + 'import { MessageBase } from \'../MessageBase\';\n' + + 'import { Message } from \'../../enums/Message\';\n\n'; classString += 'export class ' + message.name + 'Message implements MessageBase\n'; classString += '{\n'; @@ -535,7 +535,8 @@ messages.forEach((message) => firstCount = false; first = letConst + ' '; } - blockIndex = ' ' + first + 'count = buf.readUInt8(pos++);\n'; + blockIndex = ' if (pos >= buf.length)\n {\n return pos - startPos;\n }\n'; + blockIndex += ' ' + first + 'count = buf.readUInt8(pos++);\n'; blockIndex += ' this.' + block.name + ' = [];\n'; } else if (block.type === 'Multiple') @@ -775,13 +776,13 @@ messages.forEach((message) => }); //Now write the Messages class -let classString = '// This file has been automatically generated by writeMessageClasses.js\n\n'; +let classString = '// This file has been automatically generated by writePacketClasses.js\n\n'; messages.forEach((message) => { const name = message.name; classString += 'export * from \'./messages/'+name+'\';\n'; }); -classString += 'import {Message} from \'../enums/Message\';\n'; +classString += 'import { Message } from \'../enums/Message\';\n'; classString += '\n'; classString += 'const messages: {[index: number]: string} = {};\n'; const msgs = [];