轻松搭建自己的 FiveM 服务器,与好友联机

这篇文章是 2018 年写的,至今已经过去好几年了,以下内容已经完全跟不上最新版 FiveM,因此建议直接阅读我在论坛上的最新开服教程:https://fivembbs.net/d/51-fivem-windows-202203

好久没写博文了,今天来更新一下。

FiveM 相信大家可能已经有所了解,这是一个非官方的联机 Mod,它允许你开一个私人的 GTA5 服务器。 话不多说,我们进入正题,一起来看看如何搭建一个 FiveM 服务器。

本文以 Windows 服务器开服作为示例,但是我本人是推荐用 Linux 开服的,有空我再出一篇 Linux 开服教程。

很重要的一点,请备好梯子(VPN、SSR 等),最后有一个步骤需要用到!

一、准备环境

首先你需要准备一个 Windows 的 VPS 或者自己的电脑,推荐 Win7 以上,不建议用 XP、Server 2003 等老系统开服。

然后安装好 VC++ 2017 运行环境:https://go.microsoft.com/fwlink/?LinkId=746572

找一个地方,不要是中文名称的目录,新建一个文件夹,名字是英文即可,例如“GTA5_Server”

二、下载服务端

从这里下载一个服务端:https://runtime.fivem.net/artifacts/fivem/build_server_windows/master/

默认是按照日期倒序排列的,选择最后构建的一个版本即可。

下载完,得到一个 Server.zip,打开以后内容大概如下

选中所有的文件,解压到刚刚我们创建的“GTA5_Server”文件夹

下载服务端资源数据文件:https://github.com/citizenfx/cfx-server-data/archive/master.zip

下载慢可以从本站的 CDN 下载(不保证实时更新):https://cdn.zerodream.net/assets/cfx-server-data-master.zip

下载完后打开,将里面的 resources 文件夹解压到刚刚创建的“GTA5_Server”文件夹。


三、配置服务端

在“GTA5_Server”文件夹里右键,新建文本文档,改名为 server.cfg,小白用户请记得打开“显示文件扩展名”,具体操作方法可以百度。

编辑 server.cfg,输入以下内容

# 此处定义了服务器的运行端口
# 如果你想修改端口,请将 30120 替换为你想要的端口即可
endpoint_add_tcp “0.0.0.0:30120”
endpoint_add_udp “0.0.0.0:30120”

# 这些是服务器的插件,默认会启动
start mapmanager
start chat
start spawnmanager
start sessionmanager
start fivem
start hardcap
start rconlog
start scoreboard
start playernames

# 这个选项允许你的玩家使用基于 ScriptHook 的插件,例如 Menyoo 等
# 设置为 0 将会禁止使用了 ScriptHook 插件的玩家进入服务器
sv_scriptHookAllowed 1

# 取消注释这一行将会启用服务器的 RCON 功能(Rcon 是一种远程管理服务器的功能)
#rcon_password your_password

# 此处是设置服务器标签的地方,这将会在服务器列表上起作用
# 设置合理的 Tag 可以增大你的服务器被其他人搜索到的几率
# 使用英文逗号分开每个关键字,例如
# – sets tags “角色扮演,漂移,生存战争,自定义车辆”
sets tags “default”

# 一个可选的选项,用于给你的服务器增加一个介绍图片,将会显示在服务器详情页以及连接中的提示框上方
# 推荐大小为 1920 * 400 的图片,在游戏里会显示的比较宽。
#sets banner_detail “http://url.to/image.png”
#sets banner_connecting “http://url.to/image.png”

# 设置你的服务器名字,将会显示在服务器列表,使用 ^ 加上一个数字来改变颜色,例如 ^3我是彩色的^3
sv_hostname “[GTA5] Test Server”

# 配置文件支持嵌套
#exec server_internal.cfg

# 加载服务器的图标,大小必须是 96×96
#load_server_icon myLogo.png

# 设置一个变量,可以在插件中使用(没啥卵用)
set temp_convar “hey world!”

# 取消注释这一行就可以让玩家搜索不到你的服务器
#sv_master1 “”

# 你可以设置只允许来自指定第三方验证平台的玩家进入,例如 Steam
# 不要忘了 Social Club 也是第三方验证平台
#sv_authMaxVariance 1
#sv_authMinTrust 5

# 设置服务器管理员
add_ace group.admin command allow # 允许所有命令
add_ace group.admin command.quit deny # 但是禁止 quit 命令(示例)
add_principal identifier.steam:110000112345678 group.admin # 将管理员添加到用户组 admin(steam:110000112345678 是你的用户身份 ID)

# 这个应该是在日志中隐藏用户的信息
sv_endpointprivacy true

# 服务器最大玩家数量(最新的服务端已支持最大 64 个玩家)
sv_maxclients 32

# 服务器的授权码(在 https://keymaster.fivem.net 申请)
sv_licenseKey your_licence_key

我们现在需要申请一个服务器的授权码,打开 https://keymaster.fivem.net

提示需要登录,点击 sign in,接下来就是正常的注册、验证邮件、登录流程。

注册完、登录后,来到这个界面,点击这里申请一个 Key

按照下面的说明填写信息

服务器类型可以随便选择,一般选 VPS 就可以了。

这里的 Captcha 验证码,国内是无法直接显示的,因为众所周知的 GFW,因此你需要 SSR 或者 VPN 才能显示出来。

最后点击 Generate 即可生成一个 Key。

复制这个 Key,回到你的 server.cfg,修改 sv_licenseKey(最后一行)的 your_licence_key 为你刚刚复制的 Key,然后保存配置文件。

四、运行服务端

在“GTA5_Server”文件夹中按住 Shift + 鼠标右键,此时你的右键菜单会多出一个(在此处打开命令提示符窗口)的选项,Windows 10 下是 PowerShell,都一样。

在新打开的窗口输入 .\run.cmd +exec server.cfg(如果是 PowerShell 需要先输入 cmd 然后回车,接着再输入命令启动)

此时服务器就开始运行了

至此,一个服务器就开好了,这时候你就可以打开 FiveM 客户端,点击 Direct Connect,输入你的服务器IP连接了。

如果你修改了服务器的端口(改成了非 30120 的端口)那么你需要在地址后面加上 :端口

五、端口映射

如果你是用 VPS、独立服务器开服的用户,那么你可以直接跳过这一步开始玩了。

如果你是家用电脑开服,想和其他人一起玩,那么请接着看这一部分。

首先,打开 Sakura Frp(https://www.natfrp.org/),如果已有账号可以直接登录,没有的话注册一个即可。

Sakura Frp 已经不再由本人经营,以下教程可能不再适用,可改用 16Lab 内网穿透

登陆后点击左侧“映射列表”,然后按照下面的格式填写

点击添加即可,然后再添加一个,隧道类型选择 UDP 映射,其他项和上面一样。

然后下载 Sakura Frp 客户端,点击左侧“客户软件”,选择适合你的操作系统的版本

不知道你的电脑多少位的选 32 位即可。

下载完后运行客户端,输入账号密码登录,登录之后选择一个服务器,输入数字 ID 即可

最后,将右侧括号内的地址复制给你的朋友,让他们启动 FiveM,点击 Direct Connect,输入这个地址就可以连接了。

感谢阅读,如果有不懂的地方欢迎评论区提问

推荐阅读文章

79 条评论

  1. 林承毅说道:

    請問哪個地方可以把伺服器的名稱更改成中文呢?

    • KasuganoSora说道:

      进入 resource 文件夹,新建一个 clientname 文件夹,然后进入里面,再新建一个文本文档,命名为 client.lua,编辑它,输入内容

      Citizen.CreateThread(function()
        AddTextEntry('FE_THDR_GTAO', '服务器名字')
      end)
      function AddTextEntry(key, value)
              Citizen.InvokeNative(GetHashKey("ADD_TEXT_ENTRY"), key, value)
      end
      

      然后再新建一个 __resource.lua,里面输入内容

      resource_manifest_version '44febabe-d386-4d18-afbe-5e627f4af937'
      client_script 'client.lua'
      

      最后,在 server.cfg 里加一行

      start clientname
      

      就可以了

  2. 林承毅说道:

    請問申請鑰匙的server ip是打第一行端口的數字嗎?

  3. noknok说道:

    怎樣可以將所有介面變成中文

    • KasuganoSora说道:

      FiveM 应该是没有中文的,如果你说的是游戏的话,可以试下这个
      在开始菜单,找到命令提示符,右键以管理员身份运行,输入下面的命令:

      reg add "HKLM\SOFTWARE\WOW6432Node\Rockstar Games\Grand Theft Auto V" /v Language /t REG_SZ /d zh-CHT /f
  4. 莊皓宇说道:

    在“GTA5_Server”文件夾中按住Shift + 鼠標右鍵,此時你的右鍵菜單會多出一個(在此處打開命令提示符窗口)的選項,Windows 10 下是PowerShell,都一樣。

    在新打開的窗口輸入 .\run.cmd +exec server.cfg
    我打完這串字 顯示PS C:\GTA SEVER> .\run.cmd +exec server.cfg
    ‘C:\GTA’ 不是內部或外部命令、可執行的程式或批次檔。

  5. 莊皓宇说道:

    .\run.cmd +exec server.cfg
    我卡在這裡
    他會顯示’C:\Users\HaoYu\OneDrive\桌面\GTA’ 不是內部或外部命令、可執行的程式或批次檔。

  6. 莊皓宇说道:

    卡在第四步
    出現玩Found甚麼的
    後來跳出一個東西 就沒辦法用了

  7. 莊皓宇说道:

    此服務器確實具有指定的許可證密鑰,請將sv_licensekey控制台變量設置為來自的密鑰
    https://keymaster.fivem.net/.(例如,在配置中設置sv_licenseKey鍵或在命令行上設置sv_licensekey鍵

  8. 奶漿说道:

    我也像樓上一模一樣
    翻譯過後也是
    此服務器確實具有指定的許可證密鑰,請將sv_licensekey控制台變量設置為來自的密鑰
    https://keymaster.fivem.net/.(例如,在配置中設置sv_licenseKey鍵或在命令行上設置sv_licensekey鍵

  9. 你不知我是誰说道:

    如何在開始時加入背景音樂

  10. 啊堂说道:

    请问可以出一些插件的教学吗

  11. 小軒说道:

    No such config file: server.cfg
    GlobalError: This server does not have a license key specified. Please set the sv_licenseKey console variable to a key from https://keymaster.fivem.net/. (for example, `set sv_licenseKey “key”` in the config, or `+set sv_licenseKey key` on the command line)
    Resolved live-internal.fivem.net:30110 to 178.32.9.100:30110

    沒有這樣的配置文件:server.cfg
    GlobalError:此服務器未指定許可證密鑰。請將sv_licenseKey控制台變量設置為來自https://keymaster.fivem.net/的密鑰。 (例如,配置中的`set sv_licenseKey“key”,或命令行上的`+ set sv_licenseKey key`)
    已解決live-internal.fivem.net:30110至178.32.9.100:30110

    我有server.cfg檔案求解

    • KasuganoSora说道:

      请检查一下你的 server.cfg 是不是放错位置了,不要放到 resources 目录里,可以先输入 ls -lah 命令查看当前目录下的所有文件,检查下有没有 server.cfg

    • KasuganoSora说道:

      哦对了,忘记了是 Windows,你看下你的 server.cfg 放在哪里了,可能是放到 resources 里面去了所以找不到。

  12. 張阿天说道:

    Sakura Frp
    沒有像你那麼多的啟動代理成功

  13. 張阿天说道:

    Sakura Frp
    用了之後
    沒給IP

  14. 張阿添说道:

    他沒有給我下面那一堆

  15. 阿天说道:

    他沒有給我下面那堆你塗鴉掉的部分

    • KasuganoSora说道:

      网站上配置好了映射吗?如果没有的话需要先做好映射。
      当然也有可能是没有成功连接上服务器,可以稍等一下重试或者修改 hosts,设置:

      
      115.238.185.30 frp.tcotp.cn
      
  16. 給我一支菸说道:

    KasuganoSora

    你好 我照你的方法 開的差不多了
    不過 在FiveM 客戶端

    找不到遊戲呢

    FiveM 客戶端 的 IP 是我電腦的IP嗎?

  17. kai说道:

    可以發一個按裝腳本的教學嗎

  18. handsome_tim说道:

    樓主大大您好,請問我是在自家用另一台電腦當SERVER,然後我用自己的電腦玩,是在同一個對外的固定IP,這樣有需要設定端口映射嗎??因為我用好後開FiveM都找不到我的SERVER…謝謝摟!!

    • KasuganoSora说道:

      如果是在同一个局域网内,你可以在另一台电脑输入你开 FiveM 服务器电脑的 IP,就可以直接连接(点 Direct Connect 就行)。如果不在同一个局域网,就需要内网穿透。

  19. 張承翰说道:

    怎麼裝車行的車子MOD

  20. 0938605032说道:

    該服務器未指定許可證密鑰。請設定
    sv licenseKey控制台變量到來自的密鑰
    http://keymaster.fivem.net/。 (例如,設置sv許可證密鑰“ key”
    在配置中,或+ set sv licenseKey鍵
    在命令行上)

  21. 黃大東说道:

    在“GTA5_Server”文件夾中按住Shift + 鼠標右鍵,此時你的右鍵菜單會多出一個(在此處打開命令提示符窗口)的選項,Windows 10 下是PowerShell,都一樣。

    在新打開的窗口輸入 .\run.cmd +exec server.cfg
    我輸入後沒有開始執行 只讓我重複輸入 但都沒反應
    PS C:\GTARP\GTA5_server> .\run.cmd +exec server.cfg
    PS C:\GTARP\GTA5_server> .\run.cmd +exec server.cfg
    PS C:\GTARP\GTA5_server> .\run.cmd +exec server.cfg
    PS C:\GTARP\GTA5_server> .\run.cmd +exec server.cfg
    PS C:\GTARP\GTA5_server>

  22. litsou说道:

    Authenticating with Nucleus…
    server thread hitch warning: timer interval of 2014 milliseconds
    fff
    cccc ff xx xx rr rr eee
    cc ffff xx rrr r ee e
    cc ff xx … rr eeeee
    ccccc ff xx xx … rr eeeee

    Authenticated with cfx.re Nucleus: https://-lit-xlkxg5.cfx.re/
    Sending heartbeat to live-internal.fivem.net:30110
    出現這個是怎麼了?我也找不到我的伺服器

  23. alex0122说道:

    按照步驟了,但朋友還是連不了.

  24. 阿翰说道:

    請問?
    file:///C:/Users/HOME/Pictures/Screenshots/%E8%9E%A2%E5%B9%95%E6%93%B7%E5%8F%96%E7%95%AB%E9%9D%A2%20(5).png
    不會跑?

  25. LAM说道:

    我弄不到第一點

  26. Fei说道:

    卡在第四步 輸入後它都說./run.cmd無法辨識

    • KasuganoSora说道:

      先输入 cmd
      然后再输入这个

      • 帝枫说道:

        https://z3.ax1x.com/2021/04/21/cqlZd0.png
        您好卡在这步了,
        在“GTA5_Server”文件夾中按住Shift + 鼠標右鍵,此時你的右鍵菜單會多出一個(在此處打開命令提示符窗口)的選項,Windows 10 下是PowerShell,都一樣。

        在新打開的窗口輸入 .\run.cmd +exec server.cfg
        我打完這串字 顯示PS C:\GTA SEVER> .\run.cmd +exec server.cfg
        ‘C:\GTA’ 不是內部或外部命令、可執行的程式或批次檔

        • KasuganoSora说道:

          开头的 .\ 去掉

          • 帝枫说道:

            好的谢谢

          • 帝枫说道:

            PS D:\GTA5_Server> run.cmd +exec server.cfg
            run.cmd : 无法将“run.cmd”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路
            径正确,然后再试一次。
            所在位置 行:1 字符: 1
            + run.cmd +exec server.cfg
            + ~~~~~~~
            + CategoryInfo : ObjectNotFound: (run.cmd:String) [], CommandNotFoundException
            + FullyQualifiedErrorId : CommandNotFoundException

            PS D:\GTA5_Server>

  27. 帝枫说道:

    https://imgtu.com/i/cvasmt
    PS D:\GTA5_Server> run.cmd +exec server.cfg
    run.cmd : 无法将“run.cmd”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路
    径正确,然后再试一次。
    所在位置 行:1 字符: 1
    + run.cmd +exec server.cfg
    + ~~~~~~~
    + CategoryInfo : ObjectNotFound: (run.cmd:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

    PS D:\GTA5_Server>

  28. qwq说道:

    什麼時候有linux教學?

  29. qaq说道:

    都没问题 但是进服的时候一直卡在 Awaiting scripts是怎么回事

  30. CTC说道:

    我卡在
    四、运行服务端 那邊
    我輸入.\run.cmd +exec server.cfg不能用

  31. CTC说道:

    我輸入了這個不會跑
    .\run.cmd +exec server.cfg

  32. ddc说道:

    請問Direct Conne 是甚麼?

  33. 梦里说道:

    请问开服务器需要哪些开支

  34. Jnt说道:

    请问如果伺服器被恶意攻击
    哪里能找到做防的专家 或者有没有其他方法防御?
    楼主帮帮忙🥺救命

  35. 帝枫说道:

    楼主,请问用自己电脑开服,有公网IP。应该怎么操作

  36. ShouZiJun说道:

    下次能不能出个添加车的

  37. 墨說说道:

    https://cdn.discordapp.com/attachments/895792412235014185/909449207834890260/Desktop_Screenshot_2021.11.06_-_15.20.13.16.png
    Failed To Fetch Info From server(Tried 3 Times)
    if you are the server owner are you sure you are allowing udp packets to and from the server
    為什麼會出現這個狀況?我有跟著教程

  38. kudira说道:

    这个是纯洁的端,怎么加插件呀楼主

  39. mio说道:

    他那个要输入静态ip那动态ip地址怎么办楼主

  40. mio说道:

    那官网给的那个傻瓜式安装跟这个有区别吗

  41. aka说道:

    用内网穿透的这种方法,1mb/s网络流量限制,最大能支持多少人同时在线

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注