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 = [];