【问题标题】:Spoofing a game controller欺骗游戏控制器
【发布时间】:2011-06-23 20:56:55
【问题描述】:

我正在尝试编写一些允许用户在游戏机上使用键盘/鼠标组合的东西。我想到的方法是执行以下操作:

弄清楚输入如何映射到控制台控制器中的输出。这是一个很好的尝试和错误,基本上是通过 USB 将控制器连接到计算机,并使用详细的 USB 日志记录来确定控制器如何响应输入。

然后,编写一个用户态程序,接受键盘/鼠标输入并将其转换为控制器的输出。

到目前为止一切顺利。现在是复杂的一点。我需要想办法将我的计算机连接到控制台,同时让控制台认为实际连接的是标准控制器。为此,我需要一种创建假 USB 设备的方法,该设备通过 USB 端口与控制台通信。这是我不知道该怎么做的部分。

我想我正在寻找某种 USB 欺骗库,但我不确定从哪里开始寻找类似的东西。库的 Python 绑定会很棒,但我并不挑剔。同样,在 Mac 或 Linux 上运行的东西会是完美的,但我可以在紧要关头使用仅限 Windows 的库。

【问题讨论】:

    标签: usb reverse-engineering spoofing video-game-consoles


    【解决方案1】:

    USB 不能以这种方式工作。 USB 涉及设备的定向层次结构,尝试连接两个主机设备(您的计算机和控制台)只会导致坏事发生(例如破坏两个设备中的 USB 控制器)。

    最好的办法可能是使用某种嵌入式处理器(如 Arduino)来坐在键盘/鼠标和控制台之间进行转换。

    【讨论】:

    • 这是有道理的。该死!我真的希望有一个零成本的选择!虽然我认为它不一定 必须 是 Arduino 或类似的。如果我通过蓝牙连接鼠标和键盘,我可能会使用屏幕损坏和 root 访问权限的 Android 设备。
    • 对于它的价值,一些嵌入式设备确实提供 USB 小工具支持,允许它们充当主机或从机(取决于您连接到的端口......)使这个想法完全可行,但我只有大约 10 分钟的研究时间.. 就 arduino 解决方案而言,有人有这样的东西.. controllermax.com 只能将控制器重新映射到控制器。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-05
    • 2011-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-09
    • 2019-06-05
    相关资源
    最近更新 更多