Search Unity

Question A/B Testing, Game Override, RemoteConfig Confusion

Discussion in 'Authentication' started by neutrum, Mar 22, 2023.

  1. neutrum

    neutrum

    Joined:
    Jun 3, 2013
    Posts:
    2
    Hello,
    I am bit confused how exactly does A/B testing works using LiveOps and GameOverride. The use case is that I want my user login using our custom authentication, facebook or apple. The user falls then into a variant of GameOverride for example the user has "AB_GROUP" set to "A" the user signs out and logs in on different device and I want the user to have the same "AB_GROUP" he was assigned to for the first time (in this case "A"). Is this done trough the identity providers or can this be done for example using SetCustomerUserID when fetching the remote config?

    Can I ask for some waypoints how to solve this. Thanks
     
    SebT_Unity likes this.
  2. SebT_Unity

    SebT_Unity

    Unity Technologies

    Joined:
    Jun 21, 2021
    Posts:
    282
    Hi Neutrum!

    Thanks for posting on the forums.

    For my clarity this is an actual scenario you have tested and failing?

    Very good question let me do some internal testing and get back to you.
    As you mentioned my expectation would be that the user land in the same variant on a seperate device.
    Logically the CustomerID should match once logged in.
     
  3. neutrum

    neutrum

    Joined:
    Jun 3, 2013
    Posts:
    2
    Hey Seb,
    Yes it is Failing. Just to be clear what I did:
    1. First anonynously logged in using Authentication.
    2. Set environment, Set customer user id (using our internal id as I understand your backend should use this id for assigned remote config as identifier)
    3. Fetched the config. I got assigned the group “A” for example.
    4. Logged out, Logged in on another device also set e environment and the customer user id and was expecting group “A” but i’ve got group “C”.

    As i understand it the Authentication is only needed for proper segmentations of GameOverride right? Once assigned a config that is identified by my customeruserid I should get the same results (unless changed in dashboard) anytime I asked for them, right?

    Or should I save the playerId in my db and then just use it on other device to get the proper config and right now I am just mixing two unrelated usecases.

    Thanks
     
    SebT_Unity likes this.
  4. SebT_Unity

    SebT_Unity

    Unity Technologies

    Joined:
    Jun 21, 2021
    Posts:
    282
    Thanks for that information,
    Could you confirm this scenario and expected result?
    1. Anonymous user logged in using Unity Authentication
    2. User decides to login using facebook or apple
    3. Using Unity authentication with Apple or Facebook sign in you linked the anonymous account to the id created when signing in to those third party identity providers or || You manage your own code that you then use to login. You SetCustomID to your internal Id in either case.
    4. User A on Device A logs in and gets assigned to bucket A
    5. User A on Device B logs in and gets assigned to bucket B (expected bucket A since its the same user)
    Please correct or provide additional information on any of the above steps incase I am mistaken.

    If possible could you share your code for auth and remote config? Feel free to DM me if you prefer keeping your code private.

    Do you also have your application live somewhere where we can download and test?