Jump to content

On Proximity - On Distant - On Enter - which should be used for triggering events?


Forest-Ghost

Recommended Posts

Hi, I have heard various discussions about using On Proximity, On Distant, and On Enter for triggering events. Are one of these event triggers more preferable to use? I am interested in the theory behind how each of these works and the purpose for using each.

 

Also, I am curious as to why Groundspeak created these three options for triggers since they seem to being doing essentially the same operation. I realize the issue is alot more complex than this so any clarification would be helpful.

Link to comment

I found a good image, which describes the different states a user could have to a zone. You could find it at Image Zone Events. Like you see in this image, you could have 4 states regarding a zone: NotInRange, Distante, Proximity and Inside. Items could be visible or not dependent on the state. That is one reason for this behavior. Also events are triggered, if you change the state. From outside to inside: State=NotInRange -> OnDistance -> State=Distante -> OnProximity -> State=Proximity -> OnEnter -> State=Inside -> OnExit/OnProximity -> Proximity -> OnDistance -> State=Distante. You could get a better explanation at chapter 5.5 at this Earwigo Handbook by GeoMagician.

 

But why we have this? Because we could use it. You could make things like this, for example: If you are going from State=NotInRange to State=Distante you make a "Brown thing" in OnDistance event visible. If you go from State=Distante to State=Proximity, you make "Brown thing unvisible and "Brown chest" visible. And if the player is even nearer (State=Inside), you change the item to "Brown treasure chest with big padlock". Or you could make a zone visible, if you are in State=Proximity. There are much more things you could do.

Link to comment

Thank you for your responses this is very helpful. I experimented around with the OnProximity and OnDistance and I have a better idea of how to use these now.

 

One more question, I have used Wherigo kit builder in the past which triggers events using OnProximity. Is there a reason why it would be preferable to trigger events using the OnProximity instead of OnEnter? I have heard that OnProximity works better but I never understood why. Lets say I have a zone that has an area of 40 ft and I have another zone with an area of 20 ft and a proximity of 20 ft. If one of these zones fires on OnProximity and the other OnEnter there would be no difference correct? (This is assuming there are no items or other interactions that are only visible when actually inside the zone).

Link to comment

It's because of the behavior of the users :rolleyes:

 

Players show normally the distance to the nearest point of the zone. If they should walk to a zone, the distance goes 3 m, 2 m, 1 m, you are inside. The user stops at this point. But the signal is not very stable, so that it could be, that the user leaves the zone, even if s/he don't move. I call it "jumping coordinates"

 

If you now use a smaller zone and use OnProximity, the distance goes 23 m, 22 m, 21 m, 20 m. The user keeps going on perhaps to 10 m, "jumping coordinates" don't throw her/him outside of the zone. That's the trick.

 

But doing this, you loose one event level (OnEnter/OnExit) for zones.

Link to comment

Okay thank you again. That makes sense, I have experienced the jumping coordinates problem before while playing through a Wherigo--the message got cut off as my gps drifted outside of a zone. I am assuming then that using OnProximity will bypass this problem since the triggered events will not stop once they hit OnProximity regardless of gps drift.

 

The down side seems if I have a character or item that is located inside the zone it will now be trickier to get that character inside the zone to interact with those items since we are making the zone smaller.

Link to comment

Okay thank you again. That makes sense, I have experienced the jumping coordinates problem before while playing through a Wherigo--the message got cut off as my gps drifted outside of a zone. I am assuming then that using OnProximity will bypass this problem since the triggered events will not stop once they hit OnProximity regardless of gps drift.

 

The OnProximity trick works because you are using two uncontrollable effects to your advantage.


  1.  
  2. the human player is at a full stride because the indicated distance to the zone is still 30 feet or more (your milage may vary)
  3. there is a slight lag between the human players position and the Wherigo player reaction.

 

The lag time helps your user to walk (at full steam ahead) inside the proximity zone. He will therefore (hopefully) be well inside the OnProximity area when the OnProximity event fires (slightly belated).

 

The down side seems if I have a character or item that is located inside the zone it will now be trickier to get that character inside the zone to interact with those items since we are making the zone smaller.

 

You have to adjust the visibility distance for items (visible OnProximity vs visible OnEnter). This should make interaction possible again.

 

P.S. If you want to have a more detailed look at this can of worms (AKA coordinate jitter) check this out: http://goo.gl/hv1lfW

Link to comment

Awesome! Thank you for sharing this. The comfort zone pdf was extremely helpful. I have a better understanding now and was also able to make the changes in my cart so that the object visibility shows up on OnProximity. I think this will definitely work much better than my old method of just having larger zones. :D Thanks again!

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...