<!-- fivemad.com, Markdown source of https://fivemad.com/redm/docs/getting-started/fxmanifest -->
> Source: https://fivemad.com/redm/docs/getting-started/fxmanifest
> Section: Getting started
> Tags: fxmanifest, rdr3_warning, game, rdr3, fx_version, lua54
> Last updated: 2026-10-01
> Site map for assistants: https://fivemad.com/redm/llms.txt

# The fxmanifest and rdr3_warning

A RedM resource declares game 'rdr3' and carries the rdr3_warning line word for word, or it does not start. A minimal manifest you can copy.

Every resource has an `fxmanifest.lua` in its root folder. On RedM it is the same file as on FiveM with two differences: the `game` line says `rdr3`, and there is one extra line, `rdr3_warning`, that has to be there exactly as written.

## A minimal RedM manifest

```lua title="fxmanifest.lua"
fx_version 'cerulean'
game 'rdr3'
rdr3_warning 'I acknowledge that this is a prerelease build of RedM, and I am aware my resources *will* become incompatible once RedM ships.'

lua54 'yes'

client_script 'client.lua'
server_script 'server.lua'
```

Next to it, a `client.lua` and a `server.lua`, then `ensure your_resource` in `server.cfg`. That is a working resource.

Line by line:

| Line | What it does on RedM |
| --- | --- |
| `fx_version 'cerulean'` | RedM needs `adamant`, `bodacious` or `cerulean`. The old `__resource.lua` style manifest does not work here. |
| `game 'rdr3'` | Says the resource runs on RDR2. `common` means "any game, Cfx.re APIs only". |
| `rdr3_warning '...'` | Required whenever `rdr3` is one of the games. See below. |
| `lua54 'yes'` | Lua 5.4, the same as on FiveM. |

## The rdr3_warning line

This is the exact text, the same one the stock Cfx.re resources carry (it is copied from `mapmanager`'s manifest in citizenfx/cfx-server-data):

```txt
I acknowledge that this is a prerelease build of RedM, and I am aware my resources *will* become incompatible once RedM ships.
```

It is an acknowledgement, not a comment. If the line is missing, or the text differs by a single character, the server refuses to start the resource. The usual ways to break it:

- retyping it instead of pasting it, and losing the `*` around *will*;
- an editor turning the straight quote in `I acknowledge` into a curly one;
- wrapping it onto two lines.

> [!TIP]
> The [fxmanifest Generator](/tools/fxmanifest-generator?game=rdr3) opens on `game 'rdr3'` with this line already filled in, and the [RedM Files](/redm/docs/tools/files) page checks a manifest you drop on it for both lines.

## Running on both games

A resource that has no game specific code (a chat command, a database helper, an NUI page that does not call natives) can run on both:

```lua title="fxmanifest.lua"
fx_version 'cerulean'
games { 'gta5', 'rdr3' }
rdr3_warning 'I acknowledge that this is a prerelease build of RedM, and I am aware my resources *will* become incompatible once RedM ships.'
```

The warning line is still required, because the resource does start on `rdr3`. A resource with only `game 'gta5'` does not start on a RedM server at all.

## Everything else is the same

`fx_version`, `lua54`, `shared_script`, `files`, `ui_page`, `dependency`, `data_file` and `this_is_a_map` mean what they mean on FiveM. The FiveM guide to [your first resource](/docs/development/first-resource) covers them.

What a `data_file` line or a `stream/` folder can replace is a different list, because the files are RDR2's. The [Resource Conflict Checker](/redm/docs/tools/resource-conflicts) tells you when two of your resources stream the same RDR2 file.
