This takes care of many problems at once:
  • LL has to spend time and money continuously policing obnoxious security orbs in Bellissaria, instead of implementing this change once.
  • LL has to spend further time and money reading abuse reports about this outside of Bellissaria, regardless of whether they care to or not.
  • Estate owners also have to spend time dealing with this problem.
  • People who are travelling are routinely ejected or teleported home, from parcels which are EMPTY in the MAJORITY OF CASES, simply because they passed over someone's parcel, with no intention of stopping or causing any trouble.
  • Land owners or renters who don't know any better wind up inadvertently interfering, needlessly, with others' enjoyment of Second Life.
  • Land owners who _do_ know better, and derive great pleasure from interfering needlessly from others who can't fight back, get a special loophole that allows them to grief innocent passersby with no consequence.
Well, I've got a way to fix this that protects travelers from mecious security orbs — while simultaneously allowing land owners to deal with repeat nuisance visitors, AND avoid bothering travelers when no one associated with the property is actually there to be potentially disturbed.
It's rather silly that you can AR someone for pushing you one meter... but if they happen to be on your land, you can with no warning effectively push them multiple kilometers back to their home location; and they have no recourse, even though they've done nothing to you. This creates a needless asymmetry in power. That asymmetry can be corrected with a timed warning to the user who's about to be removed, or with something that prevents you from doing this with scripts when no one associated with the land is actually there, or both. (Or neither, if a non-Linden estate owner is cool with it.)
Acceptance Criteria:
Estate admins able to specify pre-execution delays and "presence gate" controls for specified API calls.
  • Given a user who has administrative privileges to an estate,
  • When the user edits the estate,
  • Then they are able to specify pre-execution delays for llEjectFromLand(), llAddToLandBanList(), and llTeleportAgentHome(). They are also allowed to specify whether these functions may be called according to the following "presence gates:" always, or only when a group land member is present, or only when the owner or their partner is present. They are also allowed to specify whether parcel owners are able to select whether they prefer the built-in delay, the presence gates, or both.
  • For estates edge-connected to the mainland, Linden admins are able to specify that they automatically and necessarily inherit the same settings as the mainland, which the non-Linden estate owners may not change themselves. This avoids an unpredictable regulatory patchwork that's very hard to predict while travelling the mainland — just as real-world states and provinces may not say, "well, in THIS land, our traffic lights mean STOP when they're GREEN."
Exponential back-off logic to allow handling of repeated nuisance visits. (Of course, we have to give parcel owners this to handle people who are DELIBERATELY being a nuisance.)
  • The first time a user visits a parcel and is subject to one of the API calls (in accordance with "presence gate" rules), they are given a "grace period" (the default number of seconds) to leave, and a cooldown period of 24 hours.
  • This means they will get (for example) 15 seconds to leave. If they return MORE THAN 24 hours later, they'll get 15 seconds again.
  • However, if they return BEFORE the cooldown (24 hours) expires, then the warning period is halved from 15 seconds to 7.5 seconds, and the cooldown period is doubled to 48 hours. (So, every repeated visit within the cooldown period, the grace period is halved, and the cooldown period is doubled.) The cooldown period may not exceed one week.
  • If the grace period reaches less than a second in length, then it will be set to zero seconds, and the cooldown period will increase as usual, but not to more than a week.
Elaboration of what the estate owner can do to control access to any of the three API calls, and what the land owner sees in the land options for each of them:
  • Checkbox for opting for the pre-execution delay.
  • Checkbox for opting for the "presence gate."
  • Estate admin chooses which boxes are enabled, so depending on preference, that could be either, neither, or both.
Default behaviors.
  • Given any estate, mainland or otherwise,
  • When the migration is applied which enables the pre-execution delays and "presence gates" for specified API calls,
  • Then it will set all of the delays to zero seconds; and if the estate is edge-connected to the mainland, it will inherit the mainland's "presence gates" settings. Otherwise, the "presence gates" will be set to "always." It will be up to the estate admins to specify what behavior they want.
(Continued in comment due to char limit.)