How to host obb files in my own server?

Hi Epic/community,

I use an alternative app store for android that doesn’t support OBB extensions.

How to upload obb files in my server and my game downloaded obb files from my server?

You need to package your game’s content as downloadable content (DLC) and have the app download and mount the pak file data on launch. This is a fairly advanced topic and unfortunately we don’t yet have any documentation for this on mobile. 4.13 also requires some C++ code to initiate the download and mount the pak file.

4.13 added a wizard to build Project Launcher configurations to package the APK file and separately generate the DLC content. Version 4.14 will have blueprint functionality to manage the downloading and mounting of the DLC content, including patching/updating content, and we will have an example blueprint which shows how to do this without any C++ code.

  • Jack

If you have any example on c++ should be work for me, please send me a link

1 Like

Hi,

You can find patching functionality exposed to BP here:
https://github.com/EpicGames/UnrealEngine/tree/4.14/Engine/Plugins/Runtime/MobilePatchingUtils

The flow of downloading a DLC/patch should be like:
Download patch manifest from a server.
Compare downloaded manifest with locally installed one if it exist.
Download and install patch if manifest is updated.
Mount downloaded pack into a game.

Let me know if you have more questions.

Hi ,

Could you put the image again ?
What do you think that is wrong here ? My android app doesn’t mount downloaded pack into the game

][1]

I don’t see where you call Mount function on downloaded content. Once you receive onInstallSucceed event you need to call Mount function on object stored in PendingContent variable.

Hey
I was wondering how can I verify the data that has been downloaded? Is there any documentation for these blueprints?
thanks.

I can really use some help here!

I have a down-loader level that has an UI and codes implementing the download process. The problem that I have right now is with minimal apk + dlc settings on launcher window. I choose my Data dowloader level as for apk packaging and dlc profile contains all the maps and contents , It is wired that the everything is packaged in apk and my apk has over 300 mg size and my dlc has 4 mg size. I have confirmed my main project settings and excluded all maps from cook list but yet I’m getting 300 mg apk. its really getting frustrating.

Hi,
When you package project, along with map you specify for cooking in a launcher profile it will cook also maps specified as “Default maps” in Project Settings->Map And Modes. Could you set those Default maps" to empty and see if it helps to reduce APK size? Also in Project Settings->Packaging there a settings to specify additional maps to include into package, it’s hidden in advanced Packaging category, make sure there are no additional maps.

Hi, And thanks for your replay.
I have rechecked my project settings and attached screenshots from it. I went ahead and moved every content I had and kept only downloader level and contents connected to it ,packaged apk and moved my contents back and packaged the dlc , The problem That I have now is the download speed is -0 and install progress is -1 I have also tested this on mobile and the result was same , I have uploaded everything to my host , And here is my blueprint setup so I don’t really know whats the problem? And since we don’t have any documentations about it its really confusing.
thanks.alt text

alt text

Could you attach BP screenshot in higher resolution? Can’t see on this one what could be wrong.

Seems like “Cloud URL” is incomplete on your screen.
Should be full path to CloudDir like http://server-name and so on

Thank u , I can’t believe that how could I not see that , I was sure about Urls since I copied and paste them from host address , Now one more question , Where should I mount the data on mobile ? and how can I verify the data ?

Not sure what do you mean by verify. Everytime user starts your application, that BP script should run. It will download latest manifest file from the server and will compare it with locally stored (if it exists on user device) and will patch content only if manifest was updated. Otherwise it will just mount already installed content. You don’t need to do anything extra for mounting, “Installed Content” object in your BP script already has all the information.

Thank You Very much , And for the last question , the mount point in the mount node should be empty or I have to fill it with address.

Thanks for the explanations , Have a nice day.

It should be empty.

Hey Sorry to bring this up again , I have packaged my dlc and everything worked fine , But there is a one problem , It seems the medias ( movies , Mp4 ) are not being packaged in .pak file as dlc? am I missing something ? What should I Do?

Yes, pak includes only Unreal assets. All other files usually copied directly along with pak. Right now BP exposed patching can only download/patch pak files, however patching system itself can do any types of files, it’s just currently not exposed to BP. We will look into improving it in next versions.