简介
基于众所周知的“合规”原因,FiveM 在某次更新之后加入了 Lua/NodeJs 沙盒机制。什么是沙盒呢?简单说,以前你可以在自己服务器上通过 Lua 脚本或者 NodeJs 脚本调用任意外部程序,或者向外部目录写入任意文件,而现在引入沙盒之后,这一切都会被阻止,当你尝试调用 cmd.exe 或者向 C 盘写入一个文件的时候只会返回 Permission denied 错误。
对于大部分不会写脚本的服主来说,这个影响没什么所谓,但对于一些热衷于自主开发插件,或者你需要运行某些需要调用外部程序的插件(比如本人的车牌插件,需要独立的 Web 服务器程序来确保高性能),这个沙盒限制就是最大的绊脚石。
以往的做法一般是回退到旧版本工件,或者通过从源码构建 DLL 然后替换的形式,但前者会导致服务器在列表上不可见,且无法通过 UI 加入服务器(只能通过 F8 直连命令进入),后者则需要不断地去更新代码来适配最新的工件。而今天带来的这个补丁,则是通过运行时动态 Hook(挂钩)FiveM 服务端来实现的,无需替换任何 DLL,始终兼容最新版本工件,再也不用担心服务器不出现在列表上了。

使用
- 下载 FXWrapper:FXWrapper-win64-1.0.1.zip
- 将压缩包解压到你的工件目录下,确保 FXWrapper.exe 和 FXServer.exe 处于同一目录。如果杀毒软件报毒,选择忽略即可(因为有注入 DLL 的行为,很多杀软会报毒)
- 修改你的启动脚本,将 FXServer.exe 简单地替换为 FXWrapper.exe 即可,所有传递给 FXWrapper.exe 的参数都会原样地透传给 FXServer.exe
感谢使用
如果有任何问题,欢迎评论留言(可能不经常看),或者 QQ 204034
暂无评论