在樱互联的Windows VPS上托管教育版Minecraft的种种事项
这篇文章是参与2022年樱花互联网公司的圣诞日历活动的文章。
这是樱花公司2022年圣诞日历活动的第5篇文章。
我是微软认证的教育创新者和全球Minecraft导师——星野。
由于我也在樱花的微社区(Minecraft服务器管理者协会)进行演讲,所以我将参加今年的圣诞节日历活动。
我将写一篇关于使用Sakura Windows VPS服务来托管教育版Minecraft时的经验和技巧的文章。
教育版我的世界 wǒ de
教育版我的世界官方网站
https://education.minecraft.net/ja-jp
全球的Minecraft导师
我是从全球Minecraft导师计划开始的第二年加入的,参与了β版本的测试和反馈活动。
有一次,那須歷史探訪館的初中生兒童專家挑戰建築的活動在教育版Minecraft官方博客中被提及。
三月份每月学生挑战 – 亮点
https://education.minecraft.net/ja-jp/blog/march-monthly-student-challenge–highlights
最近一段时间,我使用Go语言来开发能够通过WebSocket协议与micro:bit设备进行交互的编程环境”マイマイラボ”,这个环境主要用于制作原创教材和整合版本教育版Minecraft。
具体的に何ができるのかは以下のYouTubeプレイリストを見て欲しい。
与其他Minecraft的关联
我今年负责东京地区的Minecraft杯全国大赛方块评审领导。
微軟認定教育創新師自2017年起開展活動,今年以「Minecraft每月挑戰」之名,針對MIEE認定師資進行每月使用教育版Minecraft進行推廣活動。
另外,我也在note上写了一些与Minecraft相关的文章,欢迎阅读。
选择的计划
尽管可能会有关于虚拟三核CPU和2GB内存的规格是否足够的疑问,但即使在这样的规格下,多人模式也能够流畅运行,即使最多容纳大约10名玩家。然而,为了达到这种流畅感,还是需要一些合适的设置(详见后文)。
只需一种选择,请用中文转述以下内容:
同时,如果将VPS配置成豪华环境(充足的虚拟CPU内核+像水一样的内存+GPU),使其变得舒适是理所当然的。因此,请不要忘记本文旨在在廉价环境下追求能够舒适地进行多人游戏的环境。
CPU的负载
如果在选择的计划中运行教育版本的Minecraft,那么你可能会关注CPU的负载有多大。老实说,如果不做任何调整直接运行教育版本的Minecraft,CPU的负载会达到100%。
减轻负担的措施
减轻CPU负载的措施是必需的。需要将每个设置选项都逐个关闭。承载主机实际上无法进行游戏,因此需要注意它仅存在于承载的目的。
当然,如果考虑以主机玩家的身份进行游戏,应选择高规格的VPS,但相应地每月的成本也会增加,因此需要注意。
この記事ではあくまで安価なプランでホストすることを前提としてまとめている。
视频设置
由于托管的教育版Minecraft需要进行彻底的轻量化处理,首先需要从将视频处理设置中的所有重负项目都关闭开始。
由于屏幕截图已全都开启,建议点击图形处理选项的开关,将其关闭。
我的世界的窗口大小。
将教育版Minecraft窗口的大小缩小到最小。这将大幅减少CPU负载。
需要注意的是,不是最小化窗口,而是将窗口尺寸调整为较小。如果最小化,教育版Minecraft将进入睡眠状态,无法进行主机操作,因此窗口必须保持显示状态。
主机玩家的视角
在教育版的Minecraft中,与Java版和基岩版服务器实现不同的是,主机必须消耗一个玩家账号才能进行托管。
为了这个主机的玩家视角(看向哪里)为什么如此重要,因为只要在屏幕上显示了Minecraft世界的方块,即使是一小块,都会增加CPU的负荷。
為了防止發生這種情況,可以在視訊設定中將「顯示雲:關閉」和「美麗的天空:關閉」,主播只需仰望空無一物的天空,就能大幅降低CPU負荷。
教育版《我的世界》存在的问题
请提供客户如何参加的方式
在最新的v1.18.42版本中,客户端连接主机的方法受限于以下方式。
-
- 参加コード(4つの絵合わせ)
-
- 接続ID(長い数字の羅列)
- 参加URL
根据 IP/端口号的方式在 v1.18.32 版本已被废弃。
这些参与方式的问题是,如果主办方无法连接,每次都必须重新发行。
目前的主机功能只能连续运行一到两天后就无法连接,而且只有重新启动教育版Minecraft才能恢复,这是一个存在的问题。
在主机运营方面是非常复杂而繁杂的地狱。
为了摆脱这个地狱,我去年开始尝试使用Power Automate Desktop进行自动化,包括重新启动教育版Minecraft。
关于自动化
在 VPS 上运营时,自动化是一个重要的要点。
Power Automate Desktop在以下Windows服务器(Windows Server 2016、Windows Server 2019、Windows Server 2022)上也可以运行。
Power Automate Desktop 的运行平台
虽然我不希望让你们对此抱有过高期望,但我预先告知一下,用 Power Automate Desktop 创建的东西可能在 Minecraft 教育版的升级中失效(事实上已经发生了这种情况)。
さらに、問題なのはPower Automate Desktopは無償ライセンスの場合は無人運用はできないため、リモートデスクトップによるセッションを開いたままにしておかなければ実行できないという弱点もある。そのため、この自動化においてはRaspberry Piからリモートデスクトップに接続したセッションをそのまま残して連続稼働を実現していた。
Raspberry Piは消費電力がわずかであるため、この運用を実現するための妥協案として利用していた。
自動化した内容
実際にPower Automate Desktopを使って自動化した内容は次のようなものだ。
教育版マインクラフトの再起動
上記で記載した教育版マインクラフトをホストする上での問題点を解決するには、教育版マインクラフトそのものを再起動する以外に方法がない。そのため、接続できなくなった状態の教育版マインクラフトを終了させ、再び起動する処理が必須となる。
これをPower Automate Desktopで作成し、後述する参加コードが無効になった際の自動再起動とクラウド経由で再起動を指示する方法によって教育版マインクラフトを再起動することを実現した。
サインイン
教育版マインクラフトはMicrosoft365のアカウントによる認証が必須である。アカウントを覚えさせてログインを簡略化することも可能ではあるが、残念ながらこれがうまく行かないケースが稀に発生する。
その問題を回避するために、アカウント情報を記憶させないようにして毎回確実に認証を行うしくみとした。そうしないとうまく行かなかったケースの対応が煩雑となるためだ。
世界选项
ホストするワールドについては、保存されているワールドデータの一番最初に表示されるものを対象に開くこととした。ワールドを変更したいときは、事前に開きたいワールドを手動で開いておく必要がある。
ホストとしてワールドを開く
ワールド選択時にシングルプレイヤーでやるのかホストでやるのかを選択することができる。ホストすることが目的なので自動的にホストボタンをクリックするようにPower Automate Desktopで実装した。
参加主机代码的屏幕截图并共享到云端。
ホストの参加コードは4つの絵の組み合わせなのだが、これをどう共有するのかは悩ましい。Power Automate Desktopは画面キャプチャを撮影することができるので、参加コードが表示されたら画面スクショを撮影し、それをWindows Serverでクラウドストレージ連携フォルダにその画像を保存することで容易に参照するようにした。
我将Google Drive与OneDrive进行了同步,并使用Power Automate (云版) 也将其同步。这样,即使远程桌面未连接VPS,我也可以知道参加代码。
发布主机参加 URL 并共享至云端。
在主持后,需要发出世界分享URL之前发出主持参加URL。这个操作也可以通过Power Automate Desktop自动化完成。
因为在Power Automate Desktop中,可以将复制到剪贴板的参会URL下载到文件中,所以我也调整为将其保存为文本文件并存储在云存储链接文件夹中。
在这个文本文件中的参加URL,如果与OneDrive同步,可以通过点击链接来方便地加入主机(遗憾的是,在Google Drive上无法显示可点击的URL)。
当主机参与代码失效时的自动重新启动处理
在当时进行自动化的教育版“我的世界”,大约过了2到3天,参与代码就会全部显示为“抱歉,无法参加”。
我在Power Automate Desktop上实现了自动识别此参加代码图像并自动重新启动教育版Minecraft的功能。
版本升级的噩梦
使用Power Automate Desktop进行自动化工作非常顺利,连续运行了数周(约一个月),完全没有任何问题。我们成功地实现了作为服务器的持续运行。
もちろん、実際には再起動しているので本当の意味での連続運用ではないのだが、ホストに参加することの無い時間帯に再起動しているので外形上は連続運用となっていた。
ところが・・・である。
当教育版Minecraft进行版本更新时,Power Automate Desktop的脚本不幸地失败了(泪)。
强烈要求实施教育版本的Minecraft服务器。
教育版マインクラフトの公式フォーラムではFeature Wishlistがあり、実現して欲しい機能の数々が書き込まれている。当然のことながら教育版マインクラフトのサーバ実装を希望する投稿があり、数年前から数多くの賛同投票数も得ているにも関わらず、ずっと無視され続けている。
教育機関におけるマイクラの活用では継続的な活動とするためにサーバ運用が必要とされている。最近廃止されたIP/ポート番号による接続方法も効率的な運用をする上では必要な接続方法であった。
如果教育机构真的想要全面推广,服务器实施是必不可少的。在本来就很忙碌的教育现场,频繁发放参与码的操作是不现实的。
我希望能向微软先生和Mojang先生提出要求,尽快全面实现服务器实施,并以此来结束本文。