Sign in

Get started with SCILL

SCILL gives you the tools to activate, retain and grow your user base in your app or game by bringing you features well known in the gaming industry: Gamification. We take care of the services and technology involved so you can focus on your game and content.

The source of (user) action is motivation. Having an app that solves a daily need is enough to motivate users to launch the app and to use it. However, everyone is facing constant distractions and offerings on how to spend their time. So it’s important to keep your users in the loop of being constantly motivated and wanting to launch your app or game. One way of doing that, and the gaming industry has done that for a long time very successfully, is by offering challenges and rewards.

However, while the concept of giving the users challenges and rewarding them for successful completion is easy, building and maintaining it, is not so easy. You need to gather a lot of data and process it in real time. Next, you need to trigger your users at the right time. All of this is easier said then done.

This is where SCILL comes into play: If you follow this guide you will have integrated basic challenges into your app or application within 15 minutes!

Let`s get started

SCILL integration consists of three steps.:

1 Send Events

Think about events that are an interesting part of your app or game. In a shooter it’s a kill or death, in almost any application some sort of user invites might also help with user retention.

2 Getting an access token

As SCILL does not know anything about your users, your application needs to request an access token from the SCILL backend that links you user to the events and to user specific data.

3 Consuming data

Implement user interface by using our SDKs to show user available challenge and show progress in real-time.

Sending events

The basic concept of a challenge is pretty simple: You set a goal and ask the user to reach that goal within a certain period of time. Goals must be measurable with one simple integer. And every active challenge has a current state which is also a simple integer. A simple challenge for example is: “Invite 5 other users”. The goal here is 5, the current state will be 0 when the challenge is activated. After the user invited one other user, the current state will be 1.

To calculate the current state, SCILL needs data. You need to send the required data via events to the SCILL backend. In this case, once the user accepted the invitation (or signed up for example) you will need to send an event from your backend, which is pretty simple and looks like this example in JavaScript:

1. Sending events
scill.sendEvent('user_invite', userId, {
  user_invited: 'e38d3hd3uidgiu3gifg3iufgi'
}).then(() => {
  console.log("Event sent");
});  

That’s all you have to do. You just send raw data to SCILL. SCILL processes the data and calculates the current state of a users challenge based on how you have setup the challenge in the Admin Panel.

Getting an access token in the client

SCILL does not know anything about your users - except a user id. How this user id is comprised, is up to you. You can create special user ids for SCILL and map them in your platform, or you send a Steam ID or anything else you like. The only important thing is, that you can map those user ids to your real users.

Your app needs to be able to request challenges and the state of each challenge. The best way to do that is via what is called an ‘access token’. Your app needs to authorize the user within the SCILL ecosystem. Otherwise anyone could request data from any user (if the user id is known). For this to be secure, the “key” exchange must be done server-side.

Your app or game should already have a user session or some sort of user identification. All your app needs to do is ask your app backend to generate a SCILL access token. Your app backend calls the SCILL Admin API to generate an access token for a specified user and returns it to your app.

Request challenges

Now, you are ready to go to access personalized challenges and battle passes within your app by using SCILL client APIs.

3. Request challenges
scill.getPersonalChallenges(productId, accessToken).then(categories => {
    console.log("CHALLENGES", categories);
});

Ready to go in 15 minutes

Add to Website/App

Follow this guide to add SCILL challenges to your website or web app within 15 minutes

Learn more

Add to your Game

Add real-time challenges to your game in 20 minutes. Just follow this guide.

Learn more