Privacy policy

What the game does with data, in plain words. Applies to app version 1.0.0. Last updated: 15 November 2026.

In short. Spore Wars sends nothing to us. It has no accounts, no analytics and no crash reporting of ours, and the game's own code reads no identifier and does not ask your permission to track you. On iOS and Android, if you have not bought the Full Game, the game shows at most one full-screen ad (Google AdMob) after a match you play on your own; the ads are not personalised, and Google's advertising code, not ours, sends Google the technical data listed under "Ads". If you own the Full Game, the advertising code never starts. On Android, Google's billing library sends its own diagnostic information to Google: that is Google's code talking to Google, and none of it reaches us. What the game remembers (your name, settings, progress, replays and maps) stays in files on your own device. The only network traffic is when you choose to play with other people: over a local network, or, on macOS, through an online server you type in. On iOS and Android there is one optional in-app purchase, the "Full Game"; Apple or Google handles it, not us. We run no server, so nothing of ours checks that purchase. Details, platform by platform, follow.

Who is responsible

The game and this website are published by Tan Nguyen. Questions about privacy: support@nvata.com.

This page applies to the Spore Wars game on iOS (including the TestFlight build), macOS and in a web browser, and to this website. Android is described where it differs, as there is no Android version yet. "Version 1.0.0" is the version number that TestFlight, the App Store and your device show for the app; the game shows the same number, with the build number, on its main menu and at the foot of Settings (for example "Version 1.0.0 (457996)"; "· TEST ADS" after it means the build carries Google's test ads). It was written from an audit of the game's code and of the built apps; each statement on it was checked against that code.

What we collect

Nothing: the game sends us nothing. Specifically:

Apple's own services are separate from the game: if you use TestFlight, Apple can pass us the crash reports and feedback you choose to send, and the App Store shows us anonymous, aggregated statistics from people who agreed to share analytics with developers. Apple's privacy policy covers that, not this page.

Ads (iOS and Android)

The macOS and web versions have no ads. On iOS and Android, if you do not own the Full Game, the game may show one full-screen ad after a match you played on your own (skirmish, campaign or daily challenge), before the result screen: at most one every 4 minutes, never in your first 3 matches, never during a match, and never in a game with other people, a co-op game, a replay or the map editor. The ads come from Google AdMob. Buying the Full Game removes them.

The builds made so far (version 1.0.0) carry Google's test ads: Google's published test identifiers, no AdMob account of ours, and no real advertiser. The version line in the game says "· TEST ADS". The data below is what Google's advertising code is described to collect; it applies to these builds as it will to a later build with real ads.

The ads are not personalised: the game asks Google for non-personalised ads only, does not show Apple's tracking-permission prompt and does not read your advertising identifier. It marks the app as not directed at children and asks for ads rated for a general audience.

What Google receives. The game sends nothing to Google itself; Google's advertising code, which is built into the app, does. By Google's own description it may collect your IP address (which can show roughly where you are; the game never asks for or reads your location), identifiers of your device that Google uses for advertising and analytics (on iOS the advertising identifier is all 0s unless you allow tracking, which the game never asks you to do, and Google lists other device identifiers besides it), which ads were shown to you, how you interact with them (app launches, taps, video views), and performance and crash information about the app and the advertising code. We do not receive any of this and cannot see it; Google's privacy policy covers what Google does with it. We have not captured this traffic ourselves, so this list is Google's description, not our measurement.

If you own the Full Game, none of this runs. The advertising code (including the consent request) starts only when all of these hold: the store has told the game that you do not own the Full Game, you have played more than 3 matches, the game has just asked the store again and the answer is still "not owned", and you are at a menu, not in a match. For an owner, for someone the store has not answered yet and for a new player, no consent form appears and nothing is sent to Google's ad servers. If you buy or restore the Full Game, the game stops the advertising code at once: the loaded ad is thrown away and none is asked for again; the code itself stays in the app's memory until you close the app, and starts again only if the store later says you no longer own the game (for example after a refund). (The advertising code is part of the app file whether you own the Full Game or not; it is not started.) In a test on an Android emulator we recorded the network: for a player who owns the Full Game, and for one whose store never answered, no request went to any advertising server; for a player who does not own it, the requests went to Google hosts such as fundingchoicesmessages.google.com (the consent request), googleads.g.doubleclick.net, pagead2.googlesyndication.com and pagead2.googleadservices.com. That test was on an emulator, not a phone, and could see which servers were contacted but not what was sent; on iOS we have not recorded the network.

Consent. Where the law requires it (for example in the European Economic Area and the United Kingdom), Google's consent form (User Messaging Platform) asks you before any ad is requested, and only at the title screen or the main menu, never in a match. Google keeps your answer on your device. Where the law requires a way to change it, Settings has an "Ad privacy" entry that opens it again. The game itself stores one extra number for the ads: the time the last ad was shown, to keep to the 4-minute limit.

What stays on your device

The game keeps files in its own data folder on your device. It never uploads them. They hold:

WhatWhat is in it
Save file (spore_wars.sav)Your player name (up to 24 characters; "Commander" until you change it); games, wins, losses and time played; your last skirmish setup and chosen cosmetics; settings (volume and sound switches, colour-blind mode, screen shake, vibration, "keep my army on the left", game speed, language, and the last LAN address and the last online server address you typed and used, kept only to fill those two fields next time); progress (unlocked heroes, best win times, campaign stars, daily-challenge attempts and best times for the last 60 days, per-hero game and win counts); whether you own the Full Game (a yes/no flag, not a receipt) and when the last ad was shown (a time, no more). The first language is chosen from your device's language (Vietnamese or English) on the device itself.
Replays (replays/)One file for each match you play: the map, the random seed, for each seat whether it was a person or the computer, its team and hero, every command given, checksums, and the time it was recorded. Player names are not recorded. The game keeps the 50 newest replays and deletes older ones on its own; in the Replays screen you can pin up to 20 replays to keep them, and delete any replay.
Your maps (maps/)Maps you make in the Map editor. A replay of a match on one of your maps carries that map inside the replay file; it is rebuilt in memory when you play the replay and is not written as a separate file.
Match markerWhile a match against other people runs, a small file with the hero's name sits beside the save, so that a crash can be counted as a loss at the next start. It is removed when the match ends.
Diagnostic reports (net_reports/)If a match with other people goes out of step, the game writes a report on the device (game and engine version, operating system name, the match setup and the commands). The newest 5 are kept. They are never sent anywhere; the game only shows you where the file is.
Engine log and cacheOn macOS the game engine writes a text log (logs/godot.log); the game's own code does not write names, addresses or URLs to it. The engine also keeps a graphics cache.

The save file is scrambled so that it cannot be edited by hand. That is to protect the game's progress, not your privacy: do not treat it as encrypted against someone who has your device.

Where the files are

Your device's own backups (for example an iPhone or Mac backup) may include these files. That is how the operating system works; the game does not control it.

Deleting your data

Delete the app (iOS), delete the folder above (macOS) or clear the site's data in your browser (Web), and everything the game stored is gone. Inside the game you can delete single replays and maps; the game itself deletes replays beyond the newest 50 that you have not pinned. There is no "erase everything" button yet. Because we hold no copy, nothing needs to be deleted on our side.

What goes over a network

The game's own network code (LAN and Online play) does not run at start-up or in the background: it opens a connection only when you host or join a game with other people. The store lookups and Google's advertising code on iOS and Android are separate and are described above.

Local network (LAN) play: iOS and macOS

Online play: macOS only

By platform

iOS (TestFlight)macOSWeb
LAN host / join by addressYesYesNo (a browser cannot do it)
Finding LAN roomsYesYesNo
Online play (server you type in)NoYesNo
Data storedApp storageApplication Support folder, plus a logBrowser IndexedDB
In-app purchase (Full Game)Yes, through the App StoreNoNo
AdsYes, if you do not own the Full Game: one Google ad after a match you play on your own, not personalisedNoNo
Extra third-party libraryThe App Store's purchase code (StoreKit, with a plug-in) and Google's advertising code (started only if you do not own the Full Game); on Android: Google's Play Billing library, Google's advertising code and the Google libraries they needWebRTC (open source)None
System permission promptLocal Network (no tracking prompt; in some regions Google's consent form for ads)None (the macOS firewall may ask about incoming connections while you host)None
Data sent to usNoneNoneNone

Android (not released yet)

There is no Android version yet. When there is, the app will ask Android for permission to use the network (INTERNET, for play with other people and for talking to Google Play), to vibrate the device (VIBRATE) and, for the purchase, com.android.vending.BILLING (to buy through Google Play) and ACCESS_NETWORK_STATE, which Google's billing library adds. It asks for no camera, microphone, location, contacts or storage permission. (ACCESS_NETWORK_STATE comes with the Google libraries that carry the billing library's diagnostics.) Google's advertising code, which the Android app also contains (see "Ads"), adds a few more permissions of its own: the app is built without the Android advertising-ID permission and without the three Privacy Sandbox advertising permissions (ACCESS_ADSERVICES_AD_ID, ACCESS_ADSERVICES_ATTRIBUTION, ACCESS_ADSERVICES_TOPICS), and keeps WAKE_LOCK and FOREGROUND_SERVICE, which Android's background-work library (used by Google's advertising code) declares. The build is checked for this each time it is made. In a test on an emulator (see "Ads"), a player who owns the Full Game sent nothing to the advertising code's servers; the only network use there was Google Play Billing's diagnostic upload described above, the same as in a version without ads. For a player who does not own it, the servers contacted were Google's (the consent request and the ad servers named under "Ads"); the test could not read what was sent.

On Google Play, the app's "Data safety" entry is meant to list Purchase history (under "Financial info") as collected, not shared, and used for app functionality. We declare it because the app uses Google's billing library to handle your purchase and Google's guidance asks apps that use it to say so. The game itself sends no purchase data to us or to anyone other than Google Play, and keeps only a yes/no flag on your device (see "The one purchase"). Because of Google's advertising code, the entry is also meant to list the data types Google says its ads code collects (IP address, device identifiers, app interactions and diagnostics), as collected and shared for advertising, analytics and fraud prevention. It lists no location: the app asks for no location permission.

App Store privacy information

What this page describes is what the app does: we collect nothing and the game sends us nothing; the data that leaves your device goes to the other players you choose to play with, to Apple or Google if you buy the Full Game (they handle the purchase), and, on iOS and Android if you do not own the Full Game, to Google's advertising code (see "Ads"). On Android, Google's billing library also sends its own diagnostics to Google (see "What we collect"). The App Store's privacy information for the app is filled in by the publisher from this page; because of the ads it lists the data types of Google's advertising code (device ID, advertising data, product interaction, coarse location, and crash, performance and other diagnostic data), and it marks none of them as used to track you, because the game does not ask for tracking permission and its ads are not personalised. It does not say "Data Not Collected".

This website

This website is made of plain pages. It sets no cookies, runs no analytics and loads nothing from other sites (fonts and images come from the site itself).

Like any website, the server that delivers these pages receives your IP address, the page you ask for, the time and your browser's identification, and may keep them in ordinary access logs. The hosting service for this site has not been chosen yet; this page will name it, and say how long it keeps logs, once it is.

The same goes for the web version of the game: whoever serves its files (the page, the game program and data) receives these technical details when you open it, and may log them. Apart from loading its own files from that same place, the game makes no web requests and opens no other connection. Where the web version is hosted has not been chosen yet either. The data the web version stores (see "Where the files are") belongs to the site that serves it.

Children

The game asks for no personal information from anyone, including children, and sends none to us. The game is not directed at children: its ads (iOS and Android, only if the Full Game is not owned) are requested as not personalised and rated for a general audience, but Google's advertising code may still collect the technical data described under "Ads" from anyone who plays without owning the Full Game. A child's name typed into the player-name box stays on the device and is shown to other players only when they play together.

Your choices and rights

We hold no personal data about you, so there is nothing for us to give you a copy of, correct or delete. What Google's advertising code collects is held by Google, under Google's privacy policy; where the law requires it, the "Ad privacy" entry in Settings lets you change your ad consent. What is on your device is under your control (see "Deleting your data"). You can refuse the iOS Local Network permission; the game then cannot do LAN play, and everything else works. If you have a question or think this page is wrong, write to support@nvata.com.

Changes to this page

This page will be updated, and its date changed above, before any of these happens: an online service or ranking is switched on; an account, analytics, crash-reporting or receipt-checking feature is added, or any purchase other than the Full Game; the ads change (another ad network, personalised ads, a tracking-permission prompt, ads for owners or in games with other people, or ads on another platform); online play is enabled on iOS or in the browser; a replay, map or save can be uploaded; or the game is released on a new platform. The app version that this page describes is 1.0.0 (see the top of this page).

What is not decided yet

We state these plainly instead of guessing. This page will be updated when they are decided.