JRS CORE文档
开始使用

安装

在你的 RedM 服务器上安装 JRS Core

要求#

  • 带 txAdmin 的 RedM 服务器(最新 artifacts)
  • MariaDB 或 MySQL 数据库
  • 来自 portal.cfx.re 的服务器密钥
  • 开启 OneSync

txAdmin setup guide

docs.fivem.net - the official step by step guide to install txAdmin and create a server.

  1. 打开 txAdmin,选择 Remote URL Template。
  2. 粘贴配方链接:
text
https://raw.githubusercontent.com/NQ3Z/jrscore/main/recipe/jrscore.yaml
  1. txAdmin 会下载脚本、创建数据库并自动写好 server.cfg。
  2. 启动服务器。
  1. 运行 INSTALL.bat。
  2. 输入服务器文件夹、MySQL 信息和服务器密钥。
  3. 安装器会复制脚本、创建数据库并写入 server.cfg。
  4. 在 txAdmin 中把 Server Data Folder 设为该文件夹并开启 OneSync。
  1. 把 resources 文件夹复制到服务器。
  2. 把 sql/jrscore.sql 导入空数据库。
  3. 复制 server.cfg 并修改 {{ }} 中的值。

数据库(XAMPP、HeidiSQL 或不用 XAMPP)#

JRS Core 把角色、物品和金钱保存在 MariaDB / MySQL 数据库中。选择一种运行方式,导入 sql/jrscore.sql,然后设置连接字符串。

  1. Download and install XAMPP. It includes MariaDB.
  2. Open the XAMPP Control Panel and press Start next to MySQL. Apache is not needed.
  3. Download and install HeidiSQL, the program used to manage the database.
  4. In HeidiSQL press New, set Network type to MariaDB or MySQL (TCP/IP), host 127.0.0.1, user root, port 3306, and press Open.
  5. Right click the empty left panel, Create new > Database, name it jrscore and use the collation utf8mb4_general_ci.
  6. Select jrscore, choose File > Run SQL file... and pick sql/jrscore.sql.
Warning

XAMPP starts with the user root and no password. That is fine on your own PC. On a public server create a dedicated user with a password (see the SQL below) and never open port 3306 to the internet.

  1. Install one database server: MariaDB Server (recommended) or MySQL Community Server. Write down the root password you choose.
  2. Create the database and a user. Open HeidiSQL or the command line and run:
sql
CREATE DATABASE jrscore CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'jrs'@'localhost' IDENTIFIED BY 'change_this_password';
CREATE USER 'jrs'@'127.0.0.1' IDENTIFIED BY 'change_this_password';
GRANT ALL PRIVILEGES ON jrscore.* TO 'jrs'@'localhost';
GRANT ALL PRIVILEGES ON jrscore.* TO 'jrs'@'127.0.0.1';
FLUSH PRIVILEGES;
  1. Import the tables:
bash
mariadb -u jrs -p jrscore < sql/jrscore.sql

(with MySQL the program is called mysql). Or use HeidiSQL: File > Run SQL file.... 4. Manage it with HeidiSQL or DBeaver (works on Windows, Linux and macOS).

  1. Install Laragon (the Full version has MySQL). It is a lighter alternative to XAMPP.
  2. Press Start All. MySQL listens on 127.0.0.1:3306, user root, no password.
  3. Create the database jrscore and import sql/jrscore.sql with HeidiSQL (Laragon has a Database button that opens it).
  1. Install Docker, then start a MariaDB container:
bash
docker run -d --name jrs-db --restart unless-stopped \
  -e MARIADB_ROOT_PASSWORD=change_this_password \
  -e MARIADB_DATABASE=jrscore \
  -p 127.0.0.1:3306:3306 \
  -v jrs-db:/var/lib/mysql \
  mariadb:11
  1. Import the tables (works in any shell):
bash
docker cp sql/jrscore.sql jrs-db:/jrscore.sql
docker exec jrs-db sh -c "mariadb -uroot -pchange_this_password jrscore < /jrscore.sql"

The image page: hub.docker.com/_/mariadb. The 127.0.0.1: in -p keeps the database private to the machine.

Any MariaDB or MySQL host that your game server can reach works (a managed database, or a database on another VPS).

  1. Create a database jrscore and a user for it in the provider panel.
  2. Allow the IP address of your game server only.
  3. Import sql/jrscore.sql with HeidiSQL connected to that host.
  4. Use the host name in the connection string below instead of 127.0.0.1.

Then tell the server how to connect. Put this line in server.cfg above ensure oxmysql:

cfg
set mysql_connection_string "mysql://jrs:change_this_password@127.0.0.1:3306/jrscore?charset=utf8mb4"

With XAMPP and the root user without password it is mysql://root@127.0.0.1:3306/jrscore?charset=utf8mb4. If the password has special characters (@, :, /, #) replace them with their percent code (@ = %40) or choose a simpler password.

Tip

To check the connection start the server and look for [oxmysql] Database server connection established in the console. Not there? Check that MySQL is running, the port is 3306 and the database name is exact.

设置自己为所有者#

在 jrs_core/config/config.lua 的 Config.CoreOwners 中加入你的 Steam:

lua
Config.CoreOwners = {
    ['steam:110000xxxxxxxxx'] = true,
}

或在 jrs_users 表中把 group 设为 owner 或 admin。

加载顺序#

cfg
ensure oxmysql
ensure jrs_core
ensure jrs_inventory
ensure jrs_character

自带的 server.cfg 已经是正确顺序。

Warning

不要在 ensure 行末尾写 # 注释,fxmanifest.lua 请保存为无 BOM 的 UTF-8。

JRS Core · 免费开源的 RedM 框架 · JRS TEAM 出品