Creating Battle Passes
Battle Passes are built on top of the challenge system. Battle passes have levels, that are unlocked incrementally. Each level contains one or more challenges which must be achieved to complete the level and unlock the next level.
Once a level is completed, the reward can be claimed by the user. Rewards can be “fashion” items in multiplayer games to express “status” or can be new features, levels, and maps.
Depending on the challenges you have created, levels also express skill. You can use that for match finding in multiplayer games and just shuffle players around with the same or equal level. Battle Passes are often used as a monetization feature, but they are much more than that. It all depends on you and we serve the tools that you can implement whatever you like quickly and easily.
Create a battle pass
In the Admin Panel you setup the challenges, the battle pass, and the level and rewards. Let’s get started by creating our first battle pass. In the Admin Panel select Battle Passes in the menu.
In this view, you’ll see two modules: Battle Passes with Webhook settings and the challenges. We’ll come to the challenges later:
Start creating a Battle Pass by clicking the Add Battle Pass button. A new view will show up allowing you to set up the battle pass.
- This is the battle pass name.
- Short Description
- A short description that you can show in your game or app to indicate what this battle pass is all about. You can just leave it blank if you don’t need it.
- A longer text describing the battle pass. Leave it blank if you don’t need it.
- Put in some text that outlines limitations or rules that apply to this battle pass.
- Start Date
- Battle Passes have a start date. This way you can create multiple battle passes that form seaons.
- End Date
- Battle Passes have an end date. Once this date is reached, the battle pass is marked inactive. As there is only a limited time available to complete all challenges and levels and to collect all rewards users will invest more time in this period.
- Package SKU Android
- If you want to sell the battle pass you can enter a SKU for In-App purchases on Android devices. Please note: You still need to implement the purchase process yourself, but this way you don’t need to implement some sort of mapping on your side.
- Package SKU iOS
- Use it to enter a SKU that will allow you to connect your battle pass with the In-App purchase system of Apple.
- Read more link
- Many game publishers build nice landing pages for their battle passes. Outlining the rewards users will get. If you have such a website you can use that link to show users “Additional info” or something like that.
- Image (XS - XL)
- In these fields enter a URL or a string pointing to an asset in your application bundle. In Unity for example it can be the name of a UI Sprite resource, in a web application it can be the URL to your static image server location. It’s up to you how you distribute image sizes over these settings. In our example we used the XS image as a small icon representing the season and the XL image as a background image in the battle pass UI.
- Can purchase with money
- You can set to Yes or No (
false). There is no logic behind it, but you can use that to setup if users can purchase the battle pass with real money via In-App purchase.
- Can purchase with coins
- If you have your own virtual currency you can use this switch to set it users will be able to use coins for purchasing a battle pass. Again, no logic, just some data you can set that you don’t need to handle yourself somewhere in your backend.
- Unlock incrementally:
- Battle Passes are typically unlocked incrementally. The first level will be unlocked and once challenges of the first level have been achieved the next second level will be unlocked and users can claim the reward of the first challenge. You can also set it to false, then all levels will be unlocked immediately.
- Set to active or inactive. Inactive battle passes will not be part of the
GetBattleBassesresponse. Battle passes will be set to inactive automatically once the End Date is reached.
Congratulations - you have created your first battle pass. Next, we need to define some challenges and levels.
If you have followed the previous guide of creating challenges you already know hot to setup challenges. You just need to click that Add Challenge button in the Battle Pass Challenges section.
And the list with battle pass challenges:
If you have already created personal challenges, you can copy challenges to the battle pass system. In the Personal Challenges section mark the checkbox of challenges that you want to copy to the battle pass system and click on the Copy to Battle Pass button.
More info on challenges can be found in the previous guide.
Creating levels is easy. In the list with your battle passes, click on the Edit button to edit the battle pass you just created. Click on the Levels tab at the top of the Edit Battle Pass view.
You see a view similar to this one: A list with your levels and rewards:
Click on the Add Level button to add a level to your battle pass:
- Levels can be made inactive to exclude them from the responses on client side. Use this switch to activate or deactivate the level.
- Reward Type
- You can set different types of rewards. There is no logic within SCILL for rewards, it’s up to you to unlock rewards,
but using our options it’s easier to organize your data. Choose an item from the list. Within the API response or SDK
this will be available as
reward_type_namein the BattlePassLevel object.
- Enter any string you like. This will be returned as
reward_amountin the BattlePassLevel.
- Add Challenge
- Click on that button and choose one of your challenges from the list. You can add multiple challenges to the list.
That’s it. Create a couple of levels and challenges that build a nice battle pass with increasing complexity and difficulty.
In the next chapter, we’ll be testing your battle pass in the SCILL Playground application.