Es haben sich in letzter Zeit in den News Artikel gehäuft die von der PC-Nutzung der Joycons der Nintendo Switch am PC sprachen und dabei gleich erwähnten dass dies nur in der Querhaltung geht (also bspw wenn man einen seiner Joycons an jemand anderen gibt um Multiplayer möglich zu machen).
Ich sehe das anders.
Zugegeben "out of the box" sind sie nicht ganz falsch, es braucht einige Tricks, um beide Joycons zusammen zu nutzen (oder eine Anwendung die von vornherein mit mehreren Controllern für eine Person umgehen kann (bspw der GBA-Emulator VirtualBoyAdvance).
einer der bekanntesten Wege dafür ist JoyToKey, eine Software, die auch ich bereits ewig nutze, nur hat dies 2 nachteile:
- JoytoKey macht Tastatur/Maus Emulation, wenn man aber gerne einen Controller hätte wird das nicht gehen.
- Laut der JoyToKey Website ist JoyToKey eine Shareware und muss für Dauerhafte Benutzung gekauft werden, gut Einschränkungen gibt es bisher keine und JoyToKey ist mit 7 Dollar recht günstig, aber naja, wir wissen ja, wie Menschen so oft sind.
Der bessere Weg kommt, und das ist das beste daran, direkt aus dem Open-Source Bereich, das heißt man kann (wenn man die Zeit und Kenntnisse hat) sich direkt anschauen wie die Software funktioniert und ggf. wenn es einem nicht gefällt, diese anpassen.
Was es zu Beachten gibt:
- Dieser Trick benötigt Administratorrechte.
- Im System ist Dauerhaft der vJoy Virtuelle Controller verzeichnet, lässt sich aber via Geräte-Manager wenn er nicht gebraucht wird deaktivieren (benötigt Adminrechte)
- Der Joycon teilt dem System die Amalogsticks als Pfeiltasten mit, daher sind die Sticks nicht analog möglich, bis es neue Treiber gibt, sollte ich solche finden, werde ich hier selbstverständlich updaten (Es hat sich etwas getan, wenn auch nicht viel. Mehr dazu am Ende des Artikels).
- Dies ist eine reine DirectInput Lösung. für xInput wird ein zusätzliches Tool benötigt, zum beispiel x360ce, das aber auch open-Source ist.
Was man braucht
- vJoy
- Universal Control Remapper (UCR)
- Meine configfile oder etwas zeit
Was muss man tun?
- Die Joycons Verbinden, erst links, dann rechts (sonst sind die IDs der Controller durcheinander und es gibt später Chaos. Sollten andere Controller noch verbunden sein, diese vorher trennen.
- Vom Link oben das vJoy Setup herunterladen und installieren. Da ein Virtueller Controllertreiber installiert wird wird das System entsprechend nachfragen.
- In "Manage vJoy", das im Startmenü zu finden ist, vJoy Device 1 anlegen , oder wenn dieses bereits existiert, wie folgt anpassen:
- 18 tasten
- 1 POV mit setting auf "continuous"
- 4 Achsen: X, Y, Rx, Ry
- UCR an einem Ort seiner Wahl entpacken
- Wenn man meine Configfile nutzen möchte, diese in den selben ordner befördern, wo die UCR.exe ist.
- UCR Starten
- Sollte meine Config verwendet werden startet es automatisch minimiert in die sysTray (Symbole neben der Uhr), mit einem Icon von AutoHotKey (grüner hintergrund und weißes "H") mit klick lässt sich UCR öffnen.
- Während der Gesamten Einstellungsphase kann man mithilfe der Controllereinstellungen von Windows oder aber auch mit dem "vJoy Monitor" aus dem Startmenü die Einstellungen testen.
- Jetzt gehts ans Eingemachte: jetzt muss jedes Element dass man den ganzen Spaß Einstellen.
- Sofern nicht passiert zuerst das Default Profil rechts auswählen, so können wir später unabhängig weitere Profile erstellen für alle Möglichen Zwecke, aber erstmal widmen wir uns einem Controllerprofil
- Bei den Normalen Buttons geht man wie folgt vor:
- Zuerst wird für Jeden Button den wir remappen wollen ein "Remapper - ButtonToButton" Eintrag (in UCR "Plugin" genannt) erstellt.
- dann drücken wir die Schaltfäche bei "Input Button" und im aufklappenden Menü auf "Select Binding" und dann kommt bei dem Folgendem popup, wird die taste des Joycon betätigt.
- Bei "Output Button" wählen wir zuerst "vJoy stick" -> "1" und dann bei "vjoy buttons" die taste die wir gerne hätten. Da ein vJoy aber bis zu 128 tasten haben kann wurde das Menü aufgeteilt, sodass man in der Oberkategorie sich erstmal die 16er Gruppe aussucht die es werden soll. sodass es bspw bei button 1 "vJoy Buttons 1-16" -> "1" wird.
- für das D-pad läuft es fast genauso, nur dass man bei Output button nicht die vJoy Buttons wählen, sondern bei "vJoy Hat 1" die richtung wählen.
- Für die Sticks geht es etwas anders
- man braucht, aufgrund der aktuellen situation des standardtreibers des Joycon, einen "Remapper - Button to Axis" eintrag pro achse.
- dort wählt man bei "Input Buttons" -> "Low" bzw "High" genauso wie bei den buttons und dem D-Pad "Select Binding" und drücken den stick in die richtige richtung (Low = Links bzw Oben, High = Rechts bzw. Unten).
- Als Letztes wählt man bei Output wieder den vJoy Stick aus und dann die Achse, die man gern hätte.
Zur Referenz mal meine Konfiguration:
- Buttons:
- 1-4: A, B, X, Y
- 5-8: L1, R1, L2, R2
- 9-14: -, +, LS, RS, Home, Screenshot
- 15-18: SL (Links), SR (Rechts), SR (Links), SL (Rechts)
- D-Pad erklärt sich von Selbst
- Achsen: X und Y für den Linken stick, Rx und Ry für den Rechten.
Damit das Ganze etwas übersichtlicher ist, hier eine Grafik die Alle buttons zeigt.
Treibersituation
Die aktuelle Situation mit dem Standardteiber ist, sanft ausgedrückt, nicht schön, jedoch gibt es News,
Auf Devpost hat jemand einen Post veröffentlich mit Ziel als das diesjährige Bitcamp, welches vor wenigen Tagen beendet wurde im Bezug auf einen Neuen Treiber für die Joycons, vielleicht sehen wir bald mehr.
Update 20.06.2017
link zur config aktualisiert.
Der Link zu deinem Settings-File funktioniert bei mir nicht... und ich weiß nicht, wie ich ohne weiter komme. Der Link führt mich nur zu Error 404 Page not Found
ach ja ich idiot hab vergessen nachdem ich meine cloud domain umgestellt habe, den link zu ändern. sorry. müsste jetzt passen
hier trotzdem nochmal der neue link.
https://nc.my1.info/index.php/s/KE4jPniQSXOZ6WI
man kann aber wie in schritt 6 erwähnt den spaß auch manuell machen, nervt aber, zugegebener maßen.