Jump to content

Zones: activity and visibility issue


marekl

Recommended Posts

Please look at the picture:

 

post-655894-1204727465.png

 

I have a script attached to entering the zone A. I want to:

 

- make this zone A not visible and not active

- make zone B visible and active

- make zone C active

 

The reality is other that I want. Emulator: zone A dissappears, but no new zone B appears in Locations, only after move of the figure on the map. Colorado: no new zone B in Locations appears (neither after move), zone C is active.

 

What is wrong with my code? Thank you.

Link to comment

Just to add to this. I recently put out a geocache GC19THA and am getting emails from Colorado users. The first zone is set as default (via check boxes in the builder) to be active and visible. Everything works fine on my PPC, but Colorado users are stating that they are not seeing this zone. It is apparently not showing up on their locations. So this particular issue, though similar is slightly different as I am not changing the status of a zone. This is a major concern as these people who spent $$$ on their Colorado's will not be able to do my cache and will be very disappointed. It could also leave a VERY bad first impression on the Wherigo Geocache as we are seeing more pop up.

Edited by Tydirium
Link to comment

I've got the same experience with my new Wherigo cartridge. Users with Colorado can't see newly activated zone while PPC users see it.

 

It suspect a condition command of this behaviour, because I tried this situation on simple testing cartridge yesterday and everthing worked with Colorado.

 

EDIT: My Colorado has the updated firmware.

Edited by marekl
Link to comment

Well I can't reproduce this in the emulator. I download it, load in the emulator and it works fine.

 

I don't have a Colorado, so I can't test it on a real one. marekl, any chance you could try my cartridge out and see if it works with the updated firmware? It's located HERE

 

When you say you ran a simple testing cartridge and everything worked are you saying that you could see newly activated zones? In mine, the first zone is set (via the builder check boxes) to be visible/active and Coloroda users are saying they don't see it. I would appreciate it if could try mine out and let me know your results. The cartridge will be impossible to do if the player can't even see the first zone.

 

Thanks

Link to comment

I wander if it would make a difference if I activate/make visible this first zone during cartridge startup as opposed to relying on the builder check boxes? Any thoughts? I can't really test this out and am just kinda of thinking out loud now.

Edited by Tydirium
Link to comment

I actually played the cartridge from Tydirium this morning on my Colorado. Let me further describe the behavior of all locations involved in the cartridge on my 400t running 2.4 software (2.11 player).

 

All locations do show up, but only if you get within a certain proximity. If I compare to the emulator it looks like once I get inside the purple zone which I can see on the emulator then the location becomes visible. Once it is visible I see it in Locations and I get nav information to an exact point.

 

I also noticed that the Colorado required me to get to a very specific location in order to actually arrive at the location. I actually had to be 0ft from the location for a few seconds in order for it to register me finding the location. In the PPC emulator it seemed like being in the zone was enough, not so on the Colorado.

 

GO$Rs

Link to comment
I also noticed that the Colorado required me to get to a very specific location in order to actually arrive at the location. I actually had to be 0ft from the location for a few seconds in order for it to register me finding the location. In the PPC emulator it seemed like being in the zone was enough, not so on the Colorado.

 

I can confirm this behavior as well. I had to make the zone large enough and even then, all save for one not reproducible time, I had to have it stay at zero for a few seconds, cross my fingers, and hope it registered. Being that my test cartridge was time-based (I made a Wherigo version of histryboy's "Countdown" cache), it was more than a little important this happen in a timely manner.

Link to comment
I also noticed that the Colorado required me to get to a very specific location in order to actually arrive at the location. I actually had to be 0ft from the location for a few seconds in order for it to register me finding the location. In the PPC emulator it seemed like being in the zone was enough, not so on the Colorado.

 

I can confirm this behavior as well. I had to make the zone large enough and even then, all save for one not reproducible time, I had to have it stay at zero for a few seconds, cross my fingers, and hope it registered. Being that my test cartridge was time-based (I made a Wherigo version of histryboy's "Countdown" cache), it was more than a little important this happen in a timely manner.

Any way I can get the source code for this cartridge? I want to run it thru some debug scenarios.

 

http://www.Wherigo.com/cartridge/details.a...7a-434fafb9780e

 

Thanks,

David.

Link to comment

I don't think you'd need the source code to test things out. Just create a zone in the builder that has both "Active" and "Visible" checked, compile it, load it on a Colorado and see if it shows up. I've been told that if you're very close to the zone that it will then show up, but to "enter" the zone you pretty much have to be right in the center of it.

Link to comment

On the Colorado here's what I see:

 

1) The location is not visible in Locations until you step inside the "zone".

2) Once you do enter a zone the location becomes visible in Locations and you get a distance and bearing to a very precise location inside the zone (I'm assuming this is what you are calling the "center").

3) The Colorado will not register that you've reached the location until you stand at the center for several seconds (0ft away literally).

 

Both are major showshoppers relative to using Wherigo on the CO. First off you have no idea where the location is and if somehow (ie using the PPC emulator or PPC) you can find the zone you have to stand in exactly the right spot for several seconds for the Colorado to see that you have arrived. In some cases this took me several minutes to find the exact spot and hope that the GPS didn't drift while I was standing still.

 

GO$Rs

Link to comment

On the Colorado here's what I see:

 

1) The location is not visible in Locations until you step inside the "zone".

2) Once you do enter a zone the location becomes visible in Locations and you get a distance and bearing to a very precise location inside the zone (I'm assuming this is what you are calling the "center").

3) The Colorado will not register that you've reached the location until you stand at the center for several seconds (0ft away literally).

 

Both are major showshoppers relative to using Wherigo on the CO. First off you have no idea where the location is and if somehow (ie using the PPC emulator or PPC) you can find the zone you have to stand in exactly the right spot for several seconds for the Colorado to see that you have arrived. In some cases this took me several minutes to find the exact spot and hope that the GPS didn't drift while I was standing still.

 

GO$Rs

I just had to try this. This is not at all the behavior I observed. (Colorado 400t, 2.40/2.60)

 

I defined a single trapezoidal zone with easily discerned landmarks at the corners. (Went outside and placed waypoints rather than defining via the map.) Sides are 63, 102, 93 and 75 feet. The zone center point is roughly in the middle. I set proximity to 100 feet, distance to 200 feet. The zone is initially active and visible. I attached script to distance, proximity, zone enter and zone exit events. The scripts just show a message box. (OK, so the zone exit message was dumb given the existence of the proximity message.)

 

What I observed was a zone visibility (locations list) dependency on the distance setting. The zone was not visible until I got within the 200 feet (within the GPSr accuracy at the time). At that point, my distance message box showed up and the zone appeared in the list. When I got within 100 feet, my proximity message gox showed up. When I crossed the zone boundary (within GPSr accuracy), the enter zone message box showed up. It was not necessary to stand still, nor was it necessary to approach the defined zone center point.

 

On the way back out, my zone exit message box did not appear (duh), but I saw the proximity message box as I crossed the zone boundary. As I got to the 100 foot mark, I saw my distance message box. At that point, I switched back to the main screen and kept walking. At about the 200 foot mark, the zone disappeared from the list.

 

Once the zone became visible in the list, the arrow, distance readings, etc. seemed to work fine.

 

The only thing that appears to be inconsistent between the Colorado and the PPC emulator is the visibility in the locations list. When I play the cartridge in the emulator, the zone is visible in the list no matter where I am. I can't vouch for behavior with a real PPC device, since I don't own one.

 

I have not tried this with a distance of -1. If it works as advertised, I expect the zone to be visible in the list as long as it is enabled and visible.

 

Tom

Link to comment

The only thing that appears to be inconsistent between the Colorado and the PPC emulator is the visibility in the locations list. When I play the cartridge in the emulator, the zone is visible in the list no matter where I am. I can't vouch for behavior with a real PPC device, since I don't own one.

 

Now that I think about it, this emulator behavior is characteristic of locally published cartridges. All zones are visible to the author on the map. Presumably, they are also visiblle in the locations list itself. Not sure if this was intended or not, but it's kind of consistent.

 

I have not tried this with a distance of -1. If it works as advertised, I expect the zone to be visible in the list as long as it is enabled and visible.

 

Tried this too. Behaves as expected. Set distance to -1. Started the game 500 feet from the zone. The distance message box appeared immediately when I started the game. And the zone appeared in the locations list at all times, no matter where I walked.

 

The only other thing I noticed this time was that getting to the zone detail screen from the locations list is sometimes difficult. Clicking the RnR button with the zone selected in the locations list always beeps, but sometimes does nothing (in particular, does not open the zone detail screen). Once, apparently when I held the RnR button down too long (pushing it harder helps, too, right? :unsure: ), it offered to save a waypoint for me...

 

Tom

Link to comment

So it sounds like the Colorado's bug is in setting the visibility of zones. It should not be based on any distance setting, instead if it is set active/visible; it should show up in 'Locations', regardless of how far away you are. The PPC functions properly because if I start my cartridge 2 miles away from my first active/visible zone, then it shows up in the list and says it's 2 miles away. My zones are set to distance 25ft, proximity 10ft. As I have no code that is relying on either of these settings, what I think I'll do is change distance to -1 and see if that serves as a good "work around" for this issue.

 

Now my next concern is that setting distance to -1 means "Always Visible". If I have distance set to -1 and visible unchecked in the builder, is this not a conflict? Will it show or won't it? I guess I'll do more testing on my PPC and you guys keep up the good work on the Colorado [:unsure:]

 

Thanks for the feedback on this.

Edited by Tydirium
Link to comment

Okay, took a closer look at the builder and see that distance -1 says "Always Show".

 

Is the Colorado in fact using distance as it key on when to "Show" the zone? Would this mean that it is the PPC that is indeed wrong? What is the difference between "Show" and "Visible"? Man it just keeps getting better and better.

Link to comment

Okay, took a closer look at the builder and see that distance -1 says "Always Show".

 

Is the Colorado in fact using distance as it key on when to "Show" the zone? Would this mean that it is the PPC that is indeed wrong? What is the difference between "Show" and "Visible"? Man it just keeps getting better and better.

 

To avoid confusion over the term visible (I can see it in the location list vs. the Visible property), let's say a zone is "shown" when it appears in the location list.

 

If we want to engage in pure speculation, here's how I think it's supposed to work.

 

The engine only processes events for active zones (Active property is true). Inactive zones (Active property is false) are never shown (regardless of the setting of the Visible property or the player's location relative to the zone). In addition to not processing events, I rather suspect that the engine never reconsiders the decision to show or not show an inactive zone. This is consistent with the idea that the Active property is intended specifically to allow the engine to completely ignore inactive zones.

 

Active zones which are visible (Visible property is true) are shown, but only if the player is within the distance range of the zone, or if the distance range is -1. Active zones which are not visible (Visible property is false) are not shown, even when the player is within range.

 

From your description, it would appear that the PPC always behaves as if the distance range was -1.

 

Does that agree with your experience?

 

Tom

Link to comment
Active zones which are visible (Visible property is true) are shown, but only if the player is within the distance range of the zone, or if the distance range is -1. Active zones which are not visible (Visible property is false) are not shown, even when the player is within range.

 

From your description, it would appear that the PPC always behaves as if the distance range was -1.

 

Does that agree with your experience?

 

Yes. If the distance setting is supposed to control whether or not to 'show' a visible zone, then it would appear that the PPC is indeed treating all distances as -1 in regards to 'showing' a zone.

 

But, I have to ask why have distance trigger the 'showing' of a zone? You can't get close enough to it to get it to 'show' up if you don't know where it's at. Seems to me that the distance setting should only be used to control OnDistance events and not deciding whether to 'show' a zone or not. The 'showing' of a zone should be controlled strictly by the "Visibility" property.

Link to comment

So now I guess the big question is "How is this supposed to work?".

 

Is showing a zone in the locations area supposed to be tied directly to the visibility property only (In which case the Colorado seems to be doing it wrong)

 

Or

 

Is showing a zone in the locations area supposed to be tied directly to the visibility property AND the distance setting (In which case the PPC is doing it wrong)

 

Having it tied into both makes no sense to me as I stated earlier. Whether a zone shows up in locations should IMHO be linked to the visibility property ONLY. If someone didn't want to show a zone until you were within a certain distance of it, then they could just set the visibility property to "Visible" in the OnDistance Event.

 

Hopefully some official word on how this is supposed to work will come soon so we don't have to speculate any more.

Link to comment

Well setting the distance to all my zones to -1 seems to have resolved my "zones not showing up in 'Locations' when I set them to visible on the Colorado issue." So I guess there's a temporary work around. Of course now I can do no coding what so ever using the OnDistance Event (not needed for this particular cartridge, so no big deal).

 

The bigger question remains is how is this "supposed" to work? Which player/device is working corrently and which one is not?

Edited by Tydirium
Link to comment

Looking at the glossary on Wherigo I found:

 

Distance

The farthest distance at which a zone will be displayed on the main screen of the Wherigo Player. For instance, if a zone’s Distance is set to 500 feet, then the zone will only be visible to a Wherigo user if he or she is within 500 feet of the zone. Note: A Distance value of -1 indicates that the zone will always be displayed, regardless of how far away the user may be. It’s usually a good idea to set the distance of the very first zone in a cartridge to -1 to ensure that players can always find it.

 

Given this, it would appear that the PPC is the device that is not behaving properly. The PPC seems to show zones regardless of this distance setting (as long as the zone is set to visible). I confirmed this by creating two cartridges. Both had a single Active/Visible zone defined exactly the same way with the exception that 1 zone had a 500' distance setting, while the other had a -1 setting. The zone was located 20 miles away from my current location. I fired up Wherigo on the PPC, got a good GPS lock and in both cases the zone showed up in locations with proper distance and bearing. I don't have a Colorado, but I'd be willing to bet that the cartridge that had the 500' distance setting would not have shown up, while the other one would have.

 

I still don't understand why zone visibility is being tied to distance AND visibility. How can a Colorado user get close enough to a zone in order to see it if they don't know how to get to it? If I set a zone property to "Visible" then it should show up in 'Locations' regardless of how far away I am.

 

I like the way the PPC (incorrectly) does this and I would vote that the Colorado behave the same way.

Link to comment

Looking at the glossary on Wherigo I found:

 

Distance

The farthest distance at which a zone will be displayed on the main screen of the Wherigo Player. For instance, if a zone’s Distance is set to 500 feet, then the zone will only be visible to a Wherigo user if he or she is within 500 feet of the zone. Note: A Distance value of -1 indicates that the zone will always be displayed, regardless of how far away the user may be. It’s usually a good idea to set the distance of the very first zone in a cartridge to -1 to ensure that players can always find it.

 

Given this, it would appear that the PPC is the device that is not behaving properly. The PPC seems to show zones regardless of this distance setting (as long as the zone is set to visible). I confirmed this by creating two cartridges. Both had a single Active/Visible zone defined exactly the same way with the exception that 1 zone had a 500' distance setting, while the other had a -1 setting. The zone was located 20 miles away from my current location. I fired up Wherigo on the PPC, got a good GPS lock and in both cases the zone showed up in locations with proper distance and bearing. I don't have a Colorado, but I'd be willing to bet that the cartridge that had the 500' distance setting would not have shown up, while the other one would have.

 

I still don't understand why zone visibility is being tied to distance AND visibility. How can a Colorado user get close enough to a zone in order to see it if they don't know how to get to it? If I set a zone property to "Visible" then it should show up in 'Locations' regardless of how far away I am.

 

I like the way the PPC (incorrectly) does this and I would vote that the Colorado behave the same way.

Here's how it works with the distance, proximity and enter:

 

Distance Range:

This is the range that triggers the "When the player is within distance to a zone". So, if you create a zone with 1500 feet as the distance, the event will be triggered when you are within 1500 feet of the zone. Outside of that, there is no event you can track. In the emulator (message log tab), you will see a "NotInRange" value for this zone when you are outside of 1500 feet.

 

If you create a zone with -1 in the distance value, the zone will always trigger a "When the player is within distance to a zone" no matter how far you are from the zone, but, until you get to the proximity distance. You will see "Zone:Distant" in the message log tab always.

 

Proximity Range:

This is more straight forward. It is the range at which the "When the player is within proximity" will trigger.

 

Show Objects in this Zone When:

If you can see the zone in the list, then you can see the objects within the zone based on this value. OnEnter means that you can only see the objects in this zone when you are in this zone ("here"). OnProximity means that you can see the objects in this zone when you are within the proximity range to a zone. Always means that the objects in the zone are always available in the you see list.

 

Net result: You should always see zones in the location list. (I'll have to check the Colorado and check with Garmin on this issue on their devices). In the emulator and PPC player, it is coded the above way.

 

David.

Link to comment

My experiments with active zones on a Pocket PC and on the emulator seem to fit with David's and Tydirium's descriptions (if I've understood them correctly). The current behaviour seems to be...

 

(i) If the "Visible" checkbox is checked in the Builder (in the edit zone dialog), the zone is always visible to the player in the "locations" list, wherever the player is in relation to the zone.

 

(ii) If the "Visible" checkbox is not checked, the zone is never visible to the player in the "locations" list, even if the player is actually in the zone (unless you add a script to make the zone visible).

 

(iii) The OnDistance and OnProximity events can be used by author-defined scripts to make zones visible or invisible.

 

(iv) The values in the "Distance" and "Proximity" boxes in the Builder relate only to the firing of the OnDistance and OnProximity events: they don't have an effect on visibility except through author-defined scripts.

 

Could we get official confirmation this is right? :rolleyes:

 

If so, is this current behaviour actually intended? If so, then it would seem that the Glossary is wrong to imply that visibility is directly affected by the Distance and Proximity values.

 

Furthermore, *should* this be what happens? At the moment, I'm considering writing a cartridge in which the player sees only the locations that are near. So the behaviour as described in the Glossary would be ideal for me. The current behaviour means that I have to write a huge number of scripts to make zones visible or invisible depending on the player's position. Very tedious, and prone to errors when zones are added, removed, or redefined.

 

However, the current behaviour is more general: it leaves it open to the author to decide what is the effect of moving nearer a zone. There are going to be some cartridges where if the Glossary behaviour were in operation it'd be tricky to have to turn off the visibility of a zone before the player saw it.

 

So which behaviour should be what happens?

 

How about changing the current boxes in Builder so that the "Visibility" checkbox and "Distance Range= -1" option are dropped and instead the author can choose for each zone one of the following options...

Show this zone in the Locations list:

a. Never

b. When the player is in the zone

c. When the player is within the Distance Range

d. When the player is within the Proximity Range

e. Always

 

And also allow the author to define the default option for this setting under "Preferences" (as is currently done for the Distance and Proximity Ranges).

 

Such a change to the Builder would enable the author to have visibility easily defined by an event (as now), by the player's location (as in the Glossary), or on always.

 

Or is the situation more complicated than this?

 

Asriel :)

Link to comment

My experiments with active zones on a Pocket PC and on the emulator seem to fit with David's and Tydirium's descriptions (if I've understood them correctly). The current behaviour seems to be...

 

(i) If the "Visible" checkbox is checked in the Builder (in the edit zone dialog), the zone is always visible to the player in the "locations" list, wherever the player is in relation to the zone.

 

(ii) If the "Visible" checkbox is not checked, the zone is never visible to the player in the "locations" list, even if the player is actually in the zone (unless you add a script to make the zone visible).

 

(iii) The OnDistance and OnProximity events can be used by author-defined scripts to make zones visible or invisible.

 

(iv) The values in the "Distance" and "Proximity" boxes in the Builder relate only to the firing of the OnDistance and OnProximity events: they don't have an effect on visibility except through author-defined scripts.

 

Could we get official confirmation this is right? :rolleyes:

 

If so, is this current behaviour actually intended? If so, then it would seem that the Glossary is wrong to imply that visibility is directly affected by the Distance and Proximity values.

 

Furthermore, *should* this be what happens? At the moment, I'm considering writing a cartridge in which the player sees only the locations that are near. So the behaviour as described in the Glossary would be ideal for me. The current behaviour means that I have to write a huge number of scripts to make zones visible or invisible depending on the player's position. Very tedious, and prone to errors when zones are added, removed, or redefined.

 

However, the current behaviour is more general: it leaves it open to the author to decide what is the effect of moving nearer a zone. There are going to be some cartridges where if the Glossary behaviour were in operation it'd be tricky to have to turn off the visibility of a zone before the player saw it.

 

So which behaviour should be what happens?

 

How about changing the current boxes in Builder so that the "Visibility" checkbox and "Distance Range= -1" option are dropped and instead the author can choose for each zone one of the following options...

Show this zone in the Locations list:

a. Never

b. When the player is in the zone

c. When the player is within the Distance Range

d. When the player is within the Proximity Range

e. Always

 

And also allow the author to define the default option for this setting under "Preferences" (as is currently done for the Distance and Proximity Ranges).

 

Such a change to the Builder would enable the author to have visibility easily defined by an event (as now), by the player's location (as in the Glossary), or on always.

 

Or is the situation more complicated than this?

 

Asriel :)

i - iv is correct. that is how Wherigo is coded. As for the other notes, very good feedback. I'll make a note of this so that we can discuss here. Thanks.

 

David.

Link to comment
(i) If the "Visible" checkbox is checked in the Builder (in the edit zone dialog), the zone is always visible to the player in the "locations" list, wherever the player is in relation to the zone.

 

i - iv is correct. that is how Wherigo is coded.

 

In regards to (i); this (according to documentation) is NOT the way Wherigo is coded. It is instead the way the PPC is behaving. According to the glossary a zone will only be displayed in 'Locations' if the visible property is set to "Visible" AND the player is within "Distance" to the zone (see above post with glossary definition). The Colorado does this as documented, but the PPC is acting as stated in (i). That's the whole issue with this thread. The PPC is showing a zone in Locations regardless of "Distance", while the Colorado is relying on BOTH settings to determine when to show a zone in Locations.

Link to comment
(i) If the "Visible" checkbox is checked in the Builder (in the edit zone dialog), the zone is always visible to the player in the "locations" list, wherever the player is in relation to the zone.

 

i - iv is correct. that is how Wherigo is coded.

 

In regards to (i); this (according to documentation) is NOT the way Wherigo is coded. It is instead the way the PPC is behaving. According to the glossary a zone will only be displayed in 'Locations' if the visible property is set to "Visible" AND the player is within "Distance" to the zone (see above post with glossary definition). The Colorado does this as documented, but the PPC is acting as stated in (i). That's the whole issue with this thread. The PPC is showing a zone in Locations regardless of "Distance", while the Colorado is relying on BOTH settings to determine when to show a zone in Locations.

True, I'm going to follow up with Garmin to verify how they've coded dealing with how to show zones.

 

David.

Link to comment

In the release notes for the new player/builder I see

 

8. The pocket pc and emulator player was showing all zones regardless of the zone state. So, zones that were not in

range would still show in the list. The garmin was not working this way. The ppc and emulator has been changed to

work like the garmin. Only in range, active/visible zones or active/visible zones marked with -1 in the distance

range will be shown in the list. This is how the Garmin works and is the expected behavior.

 

Am I correct to assume that this resolves the issues on this thread and that the Colorado player doesn't need to be changed?

 

GO$Rs

Link to comment

In the release notes for the new player/builder I see

 

8. The pocket pc and emulator player was showing all zones regardless of the zone state. So, zones that were not in

range would still show in the list. The garmin was not working this way. The ppc and emulator has been changed to

work like the garmin. Only in range, active/visible zones or active/visible zones marked with -1 in the distance

range will be shown in the list. This is how the Garmin works and is the expected behavior.

 

Am I correct to assume that this resolves the issues on this thread and that the Colorado player doesn't need to be changed?

 

GO$Rs

Sorry, this got buried. That is correct, the behaviour on the Colorado is correct and the PPC now reflects that as well.

 

David.

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...