【发布时间】:2019-04-24 22:29:29
【问题描述】:
我有一个 Flask/SocketIO 应用程序,它目前将两个客户端配对在一起玩游戏。现在客户端正在通过一些已编译的客户端 Javascript 与服务器交互,我正在使用 socketio 来定义客户端调用的套接字,例如,当客户端向前移动时,movedForward。客户端 JS 类似地定义了服务器将发送到的 websocket,例如,当服务器将伙伴的动作传递给其他玩家时,partnerTurnedRight。
我想在服务器端创建可以与普通远程客户端交互的“虚拟”客户端——基本上,每次远程客户端连接时都会生成 Javascript 的 python 实现。这个想法是让服务器端“玩家”与远程人类客户端玩游戏。
我不确定如何实施这样的事情。我的直觉是我应该创建一个单独的 Flask/SocketIO 应用程序(不知何故),它为服务器发送的消息(例如,partnerTurnedRight)打开了套接字,并发出服务器期望的消息(例如,movedForward)。然后,当远程客户端连接时,生成一个有状态的子进程,该子进程具有自己的唯一 sid,并且能够使用与远程客户端完全相同的接口与服务器交互。但是,我真的不确定如何将所有内容放在一起或如何实际生成这样的服务器端客户端。
非常感谢您提供执行此类操作的示例项目、一些伪代码或如何设置此类操作的一般结构!
(部分问题是我不知道要使用什么搜索词,所以很难找到示例。)
【问题讨论】: