6DOF Demonstrator


So, being an old bloke, many years ago I used to play a game called Descent. Descent's main feature was that the player's ship had full 6 Degrees Of Freedom movement - forwards/backwards, up/down, strafe left/right, pitch, yaw, and roll (this was a first, at the time).

This is my attempt at replicating that, WITHOUT needing to turn on zero G mode.

As it's just a demonstration of a concept, I haven't made much of an effort to make it look pretty. Neither is it weaponised. If anyone fancies doing that, feel free, as long as you credit me :) What I will say is that centre of mass is critical: too low, and it will naturally try to self-right. Too high, and it will flip itself upside down. If it's even slightly off in any other direction it will tilt and require constant correction to fly. It's very sensitive to COM - even if the COM looks central and Better COM mod is saying that the COM position is 0.0 in all directions, it may still be e.g. 0.01 off and will tilt.

The concept was originally going to be a rotor on a gimbal (to keep it upright, simulating antigrav), but that suffered from the same problems that helicopters are suffering in Besiege at the moment, so it ended up being a balloon sandwiched between two grabbers. It might even work without the gimbals now, given that it's a balloon.

It requires ACM (Advanced Control Mod)...it would be difficult to fly with keyboard anyway (Descent was difficult to play without a joystick).

  • Left stick up/down: Forwards/Backwards
  • Left stick left/right: Strafe
  • Right Stick up/down: Pitch
  • Right Stick left/right: Yaw
  • Shoulder Buttons: Roll
  • Triggers: Ascend/Descend

Known issues:
  • When the simulation starts, it will initially have downwards momentum. I suspect this is because the balloon takes a second or so to come to full bouyancy
  • The balloon sometimes pops when you start the simulation. Restart once or twice and it should be fine
  • Forwards translation results in some unwanted roll due to Besiege's (Unity's?) physics bug. Thankfully, it's usually not enough to affect your flying experience too much.

Edit: it does work without the gimbal, BUT at the expense of manoeuvrability. It's much more responsive with the gimbal (presumably because we're manoeuvreing less mass.
Last edited:


Active Member
Heh, I love this game.
The 6 degrees of movement along with closed corridor and confusing/unhelpful map makes this game a real challenge for my spatial skill.

When the simulation starts, it will initially have downwards momentum. I suspect this is because the balloon takes a second or so to come to full bouyancy
I suggest you use pin block, it will stop any unwanted initial movement
If you need high accuracy about positioning and values you're using and in addition to eradicate imprecisions, this guide might by helpful !!
Suddenly, everything becomes clear.

This is awesome.

We just need someone to code a tool to make these corrections easier *looks slyly at the Visual Studio icon on his desktop*

I have trouble using your machine. I have a joystick, not a controller, with a different amount of axes, so obviously I have to do some remapping, but from your axis names I don't know which axis does what.

I suggest naming your axes according to what they control, not what they are bound to. Please read this: https://github.com/lench4991/AdvancedControlsMod/wiki/Sharing
Ah. I didn't really think of that scenario. Point taken.
This is complicated to code a tool because if the regular expressions are not accurate enough they will spot numbers that actually are not imprecisions and they might 'correct' them while they shouldn't, and if they are too much accurate they will miss some numbers that need correction.

And that compromise changes depending on how you build your machine in besiege (how many figures after the dot you are using, do you type or use sliders, do you use bizarre angles...)

So we need to verify.

But I'm very interested in such tool. If you do it I could help!