GamePad Wszystko zaczęło się od Świąt Bożego Narodzenia gdzie w końcu mogłem znaleźć trochę wolnego czasu aby sobie pograć. W końcu pomyślałem, że może zagram w sobie "Beyond good and evil". Chciałem w tą grę zagrać od 2003 roku. Kupiłem więc wersje HD na Steam i zainstalowałem pewne MOD-y, aby gra wyglądała ładnie nawet w roku 2021.

Pojawił się jednak pewien problem.

Ta gra na PC nie wspiera żadnych padów na PC. A przynajmniej tak było w tamte święta.

Moim zdaniem nawet gra z 2003 roku powinna obsługiwać pada. Pamiętaj jak grałem w "Prince Of Persia Warrior Within" na padzie, a to jest gra o podobnym sterowaniu i z roku 2004.

Tak zaczął się moje zadanie w poszukiwaniu, jak najtańszego i najlepszego rozwiązania tego problemu. Swoją drogą też zapaliła mi się lampka.

Gdyby mój pad bezprzewodowy XBOX ONE był wystanie ruszać się jak myszka to mógłbym grać : "Heroes 3" czy "Civilization 6" na ekranie swojego telewizora 4K siedząc na kanapie.

Jestem mega fanem bezprzewodowych padów XBOX ONE. Jako kolekcjoner starych konsol kiedyś zaznałem tego co to znaczy utonąć w kablach.

Samo mapowanie pada na myszkę mógło by mieć także swoje zastosowanie biurowe. Jak więc to zrobić i ile mamy opcji. Zacznijmy od najgorszych.

Script AHK 

Używając tego języka skryptowego możesz sobie napisać różne mapowanie klawiszy. Chciałbyś uruchomić program wciskając F7. Nie ma problemu

;Launch Sublime Text
F7::Run "C:\Program Files\Sublime Text 2\sublime_text.exe"
return

Z tym narzędziem można zrobić wiele ciekawych rzeczy. Na przykład zrobić maszynę, która coś skopiuje i wkleić Ci coś automatycznie do Excela czy Worda.

Jeśli chodzi o mapowanie padów to takie skrypty można byłoby napisać do 2017 roku.

Joy1::Send {Left}  ; Have button #1 send a left-arrow keystroke.
Joy2::Click  ; Have button #2 send a click of left mouse button.
Joy3::Send a{Esc}{Space}{Enter}  ; Have button #3 send the letter "a" followed by Escape, Space, and Enter.
Joy4::Send Sincerely,{Enter}John Smith  ; Have button #4 send a two-line signature.

Microsoft z którąś poprawką Windows 10 usuną możliwość komunikacji pada z skryptem AHK. 

Co prawda taki skrypt można napisać korzystając z dodatkowych bibliotek, ale jak widzisz poziom skomplikowania takiego rozwiązania tak gwałtownie urósł, że lepiej dać sobie spokój.

Płatne : ReWSAD

Mapowanie pada to, jak widać problem nie tylko mój. Ktoś zobaczył w tym możliwość zarobku.

Jeśli więc nie szkoda Ci 5 EURO czy 35 EURO to w sumie otrzymasz tonę wsparcia od Community, jeśli chodzi o gry. Co prawda nie ma tam gotowego mapowania do Heroes 3, ale jest do Heroes 5.

Moim zdaniem, jeśli miałbym dużo czasu grać przy kanapie z bezprzewodowym padem to taka inwestycja miałaby sens.

ReWSAD

Poza tym dostajesz łatwy interfejs i możliwość tworzenia Makr, jeśli kupisz cały pakiet. Dostajesz też możliwość tworzenia klawiszy Auto-Fire, który osobiście pamięta tylko z Joystików do Amigi.

Stare, ale działa tak jakby : Xpadder

To najbardziej Windows XP-kowy program, jaki widziałem ostatnio. Program najlepiej pobrać od oficjalnego producenta, ponieważ dostaniesz od niego gotowe PROFILE do różnych gier.

https://xpadder.xyz/download/

Po uruchomieniu możesz zobaczyć taki komunikat :

Xpadder

Myślisz sobie "..ale zaraz ten program miał działać z Windows 10". Program rzeczywiście działa, ale najpierw trzeba dodać do niego Tryb zgodności.

Xpadder tryb zgdoności

Sam program po wczytaniu pierwszego lepszego pliku konfiguracyjnego widzę, że działa dla gry "Beyond Good and Evil" . Chociaż szkoda, że ze wszystkich profili nie ma go dla tej gry.

Sam program też udało mi się zawiesić więc jest to darmowe rozwiązanie, ale sam program jest tak obrzydliwy, że zastanawiam się, dlaczego ktoś nie napisał swojego rozwiązania.

To nie to, ale ciekawe : UCR_v0.9.0

Jak widać ktoś napisał swój program do mapowania padów w WPF. 

Można nawet zobaczyć kod źródłowy : https://github.com/Snoothy/UCR 

To co mnie zraziło do tego programu to brak Tutorialu jak zmapować pada do klawiatury czy myszki.

Program domyślnie też wszystkiego nie instaluje więc nie można tak sobie dodać mapowanie.

UCR_v0.9.0

Ze strony : https://github.com/Snoothy/UCR/wiki/Core-Providers : dowiadujemy się, że do mapowania myszki i klawiatury trzeba zainstalować sterownik z innego repozytorium GitHub

Oto instrukcja jego instalacji : https://github.com/Snoothy/UCR/wiki/Core_Interception

 https://github.com/Snoothy/UCR/wiki/Core_Interception Instalacja

Pozostało mi zresetować komputer i zobaczyć czy to działa.

Jak widać mam teraz możliwość mapowania wirtualnych myszek i klawiatur. Tylko jak widzę nie ma tutaj gotowych profili więc trzeba zrobić wszystko samemu.

Wirtualne urządzenia

Gopher360 : Najlepsze rozwiązanie do myszki i klawiatury

Te rozwiązanie nie sprawdzić się za bardzo gier, ale po tych wszystkich przygodach byłem wrażenie, jakie jest to proste.

Program, jak i kod źródłowy w C++ można zobaczyć tutaj : https://github.com/Tylemagne/Gopher360

Gopher360

Uruchamiasz ten program i DZIAŁA. Nic trzeba kombinować. Domyślny profil ma ustawione co trzeba, aby zobaczyć czy można przeglądać internet przy pomocy Pado-myszki i czy da się grać w Heroes 3.

Dodatkowo przytrzymując lewy i prawy spust w padzie możesz kontrolować prędkość kursora.

A co jeśli chcesz coś zmienić ? Tutaj zaczynają się schody. W pliku konfiguracyjnym, który wygląda tak :

#    GOPHER DEFAULT CONFIGURATION rev1.0 - Auto generated by Gopher360
#   If you want a fresh one, just DELETE THIS and re-run Gopher360
#    Set which controller buttons will activate the configuration events.
#    SET 0 FOR NO FUNCTION
#    AVAILABLE VALUES AT> https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.reference.xinput_gamepad(v=vs.85).aspx
#    TIP: Sum the hex value for double button shortcuts eg. 0x0010(START) 0x0020(BACK) so 0x0030(START+BACK) will trigger the event only when both are pressed.


CONFIG_MOUSE_LEFT = 0x1000    # Left mouse button
CONFIG_MOUSE_RIGHT = 0x4000    # Right mouse button
CONFIG_MOUSE_MIDDLE = 0x0040    # Middle mouse button
CONFIG_HIDE = 0x8000        # Hides the terminal
CONFIG_DISABLE = 0x0030        # Disables the Gopher
CONFIG_DISABLE_VIBRATION = 0x0011 # Disables Gopher Vibrations
CONFIG_SPEED_CHANGE =  0x0300    # Change speed


#    KEYBOARD SHORTCUTS ON CONTROLLER BUTTONS
#    SET 0 FOR NO FUNCTION
#    AVAILABLE VALUES AT> https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731


GAMEPAD_DPAD_UP = 0x26
GAMEPAD_DPAD_DOWN = 0x28
GAMEPAD_DPAD_LEFT = 0x25
GAMEPAD_DPAD_RIGHT = 0x27
GAMEPAD_START = 0x5B
GAMEPAD_BACK = 0xA8
GAMEPAD_LEFT_THUMB = 0
GAMEPAD_RIGHT_THUMB = 0x71
GAMEPAD_LEFT_SHOULDER = 0xA6
GAMEPAD_RIGHT_SHOULDER = 0xA7
GAMEPAD_A = 0
GAMEPAD_B = 0x0D
GAMEPAD_X = 0
GAMEPAD_Y = 0
GAMEPAD_TRIGGER_LEFT = 0x20
GAMEPAD_TRIGGER_RIGHT = 0x08

Możesz przypisać inne klawisze. Jakie klawisze są jaką wartością ? Do tego musisz przejrzeć MSDN:  https://msdn.microsoft.com/en-us/library/windows/desktop/dd37573

O ile do pomocy biurowych i gier jak Heroes 3 czy Civilization 6 ten program da radę. To jednak przy innych grach czuje, że ten program nie może zdać egzaminu.

Oto wszystkie opcję jakie masz do dyspozycji, gdybyś chciał zmapować swojego pada na klawiaturę albo na myszkę.