如何避免或者降低GTA5游戏卡顿呢?

在玩 GTAOL 的时分,你或许会发现,和有些玩家玩的时分就很流转,和另一些玩家玩的时分就看到他们各种瞬移,各种车子撞树撞电线杆,其实这都是和 P2P 有关。

前面现已说了,P2P 是将每个客户端都变成了一台服务器,既能接纳数据也能发送数据,假定你和某个玩家比较近(物理上的),你和他的推迟低,那么你们两个一同玩的时分就会很流转。而假定你和某个玩家间隔几千上万公里,不同国家的,那么你们之间的推迟就会很大,玩起来的时分就会感觉很卡。

因此 GTA5 有一个匹配机制,即自动将你附近的玩家(或许和你同一个国家的玩家)匹配到同一个战局。例如我之前科技了一个日本的 SSR 作为加速器来联接游戏,我匹配到的就满是日本玩家。

那么怎样避免或许下降卡顿呢?首要你需求供认你和某个玩家之间推迟大不大,例如和他一同飚车,假定他不断瞬移或许各种奇 ♂ 怪的姿势瞎漂、撞车,那么就阐明推迟应该不小。

供认了推迟往后,你就应该尽量和这个玩家坚持间隔,最好是在视界规划之外,这样你的电脑就不会加载来自对方电脑的数据,这也是 B 站玩漂移的大佬 老基 说的,打轮毂的时分尽量找没人的当地打,否则简略把车胎打爆。原因就是游戏数据在由其他玩家发送给你,这中心或许就存在推迟或许其他问题,本来你打的是轮毂,或许就因为网络问题打到轮胎了。

心跳机制
前面说了,GTA5 的联机是依据 UDP 协议的,已然 UDP 是一种无情况的协议,为什么偶尔仍是能看到游戏提示“联接超时”?答案就是心跳机制。为了供认客户端在线,每个客户端之间都会彼此发送一个心跳数据包(heartbeat),时刻可所以 5 秒一次,或许 10 秒一次都可以,假定逾越指定时刻还没收到某个客户端的心跳数据包,那么就以为这个客户端“死了”(联接超时)。

TCP 协议虽然是一种有情况的联接,但是并不是代表客户端与服务器的联接间断后,服务器就能“知道”的。
假定你是通过正常办法断开联接,例如关闭程序、手动间断联接,那么服务器是可以“知道”这一作业的,而假定你通过拔网线、禁用网卡的办法强行断开联接,服务器是无法“知道”的,并且会继续测验给你发送数据,然后发送失利,再断定你的客户端现已离线。

题外话
其实完全运用服务器同步数据的游戏也有,例如坦克国际,在坦克国际这个游戏中,你的任何操作都需求与服务器同步,例如车子行进撤离,左转右转,开炮等。在 GTA5 里,你开一炮往后,是由你的电脑奉告其他玩家的电脑,我打了哪里,方向,视点等。而坦克国际里,你开了一炮往后,是由服务器来核算,你的炮弹打到了哪里,打中了没有。

因此坦克国际是我现在见过辅助最少的游戏,虽然也有,不过都是一些纯本地自慰用的科技,比方什么去草丛,无限视界缩放之类的。去草丛其实没啥用,仅仅让你看的清楚一点,服务器奉告你看不见你就看不见,坦克国际玩家常说的“点亮了”就是指服务器奉告你,你“看见”了对方的坦克。而假定服务器就是不奉告你敌人在哪,你就算把山都变成透明的,你也看不到敌方的坦克。

很早以前见过一个比较牛逼的辅助,可以垂直开上山,卡进他人车里,那个是利用了游戏的 bug,现在早就现已修正了。