Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

STATUS_BLOCK_PUSH flag, please

Jesrad Seraph
Nonsense
Join date: 11 Dec 2004
Posts: 1,463
03-03-2006 01:58
I've hinted at this several times in the past but never made into an actual feature proposal so far.

A "STATUS_BLOCK_PUSH" status flag, applicable to physical objects (including avatars) would be extremely useful in stopping many forms of griefing and giving back control of our own avatars. It would work the same way the STATUS_BLOCK_GRAB flag does: when set to TRUE it'd block external pushes applied on the object (or avatar, if called from an attachment) through llPushObject.

I still don't understand why external objects and scripts someone else made can impose so much arbitrary movement on other people's physical objects and avatars just by calling a LSL function. The proper way to communicate from a (supposedly suspicious since it is made by another person) object to another, is to first authorize this communication then send whatever data is to be sent, be it text, sound or kinetic moment.

Example usage:
CODE

integer can_push;

default
{
state_entry()
{
can_push = TRUE;
llSetStatus(STATUS_BLOCK_PUSH, can_push);
llOwnerSay("Pushes are blocked.");
}

touch_start(integer c)
{
if (llDetectedKey(0) != llGetOwner()) return;
if (can_push)
{
can_push = FALSE;
llOwnerSay("Pushes are allowed.");
} else {
can_push = TRUE;
llOwnerSay("Pushes are blocked.");
}
llSetStatus(STATUS_BLOCK_PUSH, can_push);
}
}
_____________________
Either Man can enjoy universal freedom, or Man cannot. If it is possible then everyone can act freely if they don't stop anyone else from doing same. If it is not possible, then conflict will arise anyway so punch those that try to stop you. In conclusion the only strategy that wins in all cases is that of doing what you want against all adversity, as long as you respect that right in others.
Zepp Zaftig
Unregistered Abuser
Join date: 20 Mar 2005
Posts: 470
03-04-2006 03:49
I think there should be a permission system for pushes.
Basically I think it should have these abilities:

Block all pushes with an optional list of keys that are allowed to push

Allow all pushes with an optional list of keys that are not allowed to push

Perhaps implemented as something like:
llSetPushPermissions(integer blockstatus, list keys);


Examples:
Block all pushes
llSetPushPermissions(BLOCK_ALL, []);

Block all pushes except for by self and owner
llSetPushPermissions(BLOCK_ALL, [llGetOwner(), llGetKey()]);

Block pushes only from known griefers
list grieferkeys = ListOfCollectedKeysHere;
llSetPushPermissions(ALLOW_ALL, grieferkeys);
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
03-04-2006 08:40
I think the other proposal, "block third party pushes on this land" has more merit.

I use push on my land and in my builds and products (none of which are usable for griefing, by the way), and if STATUS_BLOCK_PUSH was created you *know* people would start using "test pushes" on people and saying "if you didn't want to be shot why do you have push on" the way they go around shooting people on the weapons-testing sandbox, or people they *think* are wearing shields.

And there's lots more ways of griefing people than pushing them around.
Huns Valen
Don't PM me here.
Join date: 3 May 2003
Posts: 2,749
03-08-2006 15:16
To vote for this proposal: http://secondlife.com/vote/index.php?get_id=1102

I'm in favor of this and I'm putting a link to this thread in my sig. If you're reading this and you think this is a good idea, I hope you will do so as well.

No one should be able to push me or one of my objects over safe land, unless I want them to. This would partially nerf llPushObject() shields, but why do people wear them? To escape push bullets. In combat sims, perhaps llPushObject() wouldn't need permissions. It's something to think about, certainly. Maybe it could be an estate flag, so that if someone wanted to develop a game that relied on it, they'd be OK. However, over the vast majority of land in SL, I see no reason to allow one person to push another person (or their objects) against their will. I see absolutely no benefit there at all. This flag would allow people (and their objects) to be susceptible to push, or not.

The biggest problem I have with llPushObject() isn't that it can be used on my avatar. If someone does that, I can AR them. But, when I am driving or flying a vehicle, anyone can use llPushObject() on it, undetected. If we allowed people to make themselves and their physical objects immune to llPushObject(), not only would we end that kind of abuse, we would also free up a HUGE amount of time for LL staffers who have to read the piles and piles of abuse reports that come in every day.

I'm thiking this should be an LSL call, and also a flag that could be checked in the editor (even if an object is no-modify.) Putting it in the editor would enable people to protect their physical objects without requiring them to go back to the original creators and ask for this functionality.
Andrew Linden
Linden staff
Join date: 18 Nov 2002
Posts: 692
03-08-2006 16:11
Thanks Huns, for pointing me at this thread.

Hrm... I like it. I'll point some of the other developers at this thread to see what they think.

My first pass design would be to leave it a per-object property, call it STATUS_PUSHABLE, have it default to TRUE, and make it enabled everywhere except on 'unsafe' land where the pushable status would be TRUE for all objects . It should probably be settable for the agent, maybe by script only (rather than UI). Uh... perhaps landowners and members of the affiliated group should be able to push foriegn unpushable objects/avatars that have tresspassed onto their parcel.

What do you think?
Jillian Callahan
Rotary-winged Neko Girl
Join date: 24 Jun 2004
Posts: 3,766
03-08-2006 16:20
From: Andrew Linden
Thanks Huns, for pointing me at this thread.

Hrm... I like it. I'll point some of the other developers at this thread to see what they think.

My first pass design would be to leave it a per-object property, call it STATUS_PUSHABLE, have it default to TRUE, and make it enabled everywhere except on 'unsafe' land where the pushable status would be TRUE for all objects . It should probably be settable for the agent, maybe by script only (rather than UI). Uh... perhaps landowners and members of the affiliated group should be able to push foriegn unpushable objects/avatars that have tresspassed onto their parcel.

What do you think?
I think y'all are on to something here.

We could avoid having to worry about being able to push foreign objects from our land if we had llReturnObject(key object_id) (with it's relevant permission PERMISSION_RETURN_OBJECTS). :)

On the other hand, being able to push on objects and avs on your land would have the least impact on developers while still putting a serious dent in the greifer toolbox.

(I'd perfer to have both, of course. llReturnObject() would be tremenoudly useful for landladys.)
_____________________
Rickard Roentgen
Renaissance Punk
Join date: 4 Apr 2004
Posts: 1,869
03-08-2006 16:42
I am definately in favor of those. Great idea Jesrad!
_____________________
Rickard Roentgen
Renaissance Punk
Join date: 4 Apr 2004
Posts: 1,869
03-08-2006 16:44
From: Andrew Linden
Thanks Huns, for pointing me at this thread.

Hrm... I like it. I'll point some of the other developers at this thread to see what they think.

My first pass design would be to leave it a per-object property, call it STATUS_PUSHABLE, have it default to TRUE, and make it enabled everywhere except on 'unsafe' land where the pushable status would be TRUE for all objects . It should probably be settable for the agent, maybe by script only (rather than UI). Uh... perhaps landowners and members of the affiliated group should be able to push foriegn unpushable objects/avatars that have tresspassed onto their parcel.

What do you think?


well i think status should default to pushable. but I'd take the feature either way :).
_____________________
Andrew Linden
Linden staff
Join date: 18 Nov 2002
Posts: 692
03-08-2006 16:51
From: Rickard Roentgen
well i think status should default to pushable. but I'd take the feature either way :).


Yes, I think we agree with each other.
Rickard Roentgen
Renaissance Punk
Join date: 4 Apr 2004
Posts: 1,869
03-08-2006 17:06
oops, yay for reading comprehension :/. hehe, anyway, good!
_____________________
Huns Valen
Don't PM me here.
Join date: 3 May 2003
Posts: 2,749
03-08-2006 19:41
From: Andrew Linden

Uh... perhaps landowners and members of the affiliated group should be able to push foriegn unpushable objects/avatars that have tresspassed onto their parcel.
Thank you for checking this out!

Lee Linden already said it was considered unacceptable to use llPushObject() as part of a security system (which is no different from pushgunning someone - and which logically should apply to vehicles as well, I think.) Besides security systems (and maybe llReturnObject as suggested), I can't think of much it would be useful for over safe land, especially on the mainland. In case anyone wants to develop a game that requires pushable avs/objects, perhaps an appropriate flag could be added to llGetAgentInfo() and llSensor(), to make sure people aren't cheating and without requiring that the land be set to damage. (Although, if you want to be able to effect someone else's avatar or vehicle, I think you should be vulnerable to them as well, so maybe just saying "set your land to damage if you want to be able to push unpushable things" is worth at least thinking about.)

In case anyone at LL is actually thinking about writing llReturnObject() after reading this thread, I'd ask that it work after popping up a notice on the owner's client and giving them 15 seconds to scram. I already have enough trouble flying across the grid without getting teleported home and I really don't want it to be any easier for some paranoid citizen (who isn't even home!) to return what I'm flying in.
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
03-08-2006 21:15
From: Huns Valen
No one should be able to push me or one of my objects over safe land, unless I want them to.
You're not the person who determines whether land is safe or not, the landowner does.

Similarly, the landowner should be able to disable or enable outside push, just like they can disable or enable outside scripts or building or damage.

Not the estate owner, the landowner or renter, anyone who can currently control the other land attributes.

From: someone
However, over the vast majority of land in SL, I see no reason to allow one person to push another person (or their objects) against their will.
Anyone who walks onto my land and touches the right button or even stands in the right place will be safely, predictable, and harmlessly moved around consentually using push. There is no way I should have to enable damage on my land to allow this.
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
03-08-2006 21:18
From: Andrew Linden
Uh... perhaps landowners and members of the affiliated group should be able to push foriegn unpushable objects/avatars that have tresspassed onto their parcel.
Or foreign or otherwise objects/avatars on their land because the push is an inherent part of the build. Or allow people to use push without having to have damage enabled.
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
03-08-2006 21:23
From: Jillian Callahan
On the other hand, being able to push on objects and avs on your land would have the least impact on developers while still putting a serious dent in the greifer toolbox.
Letting developers simply disable or enable third-party push on their land will provide the same ability to control griefers without making push too much of a pain to use once it's no longer tainted by being a "griefer tool", and the griefers have gone on to use particle storms or kinetic cages or something instead.
Jillian Callahan
Rotary-winged Neko Girl
Join date: 24 Jun 2004
Posts: 3,766
03-09-2006 07:42
From: Argent Stonecutter
Letting developers simply disable or enable third-party push on their land will provide the same ability to control griefers without making push too much of a pain to use once it's no longer tainted by being a "griefer tool", and the griefers have gone on to use particle storms or kinetic cages or something instead.
Yesh. And you mention two more things having an automated object return would help combat. :)
_____________________
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
03-09-2006 08:19
From: Jillian Callahan
Yesh. And you mention two more things having an automated object return would help combat. :)
Not sure about that.

It doesn't take long for a kinetic cage to launch someone off-sim, and particle generators can be off-sim or on the avatar. Automated object return would be useful for the equivalent of C4, but not for the equivalent of HOS. Plus, you can only detect 16 objects a cycle, and there's no "everyone-but-owner" option in sensors. :P
Logan Bauer
Inept Adept
Join date: 13 Jun 2004
Posts: 2,237
03-09-2006 17:57
From: Argent Stonecutter

Anyone who walks onto my land and touches the right button or even stands in the right place will be safely, predictable, and harmlessly moved around consentually using push. There is no way I should have to enable damage on my land to allow this.


I agree with this. If I want to build a river with currents that push you downstream, or conveyor belt, or trampoline, or any variation of teleport/movement that Argent mentions, ect... I should be able to on my land. I'd definitely not want to have to damage enable my land to do so, personally.

Huns makes a real valid point too with the example of flying a vehicle and being pushed. But I'd almost rather see the "block 3rd party pushes on this land" option - I think this would be effective assuming that most griefers aren't over land that they own when they are griefing.
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
03-10-2006 08:42
From: Logan Bauer
f I want to build a river with currents that push you downstream,
Oh, yeh, I was disappointed that the Linden t00bing area didn't do that.

(you could put that in the t00b, but some people like to use their own)
Huns Valen
Don't PM me here.
Join date: 3 May 2003
Posts: 2,749
03-10-2006 14:51
From: someone
From: someone
Originally Posted by Huns Valen
No one should be able to push me or one of my objects over safe land, unless I want them to.

You're not the person who determines whether land is safe or not, the landowner does.
I'm not sure how your response relates to what you quoted me as saying.

From: someone
Anyone who walks onto my land and touches the right button or even stands in the right place will be safely, predictable, and harmlessly moved around consentually using push. There is no way I should have to enable damage on my land to allow this.
Well, that's fine, but I'm talking about the damage flag overriding the person's ability to opt out of push. If someone goes onto your land and wants to be pushed by your stuff, they can allow themselves to be pushed. The damage flag thing would just be for landowners who want to be able to override the end user's choice of whether or not they want to be pushed.

From: Logan Bauer
Huns makes a real valid point too with the example of flying a vehicle and being pushed. But I'd almost rather see the "block 3rd party pushes on this land" option - I think this would be effective assuming that most griefers aren't over land that they own when they are griefing.

"Block 3rd-party push" wouldn't go far enough, because it still leaves travelers open to abuse by landowners. It's not acceptable for a landowner to orbit my avatar when I'm over their safe land without my consent. (Abuse reports about pushing send the push amount, or so I'm told, so gentle things like river currents shouldn't be an issue.) I don't think anyone, landowner or not, should have a presumptive right to push me or my objects when I'm on their land, if I don't want them to. I've had so many instances of being pushed, ejected, and teleported just from flying aircraft across the grid, and all I was doing was flying from one place to another, not even stopping. That isn't just, any more than it would be just for me to see a Cessna flying over my house in real life and start shooting at it.
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
03-10-2006 19:09
From: Huns Valen
I'm not sure how your response relates to what you quoted me as saying.
You want to block push over other people's land, or force someone to set their land damage-enabled to override that.

I don't care if you block push or not, but I don't want to have to set damage on my land so people don't have to go in and turn off their push blocks before they can ride.
From: someone
"Block 3rd-party push" wouldn't go far enough, because it still leaves travelers open to abuse by landowners. It's not acceptable for a landowner to orbit my avatar when I'm over their safe land without my consent.
If they do that, you can always AR them already. I'm not talking about what should be acceptable, I'm talking about what should be technically possible.

From: someone
(Abuse reports about pushing send the push amount, or so I'm told, so gentle things like river currents shouldn't be an issue.)
You're welcome to AR me because you got into my skydiving launch platfrom, turned it up to "11", and got kicked to 2500 meters, but if someone wants to go skydiving that way they shouldn't have to turn off their push-block to do it, and they shouldn't have to worry about being "killed" and teleported home if they forget to pull their ripcord when they do it.

From: someone
I don't think anyone, landowner or not, should have a presumptive right to push me or my objects when I'm on their land, if I don't want them to.
They don't. If they push your plane as part of a security script you're perfectly welcome to AR them.

And, yes, I hate stupid security scripts that unsit me and teleport me home, but that doesn't mean I'm going to demand a STATUS_BLOCK_UNSIT and STATUS_BLOCK_TELEPORT_HOME that you have to set your land to "damage" to enable.

From: someone
That isn't just, any more than it would be just for me to see a Cessna flying over my house in real life and start shooting at it.
I agree with that, but I don't see what it has to do with this proposal. This proposal isn't about "what should be AR-able", it's about "what should be possible".
Huns Valen
Don't PM me here.
Join date: 3 May 2003
Posts: 2,749
03-10-2006 20:02
From: Argent Stonecutter
You want to block push over other people's land, or force someone to set their land damage-enabled to override that.
Not quite. I want to make it possible for people to opt their avatars, vehicles, and anything else physical out of being pushable. If they don't opt out, they remain susceptible. If you want to FORCE them to be pushable, then you turn on damage.

From: someone
I don't care if you block push or not, but I don't want to have to set damage on my land so people don't have to go in and turn off their push blocks before they can ride.
If they do that, you can always AR them already. I'm not talking about what should be acceptable, I'm talking about what should be technically possible.
I look at the scenario of someone having to enable pushability so they can get on your ride, and I see a little bit of effort, and not much of a problem. I look at the scenario of someone with a push script making it impossible for me to travel from point A to point B, because they are paranoid or because their shield is badly scripted or because they are just a jerk, and I see a much larger problem. This proposal would strike a perfectly fair balance.

From: someone
You're welcome to AR me because you got into my skydiving launch platfrom, turned it up to "11", and got kicked to 2500 meters, but if someone wants to go skydiving that way they shouldn't have to turn off their push-block to do it, and they shouldn't have to worry about being "killed" and teleported home if they forget to pull their ripcord when they do it.
What we are suggesting will not break your skydiving and it won't make it so you have to turn on damage. It would simply mean that if someone has opted out of pushability, they would have to opt back in for the duration of using your ride. I don't see the effort required to do this as a problem. I DO see the ability of people to arbitrarily throw each other's avatars and physical posessions thousands of meters in the air, or ten sims away, against their will, to be a problem.

From: someone
They don't. If they push your plane as part of a security script you're perfectly welcome to AR them.
I see two issues with this. #1, pushing objects doesn't result in a PVP event registering on the client, nor does it raise an event in any script on the pushed object, so there's no way to be sure who did it. #2, making it possible to opt out would enable us to avoid this problem in the first place, so the Lindens would have that many fewer ARs to read through.

From: someone
And, yes, I hate stupid security scripts that unsit me and teleport me home, but that doesn't mean I'm going to demand a STATUS_BLOCK_UNSIT and STATUS_BLOCK_TELEPORT_HOME that you have to set your land to "damage" to enable.
Well, these problems are somewhat related, but I think they have different solutions. I think the answer to llTeleportAgentHome() is to keep it, but make it tell the agent to scram within 15 seconds (backing off to fewer seconds if the agent came back the same day) or they're getting a free trip home. The unsit function would have the same warning time.
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
03-11-2006 10:24
From: someone
I look at the scenario of someone having to enable pushability so they can get on your ride, and I see a little bit of effort, and not much of a problem.
I look at it as a major problem. There's benign push scripts all over SL, and almost all of them are on the owner's land, and almost none of them are something you "get on".

This is like the swimmer script, in a way. Landowners should be able to easily disable swimming in a volume, so they can do underwater builds that aren't "in the water". Asking someone to turn off swimming, or turn of push block, really breaks the continuity of the build.
From: someone
I look at the scenario of someone with a push script making it impossible for me to travel from point A to point B, because they are paranoid or because their shield is badly scripted or because they are just a jerk, and I see a much larger problem.
I don't see that problem at all. Maybe it used to be, but I fly a lot, at low altitude, and I've lost vehicles to the (legal and Linden approved) llTeleportAgentHome or llUnsit/llEjectFromLand. I've only ever been hit by a push script like that ONCE, and that was after a warning and it was clear whose land it was.

It's against the TOS to use push in security scripts, none of the common ones do it, so you're asking that something that's almost NEVER abused by landowners any more... and if it is you already have recourse... be made harder to use benignly (for push elevators, for example... and saying 'oh, you can turn the status off' for an elevator, or a trampoline, is ludicrous.
From: someone
I DO see the ability of people to arbitrarily throw each other's avatars and physical posessions thousands of meters in the air, or ten sims away, against their will, to be a problem.
I'm not saying you should leave yourself open to attacks from random greifers, I'm saying that allowing a landowner to use push doesn't leave you open to attacks to any significant degree, because the people abusing push aren't the landowners.
grumble Loudon
A Little bit a lion
Join date: 30 Nov 2005
Posts: 612
03-11-2006 13:42
Turning off llPushObject should be a seperate land value.

I have seen llPushObject used for good uses. For example I really liked the fast bounce lift this one place had. When you steped on the base it would push you up one floor where a second slanted one would push you forward just enough not to fall back down. It also made a nice boing sound.

edit:

I can also see different forms of combat areas where llPushObject() would be disabled.
This could lead to kenetic only weppons and functioning armor.
Like all rules based RPG's the players would still have to follow the rules, but at least someone with a push gun could not come in and mess up the game.

---
I also sugest that a feature should be discussed before it can be voted on!
https://secondlife.com/vote/index.php?get_id=1059

---
Please vote for llReturnObject(Key ID)
https://secondlife.com/vote/index.php?get_id=1016
Huns Valen
Don't PM me here.
Join date: 3 May 2003
Posts: 2,749
03-12-2006 21:03
From: Argent Stonecutter
I look at it as a major problem. There's benign push scripts all over SL, and almost all of them are on the owner's land, and almost none of them are something you "get on".
How is it a major problem for someone to click a button on their client or type a command in chat? How is that MORE of a problem than jerks who think it's funny to toss other peoples' vehicles around?

From: someone
This is like the swimmer script, in a way. Landowners should be able to easily disable swimming in a volume, so they can do underwater builds that aren't "in the water". Asking someone to turn off swimming, or turn of push block, really breaks the continuity of the build.
If I want to experience that continuity, why is it a problem for me to opt in?

From: someone
I don't see that problem at all. Maybe it used to be, but I fly a lot, at low altitude, and I've lost vehicles to the (legal and Linden approved) llTeleportAgentHome or llUnsit/llEjectFromLand. I've only ever been hit by a push script like that ONCE, and that was after a warning and it was clear whose land it was.
It hasn't happened to you, fine, but it has happened to me. I was over someone's land and he thought it would be hilarious to push my vehicle and he did. Why do I need to be susceptible to that? Where is the overriding benefit? Is it continuity? I doubt it, since that continuity is presumably for my benefit. Why would it be such a problem for me to not be susceptible to it?

From: someone
It's against the TOS to use push in security scripts, none of the common ones do it, so you're asking that something that's almost NEVER abused by landowners any more... and if it is you already have recourse...
I have no recourse if my vehicle is pushed because I don't get a PVP notice and therefore have nothing to AR. This is not something I've seen with security scripts but it's something I see all the time with shields. They don't differentiate between a bullet and a vehicle, and will try to orbit anything physical that comes within 96 meters.

From: someone
be made harder to use benignly (for push elevators, for example... and saying 'oh, you can turn the status off' for an elevator, or a trampoline, is ludicrous.
I really don't see how. It's not like I'm asking users to hex-edit their SL client and go to some address and flip a bit to make themselves pushable. It would be an option on the client that would take a few seconds to turn on or off. In fact, I'd expect LL would make people susceptible by default, and let them opt out if they wanted to. That way, your elevator or whatever would still work except on people who deliberately opt out.

From: someone
I'm not saying you should leave yourself open to attacks from random greifers, I'm saying that allowing a landowner to use push doesn't leave you open to attacks to any significant degree, because the people abusing push aren't the landowners.
'Cept that one time a landowner did that to me. As a landowner, it's not OK for you to push me against my will. I want to be able to make it impossible for you to do that to me, and to my vehicle if I'm flying over.
Jesrad Seraph
Nonsense
Join date: 11 Dec 2004
Posts: 1,463
03-22-2006 06:30
I think making all objects pushable on unsafe is fine, but letting landowners push anything isn't IMO. I'd rather have an Eject From Land that also works on objects, instead.
_____________________
Either Man can enjoy universal freedom, or Man cannot. If it is possible then everyone can act freely if they don't stop anyone else from doing same. If it is not possible, then conflict will arise anyway so punch those that try to stop you. In conclusion the only strategy that wins in all cases is that of doing what you want against all adversity, as long as you respect that right in others.
1 2