What are EngineFeature?

What do engine features do and how are they used?

1 Like

You should check this: DataModel | Roblox Creator Documentation

1 Like

Doesn’t seem like it’s something intended for use outside of core roblox scripts, but you can find some examples of how it’s used internally by digging around in the core scripts

“LoadingScript.lua”

if game:GetEngineFeature("NotchSpaceSupportEnabled") then
		-- Turning on ScreenGui.IgnoreGuiInset allows the loading screens to remain full screen while Screen Gui Bounds are changed in Client/LuaApps/content/scripts/CoreScripts/Modules/TopBar/init.lua
		screenGui.IgnoreGuiInset = true
		mainBackgroundContainer = create("Frame")({
			Name = "BlackFrame",
			BackgroundColor3 = COLORS.BACKGROUND_COLOR,
			BackgroundTransparency = 0,
			Size = UDim2.new(1, 0, 1, 0),
			Position = UDim2.new(0, 0, 0, 0),
			Active = true,
			Parent = screenGui,
		})
	else
		local inGameGlobalGuiInset = settings():GetFVariable("InGameGlobalGuiInset")
		mainBackgroundContainer = create("Frame")({
			Name = "BlackFrame",
			BackgroundColor3 = COLORS.BACKGROUND_COLOR,
			BackgroundTransparency = 0,
			Size = UDim2.new(1, 0, 1, inGameGlobalGuiInset),
			Position = UDim2.new(0, 0, 0, -inGameGlobalGuiInset),
			Active = true,
			Parent = screenGui,
		})
	end

I don’t think there’s a complete list anywhere of all the feature names, but I don’t know what you’d want to use it for honestly. Is there anything you’re trying to do with it?

This is intended for the case where new Lua is running on an old engine version.

Probably not really useful.

1 Like