Skip to main content
Some products need a small part of themselves to run inside your other resources. That part is called an integration. It is not installed automatically: you run a script that comes with the release. A product that needs no integration ships neither an integrations directory nor the installer scripts, and this page does not apply to it. The product’s own installation page says which case you are in.

Outcome

Every resource on your server carries the product’s integration, so the product can do what it needs across your whole server.

Prerequisites

  • The product installed and starting cleanly. See Install a product.
  • An integrations directory in the product’s resource, and the two installer scripts beside it.
  • On Windows, PowerShell. On Linux, a shell with find, grep and perl available.
  • A backup of your resources directory. The script edits files that belong to your other resources.

Steps

1. Understand what the script changes

The script visits every resource under your server’s resources directory and adds a few lines near the top of each resource’s fxmanifest.lua, pointing at files inside the product:
Nothing else in those files is touched. The product’s own resource is skipped. The script is safe to run more than once: before adding its lines it removes any it added previously, so running it twice does not produce two copies.

2. Run the script for your platform

The scripts sit in the product’s resource directory and must be run from there: they locate your resources directory by walking up from their own position. Windows
Double-click it, or run it from a terminal. It prints one line per resource it changed, then Hooks applied successfully!. The .bat is a launcher for windows-install-hooks-element_map.ps1 beside it, which is where the work happens. Both must stay together. The .ps1 is plain text and readable if you want to see exactly what will be changed before running it. Linux
It prints one line per resource it changed, then Done!. Both scripts leave every manifest in the encoding it already had, so a description with accented characters comes back unchanged.

3. Restart the server

The changed manifests are read when a resource starts. A full server restart is the simplest way to pick them all up.

Verification

Open one of your other resources’ fxmanifest.lua and confirm the added line is near the top, below the fx_version and game lines. Then confirm in game that the product feature which needed the integration now works. The product’s own pages say which feature that is.

Next steps

Run it again when your server changes

The script only reaches the resources that existed when you ran it. Run it again after:
  • adding a new resource to your server;
  • updating the product, because the update replaces the integrations directory and the scripts.

Removing an integration

There is no uninstaller. To remove it, delete the lines beginning @<product resource>/integrations/ from each fxmanifest.lua and restart. Removing the product’s resource without removing those lines leaves your other resources pointing at files that no longer exist.

What to expect from an integration

An integration runs inside your other resources, so it can change how they behave while the product is active. Each product documents what its own integration does; read that page before installing. Element 3D Map’s is described in Markers do not appear.