Amiibo 是由日本游戏厂商任天堂自家所发行的 NFC 性能的玩偶,次要用在任天堂 Switch 游戏机上,能够在游戏上传或接管所贮存的游戏数据。以前模仿 Amiibo 须要一部 Android 手机、TagMo 程序和若干 NTAG 215 卡。而当初只须要一台有蓝牙模块的 Linux 主机就能够实现。
模仿任天堂 Switch Pro 控制器
Python 库 Poohl/joycontrol 能够模仿 Pro 控制器(它 fork 自 mart1nro/joycontrol,但原库当初移除了 NFC 性能,无奈模仿 Amiibo)。该库只能在 Linux 上运行,MacOS 通过我的测试无奈辨认蓝牙模块。开发者测试过 Ubuntu 19.10, and with Raspberry Pi 3B+ and 4B Raspbian GNU/Linux 10 (buster)。
应用该库须要先装置 Python3 和 Git,而后依据不同的发行版装置依赖。
Ubuntu 须要装置 dbus-python 和 libhidapi-hidraw0
$ sudo apt install python3-dbus libhidapi-hidraw0
Arch 须要装置 hidapi 和 bluez-utils-compat
$ yay -S hidapi bluez-utils-compat
而后克隆该库并装置 Python 依赖。
$ git clone https://github.com/Poohl/joycontrol.git
$ sudo pip3 install .
胜利后就能够运行脚本
$ sudo python3 run_controller_cli.py PRO_CONTROLLER
这条命令会模仿 Pro 控制器并期待 Switch 游戏机的连贯,这时候能够在 Switch 游戏机上的手柄设置里抉择“更改握法 / 程序”选项让模拟程序和 Switch 游戏机配对。
配对胜利后按下 Enter 键进入命令行模式。在命令行模式中输出 help 能够查问反对哪些命令。
注:如果你的程序曾经连贯过 Switch,能够应用 -r 参数从新连贯
$ sudo python3 run_controller_cli.py -r <Switch Bluetooth Mac address> PRO_CONTROLLER
蓝牙地址能够通过 bluetoothctl devices
命令查问到
虚构 Amiibo
虚构 Amiibo 须要它的 bin 文件,我在 Github 上找到一个库 miffycs/Animal-Crossing-Amiibo 里有大量动物森友会的 Amiibo 文件。咱们首先把该库克隆下来:
$ git clone https://github.com/miffycs/Animal-Crossing-Amiibo
而后就能够在 joycontrol 的命令行里输出 nfc <amiino file path>
加载 Amiibo 了。应用之后能够在 joycontrol 命令行里输出 nfc remove
移除该 Amiibo。