前言

首先我们要了解什么是“墙”,这个视频很好的解释了墙的原理以及“科学上网”和“梯子”如何绕开墙。
链接登录后可见

问:那么什么情况下需要去墙?
答:当界面出现显示混乱或无法交互时需要去墙。

问:去墙到底去的是什么?或者说什么东西被墙屏蔽了?
答:一些插件引用的国外前端库。

所以,FiveM圈子中大家经常说到的去墙就是让原本被GFW屏蔽的前端库可以正常访问。

常见的去墙方式有以下这几种:

  • 使用相同的国内源
  • 科学上网后把文件下载到插件内加载
  • 给所有玩家发一个梯子,挂着梯子玩(雾)

教程

请注意,这需要你对HTML稍微有一点了解,如果没有的话可以去看这个教程。
[链接登录后可见]

第一步:找到需要去墙的链接

首先找到这个插件的HTML主页面文件,在资源清单(fxmanifest.lua/__resource.lua)中搜索ui_page,打开它后面目录对应的HTML文件。

搜索http,并逐个检查以下标签中的链接能否正常访问。

<!-- CSS -->
<link href="http://example.com" rel="stylesheet">
<!-- JavaScript -->
<script src="https://example.com"></script>

上面只展示了最基础和必须的属性,如果你看到下面这样的标签,不用担心,它们的作用是一样的。

<!-- CSS -->
<link href="http://example.com" rel="stylesheet" integrity="XXXX" crossorigin="anonymous">
<!-- JavaScript -->
<script src="https://example.com" integrity="XXXX" crossorigin="anonymous"></script>

第二步:替换为可以使用的链接

如果你发现这个标签中的链接被墙了,可以选择下面任意一种方式,将它替换为可以使用的链接。
还记得上面展示的“integrity”属性吗?在替换为其他链接后,建议将它移除,防止哈希值验证失败导致无法加载。

方法一:使用相同的国内源

优点:节省玩家和服务器的硬盘空间,方便快速
缺点:有可能会失效

首先我们需要找一个收录开源库的国内CDN代理,这里推荐两个我在用的:
[链接登录后可见]
[链接登录后可见]

搜索此项目的名称,如“jquery”;并选择与原来相同的版本,如“3.5.1”。复制链接并替换。

<!-- 原始链接 -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<!-- Staticfile CDN 国内源 -->
<script src='https://cdn.staticfile.net/jquery/3.5.1/jquery.min.js'></script>

方法二:科学上网后把文件下载到插件内加载

优点:永远不会失效
缺点:占用玩家和服务器的硬盘空间,操作麻烦

科学上网并在浏览器中打开此链接,Ctrl+S保存为文件,将文件复制到插件文件夹内你想要的位置,在资源清单中引入该文件。

<!-- 原始链接 -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<!-- 本地 -->
<script src='./lib/jquery.min.js'></script>

文件夹结构

├─插件
│    ├─html
│    │    ├─lib
│    │    │    ├─jquery.min.js
│    │    ├─index.html
│    │    ├─fxmanifest.lua

资源清单

files {
	'html/lib/jquery.min.js',
	'html/index.html',
}

结语

去墙教程到这里就结束了,有问题欢迎大家在评论区留言讨论

应该是国内论坛第一个把这个去墙问题讲的这么清晰和全面的教程了,感谢对FiveM做出的贡献,辛苦了。

2 个月 后

请问一下进游戏后就有一堆代码在屏幕上把游戏界面挡住了, 这种的怎么去墙吖?

qialihar 最简单的办法,把你resource文件夹整个拖进VSCode,在左侧搜索面板搜索这一堆英文,注意找有特点的,比如“RADIAL_HUD_1”。

1 个月 后

cata_a写的教程非常完善 非常便于理解 支持国内有更多的技术可以写出这种教学内容

1 个月 后

这种的话是需要去墙的情况吗?Couldn't load resource jg-scoreboard: Failed to open packfile: ReadBulk of header failed: Failed to fetch: Failure downloading resource.rpf: OpenSSL SSL_connect: Connection was reset in connection to IP:30120 - CURL error code 35 (SSL connect error)

    Cata_a 单纯就这一个插件这样子,加上就这样了,有没有方法可以排除错误呢,求教大佬

    3 个月 后

    推荐使用web缓存网(www.webcache.cn)来去墙,web缓存网使用国内主流CDN厂商可对常用前端公共库、cdnjs、npm文件和github文件进行加速,可一键转换URL资源地址。

    4 个月 后

    大佬大佬求,我想add your 企鹅,我那个okok什么车店插件,本来没事的,有几个月没弄,回来一看不能用了,有hud好烦,以前没事的,突然要去墙,搞老半天了,求!!!!!!

    © 2021 FiveMBBS 版权所有 | 本站原创图文内容版权属于原创作者,未经许可不得转载 | 友情链接