Updating a Resource
This page explains the general update process for Inferno Collection resources.
Updates should be treated differently from first-time installs. Do not blindly paste the new download over the old resource folder, as old files that were removed in the new version may be left behind, and customized files may be overwritten.
Before Updating
- Stop your server.
- Make a backup of the resource you are updating.
- Read the resource's changelog for breaking changes, especially notes mentioning configs,
editablefiles, exports, events, integrations, or data files. - Make a note of any files you have changed by hand.
Download from CFX Portal
- Go to CFX Portal.
- Sign in with the same Cfx.re account you used to purchase the resource.
- Find the item created by
ChristopherM. - Download the latest normal release for the resource.
Do not select a release candidate, RC, or similarly labelled pre-release version unless you specifically mean to test that version.
Replace the Resource Files
After downloading and extracting the resource, locate the new resource folder inside [inferno-collection].
In your server's existing resource folder:
- Keep your existing config file.
- Keep any
editablefiles you have changed. - Keep any resource-specific data files you own, such as Pager Reborn's
nodes.luaandpermissions.lua. - Delete the rest of the old resource files and folders.
- Copy in the new files from the download.
- Do not overwrite the config,
editablefiles, or owned data files you kept.
If your [inferno-collection] folder contains more than one resource, only replace the folder for the resource you are updating.
Update Configs by Hand
Configs should be merged by hand, not overwritten.
- Resources that use
config.cfg: Pager Reborn, Fire Alarm Reborn, Station Alert, and Flares. - Resources that use
config.json: Spotlight, Torches, and Hands-Free Siren.
Open the config from the new download next to your current config, then copy across any new, renamed, or removed options. Keep your existing values where they are still valid.
For config.json files, check the final file with a JSON validator before starting the server. Missing commas, brackets, or quotes can prevent the resource from loading.
Update Editable Files by Hand
The editable files are intended for server-specific changes, so do not overwrite them without checking what changed.
When a new update includes changed editable files:
- Open your current file and the newly downloaded file side by side.
- Copy across the new default changes.
- Re-apply your custom code, uncommented integrations, event handlers, targeting support, or inventory support.
- Check the changelog for any specific files called out as changed.
This is especially important for files such as:
editable/server/events.luaeditable/client/targeting.luaeditable/client/inventory.luaeditable/server/inventory.lua- resource-specific integration files under
editable/server
Start and Check
After the files are replaced and hand-merged:
- Start the server.
- Watch the server console for config, syntax, permission, or missing file errors.
- Run the resource's health check command if it has one.
- Test the specific features you changed or merged, such as inventory items, targeting, dispatch integrations, custom sounds, custom skins, pager networks, or station/alarm data.
Resource-Specific Notes
Pager Reborn
- If
ic_pr_dataSourceis set to local files, keep and hand-check yournodes.luaandpermissions.luafiles. These contain your Pager Network and role permissions. - If you added custom pager skins, keep the extra
.pngand.xmlfiles inui/assets, and hand-mergeic_pr_skins. - Inventory support uses
editable/client/inventory.luaandeditable/server/inventory.lua, so hand-merge those files if you have enabled OxInventory, QBInventory, or a custom inventory integration.
Fire Alarm Reborn
- Alarm System draft files should live in another resource, such as
inferno-alarms, not insideinferno-fire-alarm-reborn. Do not delete your alarm location resource when updating FAR. - Third-party dispatch and first-party integrations are enabled from
editable/server/events.luaand related files such aseditable/server/pager.lua,editable/server/station-alert.lua, or other dispatch integration files. Hand-merge these files if you use them. - Target/third-eye support uses
editable/client/targeting.lua. Ific_far_manualInteractionsis enabled, check this file carefully. - Pre-created alarm locations are downloaded separately from the resource. Update those separately if you use them.
Station Alert
- Station Location draft files should live in another resource, not inside
inferno-station-alert. Do not delete your location resource when updating Station Alert. - If you have custom tones or turnout audio in
ui/assets, keep those files and hand-mergeic_sa_tones. - Inventory and targeting support use
editable/client/inventory.lua,editable/server/inventory.lua, andeditable/client/targeting.lua. Hand-merge these if you use Ox, QB, or another integration. - Dispatch, Pager Reborn, Fire Alarm Reborn, and other integrations commonly rely on
editable/server/events.luaor files undereditable/server. Keep your custom changes.
Flares
- Manual interaction support uses
editable/client/targeting.luaand the server inventory editable. Keep any Ox, QB, or custom third-eye/inventory changes. - If you changed
flare-types.jsonorflash-patterns.json, hand-merge those files so your custom flare names, models, RGB values, and flash timings are not lost. - If you edited textures, keep your edited texture files when replacing the rest of the resource.
Torches
- Torches uses
config.json; hand-merge any new options and validate the JSON before starting the server. - If you created Ped or MP Ped torch presets with the tool, keep those entries in the
pedsandmppedconfig sections when merging. - Inventory support uses
editable/server/inventory.lua, so keep any OxInventory, QBInventory, or custom inventory code.
Spotlight
- Spotlight uses
config.json; hand-merge new options and validate the JSON before starting the server. - Keep custom vehicle entries in
VehicleExtras,VehicleMods,VehiclePersistents,VehicleSpotlightIgnores, and any custom RGB spotlight color entries. - If an update changes vehicle config structure, rebuild or adjust your custom entries using the Spotlight developer docs before starting the server.
Hands-Free Siren
- Hands-Free Siren uses
config.json; hand-merge new options and validate the JSON before starting the server. - Keep any custom base-game siren, server-sided siren, horn, vehicle override, and audio entry changes when merging.