minimalistic.solutionsm.s/badsector
Part of the team? Login
Language Part of the team?
Login

legal_doc // badsector // privacy_policy.txt

Privacy policy

App
BADSECTOR
Version
1.1
Last updated
October 9, 2026
Contact
[email protected]

Who we are

BADSECTOR is an independent Android puzzle game made by minimalistic.solutions, a one-person studio. It is not affiliated with any corporation. "We" in this policy means the developer of BADSECTOR, who is the controller of the personal data described here.

For anything about privacy, write to the address at the bottom of this page. A person reads it.

The short version

POLICYBADSECTOR plays fully offline and needs no account. What you do in the game stays on your phone unless you switch on online rankings or usage statistics, and both stay off until you choose otherwise. No ads, no advertising ID, no analytics or advertising SDK. We never sell data.

Sections 04 and 05 list exactly what is sent when you switch those features on. Section 11 explains how to get a copy of your data or delete it.

Data stored on your phone

BADSECTOR keeps a small amount of data in its own private storage on your device. Only the game can read it. In full:

StoredWhy
SETTINGSWorld and your edits to it, language, controls (tap and hold, hold time, chording), vibration, glitch level, effect quality, reduced motionSo the game looks and plays the way you set it
STATSGames, wins, best time per level, totals, and your last 30 results (date, board, time, 3BV, clicks)Profile, records and the local rankings view
PROGRESSCampaign sectors cleared, Academy level and lessons, achievements, daily streak, Blitz and Endless bests, story fragments foundYour progress through the game
CATWhich cat you picked; for a cat you built, its name, grammatical gender and looksSo the cat looks and talks the way you made it
ENDLESSThe ZEN world in progress: its seed and the areas you openedTo continue where you left off
ONLINEOnly after you join online rankings: your player ID, nickname, your statistics choice and statistics IDTo connect the game to its online features
CRASHOnly if the game closed unexpectedly: a report with the phone model, the Android and game versions and the technical error traceShown to you at the next start, so you can send it to us if you want. Deleted when you close it

None of this leaves your phone on its own. It is erased when you clear the game's storage or uninstall it. Section 08 covers Android's own backup.

A crash report is sent only if you tap SEND BY EMAIL yourself. It then reaches us as an ordinary email from your mail app and contains exactly what the report screen shows: no player ID, no nickname, no game data.

Online rankings (opt-in)

Online rankings stay off until you open them in the game, choose a nickname and confirm. Until then BADSECTOR sends nothing at all, not even an anonymous identifier.

What is sent once you join

  • A player ID: a random identifier created by Firebase Authentication when you join. It is an anonymous account, with no email address or name
  • The nickname you choose
  • For each ranked game: the mode and board (for example the daily number, level or size), the board's seed and first cell, the result, time, 3BV and number of clicks, the date and time, and the app version
  • The move log of that game: which cell you scanned or marked and when, counted from the start of the game
  • Your best results and positions, which we calculate from the above

The move log holds moves and timings, nothing else. We use it to check on the server that a result was really played on that board: the board is rebuilt from its seed and your moves are replayed on it. It is also what lets other players watch a replay.

What other players see

  • Your nickname, your results and positions, and the date of each result
  • Replays of your results that appear on a leaderboard, including as a ghost to race against

Your player ID, your linked Google account and everything else in this section are never shown to other players. Pick a nickname that is not your real name. A nickname that is offensive or pretends to be someone else may be changed or removed.

Linking a Google account (optional)

So that your rankings follow you to a new phone, you can link your profile to your Google account. Google then gives Firebase Authentication your Google account ID, email address, name and profile picture. We use only the account ID, to recognise you on another device. We never show your name, email or picture to other players and never use your email for marketing. We look at it only if you write to us about your data. You can unlink Google or delete your profile at any time (section 11).

Where it is kept

In our own Google Firebase project: Firebase Authentication for the account, Cloud Firestore for profiles, results and replays, and Cloud Functions for checking results. Everything travels encrypted (HTTPS/TLS).

Usage statistics (opt-in)

Usage statistics show us which modes, worlds and features are used and where players get stuck. They are off by default. The game asks once, and you can change your answer at any time in SETTINGS.

When switched on, the game sends

  • Events: the app was opened, a game started or finished (mode, board size, world, result, duration), a feature was used (for example a hint, a lesson or the theme editor), a setting was changed (language, world, effect quality)
  • Technical details: app version, Android version and the device's language
  • A statistics ID: a random identifier made on your phone, separate from your player ID. Switching statistics off deletes it from the phone, and a new one is made only if you switch them on again

It never includes

  • Your nickname, Google account or player ID
  • The advertising ID, hardware identifiers such as IMEI or serial number, or your location
  • Anything you type

Statistics go to the same Firebase project (Cloud Firestore). We do not use Google Analytics for Firebase or any other analytics SDK. We do not store your IP address. Google's servers handle it only to carry the connection.

Android permissions

PermissionWhy
VIBRATEVibrationHaptic feedback for scans, markers, glitches and the cat's purr. You can switch it off in SETTINGS
INTERNETNetwork accessUsed only by online rankings and usage statistics, and only after you switch them on

BADSECTOR does not ask for location, contacts, camera, microphone, photos, files or phone state, and it does not use the advertising ID.

Clipboard

The game touches the clipboard only when you ask it to. COPY and EXPORT put a sector code or a theme code (BS4.) on it. PLAY and IMPORT read it if you left the code field empty. These codes describe a board or a colour scheme and contain no personal data. The clipboard is never read in the background.

Android backup

Android can back up app data to your Google account and restore it on a new phone (Android Auto Backup, or a transfer from your old device). BADSECTOR allows this for the data in section 03, so your progress survives a change of phone.

That backup is made, encrypted and stored by Google, in your Google account and under Google's privacy policy. We have no access to it. You can turn backup off in Android Settings > Google > Backup, and delete existing backups in Google Drive > Backups.

Third-party services

BADSECTOR relies on these services, each with its own privacy policy:

ServicePurposePrivacy policy
FIREBASEAuthenticationAnonymous player accounts and the optional Google linkfirebase.google.com/support/privacy
FIREBASECloud FirestoreProfiles, results, replays and usage statisticsfirebase.google.com/support/privacy
FIREBASECloud FunctionsChecking results and building leaderboardsfirebase.google.com/support/privacy
GOOGLESign-InOptional link of your profile to a Google accountpolicies.google.com/privacy
GOOGLEPlayDistribution, purchases and Android backuppolicies.google.com/privacy

There is no advertising network, no analytics SDK and no crash-reporting SDK. Fonts and graphics are built into the app, so nothing is downloaded to draw a screen.

Purchases

If BADSECTOR is sold as a paid app or offers in-app purchases, Google Play handles the payment. We receive only what is needed to confirm and restore a purchase (the product, an order number and a purchase token), never your card or payment details.

Advertising

BADSECTOR shows no ads. If a future free edition ever includes advertising, it will be non-intrusive, this policy will name the ad provider and what it collects before that version is released, and the change will be announced in the game.

Legal basis and transfers

Under the GDPR we rely on:

  • Online rankings, replays and the Google link: providing the service you asked for (Art. 6(1)(b))
  • Checking results and moderating nicknames: our legitimate interest in fair and safe leaderboards (Art. 6(1)(f))
  • Usage statistics: your consent (Art. 6(1)(a)), which you withdraw by switching them off
  • Answering your emails: our legitimate interest in replying to you (Art. 6(1)(f))

Firebase is run by Google, and data may be processed on servers outside the European Economic Area, including in the United States. Those transfers are covered by Google's Standard Contractual Clauses and its certification under the EU-U.S. Data Privacy Framework.

Your rights

European Union (GDPR)

Access

Ask by email for a copy of everything we hold for your player ID. Data on your phone is visible in the game.

Rectification

Change your nickname in the game, or ask us.

Erasure

Delete your online data in the game, or ask us. Delete data ↗

Portability

Ask for your results and replays as a JSON file.

Object / withdraw

Switch statistics off, leave the rankings or unlink Google, at any time.

Complaint

In Poland, the President of the Personal Data Protection Office (UODO), or your own national authority.

We answer requests within 30 days. Online profiles are anonymous, so please include your nickname and player ID (shown in PROFILE > ONLINE) so we can find yours.

California (CCPA / CPRA)

We do not sell personal information or share it for cross-context behavioural advertising. You can ask to know, correct or delete the personal information we hold about you, and you will not be treated differently for asking.

Minimum age

BADSECTOR is intended for players aged 16 and older. We do not knowingly collect personal data from anyone under 16. If you believe a younger player has joined the online rankings, write to us and we will delete that profile.

Security and retention

Firebase encrypts online data in transit and at rest. Security rules let each player write only to their own profile, and results are checked on the server before they reach a leaderboard. Data on your phone is protected by Android's app sandbox, your screen lock and device encryption.

  • Data on your phone: until you clear the game's storage or uninstall it
  • Online profile, results and replays: until you delete them, in the game or by request
  • Usage statistics: up to 14 months, then deleted
  • Your emails: as long as needed to handle your request
  • After a deletion: gone from leaderboards at once, and from all our systems, backups included, within 30 days

Policy changes

When this policy changes, the "Last updated" date at the top changes with it. If BADSECTOR ever starts collecting anything not described here, the new policy will be published and the change announced in the game before that update reaches you.

Contact

Questions, data requests, or anything here that looks wrong: write directly.