VOGONS

Common searches


First post, by rfnagel

User metadata
Rank Oldbie
Rank
Oldbie

Chuck Yeager's Air Combat Joystick AutoHotkey Script

Readme:

CYAC_JOY.AHK ------------ This AutoHotkey script adds several joystick routines and features for use with Electronic Arts' "Chuc […]
Show full quote

CYAC_JOY.AHK
------------
This AutoHotkey script adds several joystick routines and features for use with
Electronic Arts' "Chuck Yeager's Air Combat" when running the game under
DOSBox.

The script adds joystick Z-Axis throttle support (including jet aircraft
afterburner), POV/Coolie hat view commands (which snap to forward view when
released), as well as several other handy keyboard commands that are controlled
by various joystick buttons.

The script is designed primarily for use with a Thrustmaster T.16000M joystick,
but will function for any other joystick that operates the same way (Joystick 1
X-Axis and Y-Axis, Joystick 2 R-Axis (rudder) and Z-Axis (throttle), CH
Products Flightstick Pro styled POV/Coolie hat (non-Thrustmaster Flight Control
System), and 16 buttons).

Note that in order to use this script you must configure the game for a
standard joystick, NOT a Thrustmaster Flight Control System joystick. While
running the game and flying an aircraft, press "ESCAPE", select "System", and
then select "Joystick" (NOT "Flight Control System").

There are several DOSBox configuration settings which must be set when using
this script with the game (contained in the "DOSBox.conf" DOSBox configuration
file):

---cut here---
[dosbox]
# Use "machine=vgaonly" to prevent game lockups when using "cycles=max" and a Sound Blaster with the game.
# Note that the utility "SBCFG.COM" is needed when using a Sound Blaster with the game (Re: Chuck Yeager's Air Combat - Soundblaster problems).
# Alternatively, use "machine=svga_s3" with "YEAGER.EXE BLASTER COVOX1" to start the game ("SBCFG.COM" not needed).
# Note that "disney=true" must also be used when using the game's "COVOX1" startup parameter.
# machine=svga_s3
machine=vgaonly

[cpu]
# Use "machine=vgaonly" to prevent game lockups when using "cycles=max" and a Sound Blaster with the game.
# Note that the utility "SBCFG.COM" is needed when using a Sound Blaster with the game (Re: Chuck Yeager's Air Combat - Soundblaster problems).
# Alternatively, use "machine=svga_s3" with "YEAGER.EXE BLASTER COVOX1" to start the game ("SBCFG.COM" not needed).
# Note that "disney=true" must also be used when using the game's "COVOX1" startup parameter.
# cycles=6000
cycles=max

[speaker]
# Use "machine=vgaonly" to prevent game lockups when using "cycles=max" and a Sound Blaster with the game.
# Note that the utility "SBCFG.COM" is needed when using a Sound Blaster with the game (Re: Chuck Yeager's Air Combat - Soundblaster problems).
# Alternatively, use "machine=svga_s3" with "YEAGER.EXE BLASTER COVOX1" to start the game ("SBCFG.COM" not needed).
# Note that "disney=true" must also be used when using the game's "COVOX1" startup parameter.
# disney=true
disney=false

[joystick]
# Use "joysticktype=2axis" when using the "CYAC_JOY.AHK" AutoHotkey script with the game, and to prevent joystick detection issues in the game.
# Note that the game must be configured for a standard joystick, NOT a Thrustmaster Flight Control System joystick.
# While running the game and flying an aircraft, press "ESCAPE", select "System", and then select "Joystick" (NOT "Flight Control System").
joysticktype=2axis
# Use "timed=false" when using "cycles=max" to prevent joystick calibration issues in the game.
# timed=true
timed=false
autofire=false
swap34=true
buttonwrap=false

[autoexec]
CLS
@ECHO Press any key to play Chuck Yeager's Air Combat...
# A "PAUSE" is needed before the game actually starts to prevent joystick calibration issues in the game.
PAUSE > NUL
# Use "machine=vgaonly" to prevent game lockups when using "cycles=max" and a Sound Blaster with the game.
# Note that the utility "SBCFG.COM" is needed when using a Sound Blaster with the game (Re: Chuck Yeager's Air Combat - Soundblaster problems).
# Alternatively, use "machine=svga_s3" with "YEAGER.EXE BLASTER COVOX1" to start the game ("SBCFG.COM" not needed).
# Note that "disney=true" must also be used when using the game's "COVOX1" startup parameter.
# YEAGER.EXE BLASTER COVOX1
YEAGER.EXE
EXIT
---cut here---

The Z-Axis throttle support sends "Throttle" game keyboard commands to the game
based on the position of the joystick's Z-Axis throttle:

Z-Axis Position > 80% (throttle slider down) = Key Sent: 1 (0% Throttle)
Z-Axis Position > 60% = Key Sent: 2 (25% Throttle)
Z-Axis Position > 40% = Key Sent: 3 (50% Throttle)
Z-Axis Position > 20% = Key Sent: 4 (75% Throttle)
Z-Axis Position > 5% = Key Sent: 5 (100% Throttle)
Z-Axis Position < 5% (throttle slider up) = Key Sent: 6 (Afterburner)

The POV/Coolie hat support sends "View" game keyboard commands to the game
based on the position of the joystick's POV/Coolie hat:

POV Centered = Key Sent: F1 (Forward View)
POV Down = Key Sent: F2 (Back View)
POV Left = Key Sent: F3 (Left View)
POV Right = Key Sent: F4 (Right View)
POV Up = Key Sent: F5 (Up View)

The joystick buttons support sends several standard game keyboard commands to
the game depending on which joystick buttons are pressed:

Joystick Button 3 = Key Sent: ] (Select Weapon)
Joystick Button 4 = Key Sent: f (Toggle Flaps)

Note that these buttons are normally assigned in the game for a Thrustmaster
Flight Control System, but need to be reassigned for a standard joystick.

The joystick buttons support also sends several additional game keyboard
commands to the game depending on which of the remaining joystick buttons are
pressed:

Joystick Button 5 = Key Sent: 8 (+5% Throttle)
Joystick Button 10 = Key Sent: 7 (-5% Throttle)
Joystick Button 6 = Key Sent: f (Toggle Flaps)
Joystick Button 9 = Key Sent: g (Toggle Gear)
Joystick Button 7 = Key Sent: F9 (Map View)
Joystick Button 8 = Key Sent: b (Toggle Air/Wheel Brakes)

Joystick Button 13 = Key Sent: CONTROL+I (Toggle Invincibility)
Joystick Button 12 = Key Sent: CONTROL+U (Toggle Unlimited Ammo)
Joystick Button 11 = Key Sent: CONTROL+E (Toggle Easy Aiming)
Joystick Button 14 = Key Sent: CONTROL+L (Toggle Easy Landings)
Joystick Button 15 = Key Sent: CONTROL+B (Toggle Blackouts/Redouts)
Joystick Button 16 = Key Sent: CONTROL+T (Toggle Target Information)

Note that the layout assignment and organization of these joystick buttons are
primarily for use with a Thrustmaster T.16000M joystick, but can be edited for
any other joystick that has 16 buttons. Additional joystick button assignments
can also be added or removed from this AutoHotkey script depending on the type
of joystick that is used.

Lastly, note that the assignments for joystick buttons 1 and 2 for the default
standard "Joystick" and the Thrustmaster "Flight Control System" joystick in
the game are the same (hence they are not assigned in this AutoHotkey script):

Joystick Button 1 = Key Sent: SPACEBAR (Fire Weapon)
Joystick Button 2 = Key Sent: ' (Select target closest to center of the screen)

ENJOY and HAVE FUN!

Rich ¥Weeds¥ Nagel
November 1, 2024

Here is a printable template for use with a Thrustmaster T.16000M joystick with Chuck Yeager's Air Combat running under DOSBox with the AutoHotkey script:

CYAC_JOY.PNG
Filename
CYAC_JOY.PNG
File size
518.31 KiB
Views
86 views
File license
GPL-2.0-or-later

...and here is the ZIP (includes a compiled version of the AutoHotkey script, the script source, icon, readme, and T.16000M template):

Attachments

Rich ¥Weeds¥ Nagel
http://www.richnagel.net