REZ_FLAG_DIE_ON_NO_REZZER
Lucia Nightfire
This feature request is for the llRezObjectWithParams() constant, REZ_FLAG_DIE_ON_NO_REZZER.
Objects rezzed with this flag auto-die when the rezzer dies or leaves the region.
"Leaves" entails, detached, deleted, returned, region crossed, etc.
This is only handled in root prims that have this flag set and whose rezzer is removed from the region.
Attachments that were previously rezzed then attached are ignored when their rezzer is removed from the region.
There is no background timed check similar to autoreturn needed for this mechanic to work.
It is a one-time check.
Whenever an object key is removed from the server's internal object list, a check of all unattached, root prims in the region that have the same key as rezzer and are set with this flag will, in-turn, cause those objects to be removed from the internal object list.
This status is meant to compliment the recently filed feature request for llDeleteMyRezzedObject(). This allows not having to devote kill commands or even scripts to handle culling of rezzed objects with or without the presence of their rezzer.
Log In
Wulfie Reanimator
This would have some potential uses in combat as well.
Combat HUDs often have some "persistent" weapons in them like deployable mines, turrets, barbed wire, etc. With this flag they could be automatically cleaned up when the owner leaves the sim.
The same goes for explosives or "area denial" weapons that rez more objects around them. Coordinating their cleanup is pretty tedious, especially when there's lots of those objects (each with an open listen channel/timer just so they can figure out when to die).
Nexii Malthus
There are a few root usecases here:
- Objects that were rezzed to be removed when the Object that rezzed them dies or is deleted (an object that is not an attachment and might have object health or not) -- this could be an NPC or an object emitting area denial (like an acid grenade that an avatar threw that then rezzes several acid puddle objects based on raycasts; With acid grenade deleting itself after some time, then the acid puddles automatically removed with it; Acid puddles can now be fully scriptless)
- Objects that were rezzed to be removed when the agent leaves the region for good (cleanup of persistent objects that need to be temporary for a combat session but longer than an object's temporary attribute permits)
- Objects that were rezzed to be removed when the agent dies -- this might be some persistent object that needed cleanup but they might still be re-engaging in combat after respawning within the region
I think 1 & 2 are the intended proposal here and would help sim perf and simplify scripts.
3 would be neat to have as a separate flag but not as immediately useful/priority as 1 & 2.
Lucia Nightfire
Nexii Malthus
This status has nothing to do with agent rezzing nor owner presence.
I suggest filing a feature for something simliar to REZ_FLAG_DIE_ON_NO_OWNER or REZ_FLAG_DIE_ON_OWNER_DEATH.
Nexii Malthus
Lucia Nightfire rather per llGetObjectDetails OBJECT_REZZER_KEY a rezzer is an object or an avatar so you need to clarify your proposal to REZ_FLAG_DIE_ON_NO_OBJECT_REZZER. Or specifically since you dont want it to do with avatars attachments then perhaps REZ_FLAG_DIE_ON_NO_WORLD_OBJECT_REZZER
Lucia Nightfire
Nexii Malthus
The intent was for that status to only be set by ROWP, thus scripted rezzing only, whether by attached or rezzed rezzer, but I can see how a use case could exist with agent rezzing. I'm torn on splitting functionality into separate agent and object statuses, though.