Privacy Policy

Throne Of Numbers · last updated

Who we are

Throne Of Numbers (the app) is developed and operated by Alexander Zelenyak ("we", the operator). This policy covers the Android app and the server it talks to. For any privacy question or request, write to zzz.sochi@gmail.com.

The app has no sign-up: on first launch it creates an anonymous account for you. You can later link that account to a Google account to keep it across devices. Every section below says what we keep, why, and for how long.

Data we store

Installation ID

On first launch the app generates a random installation ID (a UUID) and keeps it in the device's secure storage (Secure Store, backed by the Android Keystore). Next to it the app keeps a marker of the sign-in method (google once you link Google) and a mark of the version of the Terms of Use you accepted. Secure storage is excluded from Android cloud backup. Access and refresh tokens are kept in memory only.

The app sends the installation ID to the server to sign you in to your anonymous account. The server stores it in your account while the account is anonymous and erases it when you link a Google account. After linking, the app keeps the installation ID on the device: if Google sign-in is unavailable, the app may use it to start a separate anonymous account.

Purpose: signing you back in to your anonymous account on this device.

Retention: on the server, until you link a Google account or delete your account; on the device, the installation ID and the sign-in marker until you delete your account, clear the app's data or uninstall the app. The terms-version mark stays on the device until you clear the app's data or uninstall the app; deleting your account does not erase it.

Account ID and public player reference

Each account has a random internal ID and a creation time. The internal ID is not derived from your device, your Google account or your name (it also encodes the account creation time, which is stored anyway) and is never shown to other players.

Each account also has a public player reference: a random 22-character string that identifies you to the app when other players report or block you. The apps of all players receive it next to your name. It stays the same over time, so it can be used to link your entries on the board across stages, even after you change your name. Deleting your account erases it.

Purpose: tying your records, sessions and moderation data to one account; letting players report or block you without exposing the internal ID.

Retention: the public player reference, until you delete your account. The internal ID and the creation time are kept after deletion in anonymized form (see Deleting your account).

Display name

The server gives every new account a generated name such as neon-otter-4242. You can change it in Settings: 1 to 24 characters, latin letters, digits, dashes, underscores and single spaces. Names are not unique.

If you link a Google account while you still have a generated name, the app offers your name from Google as your display name. It becomes your display name only if you save it (see Google user data).

Your display name is public: it is visible to all players in the records table, as the holder of the world record (the highest number rolled), and as the player who advanced the stage. The stage record keeps a snapshot of the name you had when you advanced the stage; if you rename yourself later, that old name stays visible there until the next stage is reached.

When a player reports you, the report keeps a snapshot of your name at that moment. Reports are seen only by the operator, never by other players. A moderator can force a change of your name to a generated one and can lock name changes for your account. Your name is also replaced with a generated one automatically when 100 different players report the same name.

Purpose: showing who holds a record or advanced a stage.

Retention: until you change the name or delete your account; the snapshot in the stage record, until the next stage is reached; snapshots in reports, as long as those reports are kept (see Moderation data).

Records

For each stage the server keeps your best number, the stage and the time it was last updated. Individual rolls are not stored: there is no roll history. Records are public and shown in the records table under your display name.

Purpose: the game itself: the records table, the world record and stage progress.

Retention: indefinitely. After you delete your account, your records stay on the board as "deleted player" (see Deleting your account).

Google account ID

If you link your account to Google, the server stores the Google account ID (the sub value of the Google ID token) and the time of linking. Nothing else from your Google account is stored, unless you save the name suggested from Google as your display name (see Google user data).

If the Google account you link already has a Throne Of Numbers account, the two are merged: the higher of your records on each stage moves to the existing account, and the anonymous account is deleted from the database. Its sessions are revoked, and their stored refresh token hashes expire within 30 days.

Purpose: signing you in to the same account on any device.

Retention: until you delete your account.

Session tokens

Signing in gives the app a short-lived access token (15 minutes) and a refresh token. The server does not store access tokens. Refresh tokens are stored only as SHA-256 hashes, together with the account ID, a session chain ID, the issue and expiry times and a revoked flag.

Purpose: keeping you signed in and detecting reuse of a stolen refresh token.

Retention: each hash is deleted automatically 30 days after the token was issued, and immediately when you delete your account.

Moderation data

Terms acceptance. The app asks you to accept the Terms of Use on first launch, before you start playing, and again when the terms change. The server stores the accepted version and the time of acceptance; the device keeps the accepted version in secure storage.

Reports. When you report a player, we store who reported, who was reported, a snapshot of the reported name, the reason chosen from a fixed list (there is no free text), the report status and outcome, and the dates it was filed and closed. One player can file up to 20 reports in 24 hours.

Blocks. When you block a player, we store who blocked whom and when. A blocked player's name is hidden only for you. You can block up to 500 players.

Moderation measures. For your account we store a name-change lock and the time and count of forced renames.

If your anonymous account is merged into a linked Google account, its reports and blocks move to that account.

Purpose: keeping display names free of abuse and letting players protect themselves from other players.

Retention: terms acceptance and moderation measures, until you delete your account; open reports, until they are reviewed; closed reports are deleted automatically 180 days after closing; blocks, until the block is removed or either account is deleted. Deleting your account deletes the reports and blocks you filed and those filed against you.

E-mail correspondence

When you write to zzz.sochi@gmail.com, for example to delete your account, your e-mail address and your message are kept in the operator's mailbox (Gmail, provided by Google). They are not added to your game account.

Purpose: answering your request and carrying it out.

Retention: our rule is to delete the correspondence within 90 days after the request is closed.

What we do not collect

Server logs

There is no request log. The server keeps technical error logs, for example when a request fails or the database answers slowly. These logs may contain IP addresses and account identifiers (internal account ID, installation ID, Google account ID, display name). They are used only to diagnose failures. They are written to the server's system journal, which rotates by size and deletes the oldest entries automatically, so we do not promise a fixed retention period. A copy goes to the server's system log file, which is rotated weekly and deleted after four weeks.

Sharing

We do not sell your data and do not share it with third parties. Your display name, records and public player reference are visible to other players as described above.

Security

Google user data

The app receives a Google ID token from Google Sign-In on your device when you link a Google account and each time the app starts while the account is linked. The app uses only that token from Google's response and sends it to the server. The server checks the token's signature and expiry, reads iss and aud to check that the token was issued by Google for this app, and keeps only sub, the Google account ID.

When you link a Google account, the server also reads your name from the token, but only to suggest it as your display name, and only if you still have a generated name. The name is converted to the display name format (for example, Cyrillic letters are transliterated and the result is cut to 24 characters) and sent back to the app, which offers it to you: you can save it, edit it first or decline. Your name is read only when you link a Google account, not at later sign-ins, and is not stored unless you save it as your display name.

Only the Google account ID (sub) is stored. The token may also contain your e-mail address and profile picture URL: they pass through the server in transit and are not read or stored.

Throne Of Numbers' use and transfer to any other app of information received from Google APIs will adhere to the Google API Services User Data Policy, including the Limited Use requirements.

The Google account ID is used only to sign you in to your game account and, when it appears in error logs, to diagnose failures (see Server logs). It is not shared, sold or used for advertising.

You can revoke the app's access in your Google account settings under Third-party apps and services. Deleting your game account signs the app out of Google on your device but does not revoke that access for you.

Deleting your account

In the app: open Settings and tap delete account, then confirm. The account is deleted immediately.

Without the app: follow the steps on the account deletion page. Confirmed requests by e-mail are carried out within 30 days of confirmation.

What is deleted:

After deletion nobody can sign in to the account. Signing in again from the same device or with the same Google account creates a new, unrelated account. If you keep using the app, it starts a new, unrelated anonymous account right away.

What stays:

The internal ID, the dates and your records are kept indefinitely in anonymized form; the stage record is kept until the next stage is reached.

Your account and your access to your progress are removed. Your records stay on the board as "deleted player" under a random internal ID. Once the error logs that may mention that ID have rotated, nothing links it back to you. Every deleted account is a separate "deleted player" row, so the board can show several of them.

There are no backups. Technical error logs that happen to contain the account's identifiers are not edited on deletion; they are removed as the server logs rotate (see Server logs). If you wrote to us by e-mail, that correspondence is kept as described in E-mail correspondence.

Children

Throne Of Numbers is intended for players aged 16 and over. If we learn that an account belongs to someone under 16, we delete it, on request or on our own initiative. Parents can write to zzz.sochi@gmail.com.

Changes to this policy

We update this page whenever the data the app stores changes, and change the "last updated" date at the top. The current version is always at this address.