Search Unity

Bug Content doesn't update

Discussion in 'Unity Cloud Content Delivery' started by MegaMileyStudios, Nov 30, 2022.

  1. MegaMileyStudios

    MegaMileyStudios

    Joined:
    Aug 19, 2017
    Posts:
    72
    I'm working on an iOS game and I'm trying to use CCD to allow for remote updates of my levels. Currently I'm just trying to get the system to work but it's been anything but smooth.

    At first I was having issues that the catalog file name was constantly changing, whenever I create a new iOS build (which is very often) it would create a brand new catalog file with a new timestamp rather than updating the previous one. I was able to resolve this bug by setting the Player Override Version to 1. Unfortunately this then broke the actual ability for me to update the content of my game.

    When I have CRC enabled it cosntantly throws errors so I thought, let's just disable the CRC and just let it load in the data regardless but that appears to not be the case, even if CRC is disabled, it's still enabled by the fact that it won't load any of the content but just silently fails instead.

    When I still had it generate a new catalog file for each build I was able to sometimes update the content of that build (though it frequently failed or somehow brought in a completely different release that was no longer the latest, no clue what the logic is to check for new content but it doesn't feel stable to say the least) but as soon as I made a new build it just fully breaks CCD and Addressables. I can't just say "no more iOS builds for me" because I'm still working on my game and even after I release it I want to be able to keep working on it and add new features, but CCD is seemingly trying to block me from ever doing that.. (I'm getting quite frustrated at this already)

    Here are the screenshots of the current (non working) settings I've got,

    The addressable group
    Screenshot 2022-11-30 at 12.38.18.png

    The top level settings

    Screenshot 2022-11-30 at 12.38.30.png Screenshot 2022-11-30 at 12.38.36.png

    What settings do I need to set in order to get CCD to just work? I want to be able to make frequent builds of my game whilst I'm testing it without breaking the entire CCD pipeline on each and every build. I will update the player version number myself when I know I'm facing a breaking chance and thus need a new binary update (this will be handled by the fact that that new binary would then look for that new version number in the catalog file rather than the one in any previous build) but I do not want CCD or Addressables to silently do that for me and break my game for unknown reasons.
     
  2. SebT_Unity

    SebT_Unity

    Unity Technologies

    Joined:
    Jun 21, 2021
    Posts:
    282
    Hey MegaMileyDev,
    Thanks for posting on the forums and including all the details.

    Could you share your CCD management version + addressables version?
    As well if you can let us know the Unity editor version that would help. We seem to be having issues with 2022 beta versions and CCD and that is currently under investigation.

    When you do end up building your CCD assets do you use "Update a previous build"?
    If not can you share your build process steps?
    upload_2022-11-30_9-23-55.png

    Look forward to your response.
     
  3. MegaMileyStudios

    MegaMileyStudios

    Joined:
    Aug 19, 2017
    Posts:
    72
    Hey there,

    I'm using 2021.3.11f1, Addressables 1.19.19 and I don't have the CCD Management package installed, instead I just copy pasted the Latest url into my remote path.

    I did try the "Update a previous build" as well but that made no difference in the behaviour. Otherwise I would just press CMD+B to build for iOS and use the bundle that came out of that. I've not used the "Create new build" button but I suspect that pressing CMD+B automatically does that which would not be ideal
     
  4. MegaMileyStudios

    MegaMileyStudios

    Joined:
    Aug 19, 2017
    Posts:
    72
    Is this an issue on my end or is there a bug in the version of Addressables that I'm using?
     
  5. MegaMileyStudios

    MegaMileyStudios

    Joined:
    Aug 19, 2017
    Posts:
    72
  6. MegaMileyStudios

    MegaMileyStudios

    Joined:
    Aug 19, 2017
    Posts:
    72
    I just had a look at the docs and I think I found a way to disable the new build creation when I create a device build, will check that out tonight after I get home
     
    SebT_Unity likes this.
  7. MegaMileyStudios

    MegaMileyStudios

    Joined:
    Aug 19, 2017
    Posts:
    72
    Yeah, turning off the "Build Addressables On Player Build" fixed the issue for me, I was just able to create 3 variations, build the iOS build multiple times and still update the previous content pack and upload new changes and have them come through!

    This setting should most likely be turned off by default and I would also suggest adding an extra explicit warning to the new build process (including the "Build & Release" button on the CCD Management package) to warn people of what it actually does and that it will break your existing setup.
     
    won-gyu and SebT_Unity like this.
  8. MegaMileyStudios

    MegaMileyStudios

    Joined:
    Aug 19, 2017
    Posts:
    72
    A followup question related to this, what would be the recommended way to use multiple buckets?

    For my game I've got multiple countries with multiple levels within said country, I want to be able to modify individual countries and also setup Game Overrides to pick certain countries for certain people (or a general holiday override for everyone) but I don't want to have to update the entire content pack for all the levels each time as that would also take up a lot of bandwidth if I did and I don't feel like I could mix and match different countries from different CCD releases in that case.

    Right now I can create 2 buckets in the Dashboard already but I don't see a way to build just a particular Addressable Group, it seems like I need to re-build it for all of them which would then break my setup again whenever I add a new country to the game. Could it be that this is not supported? And if so, what would the current preferred method for this be?
     
  9. SebT_Unity

    SebT_Unity

    Unity Technologies

    Joined:
    Jun 21, 2021
    Posts:
    282
    Hi Miley,
    Thanks for sharing your workaround to the build issue you were experiencing.
    TLDR turning off this setting solved your issue!
    Addressable Settings > Build > Build Addressables on Player Build
    upload_2022-12-7_14-39-59.png

    Regarding your question around bucket creation checking with the team to see if they have any advice around this particular use case. my first impressions is that you will need to re-build all / update the buckets each time.

    Best,
    Seb
     
  10. Gilderdale96

    Gilderdale96

    Joined:
    Aug 10, 2018
    Posts:
    4
    Hey guys sorry to necro this thread.

    I'm having an issue with updating content remotely. I use the "latest" badge as the path and have set up everything correctly (from what I believe).

    Content is pulling from CCD, as when I change the material of an asset in editor, the one in the cloud is loaded, even though not present within the project.

    To update the bucket, I use "Update previous build". And the upload the catalogue hash, json, and asset bundle file which updates what is in the bucket. Yet when I run the game it doesn't show the updated assets?

    Very confused, would love some assistance!

    Thanks.
     
  11. Gilderdale96

    Gilderdale96

    Joined:
    Aug 10, 2018
    Posts:
    4
    Let me correct myself, in Addressable Profiles, I use unity's built in CCD remote load path: CCD.Bucket.Latest
     
  12. SebT_Unity

    SebT_Unity

    Unity Technologies

    Joined:
    Jun 21, 2021
    Posts:
    282
    Hey Gliderdale, Thanks for posting on forums.

    I am not sure this is related but you can assure that your content loads locally by changing the Play Mode Script in the Addressables Groups window.
    - Change Use Asset Database. This will load locally instead of the content on CCD
    upload_2023-4-11_9-30-16.png

    Hope this helps