← Back to NeonCrawl

NeonCrawl privacy policy

Effective · Last updated

1. Who we are and how to reach us

NeonCrawl is made by Yvan Boily, an independent developer in British Columbia, Canada. Yvan is NeonCrawl's Privacy Officer, and is responsible for the information described here.

Write to yvanboily@gmail.com about anything in this policy: a question, a request about your information, or a complaint. The same contact works wherever you live.

"We" and "us" in this policy mean Yvan. This policy covers the game at neoncrawl.ca. NeonCrawl Classic (classic.neoncrawl.ca) sends no play statistics.

2. The short version

  • There are no accounts, no ads, no advertising cookies and no tracking across sites.
  • Play statistics are off unless you turn them on in Options. If you do, they say how your runs go, linked by a random statistics id, never by your name. You can download or delete them at any time.
  • Your saves and settings stay on your device. They are never sent.
  • Feedback is public. A report you send from the Feedback dialog becomes a public GitHub issue. An email address you give us for a reply stays private.
  • We never sell or share your information for advertising.

3. What we handle, why, and on what basis

Game saves and settings

Play statistics (only if you turn them on)

Feedback (optional)

Hosting and security

4. Storage on your device

Everything the game keeps on your device, in your browser's storage for neoncrawl.ca. None of it is a cookie, and only the two play statistics entries marked "Consent" are ever used to send anything. Clearing this site's data in your browser removes all of it.

NameWhat it holdsNeeds consent?
neoncrawl-saves (IndexedDB)Your saved runs and their floorsNo, strictly necessary
Offline copy (Cache Storage)A copy of the game's own files (its page, scripts, styles and icons) so it opens without a connection. Nothing about you or your play; replaced by each new versionNo, strictly necessary
NEONCRAWL_AUTOSAVE_V1The run in progressNo, strictly necessary
NEONCRAWL_MANUAL_SAVE_V1A run you saved yourselfNo, strictly necessary
NEONCRAWL_AUTOSAVE_OWNERWhich open tab owns the autosaveNo, strictly necessary
NEONCRAWL_SAVE_SYNCA short note telling your other open tabs that a save changedNo, strictly necessary
NEONCRAWL_GRAVEYARDYour past heroes, how each was built (class, species, background, scores), and their epitaphsNo, strictly necessary
NEONCRAWL_HEROESYour last ten heroes who came home with the Amulet, and how each was built, so the town can show their statuesNo, strictly necessary
NEONCRAWL_NOVICE_STASHThe items a Novice hero left in the inn's chest, so the next Novice hero can take them; emptied when takenNo, strictly necessary
NEONCRAWL_SEED_STATSHow your attempts at each seed went, and the hero of each, so a replay brings them backNo, strictly necessary
NEONCRAWL_BONESFloors left by heroes who died, to be found in later runsNo, strictly necessary
NEONCRAWL_COMPENDIUMWhat your heroes have discovered across runs (monsters, items, shrine favours and what was learned about them), and whether the whole Compendium is revealedNo, strictly necessary
NEONCRAWL_COMPENDIUM_VIEWHow you last sorted and filtered each list of the CompendiumNo, strictly necessary
NEONCRAWL_MONSTER_ACThe Armor Class your heroes have worked out for each kind of monster from their attack rolls, across runsNo, strictly necessary
NEONCRAWL_COMPENDIUM_VIEWHow you last sorted and filtered each list of the CompendiumNo, strictly necessary
NEONCRAWL_SHRINE_CODEX, NEONCRAWL_MONSTER_LORE, NEONCRAWL_CODEX_UNLOCKEDOlder names for the discoveries above; read once, moved into NEONCRAWL_COMPENDIUM and deletedNo, strictly necessary
NEONCRAWL_OPTIONSYour optionsNo, strictly necessary
NEONCRAWL_HERO_NAMEThe hero name you last typed (never sent)No, strictly necessary
NEONCRAWL_TITLE_MODESThe game mode you last choseNo, strictly necessary
NEONCRAWL_TITLE_SPECIES, NEONCRAWL_TITLE_SPECIES_CHOICE, NEONCRAWL_TITLE_ORIGIN2Your last species choices on the hero creation screensNo, strictly necessary
NEONCRAWL_TITLE_BACKGROUND, NEONCRAWL_TITLE_BACKGROUND_INCREASE, NEONCRAWL_TITLE_INITIATEYour last background choicesNo, strictly necessary
NEONCRAWL_TITLE_CLASS, NEONCRAWL_TITLE_KIT, NEONCRAWL_TITLE_SKILLS, NEONCRAWL_TITLE_MASTERIESYour last class choicesNo, strictly necessary
NEONCRAWL_TITLE_STYLE, NEONCRAWL_TITLE_SKILLEDYour last feat choicesNo, strictly necessary
NEONCRAWL_TITLE_ABILITIESYour last ability scoresNo, strictly necessary
Any of the above with _corrupt_latest after its nameA copy of data that could not be read, set aside so it is not lostNo, strictly necessary
NEON_ROGUE_AUTOSAVE_V1, NEON_ROGUE_MANUAL_SAVE_V1, NEON_ROGUE_GRAVEYARD, NEON_ROGUE_SEED_STATS, NEON_ROGUE_OPTIONS, NEON_ROGUE_TITLE_MODESNames used by very old versions; read once and replaced by the names aboveNo, strictly necessary
NEONCRAWL_STATS_CONSENTYour choice about play statistics (on or off, and when)No: it records your choice
NEONCRAWL_STATS_ASKEDThat the play statistics window was shown, so it is not shown againNo: it records that you were asked
NEONCRAWL_INSTALL_IDYour statistics id, made only once statistics are on and first sentConsent
NEONCRAWL_TELEMETRY_QUEUEStatistics waiting to be sentConsent

5. Who receives data

The site links to other sites (GitHub, D&D Beyond for the System Reference Document, Creative Commons for its licence, and our other games). Nothing is loaded from them unless you follow a link, and their own policies apply there.

6. Where data is processed

7. How long we keep it

DataKept
Raw play statistics: floors, choices, visits and errors180 days, then deleted
Run summariesAnonymised after 180 days (the statistics id and the seed are removed), then kept
Daily totalsKept; they hold no ids
Feedback emailsUp to 12 months, then deleted
Public feedback issues on GitHubPublic until closed or deleted at your request
Our server's log linesAbout 3 days
Saves and settings on your deviceUntil you clear them

The daily job that deletes and anonymises runs once a day, so data can outlast these limits by up to a day.

8. Your choices and rights

Everyone has the same rights here, wherever you live.

9. Children

10. Security

11. Breaches

If a breach of security affects your information and creates a real risk of significant harm, we will tell you as soon as we can, by email if we have your address and by a notice on this page and in the game's changelog otherwise. We will also notify the regulators the law requires, such as the Information and Privacy Commissioner for British Columbia, the Commission d'accès à l'information du Québec, or an EU or UK authority within 72 hours where that applies. We keep a record of every breach, whatever its size, for at least 24 months.

12. Complaints

Please write to us first at yvanboily@gmail.com; we will try to put it right. You can also complain to a regulator:

NeonCrawl processes little data, occasionally and at low risk, so it has not appointed a representative in the EU or the UK (GDPR and UK GDPR Article 27(2)).

13. US state privacy notice

We do not sell or share personal information, and we do not use it for targeted advertising or profiling. We honour Global Privacy Control. The rights in section 8 are open to everyone, in every state.

14. Changes to this policy

When this policy changes, the "Last updated" date at the top changes and the change log below says what changed. Material changes are also noted in the game's changelog.

Change log

Appendix: exactly what play statistics send

For the curious: every field the game can send, by event. The server refuses anything else. Ids are short codes made of lowercase letters, digits, - and _, taken from the game's own tables, never from text you type.

EventFields
Every batchv, install (your statistics id), session (this visit's id), edition, version; each event has type, at (time) and seq (order)
run_startrun, rules, mode_preset, modes, seed_kind, seed, species, species_choice, background, class_id, kit, style, ability_method, quick_start, device, input
run_endrun, outcome, depth, max_depth, level, subclass, turns, gold, score, hp_max, hp_before_blow, killer_key, killer_kind, cause, floor_layout, kills, top_kills, counts, active_ms
run_pause (save and quit)run, depth, turns
floorrun, depth, layout, theme, turns, kills, dmg_taken, dmg_dealt, potions, scrolls, wands, food, spells, rests, gold_delta, explored_pct, hp_end_pct, level_end, exit
choicerun, kind, choice, detail, value, depth, level, turn
session (a visit)started_at, active_ms, inputs, viewport, standalone, browser, os, local_hour, slow_frame_pct, load_ms, funnel
errorkind, hash, message (up to 160 characters), source, save_version
Added by our servercountry (two letters, from Cloudflare) and the time the server received it

Error reports are counted by day and version and are not stored with your statistics id, so they are not part of a download and are deleted after 180 days.