DLC Manager design
Purpose
Section titled “Purpose”The DLC Manager is a new feature added in UMO which will allow to add content of the game easily for the users. Users will also be able to select what content they want to add.
It should be able to add content like :
- New divas
- New costumes
- New songs
- New events
- New login bonus
- ...
The update of the game should allow a more flexible way to name stuff inside the bundles.
DLC file format
Section titled “DLC file format”The DLC will be distributed as a single zip file. The content of the file will be something like :
- info.json : A file definition for the DLC data as needed.
- database.db : The data neede to update the database.
- xxx.xab : All the asset bundle needed, in the same directory layout than the original game.
- Other file like translation file, ...
User/game flow
Section titled “User/game flow”- User will have access to a list of DLC in the UMO popup. From there, it will see all DLC available on the server and can select to install/uninstall them. They should also be able to install DLC from local storage.
- The DLC will be downloaded if not local, then unziped in a folder for each of them.
- When the game start, it will check the DLC available and update the file list, and patch the database.
Editor flow
Section titled “Editor flow”New DLC will be setup each in a specific directory in the project :
- dlc.asset : A unity asset defining the DLC (type/info/...)
- bundles/ : A directory where to put the files to bundle.
- others files as needed
When building the DLC, all check of validity should be made to inform the user of any problem.
- The bundles will be build with the asset bundle builder.
- info.json will be generated from the dlc.asset and others needed data.
- database patch file and translation file will be build.
In the end, one zipe file will be made with the DLC, and one zip file with the dlc directory source file to share if needed.