This post comes from the first version of this blog.
Please send me an email if anything needs an update. Thanks!
Jak 99.9% ludzi związanych z komputerami, ja też jeździłem kiedyś na deskorolce, poza tym oczywiście zaliczyłem wszystkie klasyczne części “Tony’ego Hawka”, czyli od THPS1 aż do THPS4. W dalsze też grałem, ale to już nie to samo. :) W każdym razie - ostatnio zalogowałem się z nudów do Steama i zauważyłem, że do kupienia jest THPS HD, czyli odświeżona graficznie wersja wyżej wymienionych starych edycji. 16 EUR (11 + 5 za DLC “Revert Pack”) nie było jakąś specjalnie wygórowaną kwotą, więc zapłaciłem, ściągnąłem i… zonk.
Pamiętam, że moi bracia cioteczni namiętnie wyciskali genialne zestawy trików korzystając z domyślnego ustawienia klawiatury numerycznej (8 - grab, 6 grind, itp.). Ja od zawsze byłem przyzwyczajony do trzymania prawą ręką strzałek (wyjątek - WSAD w FPSach), więc szybko wykombinowałem, że najwygodniejszym sposobem grania jest lewa ręka na klawiszach ZXCVG:
- Z - Revert,
- X - Grab,
- C - Crouch / Jump,
- V - Grind,
- G - Flip.
Ze względu na to, że zawód (i podtytuł blogu) zobowiązuje, zacząłem szukać rozwiązania. Długo nie musiałem czekać - Google dosyć szybko naprowadził mnie na cel. W katalogu gry, czyli w moim przypadku:
D:\Steam\steamapps\common\Tony Hawk's Pro Skater HD\THHDGame\Configznajduje się plik DefaultInput.ini, w którym są zapisane mapowania klawiatury. Nas interesuje blok zawarty poniżej:
(...)
[Engine.PlayerInput]
.Bindings=(Name="Move forward", Command="PAD_Up__Press | onrelease PAD_Up__Release")
.Bindings=(Name="Move backward", Command="PAD_Down__Press | onrelease PAD_Down__Release")
.Bindings=(Name="Move Left", Command="PAD_Left__Press | onrelease PAD_Left__Release")
.Bindings=(Name="Move Right", Command="PAD_Right__Press | onrelease PAD_Right__Release")
.Bindings=(Name="Camera up", Command="PAD_Up__Press | onrelease PAD_Up__Release")
.Bindings=(Name="Camera down", Command="PAD_Down__Press | onrelease PAD_Down__Release")
.Bindings=(Name="Camera left", Command="PAD_Left__Press | onrelease PAD_Left__Release")
.Bindings=(Name="Camera right", Command="PAD_Right__Press | onrelease PAD_Right__Release")
.Bindings=(Name="Grind", Command="PAD_RUp__Press | onrelease PAD_RUp__Release")
.Bindings=(Name="Flip", Command="PAD_RLeft__Press | onrelease PAD_RLeft__Release")
.Bindings=(Name="Grab", Command="PAD_RRight__Press | onrelease PAD_RRight__Release")
.Bindings=(Name="Jump", Command="PAD_RDown__Press | onrelease PAD_RDown__Release")
.Bindings=(Name="1", Command="PAD_L1__Press | onrelease PAD_L1__Release")
.Bindings=(Name="2", Command="PAD_R1__Press | onrelease PAD_R1__Release")
.Bindings=(Name="Switch", Command="PAD_L2__Press | onrelease PAD_L2__Release")
.Bindings=(Name="Revert", Command="PAD_R2__Press | onrelease PAD_R2__Release")
.Bindings=(Name="q", Command="PAD_Start__Press | onrelease PAD_Start__Release")
.Bindings=(Name="Fast Restart", Command="PAD_Select__Press | onrelease PAD_Select__Release")
(...)
Jak widać ustawienie każdego bloku składa się z linii, której format można odczytać, jako:
.Bindings=(Name="<KEY>", Command="<PAD> | onrelease <PADREL>")
gdzie:
<KEY>
- nazwa klawisza na klawiaturze,<PAD>
- nazwa wewnętrznego polecenia wykonywanego podczas przyciśnięcia przycisku,<PADREL>
- nazwa wewnętrznego polecenia wykonywanego podczas zwolnienia przycisku.
Wartości opcji <PAD>
i <PADREL>
nie będziemy zmieniać, ale interesuje nas zdecydowanie fragment <KEY>
. Wynikowa konfiguracja dla mojego ustawienia z klawiszami ZXCVG wygląda następująco - myślę, że domyślicie się, co trzeba zmienić, żeby dostosować całość do swoich wymagań:
(...)
[Engine.PlayerInput]
.Bindings=(Name="Up", Command="PAD_Up__Press | onrelease PAD_Up__Release")
.Bindings=(Name="Down", Command="PAD_Down__Press | onrelease PAD_Down__Release")
.Bindings=(Name="Left", Command="PAD_Left__Press | onrelease PAD_Left__Release")
.Bindings=(Name="Right", Command="PAD_Right__Press | onrelease PAD_Right__Release")
.Bindings=(Name="W", Command="PAD_Up__Press | onrelease PAD_Up__Release")
.Bindings=(Name="S", Command="PAD_Down__Press | onrelease PAD_Down__Release")
.Bindings=(Name="A", Command="PAD_Left__Press | onrelease PAD_Left__Release")
.Bindings=(Name="D", Command="PAD_Right__Press | onrelease PAD_Right__Release")
.Bindings=(Name="V", Command="PAD_RUp__Press | onrelease PAD_RUp__Release")
.Bindings=(Name="G", Command="PAD_RLeft__Press | onrelease PAD_RLeft__Release")
.Bindings=(Name="X", Command="PAD_RRight__Press | onrelease PAD_RRight__Release")
.Bindings=(Name="C", Command="PAD_RDown__Press | onrelease PAD_RDown__Release")
.Bindings=(Name="1", Command="PAD_L1__Press | onrelease PAD_L1__Release")
.Bindings=(Name="2", Command="PAD_R1__Press | onrelease PAD_R1__Release")
.Bindings=(Name="LeftShift", Command="PAD_L2__Press | onrelease PAD_L2__Release")
.Bindings=(Name="Z", Command="PAD_R2__Press | onrelease PAD_R2__Release")
.Bindings=(Name="Escape", Command="PAD_Start__Press | onrelease PAD_Start__Release")
.Bindings=(Name="BackSpace", Command="PAD_Select__Press | onrelease PAD_Select__Release")
(...)
Miłego grania! :)