Commit Graph

25 Commits

Author SHA1 Message Date
Casper Warden
2ff00a30f8 Extensive work on building, wearables, assets, inventory, attachments, serialization, etc.
Resolves #36
2020-11-19 17:13:28 +00:00
Casper Warden
2145de775b - Bump to 0.5.13
- Add building support for TaskInventory and nested objects (from XML)
- Add support for taking objects into inventory
- Add waitForAppearanceSet utility
- Add new event for when object is fully resolved (ObjectProperties received)
- Fixed InventoryItem CRC method
- Fixed quaternion bug
- Support for uploading Script, Notecard and Gesture assets
- Significantly improved build process
2020-01-09 18:09:47 +00:00
Casper Warden
b248fa17ed Significant tidy-up. Update msg_template and add new ObjectAnimation message. Tidy up imports. Added buffer overrun check to the packet decoders since the message template doesn't seem to always correspond with what we receive (Specifically, MapBlockReply's new Size parameter) 2020-01-06 12:56:01 +00:00
hintswen
272adf9a4f Added command for Group/Avatar profiles
Add sample for getGroupProfile
2019-12-29 18:01:53 +00:00
Casper Warden
76b080757b - Mesh upload support
- LLMesh asset decoding and encoding (inc. LLPhysicsConvex, LLSkin, LLSubMesh)
- Query inventory folder by type
- onSelectedObject event
- fetchInventoryItem command
- Fix packing/unpacking of object shape
- Time sync with SimulatorViewerTimeMessage
- Changed several classes to a .from style rather than setting up in the constructor (exception friendly)
- Whole bunch of other improvements
- Object building
2018-11-15 03:22:07 +00:00
Casper Warden
4740b07e11 - Add LLWearable parsing
- Remove ExtraParams, TextureAnim, ParticleSystem binary data from GameObjects, instead encode on the fly when needed
- Add XML object decoding (WIP)
- Move FlexibleData, LightDate, LightImageData, MeshData, SculptData inside ExtraParams class
-
2018-11-05 11:45:04 +00:00
Casper Warden
da4cd459f1 - Add "GET" method to Caps
- New events: ObjectPhysicsDataEvent, ParcelPropertiesEvent, NewObjectEvent, ObjectUpdateEvent, ObjectKilledEvent
- Added getXML function to Color4, Vector2, Vector3, Vector4, GameObject, Region, Quaternion, UUID for opensim-compatible XML export
- Added TextureAnim and ParticleSystem decoding to the "full" ObjectStore
- Object store will automatically request missing "parent" prims
- "setPersist" - When persist is TRUE, the ObjectStore will not forget about "killed" prims - useful for region scanning
- Support for Flexible params, Light params, LightImage params, Mesh data, Sculpt maps
- Fixed object scale being incorrectly calculated
- Add terrain decoding (this was a ballache)
- Add parcel map decoding
- Add support for region windlight settings (region.environment)
- Add support for materials (normal / specular maps)
- Add getBuffer, getLong and bitwiseOr to UUID
- Added a circular-reference-safe JSONStringify to Utils
- Add XferFile capability to Circuit

PUBLIC API:

AssetCommands:
- Rework "downloadAsset" to detect failures
- NEW: downloadInventoryAsset() - uses TransferRequest for prim inventory items
- NEW: getMaterials() - resolves material UUIDs

RegionCommands:
- NEW: getTerrainTextures()
- NEW: exportSettings() - OpenSim XML export of region settings
- NEW: async getTerrain() - Get binary terrain heightmap, 256x256 float32
- resolveObjects() - now fetches task inventory contents too.
- resolveObjects() - fix calculation of land impact
- NEW: getObjectByLocalID(localID: number, timeout: number)
- NEW: getObjectByUUID(uuid: UUID, timeout: number)
- NEW: getParcels();
- NEW: pruneObjects - removes missing GameObjects from a list
- NEW: setPersist - prevent objectstore from forgetting about killed gameobjects
2018-10-31 11:28:24 +00:00
Casper Warden
4c6cbfc45b - When resolving objects, populate object costs (land impact)
- Add a function to find objects by name (regex or micromatch *glob style)
2018-10-20 14:32:33 +01:00
Casper Warden
ff0a5fa58b - Add grabObject, deGrabObject, dragGrabbedObject, touchObject to RegionCommands (closes #8)
- Properly decode object TextureEntry
- Properly decode object ParticleSystem
- Properly decode object ObjectData
- Properly decode object TextColor
- Properly decode Linden Tree species
- Correct handling of ObjectUpdateCached (only request objects if we don't already have them)
- Implement handling of ImprovedTerseObjectUpdate to complete support for R-Tree object searching
- Object store interface: getObjectByUUID, getObjectByLocalID
2018-10-16 16:46:58 +01:00
Casper Warden
2a0c4dc3e8 [BREAKING CHANGES] - Add new commands module for the Friends list, add new events for friends online/offline, friend rights management, friend map lookup 2018-10-12 14:34:43 +01:00
Casper Warden
da9fe9710c Teleport and EventQueue reliability improvements. Start plumbing for stayPut() 2018-10-09 20:03:28 +01:00
Casper Warden
960f024ea4 More refactoring stuff
- Add a waitForEventQueue promise, to get rid of the 5 second fudge from testBot.js
- Async'ify testBot.js
- Complete plumbing for Hint's ScriptDialog support (see changes to ScriptDialogEvent.ts and Comms.ts
- Fix: The EventQueue was pausing for 5 seconds every 30 seconds
2018-10-07 17:06:54 +01:00
hintswen
377096a045 Revert "Revert "Tried to add a ScriptDialog event...""
This reverts commit 91117fea5c.
2018-10-08 00:56:33 +11:00
hintswen
91117fea5c Revert "Tried to add a ScriptDialog event..."
This reverts commit c7be7a380c.
2018-10-08 00:47:23 +11:00
hintswen
c7be7a380c Tried to add a ScriptDialog event...
It's currently not working, not sure what I missed.
2018-10-07 22:26:39 +11:00
Casper Warden
ad559567b3 This commit demonstrates how to add a new client command to node-metaverse.
It also shows how to add a new command category (ParcelCommands)

Everything under dist/ is auto-generated with "npm run build".
2018-10-06 17:18:46 +01:00
Casper Warden
cb2be348d7 The rest of the refactor 2018-10-06 17:16:51 +01:00
Casper Warden
81f4258c04 Account for active group members 2017-12-19 17:58:25 +00:00
Casper Warden
d278bc359b Add TeleportTo command and map region lookup by name 2017-12-16 06:42:41 +00:00
Casper Warden
52c0691b71 Get group member list, Get group roles, Send group invite 2017-12-15 21:28:45 +00:00
Casper Warden
60e300f052 Add ObjectStoreLite to reduce memory footprint if the full object data is not needed 2017-12-14 02:06:28 +00:00
Casper Warden
4e8feb181f Ping / circuit latency, break out commands, add typing function for IM, add thinkingTime and charactersPerSecond parameters to typing functions 2017-12-13 19:55:08 +00:00
Casper Warden
d0658438b9 Teleports, Asset upload / download, Restructure stuff, Fix varlength read bug, BVH parser, agent initial appearance and animation glitches, LLSD + Caps + Event queue 2017-11-30 04:11:59 +00:00
Casper Warden
d2ea9ce40b Message parser 2017-11-24 01:00:56 +00:00
Casper Warden
e529b3c993 Login working and prepare LoginResponse class and associated types 2017-11-21 15:09:26 +00:00