喵生随笔

使用Mac Air M2打英雄联盟可行方案

· [dafee]

准备工作

  • Parsec
  • ZeroTier
  • 能打英雄联盟的主机(为啥不直接玩,哈哈哈)
  • 100Mpbs的宽带
  • WIFI6路由器

过程描述

网络环境

本人是有一台diy的台式机放在家里,在出租屋使用Mac Air M2打英雄联盟。延迟在30ms左右,这个主要因网络环境而异,个人感觉非常流畅。 tu1

步骤

  • 软路由(需要添加路由,如果直接在游戏主机上运行ZeroTier就没必要)上安装并运行ZeroTier(网上已有很多教程,贴一个链接,随手搜的),Mac Air上也安装并加入到自建的网络中;
  • 游戏主机上安装Parsec(选择Shared模式安装,不然会搜不到),Mac Air同样安装(贴一个链接);
  • 我这里是在出租屋直接通过ZeroTier的网络登录到家里的路由器,网络唤醒游戏主机,然后通过RDP远程桌面的方式开启Parsec;
  • 在Mac Air上打开Parsec,即可看到游戏主机并连接了。 tu2

打英雄联盟的图片

tu3 tu3 tu3

问题解决

关闭远程桌面后,使用Parsec连接时可能会出现锁屏登陆界面,而且登陆不进去的情况。这个问题和Steam 远程畅玩遭遇的 “Would you like to accept secure desktop input from Steam?” 弹窗的原因是一样的,是因为服务端主机被远程锁定,这个锁定原因可能是链接之前刚好退出了RDP,RDP 在退出时出于安全原因会将服务端主机锁定。可以在游戏主机上新建一个run.cmd的文件,粘贴如下代码并运行的方式断开RDP连接,再次使用Parsec连接时,就不会出现上述问题了。参考链接

@ECHO OFF
NET SESSION 1>NUL 2>NUL
IF %ERRORLEVEL% NEQ 0 GOTO ELEVATE
GOTO ADMINTASKS

:ELEVATE
CD /d %~dp0
MSHTA "javascript: var shell = new ActiveXObject('shell.application'); shell.ShellExecute('%~nx0', '', '', 'runas', 1);close();"
EXIT

:ADMINTASKS
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "$sessionid=((quser $env:USERNAME | select -Skip 1) -split '\s+')[2]; tscon $sessionid /dest:console"

优化延迟

我采用的方案是在阿里云上自建ZeroTier根节点,可以极大的降低ZeroTier的延迟,ZeroTier官方服务器在高峰期延迟会显著提升,影响游戏体验。