Post news Report RSS Flight System in UNION (Dev Diary 1)

In this first development diary entry we discuss the flight system in UNION Cooperative Spaceship Simulator.

Posted by on

Hi and welcome to this first development diary entry for UNION Cooperative Spaceship Simulator.

I have been developing UNION in my spare time since June 2011, it's finally getting to the stage where I feel I have something to share.

In UNION I'm dedicated to making a really cool fun game (obviously), and to do that I'm focused on creating a really deep experience that's easy to get into.

When I say "deep" I mean that everything is in UNION is simulated, but simulation doesn't have to mean complexity. Instead it's about cause and effect. If you change something then the game should react in an expected way.

So that brings us to the topic of this first diary, UNION's flight system.

UNION's Flight System

The Somewhat Technical Stuff

UNION is built as a multiplayer game, so even if you play on your own (in the "singleplayer" campaign later on) you'll be playing on a local server (which your friends will be able to join for a coop experience if you allow it). A core part of this is the multiplayer physics simulation.

UNION's multiplayer physics simulation allows us to use "newtonian physics" for our flight system. It also has a lot of built in functions (such as client side prediction) to allow you to have the same experience on the internet as you would on a LAN.

In many spaceship games, and indeed in earlier versions of UNION, forces are applied directly to the center of the ship in order to move and maneuver it. That means if you up the throttle the ship is pushed forward along it's forward axis, and if you maneuver the ship torque (rotational force) is directly applied to make that happen. This does work, but it's boring because every ship handles in almost the same way (just with more or force or torque).

How UNION Does It

In UNION forces are applied exactly where you expect them to be. So when your Helm officer ups the throttle on your ship forces are applied to the engines (at the point where you see the engine exhaust exiting from). When you want to maneuver the ship thrusters are fired in groups around the ship to match Helm's input. What this gives you is unique handling for each ship, they are not all created equally. Thruster placement, amount, and strength, play a massive part in the maneuverablility, and flight characteristics, of each ship.

Here are some examples:

Full Foward
Full Forward
Both engines for on full throttle in this picture, with the forces emanating from the same location as the blue engine exhausts.

Full Reverse
Full Reverse
The Kite class ship has rotating engines (not every ship have these, others have seperate reversing engines). When you reverse the throttle the engines themselves rotate 180 degrees. The forces are still emanating from the same location as the blue engine exhausts and so the ship starts to reverse.

Turn/Yaw
Turning/Yaw
In this picture yaw thrusters are firing, rotating it to the left (towards the bottom of the picture). There is no direct torque being applied to the ship, instead the forces being applied at opposite points on the ship cause the rotation.

Rotate/Pitch
Rotating/Pitch
In this picture pitch thrusters are firing, pushing the nose down and the rear up, rotating the ship.

Strafing
Strafing

To strafe (move the ship up/down/left/right) all thrusters on one side of the ship fire. In this picture all of the top thrusters are firing, pushing the ship downwards. Because there are more thrusters on the top/bottom than the sides ships strafe much faster up/down than they do left/right.

Fast Turns
Fast Turns

The Kite class frigate has fairly poor maneuverability, due to it's large mass and relatively weak thrusters. It does however have a trick up it's sleeve due to the reversible engines. By rotating just one engine the Kite can turn VERY fast.

Helm Input

The Helm officer can use the keyboard (WSAD), mouse (by clicking and dragging in th direction to move), controller (such as the XBOX 360's) or, my favourite, a joystick (including a throttle, if you have one).

Thank you for reading UNION's first development diary, I'll be posting one per week (where possible) from now on.

I'm passionate and very excited about UNION and I hope you'll stick with me through it's development. I would very much like to hear people's comments and get some input into my decisions and plans.

All the best,

Mark
@WiredMark on Twitter


Post comment Comments
hypercanestudios
hypercanestudios

Looking forward to reading more. Using realistic physics in space is not a very common thing in games. I think the last game I remember playing which did so was XF5700 Mantis for the PC, it was hard!

Reply Good karma Bad karma+1 vote
Faerdan Author
Faerdan

Thanks hypercane.

Honestly I'm not going for total realism, instead I'm focusing on fun. Fun to me involves the use of physics and simulated thrusters/engines, but the flight system itself must be easy to pick up and difficult to master. This allows pilots to advance their own skills in game, which gives a great sense of achievement. It also makes sense, which is a key factor in UNION's design. Things should just make sense.

I'm still tweaking the flight system, and probably will be for the next few months, so it's not finalised yet. I'll do a detailed writeup on that process when it's complete. :)


Reply Good karma+1 vote
samuelmetcalfe
samuelmetcalfe

@hypercanestudios: How did you manage to miss Independence War?! Starshatter is also newtonian-esk thought no where near as well done.

Reply Good karma Bad karma+1 vote
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: