PageRenderTime 56ms CodeModel.GetById 18ms RepoModel.GetById 1ms app.codeStats 0ms

/scripts/messages/message_template.msg

https://bitbucket.org/lindenlab/viewer-beta/
Unknown | 3258 lines | 2983 code | 275 blank | 0 comment | 0 complexity | ce0684581003014504efa65128fae21c MD5 | raw file
Possible License(s): LGPL-2.1
  1. // Linden Lab development message templates
  2. version 2.0
  3. // The Version 2.0 template requires preservation of message
  4. // numbers. Each message must be numbered relative to the
  5. // other messages of that type. The current highest number
  6. // for each type is listed below:
  7. // Low: 423
  8. // Medium: 18
  9. // High: 29
  10. // PLEASE UPDATE THIS WHEN YOU ADD A NEW MESSAGE!
  11. // *************************************************************************
  12. // Test Message
  13. // *************************************************************************
  14. // Test Message
  15. {
  16. TestMessage Low 1 NotTrusted Zerocoded
  17. {
  18. TestBlock1 Single
  19. { Test1 U32 }
  20. }
  21. {
  22. NeighborBlock Multiple 4
  23. { Test0 U32 }
  24. { Test1 U32 }
  25. { Test2 U32 }
  26. }
  27. }
  28. // *************************************************************************
  29. // Messaging Internal Data Management Message
  30. // *************************************************************************
  31. // *************************
  32. // List fixed messages first
  33. // *************************
  34. // Packet Ack - Ack a list of packets sent reliable
  35. {
  36. PacketAck Fixed 0xFFFFFFFB NotTrusted Unencoded
  37. {
  38. Packets Variable
  39. { ID U32 }
  40. }
  41. }
  42. // OpenCircuit - Tells the recipient's messaging system to open the descibed circuit
  43. {
  44. OpenCircuit Fixed 0xFFFFFFFC NotTrusted Unencoded UDPBlackListed
  45. {
  46. CircuitInfo Single
  47. { IP IPADDR }
  48. { Port IPPORT }
  49. }
  50. }
  51. // CloseCircuit - Tells the recipient's messaging system to close the descibed circuit
  52. {
  53. CloseCircuit Fixed 0xFFFFFFFD NotTrusted Unencoded
  54. }
  55. // ******************
  56. // End fixed messages
  57. // ******************
  58. // StartPingCheck - used to measure circuit ping times
  59. // PingID is used to determine how backlogged the ping was that was
  60. // returned (or how hosed the other side is)
  61. {
  62. StartPingCheck High 1 NotTrusted Unencoded
  63. {
  64. PingID Single
  65. { PingID U8 }
  66. { OldestUnacked U32 } // Current oldest "unacked" packet on the sender side
  67. }
  68. }
  69. // CompletePingCheck - used to measure circuit ping times
  70. {
  71. CompletePingCheck High 2 NotTrusted Unencoded
  72. {
  73. PingID Single
  74. { PingID U8 }
  75. }
  76. }
  77. // space->sim
  78. // sim->sim
  79. // AddCircuitCode - Tells the recipient's messaging system that this code
  80. // is for a legal circuit
  81. {
  82. AddCircuitCode Low 2 Trusted Unencoded
  83. {
  84. CircuitCode Single
  85. { Code U32 }
  86. { SessionID LLUUID }
  87. { AgentID LLUUID } // WARNING - may be null in valid message
  88. }
  89. }
  90. // viewer->sim
  91. // UseCircuitCode - Attempts to provide the recipient with IP and Port
  92. // info. In the case of viewers, the id is the session id. For other
  93. // machines it may be null. The session id will always be the session
  94. // id of the process, which every server will generate on startup and
  95. // the viewer will be handed after login.
  96. {
  97. UseCircuitCode Low 3 NotTrusted Unencoded
  98. {
  99. CircuitCode Single
  100. { Code U32 }
  101. { SessionID LLUUID }
  102. { ID LLUUID } // agent id
  103. }
  104. }
  105. // *************************************************************************
  106. // SpaceServer to Simulator Messages
  107. // ************************************************************************
  108. // Neighbor List - Passed anytime neighbors change
  109. {
  110. NeighborList High 3 Trusted Unencoded
  111. {
  112. NeighborBlock Multiple 4
  113. { IP IPADDR }
  114. { Port IPPORT }
  115. { PublicIP IPADDR }
  116. { PublicPort IPPORT }
  117. { RegionID LLUUID }
  118. { Name Variable 1 } // string
  119. { SimAccess U8 }
  120. }
  121. }
  122. // AvatarTextureUpdate
  123. // simulator -> dataserver
  124. // reliable
  125. {
  126. AvatarTextureUpdate Low 4 Trusted Zerocoded
  127. {
  128. AgentData Single
  129. { AgentID LLUUID }
  130. { TexturesChanged BOOL }
  131. }
  132. {
  133. WearableData Variable
  134. { CacheID LLUUID }
  135. { TextureIndex U8 }
  136. { HostName Variable 1 }
  137. }
  138. {
  139. TextureData Variable
  140. { TextureID LLUUID }
  141. }
  142. }
  143. // SimulatorMapUpdate
  144. // simulator -> dataserver
  145. // reliable
  146. {
  147. SimulatorMapUpdate Low 5 Trusted Unencoded
  148. {
  149. MapData Single
  150. { Flags U32 }
  151. }
  152. }
  153. // SimulatorSetMap
  154. // simulator -> dataserver
  155. // reliable
  156. // Used to upload a map image into the database (currently used only for Land For Sale)
  157. {
  158. SimulatorSetMap Low 6 Trusted Unencoded
  159. {
  160. MapData Single
  161. { RegionHandle U64 }
  162. { Type S32 }
  163. { MapImage LLUUID }
  164. }
  165. }
  166. // SubscribeLoad
  167. // spaceserver -> simulator
  168. // reliable
  169. {
  170. SubscribeLoad Low 7 Trusted Unencoded
  171. }
  172. // UnsubscribeLoad
  173. // spaceserver -> simulator
  174. // reliable
  175. {
  176. UnsubscribeLoad Low 8 Trusted Unencoded
  177. }
  178. // ************************************************************************
  179. // Simulator to SpaceServer Messages
  180. // ************************************************************************
  181. // SimulatorReady - indicates the sim has finished loading its state
  182. // and is ready to receive updates from others
  183. {
  184. SimulatorReady Low 9 Trusted Zerocoded
  185. {
  186. SimulatorBlock Single
  187. { SimName Variable 1 }
  188. { SimAccess U8 }
  189. { RegionFlags U32 }
  190. { RegionID LLUUID }
  191. { EstateID U32 }
  192. { ParentEstateID U32 }
  193. }
  194. {
  195. TelehubBlock Single
  196. { HasTelehub BOOL }
  197. { TelehubPos LLVector3 }
  198. }
  199. }
  200. // TelehubInfo - fill in the UI for telehub creation floater.
  201. // sim -> viewer
  202. // reliable
  203. {
  204. TelehubInfo Low 10 Trusted Unencoded
  205. {
  206. TelehubBlock Single
  207. { ObjectID LLUUID } // null if no telehub
  208. { ObjectName Variable 1 } // string
  209. { TelehubPos LLVector3 } // fallback if viewer can't find object
  210. { TelehubRot LLQuaternion }
  211. }
  212. {
  213. SpawnPointBlock Variable
  214. { SpawnPointPos LLVector3 } // relative to telehub position
  215. }
  216. }
  217. // SimulatorPresentAtLocation - indicates that the sim is present at a grid
  218. // location and passes what it believes its neighbors are
  219. {
  220. SimulatorPresentAtLocation Low 11 Trusted Unencoded
  221. {
  222. SimulatorPublicHostBlock Single
  223. { Port IPPORT }
  224. { SimulatorIP IPADDR }
  225. { GridX U32 }
  226. { GridY U32 }
  227. }
  228. {
  229. NeighborBlock Multiple 4
  230. { IP IPADDR }
  231. { Port IPPORT }
  232. }
  233. {
  234. SimulatorBlock Single
  235. { SimName Variable 1 }
  236. { SimAccess U8 }
  237. { RegionFlags U32 }
  238. { RegionID LLUUID }
  239. { EstateID U32 }
  240. { ParentEstateID U32 }
  241. }
  242. {
  243. TelehubBlock Variable
  244. { HasTelehub BOOL }
  245. { TelehubPos LLVector3 }
  246. }
  247. }
  248. // SimulatorLoad
  249. // simulator -> spaceserver
  250. // reliable
  251. {
  252. SimulatorLoad Low 12 Trusted Unencoded
  253. {
  254. SimulatorLoad Single
  255. { TimeDilation F32 }
  256. { AgentCount S32 }
  257. { CanAcceptAgents BOOL }
  258. }
  259. {
  260. AgentList Variable
  261. { CircuitCode U32 }
  262. { X U8 }
  263. { Y U8 }
  264. }
  265. }
  266. // Simulator Shutdown Request - Tells spaceserver that a simulator is trying to shutdown
  267. {
  268. SimulatorShutdownRequest Low 13 Trusted Unencoded
  269. }
  270. // ****************************************************************************
  271. // Presense messages
  272. // ****************************************************************************
  273. // sim -> dataserver
  274. {
  275. RegionPresenceRequestByRegionID Low 14 Trusted Unencoded
  276. {
  277. RegionData Variable
  278. { RegionID LLUUID }
  279. }
  280. }
  281. // sim -> dataserver
  282. {
  283. RegionPresenceRequestByHandle Low 15 Trusted Unencoded
  284. {
  285. RegionData Variable
  286. { RegionHandle U64 }
  287. }
  288. }
  289. // dataserver -> sim
  290. {
  291. RegionPresenceResponse Low 16 Trusted Zerocoded
  292. {
  293. RegionData Variable
  294. { RegionID LLUUID }
  295. { RegionHandle U64 }
  296. { InternalRegionIP IPADDR }
  297. { ExternalRegionIP IPADDR }
  298. { RegionPort IPPORT }
  299. { ValidUntil F64 }
  300. { Message Variable 1 }
  301. }
  302. }
  303. // ****************************************************************************
  304. // Simulator to dataserver messages
  305. // ****************************************************************************
  306. // Updates SimName, EstateID and SimAccess using RegionID as a key
  307. {
  308. UpdateSimulator Low 17 Trusted Unencoded
  309. {
  310. SimulatorInfo Single
  311. { RegionID LLUUID }
  312. { SimName Variable 1 }
  313. { EstateID U32 }
  314. { SimAccess U8 }
  315. }
  316. }
  317. // record dwell time.
  318. {
  319. LogDwellTime Low 18 Trusted Unencoded
  320. {
  321. DwellInfo Single
  322. { AgentID LLUUID }
  323. { SessionID LLUUID }
  324. { Duration F32 }
  325. { SimName Variable 1 }
  326. { RegionX U32 }
  327. { RegionY U32 }
  328. { AvgAgentsInView U8 }
  329. { AvgViewerFPS U8 }
  330. }
  331. }
  332. // Disabled feature response message
  333. {
  334. FeatureDisabled Low 19 Trusted Unencoded
  335. {
  336. FailureInfo Single
  337. { ErrorMessage Variable 1 }
  338. { AgentID LLUUID }
  339. { TransactionID LLUUID }
  340. }
  341. }
  342. // record lost money transactions. This message could be generated
  343. // from either the simulator or the dataserver, depending on how
  344. // the transaction failed.
  345. {
  346. LogFailedMoneyTransaction Low 20 Trusted Unencoded
  347. {
  348. TransactionData Single
  349. { TransactionID LLUUID }
  350. { TransactionTime U32 } // utc seconds since epoch
  351. { TransactionType S32 } // see lltransactiontypes.h
  352. { SourceID LLUUID }
  353. { DestID LLUUID } // destination of the transfer
  354. { Flags U8 }
  355. { Amount S32 }
  356. { SimulatorIP IPADDR } // U32 encoded IP
  357. { GridX U32 }
  358. { GridY U32 }
  359. { FailureType U8 }
  360. }
  361. }
  362. // complaint/bug-report - sim -> dataserver. see UserReport for details.
  363. // reliable
  364. {
  365. UserReportInternal Low 21 Trusted Zerocoded
  366. {
  367. ReportData Single
  368. { ReportType U8 }
  369. { Category U8 }
  370. { ReporterID LLUUID }
  371. { ViewerPosition LLVector3 }
  372. { AgentPosition LLVector3 }
  373. { ScreenshotID LLUUID }
  374. { ObjectID LLUUID }
  375. { OwnerID LLUUID }
  376. { LastOwnerID LLUUID }
  377. { CreatorID LLUUID }
  378. { RegionID LLUUID }
  379. { AbuserID LLUUID }
  380. { AbuseRegionName Variable 1 }
  381. { AbuseRegionID LLUUID }
  382. { Summary Variable 1 }
  383. { Details Variable 2 }
  384. { VersionString Variable 1 }
  385. }
  386. }
  387. // SetSimStatusInDatabase
  388. // alters the "simulator" table in the database
  389. // sim -> dataserver
  390. // reliable
  391. {
  392. SetSimStatusInDatabase Low 22 Trusted Unencoded
  393. {
  394. Data Single
  395. { RegionID LLUUID }
  396. { HostName Variable 1 }
  397. { X S32 }
  398. { Y S32 }
  399. { PID S32 }
  400. { AgentCount S32 }
  401. { TimeToLive S32 } // in seconds
  402. { Status Variable 1 }
  403. }
  404. }
  405. // SetSimPresenceInDatabase
  406. // updates the "presence" table in the database to ensure
  407. // that a given simulator is present and valid for a set amount of
  408. // time
  409. {
  410. SetSimPresenceInDatabase Low 23 Trusted Unencoded
  411. {
  412. SimData Single
  413. { RegionID LLUUID }
  414. { HostName Variable 1 }
  415. { GridX U32 }
  416. { GridY U32 }
  417. { PID S32 }
  418. { AgentCount S32 }
  419. { TimeToLive S32 } // in seconds
  420. { Status Variable 1 }
  421. }
  422. }
  423. // ***************************************************************************
  424. // Economy messages
  425. // ***************************************************************************
  426. // once we use local stats, this will include a region handle
  427. {
  428. EconomyDataRequest Low 24 NotTrusted Unencoded
  429. }
  430. // dataserver to sim, response w/ econ data
  431. {
  432. EconomyData Low 25 Trusted Zerocoded
  433. {
  434. Info Single
  435. { ObjectCapacity S32 }
  436. { ObjectCount S32 }
  437. { PriceEnergyUnit S32 }
  438. { PriceObjectClaim S32 }
  439. { PricePublicObjectDecay S32 }
  440. { PricePublicObjectDelete S32 }
  441. { PriceParcelClaim S32 }
  442. { PriceParcelClaimFactor F32 }
  443. { PriceUpload S32 }
  444. { PriceRentLight S32 }
  445. { TeleportMinPrice S32 }
  446. { TeleportPriceExponent F32 }
  447. { EnergyEfficiency F32 }
  448. { PriceObjectRent F32 }
  449. { PriceObjectScaleFactor F32 }
  450. { PriceParcelRent S32 }
  451. { PriceGroupCreate S32 }
  452. }
  453. }
  454. // ***************************************************************************
  455. // Search messages
  456. // ***************************************************************************
  457. // AvatarPickerRequest
  458. // Get a list of names to select a person
  459. // viewer -> sim -> data
  460. // reliable
  461. {
  462. AvatarPickerRequest Low 26 NotTrusted Unencoded
  463. {
  464. AgentData Single
  465. { AgentID LLUUID }
  466. { SessionID LLUUID }
  467. { QueryID LLUUID }
  468. }
  469. {
  470. Data Single
  471. { Name Variable 1 }
  472. }
  473. }
  474. // backend implementation which tracks if the user is a god.
  475. {
  476. AvatarPickerRequestBackend Low 27 Trusted Unencoded
  477. {
  478. AgentData Single
  479. { AgentID LLUUID }
  480. { SessionID LLUUID }
  481. { QueryID LLUUID }
  482. { GodLevel U8 }
  483. }
  484. {
  485. Data Single
  486. { Name Variable 1 }
  487. }
  488. }
  489. // AvatarPickerReply
  490. // List of names to select a person
  491. // reliable
  492. {
  493. AvatarPickerReply Low 28 Trusted Unencoded
  494. {
  495. AgentData Single
  496. { AgentID LLUUID }
  497. { QueryID LLUUID }
  498. }
  499. {
  500. Data Variable
  501. { AvatarID LLUUID }
  502. { FirstName Variable 1 }
  503. { LastName Variable 1 }
  504. }
  505. }
  506. // PlacesQuery
  507. // Used for getting a list of places for the group land panel
  508. // and the user land holdings panel. NOT for the directory.
  509. {
  510. PlacesQuery Low 29 NotTrusted Zerocoded
  511. {
  512. AgentData Single
  513. { AgentID LLUUID }
  514. { SessionID LLUUID }
  515. { QueryID LLUUID }
  516. }
  517. {
  518. TransactionData Single
  519. { TransactionID LLUUID }
  520. }
  521. {
  522. QueryData Single
  523. { QueryText Variable 1 }
  524. { QueryFlags U32 }
  525. { Category S8 }
  526. { SimName Variable 1 }
  527. }
  528. }
  529. // PlacesReply
  530. // dataserver -> simulator -> viewer
  531. // If the user has specified a location, use that to compute
  532. // global x,y,z. Otherwise, use center of the AABB.
  533. // reliable
  534. {
  535. PlacesReply Low 30 Trusted Zerocoded UDPDeprecated
  536. {
  537. AgentData Single
  538. { AgentID LLUUID }
  539. { QueryID LLUUID }
  540. }
  541. {
  542. TransactionData Single
  543. { TransactionID LLUUID }
  544. }
  545. {
  546. QueryData Variable
  547. { OwnerID LLUUID }
  548. { Name Variable 1 }
  549. { Desc Variable 1 }
  550. { ActualArea S32 }
  551. { BillableArea S32 }
  552. { Flags U8 }
  553. { GlobalX F32 } // meters
  554. { GlobalY F32 } // meters
  555. { GlobalZ F32 } // meters
  556. { SimName Variable 1 }
  557. { SnapshotID LLUUID }
  558. { Dwell F32 }
  559. { Price S32 }
  560. //{ ProductSKU Variable 1 }
  561. }
  562. }
  563. // DirFindQuery viewer->sim
  564. // Message to start asking questions for the directory
  565. {
  566. DirFindQuery Low 31 NotTrusted Zerocoded
  567. {
  568. AgentData Single
  569. { AgentID LLUUID }
  570. { SessionID LLUUID }
  571. }
  572. {
  573. QueryData Single
  574. { QueryID LLUUID }
  575. { QueryText Variable 1 }
  576. { QueryFlags U32 }
  577. { QueryStart S32 } // prev/next page support
  578. }
  579. }
  580. // DirFindQueryBackend sim->data
  581. // Trusted message generated by receipt of DirFindQuery to sim.
  582. {
  583. DirFindQueryBackend Low 32 Trusted Zerocoded
  584. {
  585. AgentData Single
  586. { AgentID LLUUID }
  587. }
  588. {
  589. QueryData Single
  590. { QueryID LLUUID }
  591. { QueryText Variable 1 }
  592. { QueryFlags U32 }
  593. { QueryStart S32 } // prev/next page support
  594. { EstateID U32 }
  595. { Godlike BOOL }
  596. }
  597. }
  598. // DirPlacesQuery viewer->sim
  599. // Used for the Find directory of places
  600. {
  601. DirPlacesQuery Low 33 NotTrusted Zerocoded
  602. {
  603. AgentData Single
  604. { AgentID LLUUID }
  605. { SessionID LLUUID }
  606. }
  607. {
  608. QueryData Single
  609. { QueryID LLUUID }
  610. { QueryText Variable 1 }
  611. { QueryFlags U32 }
  612. { Category S8 }
  613. { SimName Variable 1 }
  614. { QueryStart S32 }
  615. }
  616. }
  617. // DirPlacesQueryBackend sim->dataserver
  618. // Used for the Find directory of places.
  619. {
  620. DirPlacesQueryBackend Low 34 Trusted Zerocoded
  621. {
  622. AgentData Single
  623. { AgentID LLUUID }
  624. }
  625. {
  626. QueryData Single
  627. { QueryID LLUUID }
  628. { QueryText Variable 1 }
  629. { QueryFlags U32 }
  630. { Category S8 }
  631. { SimName Variable 1 }
  632. { EstateID U32 }
  633. { Godlike BOOL }
  634. { QueryStart S32 }
  635. }
  636. }
  637. // DirPlacesReply dataserver->sim->viewer
  638. // If the user has specified a location, use that to compute
  639. // global x,y,z. Otherwise, use center of the AABB.
  640. // reliable
  641. {
  642. DirPlacesReply Low 35 Trusted Zerocoded
  643. {
  644. AgentData Single
  645. { AgentID LLUUID }
  646. }
  647. {
  648. QueryData Variable
  649. { QueryID LLUUID }
  650. }
  651. {
  652. QueryReplies Variable
  653. { ParcelID LLUUID }
  654. { Name Variable 1 }
  655. { ForSale BOOL }
  656. { Auction BOOL }
  657. { Dwell F32 }
  658. }
  659. {
  660. StatusData Variable
  661. { Status U32 }
  662. }
  663. }
  664. // DirPeopleReply
  665. {
  666. DirPeopleReply Low 36 Trusted Zerocoded
  667. {
  668. AgentData Single
  669. { AgentID LLUUID }
  670. }
  671. {
  672. QueryData Single
  673. { QueryID LLUUID }
  674. }
  675. {
  676. QueryReplies Variable
  677. { AgentID LLUUID }
  678. { FirstName Variable 1 }
  679. { LastName Variable 1 }
  680. { Group Variable 1 }
  681. { Online BOOL }
  682. { Reputation S32 }
  683. }
  684. }
  685. // DirEventsReply
  686. {
  687. DirEventsReply Low 37 Trusted Zerocoded
  688. {
  689. AgentData Single
  690. { AgentID LLUUID }
  691. }
  692. {
  693. QueryData Single
  694. { QueryID LLUUID }
  695. }
  696. {
  697. QueryReplies Variable
  698. { OwnerID LLUUID }
  699. { Name Variable 1 }
  700. { EventID U32 }
  701. { Date Variable 1 }
  702. { UnixTime U32 }
  703. { EventFlags U32 }
  704. }
  705. {
  706. StatusData Variable
  707. { Status U32 }
  708. }
  709. }
  710. // DirGroupsReply
  711. // dataserver -> userserver -> viewer
  712. // reliable
  713. {
  714. DirGroupsReply Low 38 Trusted Zerocoded
  715. {
  716. AgentData Single
  717. { AgentID LLUUID }
  718. }
  719. {
  720. QueryData Single
  721. { QueryID LLUUID }
  722. }
  723. {
  724. QueryReplies Variable
  725. { GroupID LLUUID }
  726. { GroupName Variable 1 } // string
  727. { Members S32 }
  728. { SearchOrder F32 }
  729. }
  730. }
  731. // DirClassifiedQuery viewer->sim
  732. // reliable
  733. {
  734. DirClassifiedQuery Low 39 NotTrusted Zerocoded
  735. {
  736. AgentData Single
  737. { AgentID LLUUID }
  738. { SessionID LLUUID }
  739. }
  740. {
  741. QueryData Single
  742. { QueryID LLUUID }
  743. { QueryText Variable 1 }
  744. { QueryFlags U32 }
  745. { Category U32 }
  746. { QueryStart S32 }
  747. }
  748. }
  749. // DirClassifiedQueryBackend sim->dataserver
  750. // reliable
  751. {
  752. DirClassifiedQueryBackend Low 40 Trusted Zerocoded
  753. {
  754. AgentData Single
  755. { AgentID LLUUID }
  756. }
  757. {
  758. QueryData Single
  759. { QueryID LLUUID }
  760. { QueryText Variable 1 }
  761. { QueryFlags U32 }
  762. { Category U32 }
  763. { EstateID U32 }
  764. { Godlike BOOL }
  765. { QueryStart S32 }
  766. }
  767. }
  768. // DirClassifiedReply dataserver->sim->viewer
  769. // reliable
  770. {
  771. DirClassifiedReply Low 41 Trusted Zerocoded
  772. {
  773. AgentData Single
  774. { AgentID LLUUID }
  775. }
  776. {
  777. QueryData Single
  778. { QueryID LLUUID }
  779. }
  780. {
  781. QueryReplies Variable
  782. { ClassifiedID LLUUID }
  783. { Name Variable 1 }
  784. { ClassifiedFlags U8 }
  785. { CreationDate U32 }
  786. { ExpirationDate U32 }
  787. { PriceForListing S32 }
  788. }
  789. {
  790. StatusData Variable
  791. { Status U32 }
  792. }
  793. }
  794. // AvatarClassifiedReply
  795. // dataserver -> simulator -> viewer
  796. // Send the header information for this avatar's classifieds
  797. // This fills in the tabs of the Classifieds panel.
  798. // reliable
  799. {
  800. AvatarClassifiedReply Low 42 Trusted Unencoded
  801. {
  802. AgentData Single
  803. { AgentID LLUUID }
  804. { TargetID LLUUID }
  805. }
  806. {
  807. Data Variable
  808. { ClassifiedID LLUUID }
  809. { Name Variable 1 }
  810. }
  811. }
  812. // ClassifiedInfoRequest
  813. // viewer -> simulator
  814. // simulator -> dataserver
  815. // reliable
  816. {
  817. ClassifiedInfoRequest Low 43 NotTrusted Zerocoded
  818. {
  819. AgentData Single
  820. { AgentID LLUUID }
  821. { SessionID LLUUID }
  822. }
  823. {
  824. Data Single
  825. { ClassifiedID LLUUID }
  826. }
  827. }
  828. // ClassifiedInfoReply
  829. // dataserver -> simulator
  830. // simulator -> viewer
  831. // reliable
  832. {
  833. ClassifiedInfoReply Low 44 Trusted Unencoded
  834. {
  835. AgentData Single
  836. { AgentID LLUUID }
  837. }
  838. {
  839. Data Single
  840. { ClassifiedID LLUUID }
  841. { CreatorID LLUUID }
  842. { CreationDate U32 }
  843. { ExpirationDate U32 }
  844. { Category U32 }
  845. { Name Variable 1 }
  846. { Desc Variable 2 }
  847. { ParcelID LLUUID }
  848. { ParentEstate U32 }
  849. { SnapshotID LLUUID }
  850. { SimName Variable 1 }
  851. { PosGlobal LLVector3d }
  852. { ParcelName Variable 1 }
  853. { ClassifiedFlags U8 }
  854. { PriceForListing S32 }
  855. }
  856. }
  857. // ClassifiedInfoUpdate
  858. // Update a classified. ParcelID and EstateID are set
  859. // on the simulator as the message passes through.
  860. // viewer -> simulator -> dataserver
  861. // reliable
  862. {
  863. ClassifiedInfoUpdate Low 45 NotTrusted Unencoded
  864. {
  865. AgentData Single
  866. { AgentID LLUUID }
  867. { SessionID LLUUID }
  868. }
  869. {
  870. Data Single
  871. { ClassifiedID LLUUID }
  872. { Category U32 }
  873. { Name Variable 1 }
  874. { Desc Variable 2 }
  875. { ParcelID LLUUID }
  876. { ParentEstate U32 }
  877. { SnapshotID LLUUID }
  878. { PosGlobal LLVector3d }
  879. { ClassifiedFlags U8 }
  880. { PriceForListing S32 }
  881. }
  882. }
  883. // ClassifiedDelete
  884. // Delete a classified from the database.
  885. // viewer -> simulator -> dataserver
  886. // reliable
  887. {
  888. ClassifiedDelete Low 46 NotTrusted Unencoded
  889. {
  890. AgentData Single
  891. { AgentID LLUUID }
  892. { SessionID LLUUID }
  893. }
  894. {
  895. Data Single
  896. { ClassifiedID LLUUID }
  897. }
  898. }
  899. // ClassifiedGodDelete
  900. // Delete a classified from the database.
  901. // QueryID is needed so database can send a repeat list of
  902. // classified.
  903. // viewer -> simulator -> dataserver
  904. // reliable
  905. {
  906. ClassifiedGodDelete Low 47 NotTrusted Unencoded
  907. {
  908. AgentData Single
  909. { AgentID LLUUID }
  910. { SessionID LLUUID }
  911. }
  912. {
  913. Data Single
  914. { ClassifiedID LLUUID }
  915. { QueryID LLUUID }
  916. }
  917. }
  918. // DirLandQuery viewer->sim
  919. // Special query for the land for sale/auction panel.
  920. // reliable
  921. {
  922. DirLandQuery Low 48 NotTrusted Zerocoded
  923. {
  924. AgentData Single
  925. { AgentID LLUUID }
  926. { SessionID LLUUID }
  927. }
  928. {
  929. QueryData Single
  930. { QueryID LLUUID }
  931. { QueryFlags U32 }
  932. { SearchType U32 }
  933. { Price S32 }
  934. { Area S32 }
  935. { QueryStart S32 }
  936. }
  937. }
  938. // DirLandQueryBackend sim->dataserver
  939. // Special query for the land for sale/auction panel.
  940. {
  941. DirLandQueryBackend Low 49 Trusted Zerocoded
  942. {
  943. AgentData Single
  944. { AgentID LLUUID }
  945. }
  946. {
  947. QueryData Single
  948. { QueryID LLUUID }
  949. { QueryFlags U32 }
  950. { SearchType U32 }
  951. { Price S32 }
  952. { Area S32 }
  953. { QueryStart S32 }
  954. { EstateID U32 }
  955. { Godlike BOOL }
  956. }
  957. }
  958. // DirLandReply
  959. // dataserver -> simulator -> viewer
  960. // reliable
  961. {
  962. DirLandReply Low 50 Trusted Zerocoded UDPDeprecated
  963. {
  964. AgentData Single
  965. { AgentID LLUUID }
  966. }
  967. {
  968. QueryData Single
  969. { QueryID LLUUID }
  970. }
  971. {
  972. QueryReplies Variable
  973. { ParcelID LLUUID }
  974. { Name Variable 1 }
  975. { Auction BOOL }
  976. { ForSale BOOL }
  977. { SalePrice S32 }
  978. { ActualArea S32 }
  979. //{ ProductSKU Variable 1 }
  980. }
  981. }
  982. // DEPRECATED: DirPopularQuery viewer->sim
  983. // Special query for the land for sale/auction panel.
  984. // reliable
  985. {
  986. DirPopularQuery Low 51 NotTrusted Zerocoded Deprecated
  987. {
  988. AgentData Single
  989. { AgentID LLUUID }
  990. { SessionID LLUUID }
  991. }
  992. {
  993. QueryData Single
  994. { QueryID LLUUID }
  995. { QueryFlags U32 }
  996. }
  997. }
  998. // DEPRECATED: DirPopularQueryBackend sim->dataserver
  999. // Special query for the land for sale/auction panel.
  1000. // reliable
  1001. {
  1002. DirPopularQueryBackend Low 52 Trusted Zerocoded Deprecated
  1003. {
  1004. AgentData Single
  1005. { AgentID LLUUID }
  1006. }
  1007. {
  1008. QueryData Single
  1009. { QueryID LLUUID }
  1010. { QueryFlags U32 }
  1011. { EstateID U32 }
  1012. { Godlike BOOL }
  1013. }
  1014. }
  1015. // DEPRECATED: DirPopularReply
  1016. // dataserver -> simulator -> viewer
  1017. // reliable
  1018. {
  1019. DirPopularReply Low 53 Trusted Zerocoded Deprecated
  1020. {
  1021. AgentData Single
  1022. { AgentID LLUUID }
  1023. }
  1024. {
  1025. QueryData Single
  1026. { QueryID LLUUID }
  1027. }
  1028. {
  1029. QueryReplies Variable
  1030. { ParcelID LLUUID }
  1031. { Name Variable 1 }
  1032. { Dwell F32 }
  1033. }
  1034. }
  1035. // ParcelInfoRequest
  1036. // viewer -> simulator -> dataserver
  1037. // reliable
  1038. {
  1039. ParcelInfoRequest Low 54 NotTrusted Unencoded
  1040. {
  1041. AgentData Single
  1042. { AgentID LLUUID }
  1043. { SessionID LLUUID }
  1044. }
  1045. {
  1046. Data Single
  1047. { ParcelID LLUUID }
  1048. }
  1049. }
  1050. // ParcelInfoReply
  1051. // dataserver -> simulator -> viewer
  1052. // reliable
  1053. {
  1054. ParcelInfoReply Low 55 Trusted Zerocoded
  1055. {
  1056. AgentData Single
  1057. { AgentID LLUUID }
  1058. }
  1059. {
  1060. Data Single
  1061. { ParcelID LLUUID }
  1062. { OwnerID LLUUID }
  1063. { Name Variable 1 }
  1064. { Desc Variable 1 }
  1065. { ActualArea S32 }
  1066. { BillableArea S32 }
  1067. { Flags U8 }
  1068. { GlobalX F32 } // meters
  1069. { GlobalY F32 } // meters
  1070. { GlobalZ F32 } // meters
  1071. { SimName Variable 1 }
  1072. { SnapshotID LLUUID }
  1073. { Dwell F32 }
  1074. { SalePrice S32 }
  1075. { AuctionID S32 }
  1076. }
  1077. }
  1078. // ParcelObjectOwnersRequest
  1079. // viewer -> simulator
  1080. // reliable
  1081. {
  1082. ParcelObjectOwnersRequest Low 56 NotTrusted Unencoded
  1083. {
  1084. AgentData Single
  1085. { AgentID LLUUID }
  1086. { SessionID LLUUID }
  1087. }
  1088. {
  1089. ParcelData Single
  1090. { LocalID S32 }
  1091. }
  1092. }
  1093. // ParcelObjectOwnersReply
  1094. // simulator -> viewer
  1095. // reliable
  1096. {
  1097. ParcelObjectOwnersReply Low 57 Trusted Zerocoded UDPDeprecated
  1098. {
  1099. Data Variable
  1100. { OwnerID LLUUID }
  1101. { IsGroupOwned BOOL }
  1102. { Count S32 }
  1103. { OnlineStatus BOOL }
  1104. }
  1105. }
  1106. // GroupNoticeListRequest
  1107. // viewer -> simulator -> dataserver
  1108. // reliable
  1109. {
  1110. GroupNoticesListRequest Low 58 NotTrusted Unencoded
  1111. {
  1112. AgentData Single
  1113. { AgentID LLUUID }
  1114. { SessionID LLUUID }
  1115. }
  1116. {
  1117. Data Single
  1118. { GroupID LLUUID }
  1119. }
  1120. }
  1121. // GroupNoticesListReply
  1122. // dataserver -> simulator -> viewer
  1123. // reliable
  1124. {
  1125. GroupNoticesListReply Low 59 Trusted Unencoded
  1126. {
  1127. AgentData Single
  1128. { AgentID LLUUID }
  1129. { GroupID LLUUID }
  1130. }
  1131. {
  1132. Data Variable
  1133. { NoticeID LLUUID }
  1134. { Timestamp U32 }
  1135. { FromName Variable 2 }
  1136. { Subject Variable 2 }
  1137. { HasAttachment BOOL }
  1138. { AssetType U8 }
  1139. }
  1140. }
  1141. // GroupNoticeRequest
  1142. // viewer -> simulator
  1143. // simulator -> dataserver
  1144. // reliable
  1145. {
  1146. GroupNoticeRequest Low 60 NotTrusted Unencoded
  1147. {
  1148. AgentData Single
  1149. { AgentID LLUUID }
  1150. { SessionID LLUUID }
  1151. }
  1152. {
  1153. Data Single
  1154. { GroupNoticeID LLUUID }
  1155. }
  1156. }
  1157. // GroupNoticeAdd
  1158. // Add a group notice.
  1159. // simulator -> dataserver
  1160. // reliable
  1161. {
  1162. GroupNoticeAdd Low 61 Trusted Unencoded
  1163. {
  1164. AgentData Single
  1165. { AgentID LLUUID }
  1166. }
  1167. {
  1168. MessageBlock Single
  1169. { ToGroupID LLUUID }
  1170. { ID LLUUID }
  1171. { Dialog U8 }
  1172. { FromAgentName Variable 1 }
  1173. { Message Variable 2 }
  1174. { BinaryBucket Variable 2 }
  1175. }
  1176. }
  1177. // ****************************************************************************
  1178. // Teleport messages
  1179. //
  1180. // The teleport messages are numerous, so I have attempted to give them a
  1181. // consistent naming convention. Since there is a bit of glob pattern
  1182. // aliasing, the rules are applied in order.
  1183. //
  1184. // Teleport* - viewer->sim or sim->viewer message which announces a
  1185. // teleportation request, progrees, start, or end.
  1186. // Data* - sim->data or data->sim trusted message.
  1187. // Space* - sim->space or space->sim trusted messaging
  1188. // *Lure - A lure message to pass around information.
  1189. //
  1190. // All actual viewer teleports will begin with a Teleport* message and
  1191. // end in a TeleportStart, TeleportLocal or TeleportFailed message. The TeleportFailed
  1192. // message may be returned by any process and must be routed through the
  1193. // teleporting agent's simulator and back to the viewer.
  1194. // ****************************************************************************
  1195. // TeleportRequest
  1196. // viewer -> sim specifying exact teleport destination
  1197. {
  1198. TeleportRequest Low 62 NotTrusted Unencoded
  1199. {
  1200. AgentData Single
  1201. { AgentID LLUUID }
  1202. { SessionID LLUUID }
  1203. }
  1204. {
  1205. Info Single
  1206. { RegionID LLUUID }
  1207. { Position LLVector3 }
  1208. { LookAt LLVector3 }
  1209. }
  1210. }
  1211. // TeleportLocationRequest
  1212. // viewer -> sim specifying exact teleport destination
  1213. {
  1214. TeleportLocationRequest Low 63 NotTrusted Unencoded
  1215. {
  1216. AgentData Single
  1217. { AgentID LLUUID }
  1218. { SessionID LLUUID }
  1219. }
  1220. {
  1221. Info Single
  1222. { RegionHandle U64 }
  1223. { Position LLVector3 }
  1224. { LookAt LLVector3 }
  1225. }
  1226. }
  1227. // TeleportLocal
  1228. // sim -> viewer reply telling the viewer that we've successfully TP'd
  1229. // to somewhere else within the sim
  1230. {
  1231. TeleportLocal Low 64 Trusted Unencoded
  1232. {
  1233. Info Single
  1234. { AgentID LLUUID }
  1235. { LocationID U32 }
  1236. { Position LLVector3 } // region
  1237. { LookAt LLVector3 }
  1238. { TeleportFlags U32 }
  1239. }
  1240. }
  1241. // TeleportLandmarkRequest viewer->sim
  1242. // teleport to landmark asset ID destination. use LLUUD::null for home.
  1243. {
  1244. TeleportLandmarkRequest Low 65 NotTrusted Zerocoded
  1245. {
  1246. Info Single
  1247. { AgentID LLUUID }
  1248. { SessionID LLUUID }
  1249. { LandmarkID LLUUID }
  1250. }
  1251. }
  1252. // TeleportProgress sim->viewer
  1253. // Tell the agent how the teleport is going.
  1254. {
  1255. TeleportProgress Low 66 Trusted Unencoded
  1256. {
  1257. AgentData Single
  1258. { AgentID LLUUID }
  1259. }
  1260. {
  1261. Info Single
  1262. { TeleportFlags U32 }
  1263. { Message Variable 1 } // string
  1264. }
  1265. }
  1266. // DataHomeLocationRequest sim->data
  1267. // Request
  1268. {
  1269. DataHomeLocationRequest Low 67 Trusted Zerocoded
  1270. {
  1271. Info Single
  1272. { AgentID LLUUID }
  1273. { KickedFromEstateID U32 }
  1274. }
  1275. {
  1276. AgentInfo Single
  1277. { AgentEffectiveMaturity U32 }
  1278. }
  1279. }
  1280. // DataHomeLocationReply data->sim
  1281. // response is the location of agent home.
  1282. {
  1283. DataHomeLocationReply Low 68 Trusted Unencoded
  1284. {
  1285. Info Single
  1286. { AgentID LLUUID }
  1287. { RegionHandle U64 }
  1288. { Position LLVector3 } // region coords
  1289. { LookAt LLVector3 }
  1290. }
  1291. }
  1292. // TeleportFinish sim->viewer
  1293. // called when all of the information has been collected and readied for
  1294. // the agent.
  1295. {
  1296. TeleportFinish Low 69 Trusted Unencoded UDPBlackListed
  1297. {
  1298. Info Single
  1299. { AgentID LLUUID }
  1300. { LocationID U32 }
  1301. { SimIP IPADDR }
  1302. { SimPort IPPORT }
  1303. { RegionHandle U64 }
  1304. { SeedCapability Variable 2 } // URL
  1305. { SimAccess U8 }
  1306. { TeleportFlags U32 }
  1307. }
  1308. }
  1309. // StartLure viewer->sim
  1310. // Sent from viewer to the local simulator to lure target id to near
  1311. // agent id. This will generate an instant message that will be routed
  1312. // through the space server and out to the userserver. When that IM
  1313. // goes through the userserver and the TargetID is online, the
  1314. // userserver will send an InitializeLure to the spaceserver. When that
  1315. // packet is acked, the original instant message is finally forwarded to
  1316. // TargetID.
  1317. {
  1318. StartLure Low 70 NotTrusted Unencoded
  1319. {
  1320. AgentData Single
  1321. { AgentID LLUUID }
  1322. { SessionID LLUUID }
  1323. }
  1324. {
  1325. Info Single
  1326. { LureType U8 }
  1327. { Message Variable 1 }
  1328. }
  1329. {
  1330. TargetData Variable
  1331. { TargetID LLUUID }
  1332. }
  1333. }
  1334. // TeleportLureRequest viewer->sim
  1335. // Message from target of lure to begin the teleport process on the
  1336. // local simulator.
  1337. {
  1338. TeleportLureRequest Low 71 NotTrusted Unencoded
  1339. {
  1340. Info Single
  1341. { AgentID LLUUID }
  1342. { SessionID LLUUID }
  1343. { LureID LLUUID }
  1344. { TeleportFlags U32 }
  1345. }
  1346. }
  1347. // TeleportCancel viewer->sim
  1348. // reliable
  1349. {
  1350. TeleportCancel Low 72 NotTrusted Unencoded
  1351. {
  1352. Info Single
  1353. { AgentID LLUUID }
  1354. { SessionID LLUUID }
  1355. }
  1356. }
  1357. // TeleportStart sim->viewer
  1358. // announce a successful teleport request to the viewer.
  1359. {
  1360. TeleportStart Low 73 Trusted Unencoded
  1361. {
  1362. Info Single
  1363. { TeleportFlags U32 }
  1364. }
  1365. }
  1366. // TeleportFailed somewhere->sim->viewer
  1367. // announce failure of teleport request
  1368. {
  1369. TeleportFailed Low 74 Trusted Unencoded
  1370. {
  1371. Info Single
  1372. { AgentID LLUUID }
  1373. { Reason Variable 1 } // string
  1374. }
  1375. {
  1376. AlertInfo Variable
  1377. { Message Variable 1 } // string id
  1378. { ExtraParams Variable 1 } // llsd extra parameters
  1379. }
  1380. }
  1381. // ***************************************************************************
  1382. // Viewer to Simulator Messages
  1383. // ***************************************************************************
  1384. // Undo
  1385. {
  1386. Undo Low 75 NotTrusted Unencoded
  1387. {
  1388. AgentData Single
  1389. { AgentID LLUUID }
  1390. { SessionID LLUUID }
  1391. { GroupID LLUUID }
  1392. }
  1393. {
  1394. ObjectData Variable
  1395. { ObjectID LLUUID }
  1396. }
  1397. }
  1398. // Redo
  1399. {
  1400. Redo Low 76 NotTrusted Unencoded
  1401. {
  1402. AgentData Single
  1403. { AgentID LLUUID }
  1404. { SessionID LLUUID }
  1405. { GroupID LLUUID }
  1406. }
  1407. {
  1408. ObjectData Variable
  1409. { ObjectID LLUUID }
  1410. }
  1411. }
  1412. // UndoLand
  1413. {
  1414. UndoLand Low 77 NotTrusted Unencoded
  1415. {
  1416. AgentData Single
  1417. { AgentID LLUUID }
  1418. { SessionID LLUUID }
  1419. }
  1420. }
  1421. // AgentPause - viewer occasionally will block, inform simulator of this fact
  1422. {
  1423. AgentPause Low 78 NotTrusted Unencoded
  1424. {
  1425. AgentData Single
  1426. { AgentID LLUUID }
  1427. { SessionID LLUUID }
  1428. { SerialNum U32 } // U32, used by both pause and resume. Non-increasing numbers are ignored.
  1429. }
  1430. }
  1431. // AgentResume - unblock the agent
  1432. {
  1433. AgentResume Low 79 NotTrusted Unencoded
  1434. {
  1435. AgentData Single
  1436. { AgentID LLUUID }
  1437. { SessionID LLUUID }
  1438. { SerialNum U32 } // U32, used by both pause and resume. Non-increasing numbers are ignored.
  1439. }
  1440. }
  1441. // AgentUpdate - Camera info sent from viewer to simulator
  1442. // or, more simply, two axes and compute cross product
  1443. // State data is temporary, indicates current behavior state:
  1444. // 0 = walking
  1445. // 1 = mouselook
  1446. // 2 = typing
  1447. //
  1448. // Center is region local (JNC 8.16.2001)
  1449. // Camera center is region local (JNC 8.29.2001)
  1450. {
  1451. AgentUpdate High 4 NotTrusted Zerocoded
  1452. {
  1453. AgentData Single
  1454. { AgentID LLUUID }
  1455. { SessionID LLUUID }
  1456. { BodyRotation LLQuaternion }
  1457. { HeadRotation LLQuaternion }
  1458. { State U8 }
  1459. { CameraCenter LLVector3 }
  1460. { CameraAtAxis LLVector3 }
  1461. { CameraLeftAxis LLVector3 }
  1462. { CameraUpAxis LLVector3 }
  1463. { Far F32 }
  1464. { ControlFlags U32 }
  1465. { Flags U8 }
  1466. }
  1467. }
  1468. // ChatFromViewer
  1469. // Specifies the text to be said and the "type",
  1470. // normal speech, shout, whisper.
  1471. // with the specified radius
  1472. {
  1473. ChatFromViewer Low 80 NotTrusted Zerocoded
  1474. {
  1475. AgentData Single
  1476. { AgentID LLUUID }
  1477. { SessionID LLUUID }
  1478. }
  1479. {
  1480. ChatData Single
  1481. { Message Variable 2 }
  1482. { Type U8 }
  1483. { Channel S32 }
  1484. }
  1485. }
  1486. // AgentThrottle
  1487. {
  1488. AgentThrottle Low 81 NotTrusted Zerocoded
  1489. {
  1490. AgentData Single
  1491. { AgentID LLUUID }
  1492. { SessionID LLUUID }
  1493. { CircuitCode U32 }
  1494. }
  1495. {
  1496. Throttle Single
  1497. { GenCounter U32 }
  1498. { Throttles Variable 1 }
  1499. }
  1500. }
  1501. // AgentFOV - Update to agent's field of view, angle is vertical, single F32 float in radians
  1502. {
  1503. AgentFOV Low 82 NotTrusted Unencoded
  1504. {
  1505. AgentData Single
  1506. { AgentID LLUUID }
  1507. { SessionID LLUUID }
  1508. { CircuitCode U32 }
  1509. }
  1510. {
  1511. FOVBlock Single
  1512. { GenCounter U32 }
  1513. { VerticalAngle F32 }
  1514. }
  1515. }
  1516. // AgentHeightWidth - Update to height and aspect, sent as height/width to save space
  1517. // Usually sent when window resized or created
  1518. {
  1519. AgentHeightWidth Low 83 NotTrusted Unencoded
  1520. {
  1521. AgentData Single
  1522. { AgentID LLUUID }
  1523. { SessionID LLUUID }
  1524. { CircuitCode U32 }
  1525. }
  1526. {
  1527. HeightWidthBlock Single
  1528. { GenCounter U32 }
  1529. { Height U16 }
  1530. { Width U16 }
  1531. }
  1532. }
  1533. // AgentSetAppearance - Update to agent appearance
  1534. {
  1535. AgentSetAppearance Low 84 NotTrusted Zerocoded
  1536. {
  1537. AgentData Single
  1538. { AgentID LLUUID }
  1539. { SessionID LLUUID }
  1540. { SerialNum U32 } // U32, Increases every time the appearance changes. A value of 0 resets.
  1541. { Size LLVector3 }
  1542. }
  1543. {
  1544. WearableData Variable
  1545. { CacheID LLUUID }
  1546. { TextureIndex U8 }
  1547. }
  1548. {
  1549. ObjectData Single
  1550. { TextureEntry Variable 2 }
  1551. }
  1552. {
  1553. VisualParam Variable
  1554. { ParamValue U8 }
  1555. }
  1556. }
  1557. // AgentAnimation - Update animation state
  1558. // viewer --> simulator
  1559. {
  1560. AgentAnimation High 5 NotTrusted Unencoded
  1561. {
  1562. AgentData Single
  1563. { AgentID LLUUID }
  1564. { SessionID LLUUID }
  1565. }
  1566. {
  1567. AnimationList Variable
  1568. { AnimID LLUUID }
  1569. { StartAnim BOOL }
  1570. }
  1571. {
  1572. PhysicalAvatarEventList Variable
  1573. { TypeData Variable 1 }
  1574. }
  1575. }
  1576. // AgentRequestSit - Try to sit on an object
  1577. {
  1578. AgentRequestSit High 6 NotTrusted Zerocoded
  1579. {
  1580. AgentData Single
  1581. { AgentID LLUUID }
  1582. { SessionID LLUUID }
  1583. }
  1584. {
  1585. TargetObject Single
  1586. { TargetID LLUUID }
  1587. { Offset LLVector3 }
  1588. }
  1589. }
  1590. // AgentSit - Actually sit on object
  1591. {
  1592. AgentSit High 7 NotTrusted Unencoded
  1593. {
  1594. AgentData Single
  1595. { AgentID LLUUID }
  1596. { SessionID LLUUID }
  1597. }
  1598. }
  1599. // quit message sent between simulators
  1600. {
  1601. AgentQuitCopy Low 85 NotTrusted Unencoded
  1602. {
  1603. AgentData Single
  1604. { AgentID LLUUID }
  1605. { SessionID LLUUID }
  1606. }
  1607. {
  1608. FuseBlock Single
  1609. { ViewerCircuitCode U32 }
  1610. }
  1611. }
  1612. // Request Image - Sent by the viewer to request a specified image at a specified resolution
  1613. {
  1614. RequestImage High 8 NotTrusted Unencoded
  1615. {
  1616. AgentData Single
  1617. { AgentID LLUUID }
  1618. { SessionID LLUUID }
  1619. }
  1620. {
  1621. RequestImage Variable
  1622. { Image LLUUID }
  1623. { DiscardLevel S8 }
  1624. { DownloadPriority F32 }
  1625. { Packet U32 }
  1626. { Type U8 }
  1627. }
  1628. }
  1629. // ImageNotInDatabase
  1630. // Simulator informs viewer that a requsted image definitely does not exist in the asset database
  1631. {
  1632. ImageNotInDatabase Low 86 Trusted Unencoded
  1633. {
  1634. ImageID Single
  1635. { ID LLUUID }
  1636. }
  1637. }
  1638. // RebakeAvatarTextures
  1639. // simulator -> viewer request when a temporary baked avatar texture is not found
  1640. {
  1641. RebakeAvatarTextures Low 87 Trusted Unencoded
  1642. {
  1643. TextureData Single
  1644. { TextureID LLUUID }
  1645. }
  1646. }
  1647. // SetAlwaysRun
  1648. // Lets the viewer choose between running and walking
  1649. {
  1650. SetAlwaysRun Low 88 NotTrusted Unencoded
  1651. {
  1652. AgentData Single
  1653. { AgentID LLUUID }
  1654. { SessionID LLUUID }
  1655. { AlwaysRun BOOL }
  1656. }
  1657. }
  1658. // ObjectAdd - create new object in the world
  1659. // Simulator will assign ID and send message back to signal
  1660. // object actually created.
  1661. //
  1662. // AddFlags (see also ObjectUpdate)
  1663. // 0x01 - use physics
  1664. // 0x02 - create selected
  1665. //
  1666. // If only one ImageID is sent for an object type that has more than
  1667. // one face, the same image is repeated on each subsequent face.
  1668. //
  1669. // Data field is opaque type-specific data for this object
  1670. {
  1671. ObjectAdd Medium 1 NotTrusted Zerocoded
  1672. {
  1673. AgentData Single
  1674. { AgentID LLUUID }
  1675. { SessionID LLUUID }
  1676. { GroupID LLUUID }
  1677. }
  1678. {
  1679. ObjectData Single
  1680. { PCode U8 }
  1681. { Material U8 }
  1682. { AddFlags U32 } // see object_flags.h
  1683. { PathCurve U8 }
  1684. { ProfileCurve U8 }
  1685. { PathBegin U16 } // 0 to 1, quanta = 0.01
  1686. { PathEnd U16 } // 0 to 1, quanta = 0.01
  1687. { PathScaleX U8 } // 0 to 1, quanta = 0.01
  1688. { PathScaleY U8 } // 0 to 1, quanta = 0.01
  1689. { PathShearX U8 } // -.5 to .5, quanta = 0.01
  1690. { PathShearY U8 } // -.5 to .5, quanta = 0.01
  1691. { PathTwist S8 } // -1 to 1, quanta = 0.01
  1692. { PathTwistBegin S8 } // -1 to 1, quanta = 0.01
  1693. { PathRadiusOffset S8 } // -1 to 1, quanta = 0.01
  1694. { PathTaperX S8 } // -1 to 1, quanta = 0.01
  1695. { PathTaperY S8 } // -1 to 1, quanta = 0.01
  1696. { PathRevolutions U8 } // 0 to 3, quanta = 0.015
  1697. { PathSkew S8 } // -1 to 1, quanta = 0.01
  1698. { ProfileBegin U16 } // 0 to 1, quanta = 0.01
  1699. { ProfileEnd U16 } // 0 to 1, quanta = 0.01
  1700. { ProfileHollow U16 } // 0 to 1, quanta = 0.01
  1701. { BypassRaycast U8 }
  1702. { RayStart LLVector3 }
  1703. { RayEnd LLVector3 }
  1704. { RayTargetID LLUUID }
  1705. { RayEndIsIntersection U8 }
  1706. { Scale LLVector3 }
  1707. { Rotation LLQuaternion }
  1708. { State U8 }
  1709. }
  1710. }
  1711. // ObjectDelete
  1712. // viewer -> simulator
  1713. {
  1714. ObjectDelete Low 89 NotTrusted Zerocoded
  1715. {
  1716. AgentData Single
  1717. { AgentID LLUUID }
  1718. { SessionID LLUUID }
  1719. { Force BOOL } // BOOL, god trying to force delete
  1720. }
  1721. {
  1722. ObjectData Variable
  1723. { ObjectLocalID U32 }
  1724. }
  1725. }
  1726. // ObjectDuplicate
  1727. // viewer -> simulator
  1728. // Makes a copy of a set of objects, offset by a given amount
  1729. {
  1730. ObjectDuplicate Low 90 NotTrusted Zerocoded
  1731. {
  1732. AgentData Single
  1733. { AgentID LLUUID }
  1734. { SessionID LLUUID }
  1735. { GroupID LLUUID }
  1736. }
  1737. {
  1738. SharedData Single
  1739. { Offset LLVector3 }
  1740. { DuplicateFlags U32 } // see object_flags.h
  1741. }
  1742. {
  1743. ObjectData Variable
  1744. { ObjectLocalID U32 }
  1745. }
  1746. }
  1747. // ObjectDuplicateOnRay
  1748. // viewer -> simulator
  1749. // Makes a copy of an object, using the add object raycast
  1750. // code to abut it to other objects.
  1751. {
  1752. ObjectDuplicateOnRay Low 91 NotTrusted Zerocoded
  1753. {
  1754. AgentData Single
  1755. { AgentID LLUUID }
  1756. { SessionID LLUUID }
  1757. { GroupID LLUUID }
  1758. { RayStart LLVector3 } // region local
  1759. { RayEnd LLVector3 } // region local
  1760. { BypassRaycast BOOL }
  1761. { RayEndIsIntersection BOOL }
  1762. { CopyCenters BOOL }
  1763. { CopyRotates BOOL }
  1764. { RayTargetID LLUUID }
  1765. { DuplicateFlags U32 } // see object_flags.h
  1766. }
  1767. {
  1768. ObjectData Variable
  1769. { ObjectLocalID U32 }
  1770. }
  1771. }
  1772. // MultipleObjectUpdate
  1773. // viewer -> simulator
  1774. // updates position, rotation and scale in one message
  1775. // positions sent as region-local floats
  1776. {
  1777. MultipleObjectUpdate Medium 2 NotTrusted Zerocoded
  1778. {
  1779. AgentData Single
  1780. { AgentID LLUUID }
  1781. { SessionID LLUUID }
  1782. }
  1783. {
  1784. ObjectData Variable
  1785. { ObjectLocalID U32 }
  1786. { Type U8 }
  1787. { Data Variable 1 } // custom type
  1788. }
  1789. }
  1790. // RequestMultipleObjects
  1791. // viewer -> simulator
  1792. // reliable
  1793. //
  1794. // When the viewer gets a local_id/crc for an object that
  1795. // it either doesn't have, or doesn't have the current version
  1796. // of, it sends this upstream get get an update.
  1797. //
  1798. // CacheMissType 0 => full object (viewer doesn't have it)
  1799. // CacheMissType 1 => CRC mismatch only
  1800. {
  1801. RequestMultipleObjects Medium 3 NotTrusted Zerocoded
  1802. {
  1803. AgentData Single
  1804. { AgentID LLUUID }
  1805. { SessionID LLUUID }
  1806. }
  1807. {
  1808. ObjectData Variable
  1809. { CacheMissType U8 }
  1810. { ID U32 }
  1811. }
  1812. }
  1813. // DEPRECATED: ObjectPosition
  1814. // == Old Behavior ==
  1815. // Set the position on objects
  1816. //
  1817. // == Reason for deprecation ==
  1818. // Unused code path was removed in the move to Havok4
  1819. // Object position, scale and rotation messages were already unified
  1820. // to MultipleObjectUpdate and this message was unused cruft.
  1821. //
  1822. // == New Location ==
  1823. // MultipleObjectUpdate can be used instead.
  1824. {
  1825. ObjectPosition Medium 4 NotTrusted Zerocoded Deprecated
  1826. {
  1827. AgentData Single
  1828. { AgentID LLUUID }
  1829. { SessionID LLUUID }
  1830. }
  1831. {
  1832. ObjectData Variable
  1833. { ObjectLocalID U32 }
  1834. { Position LLVector3 } // region
  1835. }
  1836. }
  1837. // DEPRECATED: ObjectScale
  1838. // == Old Behavior ==
  1839. // Set the scale on objects
  1840. //
  1841. // == Reason for deprecation ==
  1842. // Unused code path was removed in the move to Havok4
  1843. // Object position, scale and rotation messages were already unified
  1844. // to MultipleObjectUpdate and this message was unused cruft.
  1845. //
  1846. // == New Location ==
  1847. // MultipleObjectUpdate can be used instead.
  1848. {
  1849. ObjectScale Low 92 NotTrusted Zerocoded Deprecated
  1850. {
  1851. AgentData Single
  1852. { AgentID LLUUID }
  1853. { SessionID LLUUID }
  1854. }
  1855. {
  1856. ObjectData Variable
  1857. { ObjectLocalID U32 }
  1858. { Scale LLVector3 }
  1859. }
  1860. }
  1861. // ObjectRotation
  1862. // viewer -> simulator
  1863. {
  1864. ObjectRotation Low 93 NotTrusted Zerocoded
  1865. {
  1866. AgentData Single
  1867. { AgentID LLUUID }
  1868. { SessionID LLUUID }
  1869. }
  1870. {
  1871. ObjectData Variable
  1872. { ObjectLocalID U32 }
  1873. { Rotation LLQuaternion }
  1874. }
  1875. }
  1876. // ObjectFlagUpdate
  1877. // viewer -> simulator
  1878. {
  1879. ObjectFlagUpdate Low 94 NotTrusted Zerocoded
  1880. {
  1881. AgentData Single
  1882. { AgentID LLUUID }
  1883. { SessionID LLUUID }
  1884. { ObjectLocalID U32 }
  1885. { UsePhysics BOOL }
  1886. { IsTemporary BOOL }
  1887. { IsPhantom BOOL }
  1888. { CastsShadows BOOL }
  1889. }
  1890. {
  1891. ExtraPhysics Variable
  1892. { PhysicsShapeType U8 }
  1893. { Density F32 }
  1894. { Friction F32 }
  1895. { Restitution F32 }
  1896. { GravityMultiplier F32 }
  1897. }
  1898. }
  1899. // ObjectClickAction
  1900. // viewer -> simulator
  1901. {
  1902. ObjectClickAction Low 95 NotTrusted Zerocoded
  1903. {
  1904. AgentData Single
  1905. { AgentID LLUUID }
  1906. { SessionID LLUUID }
  1907. }
  1908. {
  1909. ObjectData Variable
  1910. { ObjectLocalID U32 }
  1911. { ClickAction U8 }
  1912. }
  1913. }
  1914. // ObjectImage
  1915. // viewer -> simulator
  1916. {
  1917. ObjectImage Low 96 NotTrusted Zerocoded
  1918. {
  1919. AgentData Single
  1920. { AgentID LLUUID }
  1921. { SessionID LLUUID }
  1922. }
  1923. {
  1924. ObjectData Variable
  1925. { ObjectLocalID U32 }
  1926. { MediaURL Variable 1 }
  1927. { TextureEntry Variable 2 }
  1928. }
  1929. }
  1930. {
  1931. ObjectMaterial Low 97 NotTrusted Zerocoded
  1932. {
  1933. AgentData Single
  1934. { AgentID LLUUID }
  1935. { SessionID LLUUID }
  1936. }
  1937. {
  1938. ObjectData Variable
  1939. { ObjectLocalID U32 }
  1940. { Material U8 }
  1941. }
  1942. }
  1943. {
  1944. ObjectShape Low 98 NotTrusted Zerocoded
  1945. {
  1946. AgentData Single
  1947. { AgentID LLUUID }
  1948. { SessionID LLUUID }
  1949. }
  1950. {
  1951. ObjectData Variable
  1952. { ObjectLocalID U32 }
  1953. { PathCurve U8 }
  1954. { ProfileCurve U8 }
  1955. { PathBegin U16 } // 0 to 1, quanta = 0.01
  1956. { PathEnd U16 } // 0 to 1, quanta = 0.01
  1957. { PathScaleX U8 } // 0 to 1, quanta = 0.01
  1958. { PathScaleY U8 } // 0 to 1, quanta = 0.01
  1959. { PathShearX U8 } // -.5 to .5, quanta = 0.01
  1960. { PathShearY U8 } // -.5 to .5, quanta = 0.01
  1961. { PathTwist S8 } // -1 to 1, quanta = 0.01
  1962. { PathTwistBegin S8 } // -1 to 1, quanta = 0.01
  1963. { PathRadiusOffset S8 } // -1 to 1, quanta = 0.01
  1964. { PathTaperX S8 } // -1 to 1, quanta = 0.01
  1965. { PathTaperY S8 } // -1 to 1, quanta = 0.01
  1966. { PathRevolutions U8 } // 0 to 3, quanta = 0.015
  1967. { PathSkew S8 } // -1 to 1, quanta = 0.01
  1968. { ProfileBegin U16 } // 0 to 1, quanta = 0.01
  1969. { ProfileEnd U16 } // 0 to 1, quanta = 0.01
  1970. { ProfileHollow U16 } // 0 to 1, quanta = 0.01
  1971. }
  1972. }
  1973. {
  1974. ObjectExtraParams Low 99 NotTrusted Zerocoded
  1975. {
  1976. AgentData Single
  1977. { AgentID LLUUID }
  1978. { SessionID LLUUID }
  1979. }
  1980. {
  1981. ObjectData Variable
  1982. { ObjectLocalID U32 }
  1983. { ParamType U16 }
  1984. { ParamInUse BOOL }
  1985. { ParamSize U32 }
  1986. { ParamData Variable 1 }
  1987. }
  1988. }
  1989. // ObjectOwner
  1990. // To make public, set OwnerID to LLUUID::null.
  1991. // TODO: Eliminate god-bit. Maybe not. God-bit is ok, because it's
  1992. // known on the server.
  1993. {
  1994. ObjectOwner Low 100 NotTrusted Zerocoded
  1995. {
  1996. AgentData Single
  1997. { AgentID LLUUID }
  1998. { SessionID LLUUID }
  1999. }
  2000. {
  2001. HeaderData Single
  2002. { Override BOOL } // BOOL, God-bit.
  2003. { OwnerID LLUUID }
  2004. { GroupID LLUUID }
  2005. }
  2006. {
  2007. ObjectData Variable
  2008. { ObjectLocalID U32 }
  2009. }
  2010. }
  2011. // ObjectGroup
  2012. // To make the object part of no group, set GroupID = LLUUID::null.
  2013. // This call only works if objectid.ownerid == agentid.
  2014. {
  2015. ObjectGroup Low 101 NotTrusted Zerocoded
  2016. {
  2017. AgentData Single
  2018. { AgentID LLUUID }
  2019. { SessionID LLUUID }
  2020. { GroupID LLUUID }
  2021. }
  2022. {
  2023. ObjectData Variable
  2024. { ObjectLocalID U32 }
  2025. }
  2026. }
  2027. // Attempt to buy an object. This will only pack root objects.
  2028. {
  2029. ObjectBuy Low 102 NotTrusted Zerocoded
  2030. {
  2031. AgentData Single
  2032. { AgentID LLUUID }
  2033. { SessionID LLUUID }
  2034. { GroupID LLUUID }
  2035. { CategoryID LLUUID } // folder where it goes (if derezed)
  2036. }
  2037. {
  2038. ObjectData Variable
  2039. { ObjectLocalID U32 }
  2040. { SaleType U8 } // U8 -> EForSale
  2041. { SalePrice S32 }
  2042. }
  2043. }
  2044. // viewer -> simulator
  2045. // buy object inventory. If the transaction succeeds, it will add
  2046. // inventory to the agent, and potentially remove the original.
  2047. {
  2048. BuyObjectInventory Low 103 NotTrusted Zerocoded
  2049. {
  2050. AgentData Single
  2051. { AgentID LLUUID }
  2052. { SessionID LLUUID }
  2053. }
  2054. {
  2055. Data Single
  2056. { ObjectID LLUUID }
  2057. { ItemID LLUUID }
  2058. { FolderID LLUUID }
  2059. }
  2060. }
  2061. // sim -> viewer
  2062. // Used to propperly handle buying asset containers
  2063. {
  2064. DerezContainer Low 104 Trusted Zerocoded
  2065. {
  2066. Data Single
  2067. { ObjectID LLUUID }
  2068. { Delete BOOL } // BOOL
  2069. }
  2070. }
  2071. // ObjectPermissions
  2072. // Field - see llpermissionsflags.h
  2073. // If Set is true, tries to turn on bits in mask.
  2074. // If set is false, tries to turn off bits in mask.
  2075. // BUG: This just forces the permissions field.
  2076. {
  2077. ObjectPermissions Low 105 NotTrusted Zerocoded
  2078. {
  2079. AgentData Single
  2080. { AgentID LLUUID }
  2081. { SessionID LLUUID }
  2082. }
  2083. {
  2084. HeaderData Single
  2085. { Override BOOL } // BOOL, God-bit.
  2086. }
  2087. {
  2088. ObjectData Variable
  2089. { ObjectLocalID U32 }
  2090. { Field U8 }
  2091. { Set U8 }
  2092. { Mask U32 }
  2093. }
  2094. }
  2095. // set object sale information
  2096. {
  2097. ObjectSaleInfo Low 106 NotTrusted Zerocoded
  2098. {
  2099. AgentData Single
  2100. { AgentID LLUUID }
  2101. { SessionID LLUUID }
  2102. }
  2103. {
  2104. ObjectData Variable
  2105. { LocalID U32 }
  2106. { SaleType U8 } // U8 -> EForSale
  2107. { SalePrice S32 }
  2108. }
  2109. }
  2110. // set object names
  2111. {
  2112. ObjectName Low 107 NotTrusted Zerocoded
  2113. {
  2114. AgentData Single
  2115. { AgentID LLUUID }
  2116. { SessionID LLUUID }
  2117. }
  2118. {
  2119. ObjectData Variable
  2120. { LocalID U32 }
  2121. { Name Variable 1 }
  2122. }
  2123. }
  2124. // set object descriptions
  2125. {
  2126. ObjectDescription Low 108 NotTrusted Zerocoded
  2127. {
  2128. AgentData Single
  2129. { AgentID LLUUID }
  2130. { SessionID LLUUID }
  2131. }
  2132. {
  2133. ObjectData Variable
  2134. { LocalID U32 }
  2135. { Description Variable 1 }
  2136. }
  2137. }
  2138. // set object category
  2139. {
  2140. ObjectCategory Low 109 NotTrusted Zerocoded
  2141. {
  2142. AgentData Single
  2143. { AgentID LLUUID }
  2144. { SessionID LLUUID }
  2145. }
  2146. {
  2147. ObjectData Variable
  2148. { LocalID U32 }
  2149. { Category U32 }
  2150. }
  2151. }
  2152. // ObjectSelect
  2153. // Variable object data because rectangular selection can
  2154. // generate a large list very quickly.
  2155. {
  2156. ObjectSelect Low 110 NotTrusted Zerocoded
  2157. {
  2158. AgentData Single
  2159. { AgentID LLUUID }
  2160. { SessionID LLUUID }
  2161. }
  2162. {
  2163. ObjectData Variable
  2164. { ObjectLocalID U32 }
  2165. }
  2166. }
  2167. // ObjectDeselect
  2168. {
  2169. ObjectDeselect Low 111 NotTrusted Zerocoded
  2170. {
  2171. AgentData Single
  2172. { AgentID LLUUID }
  2173. { SessionID LLUUID }
  2174. }
  2175. {
  2176. ObjectData Variable
  2177. { ObjectLocalID U32 }
  2178. }
  2179. }
  2180. // ObjectAttach
  2181. {
  2182. ObjectAttach Low 112 NotTrusted Zerocoded
  2183. {
  2184. AgentData Single
  2185. { AgentID LLUUID }
  2186. { SessionID LLUUID }
  2187. { AttachmentPoint U8 }
  2188. }
  2189. {
  2190. ObjectData Variable
  2191. { ObjectLocalID U32 }
  2192. { Rotation LLQuaternion }
  2193. }
  2194. }
  2195. // ObjectDetach -- derezzes an attachment, marking its item in your inventory as not "(worn)"
  2196. {
  2197. ObjectDetach Low 113 NotTrusted Unencoded
  2198. {
  2199. AgentData Single
  2200. { AgentID LLUUID }
  2201. { SessionID LLUUID }
  2202. }
  2203. {
  2204. ObjectData Variable
  2205. { ObjectLocalID U32 }
  2206. }
  2207. }
  2208. // ObjectDrop -- drops an attachment from your avatar onto the ground
  2209. {
  2210. ObjectDrop Low 114 NotTrusted Unencoded
  2211. {
  2212. AgentData Single
  2213. { AgentID LLUUID }
  2214. { SessionID LLUUID }
  2215. }
  2216. {
  2217. ObjectData Variable
  2218. { ObjectLocalID U32 }
  2219. }
  2220. }
  2221. // ObjectLink
  2222. {
  2223. ObjectLink Low 115 NotTrusted Unencoded
  2224. {
  2225. AgentData Single
  2226. { AgentID LLUUID }
  2227. { SessionID LLUUID }
  2228. }
  2229. {
  2230. ObjectData Variable
  2231. { ObjectLocalID U32 }
  2232. }
  2233. }
  2234. // ObjectDelink
  2235. {
  2236. ObjectDelink Low 116 NotTrusted Unencoded
  2237. {
  2238. AgentData Single
  2239. { AgentID LLUUID }
  2240. { SessionID LLUUID }
  2241. }
  2242. {
  2243. ObjectData Variable
  2244. { ObjectLocalID U32 }
  2245. }
  2246. }
  2247. // ObjectGrab
  2248. {
  2249. ObjectGrab Low 117 NotTrusted Zerocoded
  2250. {
  2251. AgentData Single
  2252. { AgentID LLUUID }
  2253. { SessionID LLUUID }
  2254. }
  2255. {
  2256. ObjectData Single
  2257. { LocalID U32 }
  2258. { GrabOffset LLVector3 }
  2259. }
  2260. {
  2261. SurfaceInfo Variable
  2262. { UVCoord LLVector3 }
  2263. { STCoord LLVector3 }
  2264. { FaceIndex S32 }
  2265. { Position LLVector3 }
  2266. { Normal LLVector3 }
  2267. { Binormal LLVector3 }
  2268. }
  2269. }
  2270. // ObjectGrabUpdate
  2271. // TODO: Quantize this data, reduce message size.
  2272. // TimeSinceLast could go to 1 byte, since capped
  2273. // at 100 on sim.
  2274. {
  2275. ObjectGrabUpdate Low 118 NotTrusted Zerocoded
  2276. {
  2277. AgentData Single
  2278. { AgentID LLUUID }
  2279. { SessionID LLUUID }
  2280. }
  2281. {
  2282. ObjectData Single
  2283. { ObjectID LLUUID }
  2284. { GrabOffsetInitial LLVector3 } // LLVector3
  2285. { GrabPosition LLVector3 } // LLVector3, region local
  2286. { TimeSinceLast U32 }
  2287. }
  2288. {
  2289. SurfaceInfo Variable
  2290. { UVCoord LLVector3 }
  2291. { STCoord LLVector3 }
  2292. { FaceIndex S32 }
  2293. { Position LLVector3 }
  2294. { Normal LLVector3 }
  2295. { Binormal LLVector3 }
  2296. }
  2297. }
  2298. // ObjectDeGrab
  2299. {
  2300. ObjectDeGrab Low 119 NotTrusted Unencoded
  2301. {
  2302. AgentData Single
  2303. { AgentID LLUUID }
  2304. { SessionID LLUUID }
  2305. }
  2306. {
  2307. ObjectData Single
  2308. { LocalID U32 }
  2309. }
  2310. {
  2311. SurfaceInfo Variable
  2312. { UVCoord LLVector3 }
  2313. { STCoord LLVector3 }
  2314. { FaceIndex S32 }
  2315. { Position LLVector3 }
  2316. { Normal LLVector3 }
  2317. { Binormal LLVector3 }
  2318. }
  2319. }
  2320. // ObjectSpinStart
  2321. {
  2322. ObjectSpinStart Low 120 NotTrusted Zerocoded
  2323. {
  2324. AgentData Single
  2325. { AgentID LLUUID }
  2326. { SessionID LLUUID }
  2327. }
  2328. {
  2329. ObjectData Single
  2330. { ObjectID LLUUID }
  2331. }
  2332. }
  2333. // ObjectSpinUpdate
  2334. {
  2335. ObjectSpinUpdate Low 121 NotTrusted Zerocoded
  2336. {
  2337. AgentData Single
  2338. { AgentID LLUUID }
  2339. { SessionID LLUUID }
  2340. }
  2341. {
  2342. ObjectData Single
  2343. { ObjectID LLUUID }
  2344. { Rotation LLQuaternion }
  2345. }
  2346. }
  2347. // ObjectSpinStop
  2348. {
  2349. ObjectSpinStop Low 122 NotTrusted Zerocoded
  2350. {
  2351. AgentData Single
  2352. { AgentID LLUUID }
  2353. { SessionID LLUUID }
  2354. }
  2355. {
  2356. ObjectData Single
  2357. { ObjectID LLUUID }
  2358. }
  2359. }
  2360. // Export selected objects
  2361. // viewer->sim
  2362. {
  2363. ObjectExportSelected Low 123 NotTrusted Zerocoded
  2364. {
  2365. AgentData Single
  2366. { AgentID LLUUID }
  2367. { RequestID LLUUID }
  2368. { VolumeDetail S16 }
  2369. }
  2370. {
  2371. ObjectData Variable
  2372. { ObjectID LLUUID }
  2373. }
  2374. }
  2375. // ModifyLand - sent to modify a piece of land on a simulator.
  2376. // viewer -> sim
  2377. {
  2378. ModifyLand Low 124 NotTrusted Zerocoded
  2379. {
  2380. AgentData Single
  2381. { AgentID LLUUID }
  2382. { SessionID LLUUID }
  2383. }
  2384. {
  2385. ModifyBlock Single
  2386. { Action U8 }
  2387. { BrushSize U8 }
  2388. { Seconds F32 }
  2389. { Height F32 }
  2390. }
  2391. {
  2392. ParcelData Variable
  2393. { LocalID S32 }
  2394. { West F32 }
  2395. { South F32 }
  2396. { East F32 }
  2397. { North F32 }
  2398. }
  2399. {
  2400. ModifyBlockExtended Variable
  2401. { BrushSize F32 }
  2402. }
  2403. }
  2404. // VelocityInterpolateOn
  2405. // viewer->sim
  2406. // requires administrative access
  2407. {
  2408. VelocityInterpolateOn Low 125 NotTrusted Unencoded
  2409. {
  2410. AgentData Single
  2411. { AgentID LLUUID }
  2412. { SessionID LLUUID }
  2413. }
  2414. }
  2415. // VelocityInterpolateOff
  2416. // viewer->sim
  2417. // requires administrative access
  2418. {
  2419. VelocityInterpolateOff Low 126 NotTrusted Unencoded
  2420. {
  2421. AgentData Single
  2422. { AgentID LLUUID }
  2423. { SessionID LLUUID }
  2424. }
  2425. }
  2426. // Save State
  2427. // viewer->sim
  2428. // requires administrative access
  2429. {
  2430. StateSave Low 127 NotTrusted Unencoded
  2431. {
  2432. AgentData Single
  2433. { AgentID LLUUID }
  2434. { SessionID LLUUID }
  2435. }
  2436. {
  2437. DataBlock Single
  2438. { Filename Variable 1 }
  2439. }
  2440. }
  2441. // ReportAutosaveCrash
  2442. // sim->launcher
  2443. {
  2444. ReportAutosaveCrash Low 128 NotTrusted Unencoded
  2445. {
  2446. AutosaveData Single
  2447. { PID S32 }
  2448. { Status S32 }
  2449. }
  2450. }
  2451. // SimWideDeletes
  2452. {
  2453. SimWideDeletes Low 129 NotTrusted Unencoded
  2454. {
  2455. AgentData Single
  2456. { AgentID LLUUID }
  2457. { SessionID LLUUID }
  2458. }
  2459. {
  2460. DataBlock Single
  2461. { TargetID LLUUID }
  2462. { Flags U32 }
  2463. }
  2464. }
  2465. // RequestObjectPropertiesFamily
  2466. // Ask for extended information, such as creator, permissions, resources, etc.
  2467. // Medium frequency because it is driven by mouse hovering over objects, which
  2468. // occurs at high rates.
  2469. {
  2470. RequestObjectPropertiesFamily Medium 5 NotTrusted Zerocoded
  2471. {
  2472. AgentData Single
  2473. { AgentID LLUUID }
  2474. { SessionID LLUUID }
  2475. }
  2476. {
  2477. ObjectData Single
  2478. { RequestFlags U32 }
  2479. { ObjectID LLUUID }
  2480. }
  2481. }
  2482. // Track agent - this information is used when sending out the
  2483. // coarse location update so that we know who you are tracking.
  2484. // To stop tracking - send a null uuid as the prey.
  2485. {
  2486. TrackAgent Low 130 NotTrusted Unencoded
  2487. {
  2488. AgentData Single
  2489. { AgentID LLUUID }
  2490. { SessionID LLUUID }
  2491. }
  2492. {
  2493. TargetData Single
  2494. { PreyID LLUUID }
  2495. }
  2496. }
  2497. // end viewer to simulator section
  2498. {
  2499. ViewerStats Low 131 NotTrusted Zerocoded UDPDeprecated
  2500. {
  2501. AgentData Single
  2502. { AgentID LLUUID }
  2503. { SessionID LLUUID }
  2504. { IP IPADDR }
  2505. { StartTime U32 }
  2506. { RunTime F32 } // F32
  2507. { SimFPS F32 } // F32
  2508. { FPS F32 } // F32
  2509. { AgentsInView U8 } //
  2510. { Ping F32 } // F32
  2511. { MetersTraveled F64 }
  2512. { RegionsVisited S32 }
  2513. { SysRAM U32 }
  2514. { SysOS Variable 1 } // String
  2515. { SysCPU Variable 1 } // String
  2516. { SysGPU Variable 1 } // String
  2517. }
  2518. {
  2519. DownloadTotals Single
  2520. { World U32 }
  2521. { Objects U32 }
  2522. { Textures U32 }
  2523. }
  2524. {
  2525. NetStats Multiple 2
  2526. { Bytes U32 }
  2527. { Packets U32 }
  2528. { Compressed U32 }
  2529. { Savings U32 }
  2530. }
  2531. {
  2532. FailStats Single
  2533. { SendPacket U32 }
  2534. { Dropped U32 }
  2535. { Resent U32 }
  2536. { FailedResends U32 }
  2537. { OffCircuit U32 }
  2538. { Invalid U32 }
  2539. }
  2540. {
  2541. MiscStats Variable
  2542. { Type U32 }
  2543. { Value F64 }
  2544. }
  2545. }
  2546. // ScriptAnswerYes
  2547. // reliable
  2548. {
  2549. ScriptAnswerYes Low 132 NotTrusted Unencoded
  2550. {
  2551. AgentData Single
  2552. { AgentID LLUUID }
  2553. { SessionID LLUUID }
  2554. }
  2555. {
  2556. Data Single
  2557. { TaskID LLUUID }
  2558. { ItemID LLUUID }
  2559. { Questions S32 }
  2560. }
  2561. }
  2562. // complaint/bug-report
  2563. // reliable
  2564. {
  2565. UserReport Low 133 NotTrusted Zerocoded
  2566. {
  2567. AgentData Single
  2568. { AgentID LLUUID }
  2569. { SessionID LLUUID }
  2570. }
  2571. {
  2572. ReportData Single
  2573. { ReportType U8 } // BUG=1, COMPLAINT=2
  2574. { Category U8 } // see sequence.user_report_category
  2575. { Position LLVector3 } // screenshot position, region-local
  2576. { CheckFlags U8 } // checkboxflags
  2577. { ScreenshotID LLUUID }
  2578. { ObjectID LLUUID }
  2579. { AbuserID LLUUID }
  2580. { AbuseRegionName Variable 1 }
  2581. { AbuseRegionID LLUUID }
  2582. { Summary Variable 1 }
  2583. { Details Variable 2 }
  2584. { VersionString Variable 1 }
  2585. }
  2586. }
  2587. // ***************************************************************************
  2588. // Simulator to Viewer Messages
  2589. // ***************************************************************************
  2590. // AlertMessage
  2591. // Specifies the text to be posted in an alert dialog
  2592. {
  2593. AlertMessage Low 134 Trusted Unencoded
  2594. {
  2595. AlertData Single
  2596. { Message Variable 1 }
  2597. }
  2598. {
  2599. AlertInfo Variable
  2600. { Message Variable 1 }
  2601. { ExtraParams Variable 1 }
  2602. }
  2603. }
  2604. // Send an AlertMessage to the named agent.
  2605. // usually dataserver->simulator
  2606. {
  2607. AgentAlertMessage Low 135 Trusted Unencoded
  2608. {
  2609. AgentData Single
  2610. { AgentID LLUUID }
  2611. }
  2612. {
  2613. AlertData Single
  2614. { Modal BOOL }
  2615. { Message Variable 1 }
  2616. }
  2617. }
  2618. // MeanCollisionAlert
  2619. // Specifies the text to be posted in an alert dialog
  2620. {
  2621. MeanCollisionAlert Low 136 Trusted Zerocoded
  2622. {
  2623. MeanCollision Variable
  2624. { Victim LLUUID }
  2625. { Perp LLUUID }
  2626. { Time U32 }
  2627. { Mag F32 }
  2628. { Type U8 }
  2629. }
  2630. }
  2631. // ViewerFrozenMessage
  2632. // Specifies the text to be posted in an alert dialog
  2633. {
  2634. ViewerFrozenMessage Low 137 Trusted Unencoded
  2635. {
  2636. FrozenData Single
  2637. { Data BOOL }
  2638. }
  2639. }
  2640. // Health Message
  2641. // Tells viewer what agent health is
  2642. {
  2643. HealthMessage Low 138 Trusted Zerocoded
  2644. {
  2645. HealthData Single
  2646. { Health F32 }
  2647. }
  2648. }
  2649. // ChatFromSimulator
  2650. // Chat text to appear on a user's screen
  2651. // Position is region local.
  2652. // Viewer can optionally use position to animate
  2653. // If audible is CHAT_NOT_AUDIBLE, message will not be valid
  2654. {
  2655. ChatFromSimulator Low 139 Trusted Unencoded
  2656. {
  2657. ChatData Single
  2658. { FromName Variable 1 }
  2659. { SourceID LLUUID } // agent id or object id
  2660. { OwnerID LLUUID } // object's owner
  2661. { SourceType U8 }
  2662. { ChatType U8 }
  2663. { Audible U8 }
  2664. { Position LLVector3 }
  2665. { Message Variable 2 } // UTF-8 text
  2666. }
  2667. }
  2668. // Simulator statistics packet (goes out to viewer and dataserver/spaceserver)
  2669. {
  2670. SimStats Low 140 Trusted Unencoded
  2671. {
  2672. Region Single
  2673. { RegionX U32 }
  2674. { RegionY U32 }
  2675. { RegionFlags U32 }
  2676. { ObjectCapacity U32 }
  2677. }
  2678. {
  2679. Stat Variable
  2680. { StatID U32 }
  2681. { StatValue F32 }
  2682. }
  2683. {
  2684. PidStat Single
  2685. { PID S32 }
  2686. }
  2687. }
  2688. // viewer -> sim
  2689. // reliable
  2690. {
  2691. RequestRegionInfo Low 141 NotTrusted Unencoded
  2692. {
  2693. AgentData Single
  2694. { AgentID LLUUID }
  2695. { SessionID LLUUID }
  2696. }
  2697. }
  2698. // RegionInfo
  2699. // Used to populate UI for both region/estate floater
  2700. // and god tools floater
  2701. // sim -> viewer
  2702. // reliable
  2703. {
  2704. RegionInfo Low 142 NotTrusted Zerocoded
  2705. {
  2706. AgentData Single
  2707. { AgentID LLUUID }
  2708. { SessionID LLUUID }
  2709. }
  2710. {
  2711. RegionInfo Single
  2712. { SimName Variable 1 } // string
  2713. { EstateID U32 }
  2714. { ParentEstateID U32 }
  2715. { RegionFlags U32 }
  2716. { SimAccess U8 }
  2717. { MaxAgents U8 }
  2718. { BillableFactor F32 }
  2719. { ObjectBonusFactor F32 }
  2720. { WaterHeight F32 }
  2721. { TerrainRaiseLimit F32 }
  2722. { TerrainLowerLimit F32 }
  2723. { PricePerMeter S32 }
  2724. { RedirectGridX S32 }
  2725. { RedirectGridY S32 }
  2726. { UseEstateSun BOOL }
  2727. { SunHour F32 } // last value set by estate or region controls JC
  2728. }
  2729. {
  2730. RegionInfo2 Single
  2731. { ProductSKU Variable 1 } // string
  2732. { ProductName Variable 1 } // string
  2733. { MaxAgents32 U32 } // Identical to RegionInfo.MaxAgents but allows greater range
  2734. { HardMaxAgents U32 }
  2735. { HardMaxObjects U32 }
  2736. }
  2737. }
  2738. // GodUpdateRegionInfo
  2739. // Sent from viewer to sim after a god has changed some
  2740. // of the parameters in the god tools floater
  2741. // viewer -> sim
  2742. // reliable
  2743. {
  2744. GodUpdateRegionInfo Low 143 NotTrusted Zerocoded
  2745. {
  2746. AgentData Single
  2747. { AgentID LLUUID }
  2748. { SessionID LLUUID }
  2749. }
  2750. {
  2751. RegionInfo Single
  2752. { SimName Variable 1 } // string
  2753. { EstateID U32 }
  2754. { ParentEstateID U32 }
  2755. { RegionFlags U32 }
  2756. { BillableFactor F32 }
  2757. { PricePerMeter S32 }
  2758. { RedirectGridX S32 }
  2759. { RedirectGridY S32 }
  2760. }
  2761. }
  2762. //NearestLandingRegionRequest
  2763. //sim->dataserver
  2764. //Sent from the region to the data server
  2765. //to request the most up to date region for the requesting
  2766. //region to redirect teleports to
  2767. {
  2768. NearestLandingRegionRequest Low 144 Trusted Unencoded
  2769. {
  2770. RequestingRegionData Single
  2771. { RegionHandle U64 }
  2772. }
  2773. }
  2774. //NearestLandingPointReply
  2775. //dataserver->sim
  2776. //Sent from the data server to a region in reply
  2777. //to the redirectregion request stating which region
  2778. //the requesting region should redirect teleports to if necessary
  2779. {
  2780. NearestLandingRegionReply Low 145 Trusted Unencoded
  2781. {
  2782. LandingRegionData Single
  2783. { RegionHandle U64 }
  2784. }
  2785. }
  2786. //NearestLandingPointUpdated
  2787. //sim->dataserver
  2788. //Sent from a region to the data server
  2789. //to have the dataserver note/clear in the db
  2790. //that the region has updated it's nearest landing point
  2791. {
  2792. NearestLandingRegionUpdated Low 146 Trusted Unencoded
  2793. {
  2794. RegionData Single
  2795. { RegionHandle U64 }
  2796. }
  2797. }
  2798. //TeleportLandingStatusChanged
  2799. //sim->dataserver
  2800. //Sent from the region to the data server
  2801. //to note that the region's teleportation landing status has changed
  2802. {
  2803. TeleportLandingStatusChanged Low 147 Trusted Unencoded
  2804. {
  2805. RegionData Single
  2806. { RegionHandle U64 }
  2807. }
  2808. }
  2809. // RegionHandshake
  2810. // Sent by region to viewer after it has received UseCircuitCode
  2811. // from that viewer.
  2812. // sim -> viewer
  2813. // reliable
  2814. {
  2815. RegionHandshake Low 148 Trusted Zerocoded
  2816. {
  2817. RegionInfo Single
  2818. { RegionFlags U32 }
  2819. { SimAccess U8 }
  2820. { SimName Variable 1 } // string
  2821. { SimOwner LLUUID }
  2822. { IsEstateManager BOOL } // this agent, for this sim
  2823. { WaterHeight F32 }
  2824. { BillableFactor F32 }
  2825. { CacheID LLUUID }
  2826. { TerrainBase0 LLUUID }
  2827. { TerrainBase1 LLUUID }
  2828. { TerrainBase2 LLUUID }
  2829. { TerrainBase3 LLUUID }
  2830. { TerrainDetail0 LLUUID }
  2831. { TerrainDetail1 LLUUID }
  2832. { TerrainDetail2 LLUUID }
  2833. { TerrainDetail3 LLUUID }
  2834. { TerrainStartHeight00 F32 }
  2835. { TerrainStartHeight01 F32 }
  2836. { TerrainStartHeight10 F32 }
  2837. { TerrainStartHeight11 F32 }
  2838. { TerrainHeightRange00 F32 }
  2839. { TerrainHeightRange01 F32 }
  2840. { TerrainHeightRange10 F32 }
  2841. { TerrainHeightRange11 F32 }
  2842. }
  2843. {
  2844. RegionInfo2 Single
  2845. { RegionID LLUUID }
  2846. }
  2847. {
  2848. RegionInfo3 Single
  2849. { CPUClassID S32 }
  2850. { CPURatio S32 }
  2851. { ColoName Variable 1 } // string
  2852. { ProductSKU Variable 1 } // string
  2853. { ProductName Variable 1 } // string
  2854. }
  2855. }
  2856. // RegionHandshakeReply
  2857. // viewer -> sim
  2858. // reliable
  2859. // Sent after viewer has initialized the (pre-existing)
  2860. // LLViewerRegion with the name, access level, etc. and
  2861. // has loaded the cache for the region.
  2862. // After the simulator receives this, it will start sending
  2863. // data about objects.
  2864. {
  2865. RegionHandshakeReply Low 149 NotTrusted Zerocoded
  2866. {
  2867. AgentData Single
  2868. { AgentID LLUUID }
  2869. { SessionID LLUUID }
  2870. }
  2871. {
  2872. RegionInfo Single
  2873. { Flags U32 }
  2874. }
  2875. }
  2876. // The CoarseLocationUpdate message is sent to notify the viewer of
  2877. // the location of mappable objects in the region. 1 meter resolution is
  2878. // sufficient for this. The index block is used to show where you are,
  2879. // and where someone you are tracking is located. They are -1 if not
  2880. // applicable.
  2881. {
  2882. CoarseLocationUpdate Medium 6 Trusted Unencoded
  2883. {
  2884. Location Variable
  2885. { X U8 }
  2886. { Y U8 }
  2887. { Z U8 } // Z in meters / 4
  2888. }
  2889. {
  2890. Index Single
  2891. { You S16 }
  2892. { Prey S16 }
  2893. }
  2894. {
  2895. AgentData Variable
  2896. { AgentID LLUUID }
  2897. }
  2898. }
  2899. // ImageData - sent to viewer to transmit information about an image
  2900. {
  2901. ImageData High 9 Trusted Unencoded
  2902. {
  2903. ImageID Single
  2904. { ID LLUUID }
  2905. { Codec U8 }
  2906. { Size U32 }
  2907. { Packets U16 }
  2908. }
  2909. {
  2910. ImageData Single
  2911. { Data Variable 2 }
  2912. }
  2913. }
  2914. // ImagePacket - follow on image data for images having > 1 packet of data
  2915. {
  2916. ImagePacket High 10 Trusted Unencoded
  2917. {
  2918. ImageID Single
  2919. { ID LLUUID }
  2920. { Packet U16 }
  2921. }
  2922. {
  2923. ImageData Single
  2924. { Data Variable 2 }
  2925. }
  2926. }
  2927. // LayerData - Sent to viewer - encodes layer data
  2928. {
  2929. LayerData High 11 Trusted Unencoded
  2930. {
  2931. LayerID Single
  2932. { Type U8 }
  2933. }
  2934. {
  2935. LayerData Single
  2936. { Data Variable 2 }
  2937. }
  2938. }
  2939. // ObjectUpdate - Sent by objects from the simulator to the viewer
  2940. //
  2941. // If only one ImageID is sent for an object type that has more than
  2942. // one face, the same image is repeated on each subsequent face.
  2943. //
  2944. // NameValue is a list of name-value strings, separated by \n characters,
  2945. // terminated by \0
  2946. //
  2947. // Data is type-specific opaque data for this object
  2948. {
  2949. ObjectUpdate High 12 Trusted Zerocoded
  2950. {
  2951. RegionData Single
  2952. { RegionHandle U64 }
  2953. { TimeDilation U16 }
  2954. }
  2955. {
  2956. ObjectData Variable
  2957. { ID U32 }
  2958. { State U8 }
  2959. { FullID LLUUID }
  2960. { CRC U32 } // TEMPORARY HACK FOR JAMES
  2961. { PCode U8 }
  2962. { Material U8 }
  2963. { ClickAction U8 }
  2964. { Scale LLVector3 }
  2965. { ObjectData Variable 1 }
  2966. { ParentID U32 }
  2967. { UpdateFlags U32 } // U32, see object_flags.h
  2968. { PathCurve U8 }
  2969. { ProfileCurve U8 }
  2970. { PathBegin U16 } // 0 to 1, quanta = 0.01
  2971. { PathEnd U16 } // 0 to 1, quanta = 0.01
  2972. { PathScaleX U8 } // 0 to 1, quanta = 0.01
  2973. { PathScaleY U8 } // 0 to 1, quanta = 0.01
  2974. { PathShearX U8 } // -.5 to .5, quanta = 0.01
  2975. { PathShearY U8 } // -.5 to .5, quanta = 0.01
  2976. { PathTwist S8 } // -1 to 1, quanta = 0.01
  2977. { PathTwistBegin S8 } // -1 to 1, quanta = 0.01
  2978. { PathRadiusOffset S8 } // -1 to 1, quanta = 0.01
  2979. { PathTaperX S8 } // -1 to 1, quanta = 0.01
  2980. { PathTaperY S8 } // -1 to 1, quanta = 0.01
  2981. { PathRevolutions U8 } // 0 to 3, quanta = 0.015
  2982. { PathSkew S8 } // -1 to 1, quanta = 0.01
  2983. { ProfileBegin U16 } /