Skip to content

What Nova supports

Nova's compatibility goal is simple:

Every Roblox game should run on Nova with as little modification as possible.

That does not mean every Roblox feature will exist immediately. It means API gaps are treated as work items, documented honestly, and closed over time.

This page explains the difference between "not yet", "not planned", and "legacy forever". There is no public roadmap with dates; features are added as they are ready.

API gaps are work items

If a class or member is marked Not yet, it means Nova does not expose it today. It is a candidate for a backport unless this page lists it as Not planned.

The API reference shows the exact surface. The legacy audit records what Nova actually does when a modern Roblox page says a legacy API is removed or non-functional.

  • Supported — present and expected to work.
  • Partial — present, but a behaviour is missing or limited.
  • Not yet — present in Roblox, not in Nova today.
  • Not planned — intentionally out of scope. See below.
  • Alias — a legacy name kept for compatibility.
  • Nova-only — exposed by Nova but not current Roblox.
  • Legacy forever — a feature Roblox removed or deprecated that Nova will continue to support.

If a missing API blocks your game, check its class page first. If the page does not explain it, open a docs issue with the class/member name and what you are trying to do.

Legacy features are never deprecated

Nova will not deprecate Roblox features for the sake of matching modern Roblox.

If a feature worked in an older Roblox version and still makes sense in Nova, it stays available:

  • Legacy APIs and lowercase aliases.
  • Classic avatars, faces, and body parts.
  • Legacy chat and bubble chat.
  • Old property names and serialization aliases.
  • Old file formats and place-era behaviour.
  • Old rendering and UI concepts where they can coexist with newer ones.

Modern replacements are added alongside legacy behaviour, not instead of it. A 2013 place and a 2022 place should both be able to load and run.

Nova may label a legacy API as deprecated to point at a newer name, but the old API stays callable. "Deprecated" in these docs means "prefer the modern name", not "will be removed".

Explicitly not planned

Some Roblox features are controversial or require invasive platform policy. Nova will not implement these, even though other API gaps are worked on:

Dynamic heads and facial animation

Dynamic heads, facial animation, and face-tracking features are not planned.

Classic faces and face decals remain supported. Games that depend on FaceControls, FaceAnimatorService, or animated dynamic heads will not work as intended.

Age-segregated chat

Nova will not segregate chat by age.

Chat is a social feature, and splitting players into age buckets based on platform policy is outside the project's goals. Legacy chat and bubble chat remain supported; a modern chat UI may still be added for other reasons.

Age verification

Nova will never require age verification.

That includes:

  • Face scans or facial age estimation.
  • Government ID or document uploads.
  • Mandatory identity verification to chat, play, or use social features.
  • Platform services whose only purpose is age gating.

Games that require an age-verification step from the platform will not be able to rely on one. Do not build a port around it.

What this means for developers

  • Port the game, not the platform policy. Most gameplay code is unaffected by the not-planned list.
  • Remove age-gated chat assumptions. Use the legacy chat or a custom chat UI that follows your own community rules.
  • Do not depend on dynamic heads. Use classic faces or a static head mesh.
  • Keep legacy compatibility in mind. Code that targets old Roblox APIs is welcome; Nova is not trying to force everything onto the newest API.
  • Check the status. A missing API is not automatically a permanent gap, but the Not planned label is deliberate.

Reporting a gap

When reporting an API gap, include:

  • The class and member name.
  • The Roblox behaviour you depend on.
  • Whether the game can work without it.
  • A link to the class page in this documentation.

That lets the gap be triaged as a backport, a workaround, or an intentional non-goal.