Privacy Policy
Virtual DOMination (“the app”, “we”, “us”) is a competitive programming quiz game published by Darseen. This policy explains what personal data we collect, why we collect it, who we share it with, and the control you have over it. It applies to the mobile app, to the servers that support it, and to this website.
In short: we collect your email address so you can sign in, a display name and your gameplay progress so the game and its leaderboards work, and purchase records so entitlements you paid for keep working. We do not run advertising, we do not use third-party analytics or tracking SDKs, and we do not sell your data. You can delete your account, and everything attached to it, from inside the app.
1. Information we collect
Account information
- Email address: required to create an account and to sign in. Sign-in uses a one-time code sent to your inbox; the app has no passwords.
- Display name and username: chosen by you, shown to other players.
- Account metadata: account creation date, email verification status, and an optional profile image.
Gameplay data
- Progress and standing: level, XP, prestige, chosen faction, faction points, reputation, league placement, and in-game currencies.
- Performance statistics: matches played and won in single- and multiplayer, questions answered by difficulty and by language, and map and season progress.
- Owned items: cosmetics, consumables, season-pass progress, and challenge state.
- Daily ladder attempts: for each day you take part, which question you were served, when it was served and answered, whether you got it right, how long you took, and the points awarded. This is what the ladder, your streak, and the day's ranking are computed from.
- Peer connections: the peer (friend) requests you send and receive, and the resulting list of linked players.
- Recorded challenge runs: when you challenge a peer, we store a replay of that run (the questions and your answers per round) so they can play against it. It is deleted once the challenge is played out, withdrawn, lapsed, or the peer link is removed.
Live multiplayer duels are not recorded. Only the outcome counters on your profile survive the match.
Purchase information
- Purchases are processed by Google Play (or the Apple App Store). We never receive or store your payment card, bank, or billing address details.
- Our payment infrastructure provider (RevenueCat) sends us a record of each transaction and of each later change to it: a transaction identifier, the product purchased, which entitlements it grants, price and currency, the store it came from, and the purchase date. For the sudo subscription this also covers renewals, cancellations, expirations, billing issues, and transfers between accounts. We store this to keep your premium status and purchased items working across devices and reinstalls.
Technical and device information
- Session data: when you sign in we store a session token along with the IP address and user-agent string of the request, so you can stay signed in and so we can detect abuse.
- Push notification token: only if you allow notifications. Used to send you gameplay reminders (for example the daily ladder) and peer requests. Revoking the permission stops it.
- Server logs: routine request logs containing IP address, timestamp, and the endpoint called, kept for security and debugging.
- Last-seen timestamp: so the game can show online and recent activity.
This website
- No cookies and no analytics. The site sets no cookies, embeds no tracking pixels, and runs no analytics product, so there is nothing here to consent to.
- The daily question page stores your own streak and history in your browser's local storage, on your device. It never leaves your browser, we cannot read it, and clearing your site data erases it.
- Playing the daily question here sends your answer to our server so it can be graded. It is anonymous and unranked: no account is involved and nothing about the attempt is stored. The request appears in our server logs like any other.
Correspondence
If you email us for support, we keep the message and your email address so we can respond and follow up.
2. What we do not collect
- No precise or approximate location data.
- No contacts, photos, files, microphone, or camera access.
- No advertising identifier, and no advertising or tracking SDKs; the app shows no ads.
- No third-party analytics or behavioural profiling products, and no cross-app or cross-site tracking.
- No free-text messaging. Duel chat is a fixed set of eight preset phrases sent as numbers, not text you type. Messages are passed between the two players in the match and are never stored.
- No health, biometric, financial account, or government identifier data.
3. How we use your information
- To create and authenticate your account.
- To run the game: matchmaking, scoring, progression, factions, seasons, challenges, peers, and leaderboards.
- To deliver and restore purchases and the entitlements attached to them.
- To send you the transactional emails the app needs to function, for example your sign-in code or a confirmation code for deleting your account.
- To send gameplay push notifications, if you have opted in to them.
- To keep the service secure and working: rate limiting, abuse and cheat detection, debugging, and fixing faults.
- To meet our legal, tax, and accounting obligations.
We do not use your data for advertising, and we do not sell or rent it to anyone.
4. Information visible to other players
Parts of your profile are public inside the game by design. Other players can see your username, level, faction, chosen cosmetics, leaderboard position, ladder points and streaks, and your results in matches you play against them. Your email address is never shown to other players.
Your username is also how players find each other: anyone who knows or guesses your exact username can send you a peer request, and doing so shows them your profile. If you accept, you appear in each other's peer list until one of you removes the link. Challenging a peer shares a replay of that run with them. Choose a username you are comfortable being public, and one that does not identify you.
5. Legal bases for processing (EEA/UK users)
| Purpose | Legal basis |
|---|---|
| Account creation, sign-in, and running the game | Performance of a contract |
| Processing purchases, and keeping the records that restore them | Performance of a contract |
| Security, abuse prevention, and fixing faults | Legitimate interests |
| Push notifications | Consent (withdrawable in device settings) |
| Responding to your support emails | Legitimate interests |
6. Service providers we share data with
We share the minimum data needed with the providers that operate the service. Each is bound to use it only to provide their service to us.
| Provider | Purpose | Data involved |
|---|---|---|
| Google Play / Apple App Store | App distribution and payment processing | Purchase and billing data, held by them |
| RevenueCat | Subscription and purchase management | Pseudonymous user ID, transaction records. Their SDK also reads device-level identifiers provided by the platform (such as the vendor or app-set ID) and your store country |
| Resend | Delivery of sign-in and transactional emails | Email address, message content |
| Expo (Expo Application Services) | Push notification delivery and over-the-air app updates | Push token |
| Google (Firebase Cloud Messaging) and Apple (Push Notification service) | The platform channels that actually deliver a notification to your device | Push token, notification content |
| Railway | Application and database hosting | All stored data, at rest on their infrastructure |
We may also disclose data if required by law, to enforce the rules of the game, or to protect the rights and safety of our users. If the app is ever transferred to another owner, your data may transfer with it; you would be notified before that takes effect.
7. International transfers
Our providers operate servers in the United States and the European Union, so your data may be processed outside your country. Where data leaves the EEA or UK, transfers rely on the European Commission's Standard Contractual Clauses or an equivalent safeguard.
8. Data retention
- Account and gameplay data: kept while your account is active, and deleted when you delete your account.
- Sessions: expire automatically, and are deleted when you sign out or delete your account.
- Sign-in codes: expire 5 minutes after they are sent. Account-deletion codes: 10 minutes. Both are single-use.
- Recorded challenge runs: deleted once the challenge is played out, withdrawn, or lapsed, and with the peer link if that goes first.
- Server logs: held by our hosting provider for a limited period, no longer than 30 days, then discarded automatically.
- Transaction records: our copy is kept while your account exists and is deleted with it. Google, Apple, and RevenueCat keep their own independent records of your purchases under their own policies, and we cannot delete those for you.
- Support emails: kept while the matter is open and for a reasonable period afterwards, then deleted.
9. Your rights and choices
You can, at any time:
- Access a copy of the personal data we hold about you, by emailing us.
- Correct inaccurate data; your display name and username are editable in the app.
- Delete your account and the personal data attached to it, from inside the app.
- Object to or restrict processing based on legitimate interests, and withdraw consent for notifications by turning them off in your device settings.
- Export your data in a portable format, by emailing us.
- Complain to your local data protection authority.
For anything that goes through email, write to darseen.dev@gmail.com from the address registered to the account. We will respond within 30 days.
Deleting your account
In the app, open the Profile tab and choose Delete account. We email a six-digit code to the address on the account; entering it deletes the account immediately. Nobody can delete your account without access to your inbox. If you cannot reach the app, email darseen.dev@gmail.com from the registered address with the subject “Delete my account” and we will complete it within 30 days.
Deletion removes your account, profile, gameplay progress, statistics, owned items, ladder history, peer links, push token, sessions, and our copy of your transaction records. It is permanent: progress and purchased in-game items cannot be restored afterwards, and signing up again with the same email starts a new empty account.
Cancel a subscription before you delete. Deleting your account does not cancel an active sudo subscription, because the subscription lives with Google Play or the App Store rather than with us. Cancel it in your store account first, or it will keep billing you.
10. Children's privacy
The app is not directed at children under 13 (or the minimum age of digital consent in your country, where that is higher), and we do not knowingly collect personal data from them. If you believe a child has given us personal data, contact us and we will delete it.
11. Security
Data is transmitted over encrypted connections (HTTPS/TLS) and stored on managed infrastructure with access restricted to those who need it. Sign-in uses short-lived one-time codes rather than passwords, and deleting an account needs a second code sent to the same inbox. No system is perfectly secure, but we take reasonable technical and organisational measures to protect your data, and we will notify affected users and regulators of a breach where the law requires it.
12. Changes to this policy
We may update this policy as the app changes. The “last updated” date at the top always reflects the current version. For material changes we will give notice in the app before they take effect.
13. Contact us
Questions about this policy or your data: darseen.dev@gmail.com