#1

BF Setup von Controls.con für Joystick

in BF 2 04.03.2009 22:21
von B.D.Team • -=SG1=- that only protects God Brain | 1.018 Beiträge

User Beitrag
Bei meiner ersten Flugstunde mit dem Joystick sind mir ein zwei Probleme aufgefallen:

1.)
Mit der Maus/Tastatur kann man, wie ganz normal auf den Boden, mit Q und der linken Maustaste gegnerische Einheiten markieren.
Sie tauchen dann als Symbol auf der Minimap auf, was ganz praktisch ist wenn der gegnerische Jäger mal aus dem Blickfeld verschwindet.

Mit dem Joystick geht das nicht.
Man kann zwar die CommoRose problemlos auf einen Joystick Button legen, aber selbst wenn man den Trigger des Joysticks als Feuertaste definiert kann man keinen Gegner spotten.

2.)
Man kann keinen Rundumblick mit dem Joystick machen.
Zwar könnte man theoretisch mit der Maus in der Linke fliegen und eine Maustaste drücken um sich umzuschauen, aber praktisch ist das nicht gerade.
Es wäre doch besser wenn man statt dessen den Joystick bzw den Colie Hat benutzen könnte.
Aber das lässt sich leider nicht einstellen.

Ich hab mich also im Netz schlau gemacht (unter anderem im offiziellen EA Forum), und ein Tip war dort per Editor die Datei Controls.con zu editieren, z.B. die Blickrichtung auf die 10er Tastatur zu legen und dann per Joysticksoftware diese Tasten aufzurufen wenn man den Colie Hat bewegt.

Es geht aber auch besser !

Zuerst startete man BF und erstellt ein neues Profil, z.B. Versuchskaninchen. Nachdem man BF verlassen hat, geht man in das Verzeichnis "Eigene Dateien", wo sich ein Ordner Namens Battlefield 2 befindet. Das neuste Profil ist das mit der höchsten Nummer.
C:\Dokumente und Einstellungen\...\Eigene Dateien\Battlefield 2\Profiles\0005
Wenn man sich nicht sicher ist ob man das richtige Profil hat in Profil.con steht der Profilname:

LocalProfile.setName "Versuchskaninchen"
LocalProfile.setNick "Versuchskaninchen"
LocalProfile.setGamespyNick ""
LocalProfile.setTotalPlayedTime 0
LocalProfile.setNumTimesLoggedIn 0

Interessant wirds bei der Datei Controls.con , die sieht so aus:
Nach einer Überschrifft kommt ne Menge Text, zwischen den einzelnen Abschnitten findet sich eine Leerzeile:

ControlMap.create InfantryPlayerInputControlMap
ControlMap.addKeysToAxisMapping c_PIYaw IDFKeyboard IDKey_D IDKey_A 0
ControlMap.addKeysToAxisMapping c_PIThrottle IDFKeyboard IDKey_W IDKey_S 0
ControlMap.addButtonToTriggerMapping c_PIFire IDFMouse IDButton_0 0 0
....

ControlMap.create LandPlayerInputControlMap
....

Am Besten macht man eine Kopie von Control.con, zusätzlich sollte man sie sich ausdrucken und die interessanten Stellen markieren.

Die interessanten Stellen sind die hier:
ControlMap.create InfantryPlayerInputControlMap
ControlMap.addButtonToTriggerMapping c_PIFire IDFMouse IDButton_0 0 0
Hier wird offensichtlich dem linken Mausknopf per Befehl "c_PIFire" die Aktion "Feure Hauptwaffe" zugewiesen.

Sucht man per "Suchen" Befehl im Editor den IDFMouseIDButton findet man diese Zuweisung in folgenden Absatz:
ControlMap.create defaultGameControlMap
....
ControlMap.addButtonToTriggerMapping c_GIOk IDFMouse IDButton_0 0 0
Hier bekommt der linke Mausknopf die Aktion "Ok" zugewiesen.

Etwas darüber, direkt unter der Überschrift finden sich zwei andere interessante Einträge:
ControlMap.create defaultGameControlMap
ControlMap.addAxisToAxisMapping c_GIMouseLookX IDFMouse IDAxis_0 0 0
ControlMap.addAxisToAxisMapping c_GIMouseLookY IDFMouse IDAxis_1 0 0
Das sind die Zuweisungen für den Mauszeiger wenn man die CommoRose auf hat oder die Squadleader/Commanderkarte nutzt.

Aber Vorsicht, der MouseLook taucht noch mal auf, und zwar unter:
ControlMap.create defaultPlayerInputControlMap
ControlMap.addAxisToAxisMapping c_PIMouseLookX IDFMouse IDAxis_0 0 0
ControlMap.addAxisToAxisMapping c_PIMouseLookY IDFMouse IDAxis_1 0 0
Hier wird den Mausbewegungen der Befehl für das freie Umschauen zugewiesen.

Durch editieren dieser Einträge kann man die beiden Problem lösen. Dazu muß man natürlich wissen, wie der Joystick genannt wird.
Los gehts:
BF neu starten, und in den Optionen den verschiedenen Aktionen den Joystick zuweisen:

Natürlich die einzelnen Joystickeinstellungen beim Flugzeugen, aber auch beim normalen Infanteristen:
Die Alternativen für Vorwärts, Rückwerts, Seitschritt links/rechts auf den Colie Hat
(so bekommt man die Werte für den Coolie Hat, und kann auch ohne Maus zum Flugzeug laufen- versucht bloß nicht damit ins Gefecht zu ziehen, das wird nichts )
Speichern nicht vergessen, dann BF verlassen und Control.con öffnen.
Da hat sich einiges geändert:

ControlMap.create InfantryPlayerInputControlMap
ControlMap.addKeysToAxisMapping c_PIYaw IDFKeyboard IDKey_D IDKey_A 0
ControlMap.addButtonsToAxisMapping c_PIYaw IDFGameController_0 IDButton_14 IDButton_16 1
ControlMap.addKeysToAxisMapping c_PIThrottle IDFKeyboard IDKey_W IDKey_S 0
ControlMap.addButtonsToAxisMapping c_PIThrottle IDFGameController_0 IDButton_13 IDButton_15 1
....

ControlMap.create AirPlayerInputControlMap
ControlMap.addKeysToAxisMapping c_PIYaw IDFKeyboard IDKey_D IDKey_A 0
ControlMap.addAxisToAxisMapping c_PIYaw IDFGameController_0 IDAxis_0 0 1
ControlMap.addAxisToAxisMapping c_PIPitch IDFMouse IDAxis_1 0 0
ControlMap.addAxisToAxisMapping c_PIPitch IDFGameController_0 IDAxis_1 1 1

...
ControlMap.addButtonToTriggerMapping c_PIFire IDFGameController_0 IDButton_0 0 1

So, jetzt geht das editieren los:
Commo Rose mit Joystick nutzen
Um mit dem Trigger des Joysticks innerhalb der CommoRose Feinde markieren zu können muß man bei
ControlMap.create defaultGameControlMap
unter:
ControlMap.addButtonToTriggerMapping c_GIOk IDFMouse IDButton_0 0 0
folgende Zeile aus:
ControlMap.create AirPlayerInputControlMap
hinzufügen:
ControlMap.addButtonToTriggerMapping c_PIFire IDFGameController_0 IDButton_0 0 1
natürlich muß man den Befehl c_PIFire gegen c_GIOk austauschen ;)
ControlMap.addButtonToTriggerMapping c_GIOk IDFGameController_0 IDButton_0 0 1

Wenn man zusätzlich in der CommoRose die Einträge wie "Sorry" mittels Joystick anwählen möchte:
unter:
ControlMap.addAxisToAxisMapping c_PIMouseLookX IDFMouse IDAxis_0 0 0
das einfügen:
ControlMap.addAxisToAxisMapping c_PIMouseLookX IDFGameController_0 IDAxis_0 0 1
und unter:
ControlMap.addAxisToAxisMapping c_PIMouseLookY IDFMouse IDAxis_1 0 0
das hier einfügen:
ControlMap.addAxisToAxisMapping c_PIMouseLookY IDFGameController_0 IDAxis_1 1 1

Coolie Hat zum Umschauen nutzen:
Um den Cooli Hat für das Umschauen zu verwenden muß man unter:
ControlMap.create defaultPlayerInputControlMap
ControlMap.addAxisToAxisMapping c_PIMouseLookX IDFMouse IDAxis_0 0 0
folgende Zeile
ControlMap.addButtonsToAxisMapping c_PIMouseLookX IDFGameController_0 IDButton_14 IDButton_16 1
und unter
ControlMap.addAxisToAxisMapping c_PIMouseLookY IDFGameController_0 IDAxis_1 1 1
folgende Zeile
ControlMap.addButtonsToAxisMapping c_PIMouseLookY IDFGameController_0 IDButton_13 IDButton_15 1
hinzufügen.

Man kann aber statt dessen auch den Joystick dafür verwenden, da Battlefield die Flugrichtung des Flugzeugs nicht ändert, solange man sich umschaut.
Dazu übernimmt man folgende Zeilen:
ControlMap.addAxisToAxisMapping c_PIMouseLookX IDFGameController_0 IDAxis_0 0 1
und
ControlMap.addAxisToAxisMapping c_PIMouseLookX IDFGameController_0 IDAxis_0 0 1

Speichern nicht vergessen, Sicherheitskopie von Control.con machen, BF starten und probieren obs geht !
Wenn alles klappt, die Einträge von Versuchkaninchens Control.con in die Control.con des richtigen Spielprofils eintragen, und online fliegen gehen.

Qalle von F7C Figh7Club Community


nach oben springen


Besucher
0 Mitglieder und 1 Gast sind Online

Wir begrüßen unser neuestes Mitglied: MarianneBFox
Forum Statistiken
Das Forum hat 70 Themen und 117 Beiträge.
Besucherrekord: 16 Benutzer (10.10.2017 11:27).



Xobor Einfach ein eigenes Forum erstellen | ©Xobor.de