✓英语|韩语(한국어)
Pikachu排球(対戦ぴかちゅ~ 対戦ぴかちゅ~)是一款旧的Windows游戏,由“(c)Sachi Soft / Sawayakan程序员”开发,并于1997年开发。
Pikachu排球P2P Online是游戏的点对点在线版本。您可以通过互联网与他人一起玩。它是通过将WEBRTC数据通道集成到Pikachu排球的离线网络版本来开发的,Pikachu排球是通过反向工程制造的。
您可以在网站上在线播放Pikachu排球P2P:https://gorisanson.github.io/pikachu-volleyball-p2p-online/en/

离线版本:所有脱机Web版本源代码文件都位于目录src/resources/js/offline_version_js/ 。这些与https://github.com/gorisanson/pikachu-volleyball/tree/main/main/src/src/resources/js中的源代码文件相同。在线版本是基于这些的。
WEBRTC数据渠道:使用WEBRTC数据通道的对等在线功能包含在src/resources/js/data_channel/data_channel.js中。 (Firebase Cloud Firestore被用作通过WEBRTC建立点对点通信的调解人。房间创建者发送给木匠的房间ID是它们之间共享的Cloud Firestore文档的ID。此方法最初来自Firebase + Webase + Webrtc codelab和https://github.com.com.com.com/webrtc/webrtc/webrtc/webrtc/firebaserbaserbaserbascrc-)。
快速匹配:使用快速匹配服务器的通信包含在src/resources/js/quick_match/quick_match.js中。 (Google App Engine用作快速匹配服务器。快速匹配服务器发送房间的ID,该房间的ID是由等待快速匹配的人创建的,向新的匹配者发送给了。)
游戏状态对用户(键盘)输入是确定性的,除了游戏中使用的RNG(随机数生成器)。因此,如果两个同行的RNG相同,则只需要传达用户输入以维持同行之间的相同游戏状态。在此P2P在线版本中,在数据频道打开事件的两个对等方面,RNG设置为同一件事,然后通过数据频道传达用户输入。
有关其他详细信息,请参考src/resources/js/main_online.js上的评论。