Skip to content

Compatibility matrix

The authoritative, always-current numbers are on the generated compatibility page. For the difference between "not yet" and "not planned", see What Nova supports. This page is the human summary: which systems work, which are partial, and what to do about the gaps.

Systems

System Status What to expect
Core DataModel and Instances Supported Services, parenting, attributes, tags, property-change signals.
Luau scripting Supported Luau VM, task, typeof, bit32, utf8, modern syntax.
File formats Supported XML and modern binary .rbxl/.rbxm, Int64, SharedString, zstd, meshes v1–v5.
Rendering Supported GL3 renderer, shaders, post effects, MeshParts, CSG unions.
Lighting and post effects Partial Lighting/Sky/post effects work; Atmosphere and Clouds do not.
GUI Partial Core GUI works; the layout/modifier family is missing.
Physics Partial PGS solver and many constraints; some movers and the modern raycast API are missing.
Animation and avatars Partial R6 and classic R15 rigs, Animator, keyframes; no skinning or HumanoidDescription.
Audio Supported 3D sound, groups, and the 2022 DSP effect set.
Networking Supported Filtering, remotes, replication, server authority.
Data persistence Supported DataStore/GlobalDataStore/OrderedDataStore through the official platform's persistence.
Economy and marketplace Partial Prompts, product info, ownership, ProcessReceipt; newer commerce APIs are absent.
Teleport and reserved servers Supported Place instances, reserved servers, teleport data.
Assets and content Supported Asset proxy, modern IDs, meshes, images, sounds, CSG.
HTTP Supported HttpService JSON and request methods.
Chat Partial Legacy chat and bubble chat; TextChatService is absent.
Localization Missing No LocalizationService/LocalizationTable.
Studio Supported Open/edit/play/publish, toolbox, asset import.
Plugins Partial Core plugin surface; modern plugin APIs and distribution are limited.
Virtual Version Supported 2012–2016 era skins (Nova-specific).
VR, video, voice Missing No backend.
Cloud / Open Cloud Missing Not available to game scripts.
Web client Supported WebAssembly build served by the official platform.
Android Partial Builds, but not at desktop feature parity.

The gaps that break the most places

1. Modern UI layout

Missing: UIListLayout, UIGridLayout, UITableLayout, UIPadding, UIScale, UICorner, UIGradient, UIStroke, CanvasGroup, UIAspectRatioConstraint, UISizeConstraint, UITextSizeConstraint, ViewportFrame.

Why it matters: nearly every modern interface uses at least one of these. A place that relies on automatic layout will look wrong until the layout is replaced.

Workaround: a manual layout pass. See Build a UI without UIListLayout.

2. Modern spatial queries

Missing: WorldRoot, RaycastParams, RaycastResult, OverlapParams, and the Workspace:Raycast / GetPartBoundsInBox / GetPartsInPart family.

Workaround: Workspace:FindPartOnRayWithIgnoreList and Workspace:FindPartsInRegion3WithIgnoreList. See Physics.

3. Avatar rendering

Missing: Bone, WrapLayer, WrapTarget, SurfaceAppearance, HumanoidDescription, and skeletal skinning.

Workaround: classic body parts, clothing assets, and baked textures. See Animation and avatars.

4. Chat and localization

Missing: TextChatService and its configuration classes; LocalizationService and LocalizationTable.

Workaround: legacy chat/bubble chat and a string module (or per-locale places). See Scripting and the TextChatService page.

5. Platform services

Missing: VRService, VideoFrame, VideoService, VoiceChatService, PolicyService, Open Cloud, packages, EditableImage, EditableMesh.

These have no Nova backend. A place that depends on them needs a design change, not an API shim.

Classes that exist but are partial

A class can be Supported and still miss members. The reference page for each class lists them under Modern Roblox API not in Nova. The generated compatibility page ranks them by gap size. The largest are usually platform services and Studio APIs, not gameplay classes.

Common partials worth checking:

  • MarketplaceService — core purchase flow yes; newer commerce APIs no.
  • DataStoreService — core persistence yes; request budgets and option objects no.
  • Players / Player — lifecycle and appearance yes; some platform APIs no.
  • Terrain — voxel terrain yes; newer material variants limited.
  • Animator / AnimationTrack — keyframes yes; skinning no.
  • Sound — modern playback and effects yes; some newer audio classes no.

How this page is kept honest

The generator compares:

  • Nova's client API dump (nova-api.txt), and
  • the current Roblox API dump.

Presence is mechanical. The judgement calls (does a present class actually behave?) live in data/compat.yaml. If you find a status that is wrong, edit that file and open a pull request; do not edit the generated pages.