Legal

Terms of Service & Privacy Policy

Effective August 12, 2026Version 12Terms and privacy in one document

Last updated: August 13, 2026. This document combines our Terms of Service with our Privacy & Cookie Policy, written in plain language so it can actually be read

1. Who we are and what this covers

Vision Force Studio is a fan team of community volunteers running a hobby project. These terms cover visionforceofficial.com and everything on it:

  • the studio site at the front, with project documentation, news, a directory of our Discord communities, a contact page and this document, all readable without an account
  • the Rocket Racing Revive community hub at /rrr, which holds the roadmap, suggestions, the community board, profiles and account settings, and which needs an account for all of it: only the entry screen and the pages that get you into an account, such as sign-in, invitations, email confirmation and password recovery, open without one
  • our status page at status.visionforceofficial.com

Our projects are Vaelora Velocity, a fan-made racing game built in Unreal Engine 5, and LUX3, a collection of track recreations built in UEFN

We also run the Rocket Racing Archive at rocketracingarchive.com. It is a separate static site with no accounts and no sign-in, but its contribution form sends what you write to us, and mail sent to the archive's own contact address reaches us as well, so section 6 explains what happens to that. Letters the archive sends you carry a send-only reply address: anything you reply to it is rejected and bounces straight back to you, so use the form again if you need to add something

This is a non-commercial fan project. There are no ads, no paid features and nothing on this site is sold. A personal tip link is offered in the hub footer; it is voluntary, buys no feature, rank or advantage, and the site works exactly the same whether or not you use it. We are not affiliated with, endorsed by, or sponsored by Epic Games, Inc. or Psyonix LLC. "Rocket Racing", "Fortnite", "Unreal Engine", and all related names, logos, and assets are the property of Epic Games, Inc. or their respective owners

By creating an account or using the site, you agree to these terms. If you do not agree, please do not use the site

2. Eligibility and accounts

  • You must be at least 13 years old to use this site, or older, if the age of digital consent in your country is higher. Creating an account requires confirming that you meet that minimum age
  • Accounts we find to belong to someone under 13 are removed, along with the content posted from them
  • You create an account by signing in with a Google, Discord or GitHub account. We do not open new accounts from an email address and password. If your account has a password, you can also sign in with your email address or username and that password. Passwords are stored only as a salted bcrypt hash, so we cannot read your password, and no password is stored at all when you sign in with a provider
  • If you signed in with a provider you can add a password later from Profile > Sign-in and security, and then sign in either way. Your provider stays connected
  • If you add a passkey, you can sign in with it alone. Your device confirms you with a fingerprint, face scan or PIN, your browser signs a one-time challenge, and we check the signature. No password is involved and the passkey's private key never leaves your device
  • Signing in starts a session that lasts 24 hours from your last visit. The clock resets every time you load a page, so it is an inactivity timeout rather than a hard limit: stay away longer than 24 hours and you will be asked to sign in again
  • You are responsible for activity on your account. Keep your credentials private, and let us know if you believe your account has been compromised
  • One account per person. Do not create accounts to impersonate others, evade a mute or ban, or manipulate votes. We may reclaim usernames that impersonate a person or project

3. Community rules and moderation

The site exists so fans can share work, feedback, and ideas. To keep it that way, you agree not to:

  • post unlawful, hateful, harassing, threatening, or sexually explicit content;
  • impersonate any person or misrepresent your affiliation with any group;
  • upload media you do not have the right to share;
  • spam, flood, or manipulate votes and suggestions;
  • attempt to disrupt, attack, probe, or gain unauthorized access to the service or to other accounts;
  • evade a mute, kick, or ban by any means, including new accounts, VPNs, or proxies;
  • scrape, crawl, harvest, data-mine, or use bots or any automated means to copy or extract content, media, or data from the site;
  • copy, rip, mirror, redistribute, resell, or otherwise steal the site's original code, design, branding, or artwork, or another member's content, whether to pass it off as your own or to reuse it elsewhere, without our written permission (see section 5)

How moderation works:

  • An automated word filter screens posts, comments and suggestions, and also usernames, display names, pronouns and profile bios. Where it is switched on it can act without any human reviewing first: it can warn, mute, temporarily remove, or permanently ban an account. A username or profile field that trips the filter is refused, so the change is simply not saved, and a serious enough word can still mute or ban the account on top of that. Every hit is recorded against your account, but a refused username or profile field is not counted towards the escalation that makes repeat hits harsher
  • An automatic removal or ban also blocks the IP addresses and device signatures that account has been seen from. This is how ban evasion is prevented, and it has a side effect worth stating plainly: other people sharing that connection, such as a household or a school network, can be caught by the same block. If that happens to you, write to us and we will sort it out
  • Human staff may remove content and warn, mute, temporarily kick, or permanently ban accounts, at their reasonable discretion
  • Staff at supermod level or above can also permanently delete a member's account, which runs the same scrub described in section 10
  • Moderation actions are recorded in an internal audit log so decisions can be reviewed
  • If you believe a moderation action was a mistake, write to contact@visionforceofficial.com. The contact page stays reachable when you are signed out or banned

4. Your content and licenses

  • You own what you post. Posts, comments, suggestions, and uploaded media (avatars, banners, images, videos) remain yours
  • By posting, you grant us a non-exclusive, worldwide, royalty-free license to host, store, display, and reproduce that content as needed to operate the site, for example showing your post to other members
  • Deleting a post, comment or suggestion hides it rather than erases it. It stops being shown on the site, and the display part of that license ends there. We keep the stored copy: staff can still see it in the admin tools, and a post can be put back if the removal was a mistake. Copies also sit in nightly backups until those age out, as described in section 9. If you want something you posted erased rather than hidden, ask us at contact@visionforceofficial.com
  • Content posted in the hub is visible to every signed-in member. The pages that hold member content cannot be read by visitors who are not signed in, and they are kept out of search engines, but anyone can open a free account, so treat anything you post as public: any member can read it, quote it or screenshot it
  • Uploaded files are the exception. Avatars, banners and media attached to posts sit in public-read storage, so a file is reachable by anyone who has its address, signed in or not, as described in section 8
  • Only post content you created or have permission to share. We may remove any content that violates these terms or that we reasonably believe creates a problem for the project
  • If you send us ideas or suggestions for the project, we may use them without obligation or compensation. That is what the suggestions board is for

5. Intellectual property

  • "Rocket Racing", "Fortnite", "Unreal Engine", "UEFN", and all related characters, vehicles, tracks, names, logos, and assets are the intellectual property of Epic Games, Inc. and, where applicable, Psyonix LLC. Their appearance in community content does not transfer any rights, and all fan-made content on this site is provided for non-commercial community purposes only
  • Vaelora Velocity and LUX3 are unofficial fan creations and are not endorsed by Epic Games. We do not extract, port, or reuse Epic Games assets or code in them
  • Original works remain their creators' own. The site's own source code, design, layout, branding, logos, artwork, animations, and the coded 3D globe and interface belong to Vision Force Studio; each member's original content belongs to that member. You are welcome to browse and use the site as intended, but you may not copy, scrape, rip, reuse, redistribute, sell, or pass off any of it, ours or another member's, as your own without written permission. Stealing assets or content is not allowed
  • If you are a rights holder and believe content on this site infringes your rights, email contact@visionforceofficial.com and we will review the material and, where appropriate, remove it promptly

6. Privacy: what we collect and why

We collect only what a small community site needs to function. We do not sell your data, we do not build advertising profiles, and we run no advertising or cross-site tracking. We do use a privacy-friendly, cookieless analytics service and keep a minimal first-party usage log, both described below

Account data

  • Email address, username, and display name, plus any optional profile details you add: pronouns, region, and a short bio
  • For email-and-password accounts: your password, stored only as a bcrypt hash. For Google, Discord or GitHub sign-in: the basic profile the provider shares with us (name, email address, avatar), together with the linked-account identifier and the provider's OAuth tokens (access, refresh, and ID tokens) needed to keep the connection working
  • If you turn on two-factor authentication: a one-time-code (TOTP) secret, stored encrypted, and backup recovery codes, stored only as hashes
  • If you register a passkey: the passkey's public key and its metadata (a label, the device transports, a signature counter, and last-used time). The private key never leaves your device
  • An optional recovery phone number, if you choose to add one. It is stored unverified. There is no SMS provider wired up, so it is never messaged, is never a sign-in method or a second factor, and it is cleared when your account is deleted
  • Optional profile media you choose to upload, such as an avatar or banner

Content you share

Posts, comments, suggestions, votes, and uploaded images or videos. Content in the hub is visible to every signed-in member, and uploaded files are reachable by anyone who has their address, as explained in section 4

The Rocket Racing Archive, if you write to us there

You do not need an account to send a correction to the archive, so this part applies to people who have never signed up for anything:

  • The contribution form. Your browser sends what you typed to two places at once. One copy goes to Web3Forms, a third-party form-to-email service, which emails it to us. The other copy comes to us directly and is stored so we can see what arrived, what has been answered and by whom. We store your message, the page or section you named together with the address of the archive page you were on, any source or proof link you gave, and whatever you put in the optional contact field, kept exactly as typed whether that is an email address or a handle. The form has no name field. We also store a shortened one-way hash of your IP address, used only to cap submissions at six an hour from one source. We do not store the address itself
  • Confirming your address. If what you typed in the contact field is a valid email address, we send one automated message to it with a confirmation link. We store only a hash of that link's token and its expiry, never the link. It works once and expires after 7 days. We will not reply to an address nobody has confirmed, because an address typed into a public form is a claim about a stranger until they prove it
  • Email you send to the archive. Mail sent to the archive's own contact address is received by Cloudflare and passed to a small program we run there. That program sends us your sender address, the display name on your From header, the subject, the Message-ID and up to the first 60,000 characters of the message, which we store and show to moderators. Cloudflare also forwards the whole message to a Gmail mailbox we operate, so Google receives a full copy. If we do not recognise your address, your message starts a record of its own instead. Mail sent from an address is itself proof that you control it, so here the address counts as confirmed the moment your message arrives, with no link to click, and that is what lets us write back to you. If we already hold a submission from your address, your message is filed against that one and its confirmed status does not change. Letters we send about the archive carry a send-only reply address instead, so replying to one is rejected and you get a bounce back: use the contribution form again if you need to add something

Analytics and performance

  • We use Vercel Web Analytics and Vercel Speed Insights on every page. These are cookieless and aggregate: for each visit they record the page visited, the referrer, an approximate country (derived from your IP at the edge), and your device and browser type, along with performance measurements such as loading speed. This is sent to Vercel (section 8); it sets no cookies, uses no persistent identifier, and does not identify you or track you across other sites
  • We also keep a small first-party usage log of which pages and features get used. Each event records only an internal account reference, never your name, email, or IP, and that reference is detached when your account is deleted

Email we send you

  • Account email is transactional. Password resets, email verification, and security alerts (your password changed, two-factor was turned off, a passkey was added, all sessions were signed out) are sent when the matching action happens on your account. They are part of running the account safely and cannot be switched off while the account exists
  • Notification email is opt-in and separate. Announcements and other non-essential mail are off by default and controlled by a toggle in your profile settings, which you can change at any time
  • Our outgoing mail is one way. Account mail and archive mail are both sent from no-reply addresses that we do not read, so answering one does not reach us. A reply to an archive letter is rejected outright and bounces back to you. To reach a human, write to contact@visionforceofficial.com, or use the archive's contribution form for anything about the archive
  • Mail is delivered by Resend, a third-party email provider (section 8)

Safety and moderation data

  • IP address and a browser device fingerprint, recorded when you sign in and periodically while you use the site. The fingerprint is a one-way hash of several browser signals: your User-Agent, operating system and platform, language list, screen size, timezone, hardware hints (device memory and CPU cores), and a small canvas-rendering signal. Alongside it we store, per device, the raw User-Agent string and the most recent IP address, so you can see and manage your signed-in devices in your profile. These are used to enforce bans, prevent ban evasion, and, briefly, to rate-limit abuse such as repeated failed logins
  • Records of moderation actions taken on your account (warnings, mutes, kicks, bans) and an audit log of who took them
  • Content flagged by the automated word filter, and warning counts
  • Entry scan. The hub runs a check each time a signed-in member loads it. It is on by default and the site owner can switch it off at any time. It does three things. Your IP address is sent to the third-party service ipwho.is to look up country, timezone and internet provider, and to flag likely VPN, proxy or datacenter connections, which are commonly used to evade bans. An invisible test element is placed in the page to detect whether you are running an ad blocker. And your browser's timezone is compared with the timezone reported for your IP
  • What every scan records. Whether or not anything is flagged, we keep one current record against your account holding the three results (VPN or proxy, ad blocker, timezone mismatch), your browser timezone, and the country resolved for your IP address. Each scan overwrites it, so only the latest result is held, and it goes when your account is deleted. Staff at supermod level or above can see it on your account. Separately, the lookup result for an IP address is cached against that address in full, not hashed, and refreshed about every 7 days, so a repeat visit does not trigger another lookup
  • What a flagged scan adds. If a scan flags a VPN or proxy, an ad blocker, or a timezone mismatch, we also write an entry to a log that staff at supermod level or above can review. That entry holds your IP address in full, not hashed, its country and internet provider, your browser timezone, which checks tripped, your internal account ID, and the name held on your account at that moment. That name is the one you set when you joined, or the one your sign-in provider gave us if you have not set one yet; if there is no name at all we record your @username, and failing that the email address on file. These entries are deleted automatically after 90 days, and the cached lookups after 30 days; section 10 has the detail
  • Staff with moderator access can see, for each account, the email address on file, its mute or ban state and the reason recorded, when it was last active and whether it is online. Staff at supermod level or above additionally see the most recent IP address held for the account and the country resolved for it, how many IP addresses and how many devices are on file for that account, and whether the latest entry scan flagged a VPN or proxy connection, an ad blocker, or a timezone mismatch

Why we process this data

  • To provide the service: accounts, sessions, account email, and showing your content
  • To keep the community safe: moderation, ban enforcement, and ban-evasion prevention
  • To understand and improve the site: the aggregate analytics and usage log described above
  • To comply with legal obligations, should any apply

7. Cookies and things stored on your device

Cookies

We use strictly essential cookies only. Two of them are set the first time you load any page, signed in or not, because our sign-in system checks for a session on every page:

  • `__Host-authjs.csrf-token`, which protects forms against cross-site request forgery;
  • `__Secure-authjs.callback-url`, which holds the address on this site that a sign-in or sign-out should return you to

When you actually sign in:

  • a session cookie, a signed token that keeps you signed in, refreshed to 24 hours on each visit;
  • while you sign in with Google, Discord or GitHub, a few short-lived functional cookies (one-time PKCE, state and nonce values) that make the redirect secure and are discarded once sign-in finishes

All of these are first-party and HTTP-only. There are no advertising cookies and no cookies that track you across other sites. Our analytics (section 6) are cookieless. Because every cookie above is strictly necessary to provide a service you asked for and to keep it secure, and the analytics set no cookie at all, the site does not show a cookie consent banner. If you block these cookies you will not be able to sign in or stay signed in

Stored on your device, not sent to us

The site also saves a few small values in your browser's own storage. These never reach our servers, and nothing on the site deletes them, so clearing your browser data is how you remove them:

  • your 3D scene quality choice on the homepage, and whether you declined the prompt offering a lighter mode
  • whether the homepage music is muted
  • recently used colour swatches
  • whether an admin sidebar group is open, for staff
  • a flag set the first time you pass the hub's entry screen, so the one-off welcome is not shown again
  • per tab, and cleared when you close it: that you dismissed the entry screen, and that the intro countdown already played

The Rocket Racing Archive sets no cookies at all. It stores four values in your browser: a short hash of its notice text so its card does not reappear once dismissed, the time of your last contribution so the form can ask you to wait, and two display preferences

8. Third-party services

  • Google, Discord and GitHub (sign-in). If you sign in with one of these, that provider confirms your identity and shares your basic profile (name, email, avatar) with us. Your relationship with them is governed by their own terms and privacy policies. We also use a Google service account, server-side and read-only, to read our own site's Search Console statistics; no member data is sent to it
  • GitHub (source code and scheduled jobs). Beyond sign-in, GitHub hosts this site's private source repository and runs our scheduled jobs, including the nightly backup described in section 9
  • Vercel (hosting, analytics and performance). The site is hosted on Vercel, which also provides the cookieless Web Analytics and Speed Insights described in section 6. For every visit, signed in or not, the page visited, referrer, approximate country, device and browser type, and performance metrics are sent to Vercel, which processes them under its own privacy policy
  • Supabase (database and file storage). Your account data, posts, and uploaded media are stored in a database and file storage hosted by Supabase, which acts as our storage provider and processes that data under its own privacy policy. The media bucket is public-read, which means an uploaded file is reachable by anyone who has its address
  • Resend (email delivery). Account email and archive mail are sent through Resend. Your email address and the message contents pass through Resend so it can be delivered, and Resend handles that data under its own privacy policy
  • Cloudflare (inbound email for the archive). Mail sent to the archive's own contact address is received by Cloudflare Email Routing and handled by a small program we run there, as described in section 6
  • Google (Gmail). Cloudflare also forwards every message received at that address, in full, to a Gmail mailbox we operate
  • Web3Forms (the archive contribution form). If you use the archive's contribution form, your browser sends a copy of your submission, including the optional contact field, directly to Web3Forms, which emails it to us. Because it goes from your browser, Web3Forms receives it independently of us and processes it under its own privacy policy
  • Upstash (status page storage). Our status page keeps its records in Upstash, a hosted database service. It stores daily counts of how many automated checks found each component healthy, plus any incident notices we write. It holds nothing about visitors
  • ipwho.is (IP lookup, while the entry scan is on). As described in section 6, signed-in members' IP addresses are sent to ipwho.is for a geolocation and provider lookup. It is an independent service with its own privacy policy. While the scan is off, nothing is sent to it
  • Ko-fi (voluntary tips). The hub footer links to a personal Ko-fi page. We receive no payment data. If you choose to use it, everything after the click is between you and Ko-fi under their terms
  • Externally hosted media. If a member posts media hosted on another website, your browser loads it directly from that website when you view the post, which, as with any image on the web, reveals your IP address to that host

9. Backups

Every night an automated job takes a complete copy of our database and stores it with GitHub, which keeps it for 90 days before deleting it. Because it is a full copy, it contains everything in section 6, including account email addresses, password hashes, two-factor secrets and hashed backup codes, passkey records, any recovery phone number, IP and device records, moderation and audit logs, and everything posted

Backups exist so that a mistake or an outage does not destroy the community's work. It also means that when data is deleted from the live site, copies can survive in backups until those backups age out

10. Data retention and deletion

  • Account data is kept for as long as your account exists
  • You can request deletion of your account at any time, from Settings > Account, or by emailing contact@visionforceofficial.com. Deleted accounts are deactivated and removed from public view
  • Deleting your account clears your email address, password, recovery phone number, display name, avatar and banner links, bio, pronouns and region, removes your two-factor settings and any passkeys, and unlinks any Google, Discord or GitHub sign-in, which discards the stored OAuth tokens. You are removed from public view and can no longer sign in
  • Your avatar and banner files are deleted too, not just unlinked. That matters because our media storage is public-read: a file that is only unlinked stays downloadable by anyone who kept its address, so deleting the account deletes the objects themselves
  • Images attached to your posts stay, because the posts stay. Removing them would leave holes in conversations other members took part in. If you want them gone as well, ask us at contact@visionforceofficial.com, ideally before you delete the account, because afterwards we can no longer confirm they were yours
  • Some records survive deletion, on purpose. Your username is kept, because it is the handle that bans and moderation records point at. Anything you posted, meaning posts, comments, suggestions and votes, stays on the site, so that conversations other members took part in do not collapse into gaps; it is no longer linked to a usable account or to any contact detail. Banned IP and device records are kept so bans remain enforceable, moderation audit logs are kept so past decisions stay accountable, and reports you filed or that were filed about you are kept for the same reason
  • If you want something you posted taken down as well, ask before you delete the account. Once it is deleted we can no longer confirm the content was yours
  • Usage events record only an account reference, never your name or address, and that reference is detached when the account is deleted
  • Entry scan records age out on their own. A flagged-scan entry in the detection log is deleted after 90 days, long enough to recognise a pattern of ban evasion across repeat visits and no longer. The per-address lookup cache is deleted after 30 days without being seen; separately, an entry still in use is refreshed about every 7 days, which is a freshness check rather than a deletion. You can also ask us to remove entries relating to you sooner
  • Archive correspondence. A submission you send to the Rocket Racing Archive is kept indefinitely as a record of what was reported. Replies attached to it are deleted 14 days after the conversation is closed, and nothing is deleted within 14 days of arriving
  • Rate-limit counters expire about an hour after they are written and are cleared opportunistically
  • Backups hold copies of deleted data for up to 90 days, as described in section 9

11. Your rights over your data

If you are in the UK, the EU, or Switzerland, data protection law gives you rights over information about you, and we will honour them wherever you are:

  • See it. Ask for a copy of what we hold about you
  • Correct it. Most of it you can edit yourself in your profile; ask us for anything you cannot reach
  • Delete it. Delete your account yourself, and ask us for the things that do not go automatically, such as uploaded files and entry-scan records
  • Object or restrict. Tell us to stop using your data a particular way, and we will unless we have a reason we can point to
  • Take it with you. Ask for your content in a portable form

Write to contact@visionforceofficial.com. We will answer within a month. If you are unhappy with how we handle it you can complain to your data protection regulator, which in the UK is the Information Commissioner's Office at ico.org.uk

12. Disclaimers and limitation of liability

  • This is a volunteer hobby project. The site is provided "as is" and "as available", without warranties of any kind, express or implied, including availability, accuracy, or fitness for a particular purpose
  • We may change, suspend, or shut down the site, or any part of it, at any time. Please keep your own copies of anything you care about
  • Content posted by members reflects the views of its authors, not of the project team
  • To the fullest extent permitted by law, we are not liable for indirect, incidental, or consequential damages arising from your use of the site. Nothing in these terms excludes or limits liability that cannot be excluded or limited under applicable law

13. Changes and contact

  • We may update these terms from time to time. Material changes are announced on the site, and when a new version is published you will be asked to review and accept it before continuing to use your account. Continued use of the site after a change means you accept the updated terms
  • The current version is always available on the Terms page of this site
  • One address for everything that needs a human: questions, account deletion, moderation and ban appeals, security reports, rights-holder complaints and privacy requests all go to contact@visionforceofficial.com. It is shown on our contact page, which you can reach without signing in and while you are banned

By continuing to use Vision Force Projects, you confirm that you have read and agree to these terms

Questions

Anything unclear, or a request about your data. Write to us and a person will read it

Contact