Jump to content

Steel Battalion with ArmA II


Rarek

Recommended Posts

As a few of you may know, I have a Steel Battalion controller from a long while ago that I recently dug up out of the attic. If you're unsure what that is, Steel Battalion was an original Xbox game released in 2002 that came with a huge, 40-button panel of controls complete with two joysticks, a gear slider, three foot pedals and a big ol' eject button. Long story short, it's a beast that, until recently, was only available for use in Steel Battalion and Steel Battalion alone. Here's a picture so you can see just how impressive it is!

 

post-1-0-45252200-1361384486_thumb.jpg

 

Someone smart made some drivers for Windows that (after a few hours of fiddling with and editing to make them work with Windows 8) I'm now using. I've got all the axes working (right joystick acts as the normal joystick in any plane/helicopter, the gear slider works as thrust, pedals work as the rudder (middle pedal is currently unassigned) and an analog stick on the left joystick lets me look around the cockpit) but I'm struggling for what to assign all the buttons to.

 

Now there's an SDK written by some Russian fellas (and placed on a Russian site) back in 2005 that can utilise all the functions of the controller. After adapting that a small bit, I can now write a single file in C# that will control the entire controller. Button presses on the controller will convert to virtual keyboard commands, allowing me to skip out the issue of Windows limiting gamepads to only 32 buttons. The main point, however, is that now I can control the panel using C#, I can get it to do anything.

 

I wrote 'anything' in bold as I really do mean that. Buttons can flash when I want them to, switches can do particular things (even stuff like holding down shift keys). I could make it so that I couldn't use the gear slider until the 'Fuel Flow Rate' switch is switched on and I'm holding down the Ignition key. With this is mind, I need ideas. How should I start up my ArmA II helicopter and what shall we make all the buttons do?

 

Below is a diagram of the controller so you can see all of the buttons available. Underneath that is a (very) quick list I've made of the functions I reckon should be in there. I also need a place to put my flaps up and down and that kind of thing. I'm looking forward to what you guys come up with and if I can get it finished soon we can all have a go at the Ahoy World meet-up! :)

 

Also, once some of the basic functionality is down I'll post up a demo video that'll show you how everything works.

 

post-1-0-79709900-1361385207_thumb.gif

Thrust                =    Gear slider up
Brake                =    Gear slider down
Banking                =    Right joystick
Rudder left                =    Left pedal
Rudder right            =    Right pedal
Look around            =    Sight analog stick
Fire weapon            =    Right joystick trigger
Switch weapon            =    MAIN button
Manual Fire            =    OVERRIDE button
Flares                =    CHAFF button
Reload                =    MAGAZINE CHANGE button
Eject                    =    EJECT button
Open Map                =    OPEN/CLOSE button
Toggle zoom level on map    =    MAP ZOOM IN/OUT button
Night Vision            =    NIGHT SCOPE button
Change Fire Mode        =    MANIPULATOR button
Release Vehicle            =    TANK DETACH button
TeamSpeak PTT            =    Right joystick MAIN WEAPON button
Zoom in / Lock on        =    Right joystick LOCK ON button
Toggle HUD            =    LINE COLOUR CHANGE button
Toggle Gear            =    BUFFER MATERIAL switch
Toggle GPS            =    VT LOCATION MEASUREMENT switch
Link to comment
Share on other sites

Well getting out without ejecting should be "COCKPIT HATCH"

 

As for start up you should have to turn on "IGNITION" "FUEL FLOW RATE" then hold "START" upon hearing the engine start you should then have to turn "IGNITION" off again and "OXYGEN SUPPLY" and "FILT CONTROL SYSTEM" on. It's not realistic but I bet it'd feel pretty bad ass to do it!

Link to comment
Share on other sites

Well getting out without ejecting should be "COCKPIT HATCH"

 

As for start up you should have to turn on "IGNITION" "FUEL FLOW RATE" then hold "START" upon hearing the engine start you should then have to turn "IGNITION" off again and "OXYGEN SUPPLY" and "FILT CONTROL SYSTEM" on. It's not realistic but I bet it'd feel pretty bad ass to do it!

 

I was using Cockpit Hatch for switching between third and first person. Is that a cheeky thing to do when playing a simulator? :P

 

I've been fiddling around tonight. Before I read your post my start-up sequence is working as follows:

  1. Turn on the Fuel Flow Rate Switch. This causes the gear stick lights to light up in order (R, N, 1, 2, 3, 4, 5) and once they're all lit together it flashes twice and then lights up the N.
  2. Turn on the Oxygen Supply System Switch. This currently doesn't do anything fancy but I'm sure we can make something flash.
  3. Turn on the Filter Control System Switch. Now that all three switches are enabled, the entire panel flashes three times before leaving nothing but the Ignition Button lit up (and the N on the gear stick from earlier).
  4. Pressing the Ignition Button now starts the engine and then turns the ignition light off.

That's it so far. Small steps. :P I haven't done C# in a while but it's really, really, really exciting to code something that has such an immediate effect. I'm holding in my squees; can't wait to make a demo video of this!

Link to comment
Share on other sites

I've got a lot of stuff working and programmed; just a few more little touches to get done. Namely, sounds.

 

Fergus / Razgriz might be able to help with this. I need some sounds made for starting up / shutting down the controller (for when you hit the ignition key and the like). A robot lady saying these things would be perfect, but obviously that's pretty hard to achieve.

Link to comment
Share on other sites

I've got a lot of stuff working and programmed; just a few more little touches to get done. Namely, sounds.

 

Fergus / Razgriz might be able to help with this. I need some sounds made for starting up / shutting down the controller (for when you hit the ignition key and the like). A robot lady saying these things would be perfect, but obviously that's pretty hard to achieve.

I can try and do this when I'm back at my PC on Monday.

Link to comment
Share on other sites

Caaan do. if i get some time tomorrow i will but i also have monday off!! :) woo

 

How about a gear status/flaps status lights? not sure how you would get that info out of the game. otherwise i imagine you would have to synchronise your controller to the desired state before you get in

 

How about an autohover button?

 

looking at button placement and i'd say i can't see any improvements but the test will come over time i guess.

 

 

This has got me fired up and i want to get my HOTAS sorted now!! :)

Link to comment
Share on other sites

In regards to all the buttons, here's all the mappings I've got so far:

  • Gear Lever - Throttle control
  • Left joystick left / right - Rudder
  • POV Hat on left joystick - Free looking around cockpit
  • Filter Control System Switch - AutoHover On / Off
  • Oxygen Supply Switch - Required to be on to start up engine
  • Fuel Flow Rate Switch - Required to be on to start up engine
  • Buffer Material Switch - Gear Up / Down
  • VT-Location Measurement Switch - GPS On / Off
  • Main Weapon Control Button - Change main weapon
  • Sub Weapon Control Button - Change gunner's weapon
  • Magazine Change Button - Reload
  • Chaff Button - Countermeasures
  • Night Scope Button - Enable / Disable Nightvision (light on controller stays on when enabled)
  • Line Colour Change Button - Vehicles lights on / off (light on controller stays on when enabled)
  • Override Button - Enable / Disable Manual Fire (light on controller stays on when enabled)
  • Manipulator Button - Changes fire mode
  • Tank Detach Button - Releases vehicle (if any attached)
  • Comm Button 1 - 5 - Communication channels 1 - 5 (explained below)
  • Right Joystick - Aircraft control
  • Right Joystick Main Weapon Button - Push-to-Talk Button
  • Right Joystick Trigger - Fires main weapon
  • Map Open / Close Button - Opens / closes map
  • Map Zoom In / Out Button - Zoom in to / out of optics
  • Mode Select Button - Select option in / open action menu
  • Sub Monitor Mode Select Button - Scroll down in action menu
  • Zoom In Button - Flaps Up
  • Zoom Out Button - Flaps Down
  • Cockpit Hatch Button - Get out of vehicle
  • Eject Button - Eject from vehicle
  • Ignition Button - Must be held to start engine (explained below)
  • Start Button - Start Engine / Reset Controller button
  • Slide Step Pedal - Left Rudder
  • Acceleration Pedal - Right Rudder

To first explain how the communication channels work, the tuner dial below the communication buttons is an axis that has a value from zero to fifteen, zero being when it's at the nine o'clock position. So, when the dial is at zero, the communication buttons act as in-game chat channels. If I press the first communication button it will stay lit up. This is the Direct Communication comms channel. If I then press and hold the Push-to-Talk button (the right joystick Main Weapon button), I will transmit my voice to the Direct Communciation channel within ARMA. If another comms button is pressed, the last one will disable itself and the new one will light up. The communication channels go as follows:

  1. Direct Communication
  2. Vehicle Channel
  3. Group Channel
  4. Side Channel
  5. Command Channel

Moving the tuner dial to the twelve o'clock position and selected comms channel one allows me to speak in TeamSpeak chat using the Push-to-Talk button. If at any point the Push-to-Talk button is pressed while no comms channel has been selected, the buttons will flash and (one I've sorted out sounds) a robot lady will say something along the lines of "no communication channel selected."

 

The start-up sequence is something that's a bit up in the air, but seeing as I seem to be flying a helicopter with two joysticks I don't think it matters too much. It currently goes like this:

  1. Flip the Fuel Flow Rate Switch and the Oxygen Supply Switch. The entire panel will flash once and then the Ignition Button will keep flashing on its own.
  2. Hold down the Ignition Button and the Start Button will light up.
  3. Whilst still holding the Ignition Button, press the Start Button and the console will (in the future) do some cool flashy shit.
  4. Engage the throttle and away you go!

The main annoyance is that ArmA II doesn't have any key binding possibility in regards to turning your engine on or off. If they did, I could make it so that if specific switches were disengaged the engine would automatically kill itself and little things like that.

 

Ooh also worth mentioning that because there's no way to have ArmA and the controller communicate, I'm using the Start Button as a reset. If you hit it at any point (apart from when you're holding the Ignition Button) it will flash the console and reset all the buttons.

 

So, any suggestions? :D

Link to comment
Share on other sites

Regarding sounds, if any of these may be of interest to you ill zip em':

 

I can get you a fuel pump starting, i can get you spark plugs (for ignition, if looping is possible),

Thought id leave actual engine start sound to arma.

 

Also from the world famous "betty" pilot announcements i have:

Eject

Gear Down

Gear Up

Power

Flight Controls

Fuel

 

p.s. loads of button clicking sounds available too

Link to comment
Share on other sites

Looping should be possible. I've never fiddled with sounds in C# before but one assumes it's quite dynamic. :P

 

In addition to the Betty announcements you have, there's a small sound-board-type post with a lot of Betty sounds in it here.

 

Do zip those up, though! Sounds bloomin' fantastic to me! :D

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Forum Statistics

    11.1k
    Total Topics
    66.4k
    Total Posts
×
×
  • Create New...