[Feature Request] The case for Force Sync

edited April 2021 in General

Back during the Prime Beta, we asked for a Force Sync option to 'smooth the bumps'. It was requested again during the Prime Feedback phase.

It's been requested time and time again through the years since, without any response, or indication why it doesn't exist as a parity feature in the Prime client.

What is this??

A case where someone was confused about what was happening occurred today.

In this image, you can see the system responding with "Invalid Resonator". This was caused by the cached inventory on the device being out of sync with the server. A resonator that it tried to deploy, didn't exist in the server's copy of the player's inventory. However since the client will continue to attempt to redeploy that resonator, there's no way around this issue until the inventory is back in sync.

"Just reboot"

While this is a valid response to some degree, it's also more time consuming and with recent issues with black screens, even more frustrating when you reboot and can't get back into the game immediately.

Rebooting has the same effect as a force sync, but with far more rigmarole and time.

Why Force Sync?

Aside from the time issues above, Force Sync makes sense in many of these cases. Explaining to a player "The server disagrees with you, just force sync and see if that fixes it", is a logical resolution that players will understand and be willing to take on their own once they see it as the first step to resolving weird issues. It also prevents the player from "leaving the game" and allows a resolution that doesn't break whatever level of immersion that the player has at that moment.

You just want Redacted.

No, Prime is now a better client than Redacted, both in a number of usability changes (fast linking, cube access etc), and new features like Uniques and Kinetic Capsules. Redacted isn't coming back, but there are few features of Redacted that remain worthwhile to port over, such as In-App Navigation. Force Sync is another of those 'remaining parity items'.

Adding Force Sync to reload the Inventory, COMM, Game Field, and Agent Profile caches will both make resolving confusion faster and more intuitive, as well as not breaking people's play rhythm and immersion, with (as far as we know) no downsides.

Post edited by Perringaiden on
Tagged:

Comments

  • Technical Explanation of the Invalid Resonator example above:

    1. Each item in your inventory has a GUID, or Global Unique Identifier.
    2. The client has a cached copy of your inventory, that's only periodically updated.
    3. When you deploy a resonator, you don't say "Deploy an R1", you actually say "Deploy Item {ABCDEFGHI-JK-LMNO}". If successful, the client will adjust the local copy of your inventory, if not, it won't.
    4. The server also has a copy of your inventory.
    5. If the server thinks you've already deployed/recycled item {ABCDEFGHI-JK-LMNO}, it will refuse to let you do it again.
    6. The client will continue to take the first R1 from it's inventory and send that.
    7. The server will continue to refuse.

    Until they're back in sync, and the client knows that item {ABCDEFGHI-JK-LMNO} is no longer in the inventory, and it should try a different R1, this will remain a problem.

    Thus, the only solution is a restart.

  • And rebooting is not the best choice, when you are using an Apex and have low signal....

  • Great suggestion. I used the force sync roughly once every 10 hours of gameplay back in redacted. I have to reload Prime roughly once every 20 hours of gameplay.

    Sure reloading the app works, but it requires a complete reload which eats up time and data, where all you actually need is a reload from the server. Seems like an easy thing to add, surely the client has someway to request this on its own, all we want is a button to manually trigger it.

  • ToxoplasmollyToxoplasmolly ✭✭✭✭✭
    edited April 2021

    Force Sync would be a useful, general-purpose self-help "fix" of last resort.

    A more user-friendly solution for the original example would be an automatic sync, something like:

    • 5. Server tells the client that the requested resonator doesn't exist in Agent's inventory and passes back what the Agent's inventory actually contains, at least as far as resonators are concerned.
    • 6. Client displays "Inventory Out of Date; Updating…" and updates the resonator carousel accordingly.
  • While in the specific case, yeah, but Force Sync would apply to a lot of other situations like portals not displaying, COMM not updating, and an Agent progressing a badge and their profile not updating for 4 (freaking) hours while playing.

  • ToxoplasmollyToxoplasmolly ✭✭✭✭✭

    Profile failing to update is another case where there's a more user-friendly solution:

    1. Agent taps that… thing in the upper left on the main map view.
    2. Client asks the server for the Agent's current profile.
    3. Server sends back the Agent's current profile.
    4. Client displays the aforementioned profile.

    In other words, just automatically "Force Sync" the Agent's profile when they ask for it. Why would someone ask Prime for an old, cached version of their own profile? It's not the Wayback Machine. (You could do the same when requesting someone else's profile, and rate limit the requests as necessary.)

    Like I said earlier, Force Sync would be a useful, general-purpose self-help "fix" of last resort. But I guess I should emphasize "last resort." Prime feels like it's rather aggressive about trying to cache ALL the things, and Force Sync shouldn't become a crutch to avoid thinking about when and how to use caches effectively.

  • Profiles are cached generally because of Missions and downloading badge images. However they're held far too long.

    A better version of an alternate resolution for the player profile is that the moment that the player does any profile altering action, the cache is invalidated.

  • ToxoplasmollyToxoplasmolly ✭✭✭✭✭

    Profiles are cached generally because of Missions and downloading badge images.

    Exactly what I meant by "thinking about when and how to use caches effectively."

    By all means, cache the images; they're basically static. But there's no sense in caching the numeric stats. Just because multiple pieces of information are shown on the same screen doesn't mean that they all need to be cached according to identical policies.

    Invalidating the cache when the player does a profile altering action fails to take into account external triggers (e.g., IFS ticks).

  • Invalidating the cache when the player does a profile altering action fails to take into account external triggers (e.g., IFS ticks).

    If you're going that far, there's no point in having a cache for those numbers, which definitely is another option.

  • MoogModularMoogModular ✭✭✭✭✭

    Force sync is a no-brainer - it should be available in the Prime client. I can't think of any mobile game that doesn't have a similar option within its settings.

  • mortuusmortuus ✭✭✭✭✭
    edited April 2021

    force sync and mu score widget still missing in prime from old scanner.

  • 👀 Still no force sync.

  • Hope force sync clear cache as well?

  • That's literally what the point of it is. Clear the cache, pull an entirely new copy of everything, up to date.

  • Ah yeah. Just never really played redacted back then

  • ZeroHecksGivenZeroHecksGiven ✭✭✭✭✭

    too busy making sure scanning is bug free and getting continuous updates...



    (yes, I'm being facetious/sarcastic)

  • Hey! At least give Niantic a year decade or two to figure out what's causing the bugs first

  • grendelwulfgrendelwulf ✭✭✭✭✭

    Going to drone view and coming back force syncs. I do it all the time.

  • MoogModularMoogModular ✭✭✭✭✭

    No brainer request as it was in redacted.

    I think Go and Pikmin have similar force syncs as well

  • EvilSuperHerosEvilSuperHeros ✭✭✭✭✭

    That's only if the assets loaded on the first try when you went to drone view.

Sign In or Register to comment.