我有一个涉及狼人/黑手党虚拟游戏的课堂练习。在这门课上,我们并没有真正教过如何做任何事情,这使得每个人都很难做实验。
这个想法是,在游戏的某些回合中,坏人投票支持杀人,然后在下一轮,每个人都开始猜测坏人是谁,并试图杀死他们。
这是设置为:
- 主持人使用的python服务器
- 每个人都启动的用于发送/接收服务器消息的python客户端(我们可以修改它)
- 每个人都使用 ssh 连接到一台机器(因此服务器和客户端在一台机器上运行)
- 它们通过命名管道进行通信(隐藏在受保护的目录中)
我们需要:
- 作为好人:找出狼人何时与服务器通信,以便我们可以投票杀死该用户
- 或作为坏人:不被抓到与服务器通信
我正在尝试使用的一些想法,但对于网络/linux noob 来说太多了,无法使用:
/proc/pid#/sched 这里应该有有用的东西。我想我可以检查自愿上下文切换以查看用户何时键入。不幸的是,我不擅长编写脚本。另外,我不确定如何获取 pid#。也许管道顶部进入grep“python”?
检查与机器的 ssh 连接,并以某种方式监听套接字进行通信?
我完全被难住了,所以任何建议都会很棒。