Commit Graph

44 Commits

Author SHA1 Message Date
Casper Warden
53659008ac NMV 0.8.0 - Big refactor and linting fixes 2025-01-17 23:53:31 +00:00
Casper Warden
dd7b313b54 Improvements to object resolution 2024-09-09 01:46:49 +01:00
Casper Warden
e2a9837172 0.7.24 - Upgrade typescript 2024-09-09 01:46:44 +01:00
Casper Warden
deb1ddc05e Apply ownerID from ObjectPropertiesMessage 2023-11-22 17:23:27 +00:00
Casper Warden
44b5f973e6 Fix object selectin/deselection (more) 2023-11-22 11:59:25 +00:00
Casper Warden
302bf3302f Fix object selectin/deselection, deprecated http option 2023-11-22 11:51:20 +00:00
Casper Warden
adc9d54190 Ensure we deselect objects correctly 2023-11-22 11:30:10 +00:00
Casper Warden
81264e36c5 Make sure copied inventory items have the intended perms 2023-11-22 03:48:39 +00:00
Casper Warden
d841bb86b6 Ensure task copied inventory is named correctly 2023-11-22 00:42:05 +00:00
Casper Warden
c487df6d4f Ensure task copied inventory is named correctly 2023-11-22 00:05:51 +00:00
Casper Warden
c7ea62755b Only get properties at export time if we don't already have them 2023-11-21 17:51:49 +00:00
Casper Warden
e7e790efff Vastly simplify the object resolution stuff. 2023-11-21 14:03:19 +00:00
Casper Warden
b481ad59bb Skip temp objects 2023-11-17 01:14:54 +00:00
Casper Warden
2bd009bf73 Add additional options for object management 2023-11-16 22:56:20 +00:00
Casper Warden
be8ee8f0c5 Fix some issues with object processing 2023-11-16 21:54:17 +00:00
Casper Warden
af911d5923 Add some additional formatting rules 2021-09-23 17:22:58 +01:00
Casper Warden
bc6ee025cf Migrate from tslint to eslint (will tighten rules in further commits) 2021-09-23 17:14:23 +01:00
Casper Warden
2c4833baf7 - Support Settings inventory objects
- Add some missing caps and flags
- Fix prims out of order when fetching and building
2021-09-23 16:37:54 +01:00
Casper Warden
6ecad4db55 Fix for timeouts when adding scripts to ask inventory 2021-09-22 16:58:06 +01:00
Casper Warden
8e73563963 Fix other inventory creation type issues 2021-09-22 15:02:46 +01:00
Casper Warden
d13d5cdf01 Update packages 2021-09-22 14:21:51 +01:00
Casper Warden
859e785f04 Fix missing default material on RenderMaterials request 2020-12-11 13:16:46 +00:00
Casper Warden
4431fb8d15 Tighten up typescript rules and fix resulting compilation errors 2020-12-03 13:55:02 +00:00
Casper Warden
6e0d79715e #24 Ability to restart regions, complete with example 2020-12-01 16:46:33 +00:00
Casper Warden
43723d351e #31: Ability to get a list of all avatars in region
Added example of tracking of agents
Removed some debug logging
2020-12-01 12:25:56 +00:00
Casper Warden
f05d823987 Formatting fixes 2020-11-20 12:46:44 +00:00
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
5e235d2db1 - Support specifying URL in loginParameters for connecting to OpenSim
- Patch some miscellaneous OpenSim related glitches
- Add waitForRegionHandshake function
- Add a concurrent promise queue
- Fix xml writing of Vector3s
- Fix asset downloading on grids without HTTP assets
- Fix buildObject to properly orientate prims
- Wrangled with CreateSelected all day and it turned out to be an OpenSim bug
- LinkFrom function for faster linking
- Updated LLSD library to fix LLMesh decoding
2020-01-07 21:01:20 +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
Casper Warden
cbafbf0613 [Closes #11] Add moderateGroupChat function. Add ability to retrieve group ban list. 2020-01-05 19:05:52 +00:00
Casper Warden
f793774ee9 [Closes #13] Add ParcelPropertiesRequest with parcel bitmap decoding to ensure the correct reply is given. Heavily optimise getParcels() so that it uses the parcelOverlay to intelligently request parcels at known locations rather than iterating over every block. 2019-12-31 02:23:30 +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
65e3aef3f9 - Fix buffers out of order issue with Transfer system
- Remove debug
- Add cap invocation rate limiter (need to work out which caps require this)
- Fix initial login timing out after just one second
2018-11-03 14:39:20 +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
2efd01dca5 Add getAllObjects() query for the object store 2018-10-19 16:39:24 +01:00
Casper Warden
2852c76cb0 - Implement camera controls
- Option to resolve object properties when fetching from object store (names, descriptions etc). Can be more efficient - TODO: use FamilyProperties for child prims.
- Refactored objectstore to reduce code duplication
2018-10-19 16:30:09 +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
9eee7f9716 - Implement 3D space rtree-based indexing in the Full ObjectStore
- Implement ScriptDialogReply thanks to Hintswen
- Add a rudimentary object search - doesn't work fully yet because of the missing messages
2018-10-12 17:31:14 +01:00
Casper Warden
1137868932 Refactor: Async-ify a bunch of stuff. Change waitForMessage to template style. Disable strictPropertyInitialization in typescript config. 2018-10-07 14:59:07 +01:00
Casper Warden
11f2f9b320 Refactor waitForMessage to waitForPacket (since it returns a packet) and add a new waitForMessage which return the MessageBase, which makes usage a little tidier with async. 2018-10-06 16:03:10 +01:00
Casper Warden
d278bc359b Add TeleportTo command and map region lookup by name 2017-12-16 06:42:41 +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