Arcanes — Privacy Policy
Last updated: 2026-10-25
Arcanes is a free browser game. There are no accounts, no sign-ups, and no ads. This page covers everything that touches your data: optional analytics, Veyra's online market and arena (only when you use them), the feedback form (only when you send it), and settings saved on your own device.
Analytics (only if you accept)
The game uses Vercel Web Analytics to see aggregate stats like page views and rough traffic trends. Per Vercel's own privacy documentation:
- No cookies or persistent identifiers are used — visitors are identified only by a hash of the incoming request, and that hash is discarded after 24 hours.
- No personal data, and nothing that could reconstruct your browsing history across sites, is collected.
- Only aggregated, anonymous stats are produced — timestamp, page URL, referrer, coarse geolocation (country/region), device/browser type, nothing more identifying than that.
Accepting also turns on the game's own gameplay telemetry, stored in our database at Supabase: a random session id that lasts until you close the tab, your browser's user-agent string, a scrambled copy of the device tag described below (a one-way hash: it can't be turned back into the tag, it only tells us that two sessions came from the same browser, so we can follow how a save progresses from one visit to the next), and in-game events with their times (levels entered, enemies defeated, items found, bought, sold, upgraded, crafted or traded, deaths, new games started and which save slot they are in, which story milestones your save has reached, and whether a save had to be put back from its backup copy; and, each time you enter Veyra's arena, the name you fight under there, your gold, gear and bag at that moment, and the names of the players you defeat or who defeat you). It tells us where players get stuck and what to balance. It is not linked to any account, and it is never sold or shared.
You can decline from the banner shown when you start the game. Declining turns off both the gameplay stats and the online market below; the rest of the game works the same.
Veyra's market (online, only when you use it)
In Lunethiel, Veyra the seer runs the Mist Market: you can put items from your bag up for a price, and other players can buy them. It only talks to a server when you open Veyra's market. Veyra only comes to Lunethiel if you pressed Accept on the banner shown when you start the game; the game itself never interrupts you about it.
-
Device tag. The first time you open the market (or start the game with
the banner accepted), the game creates a random
id (a UUID) and keeps it on this device as
arcanes-device-tag. It is not derived from your device, your hardware, your IP address or any account. It works like a key: it marks which offers are yours so only you can take them back or collect their gold. - What is sent and stored (Supabase): your device tag, the number of the save slot you are playing, each offer's item, quantity and price, purchases you make, and the times of these actions.
- What other players see: only an offer's item, quantity, price and time left. Never your device tag, nor anything else about you.
- Like any website, Supabase processes your IP address to deliver each request; the market does not store it.
- How long it is kept: an offer is deleted 30 days after it closes (sold and collected, taken back, or expired and collected). An offer never collected is deleted 180 days after it expired.
- Don't want any of this? Decline on the start banner, or simply don't use Veyra's market — the rest of the game works the same. Clearing this site's data deletes the device tag; offers made with it can no longer be collected from this device.
A copy of your saves (only if you accept)
With the banner accepted, the game keeps a copy of each save slot you play on our server (Supabase), so it can tell when an older copy of a save was put back on this device — the way an item sold on the market could otherwise come back — and put the newer one back.
- What is sent and stored: your device tag (described above), the slot number, and the save itself: your progress, gold, gear, bag and settings that live in the save. It is sent when you enter a save, when you leave or hide the game, when you enter Veyra's arena and when you make a market offer. Only the latest copy of each slot is kept.
- Who sees it: nobody else. Only this device's tag can read its copies.
- How long it is kept: a copy nobody has updated for 180 days is deleted.
Veyra's arena (online, only while you are in it)
Veyra can also send you to the Mist Arena, where you fight whoever else stepped in. While you are in it, the game shares your fight live with the other players there, through Supabase Realtime; the fight itself is not written to a database. If you accepted gameplay stats, they note your arena visits as described above, and the copy of your save described above is updated as you step in.
- What is sent: the name you choose for the arena (3 to 16 characters — don't use your real name if you'd rather not show it) and a random id that changes every visit, your hero's position and look (animation frame, class skin, weapon, shield, raised skeletons, the skills you use), health, armor, kills that visit, and the hits, spells and effects you land on other players. Never your device tag, your save or anything else about you.
- Who sees it: only the players in the same arena room, at that moment. It is relayed, not stored.
- Like any website, Supabase processes your IP address to keep the connection open; the arena does not store it.
- Leaving the arena (or closing the game) ends it. Don't want it? Don't take Veyra's offer — the rest of the game works the same.
Feedback form
If you send feedback from the game, we store your comment, your ratings, the game's language, and — if analytics is on — the session id above, so a comment can be read next to what happened in that session.
What's stored on your device
Except for the device tag, the arena name, the analytics session id and the copy of your saves described above, nothing here is ever sent anywhere — this is local browser storage only, used to make the game remember things between visits:
| Storage | Key | What it holds |
|---|---|---|
localStorage |
arcanes-save-slot-1 … -5, arcanes-active-slot |
Your save slots, and which one you played last |
localStorage |
arcanes-save-mirror-1 … -5 |
A backup copy of each save slot, which the game puts the slot back from when needed |
localStorage |
arcanes-device-tag |
Veyra's market device tag (see above) — once you open the market or accept the banner |
localStorage |
arcanes-arena-name |
The name you last fought under in Veyra's arena, filled in for next time |
localStorage |
arcanes-audio-settings, arcanes-locale,
arcanes-resolution, arcanes:maxRenderScale:v2,
arcanes-lighting, arcanes-keybinds,
arcanes-gamepad-binds, arcanes-touch-layout
|
Your settings: volume, language, display, lighting and controls |
localStorage |
arcanes-analytics-consent, arcanes-notice-version |
Your Accept/Decline choice, and which version of the banner you answered, so it only reappears when it has something new to say |
localStorage |
arcanes-feedback-last-submit |
When you last sent feedback, to prevent accidental double sends |
localStorage |
arcanes-rotate-prompt-dismissed, arcanes-ios-install-prompt-seen
|
Hints you dismissed, so they stay dismissed |
sessionStorage |
arcanes-analytics-session |
The analytics session id (only with analytics on) — cleared when the tab closes |
sessionStorage |
arcanes:reload:resumeRun, arcanes:reload:resumeFullscreen,
arcanes-inapp-escape-tried
|
One-time flags for resuming after a display change or leaving an in-app browser |
Changing your mind
Clearing your browser's site data for this page resets all of the above — your saves, your settings, your analytics choice and your market device tag. The banner will ask again on your next visit.