All overlay configuration happens within your codebase, which gives full flexibility.

The following properties can be passed into the overlayed function:

appName

The name of the app.

  • Type

    appName: string;
    
  • Example

    import { Siege } from "@overlayed/app/siege";
    import { overlayed } from "@overlayed/app";
    
    const overlay = overlayed({
    	appName: "my-app",
    	// ...
    });
    

modules

The modules to load.

  • Type

    interface OverlayedOptions<TModule extends GameModule> {
    	modules: TModule[];
    }
    
  • Details

    Modules allow you to subscribe to a specific game, including:

    • Game Events
    • Overlay Events like when the game launches
  • Example

    import { Siege } from "@overlayed/app/siege";
    import { overlayed } from "@overlayed/app";
    
    const overlay = overlayed({
    	modules: [Siege.module()],
    	// ...
    });
    

keybinds

The apps keybinds

  • Type

    interface OverlayedOptions<TKeybind extends string> {
    	keybinds: OverlayedAppKeybindsConfig<TKeybind>[];
    }
    
    type OverlayedAppKeybindsConfig<TKeybind extends string> = Record<
    	TKeybind,
    	{
    		keys: OverlayedAppKeybindsConfigKey[];
    		mode: OverlayedAppKeybindsConfigMode;
    	}
    >;
    
    type OverlayedAppKeybindsConfigMode = "toggle" | "hold";
    type OverlayedAppKeybindsConfigKey =
    	| "ControlLeft"
    	| "AltLeft"
    	| "ShiftLeft"
    	| "AltRight"
    	| "ControlRight"
    	| "ShiftRight"
    	| (string & {});
    
  • Details

    Keybinds require the array of KeyboardEvent#code and the mode of the keybind.

    • “Hold” will trigger the callback when the keybind is held down.
    • “Toggle” will trigger the callback when the keybind is toggled on and off.

    Read more here.

  • Example

    import { overlayed } from "@overlayed/app";
    
    const overlay = overlayed({
    	keybinds: {
    		toggleMainWindow: {
    			keys: ["ControlLeft", "KeyY"],
    			mode: "toggle",
    		},
    	},
    });
    

init

  • Type

    	init?: boolean;
    
  • Default: true

  • Details

    Whether to initialize the overlay right when the function is called. Read more here.

  • Example

    import { overlayed } from "@overlayed/app";
    
    const overlay = overlayed({
    	init: false,
    });
    

universal

  • Type

    	universal?: boolean;
    
  • Default: false

  • Details

    When true, the overlay will be loaded and attempt to render inside of all supported games. When false, only games registered under the modules array will be loaded.

    Read more here.

  • Example

    import { overlayed } from "@overlayed/app";
    
    const overlay = overlayed({
    	universal: true,
    });