Making Newtonian Spaceflight Accessable

Started by
22 comments, last by Stroppy Katamari 12 years, 1 month ago
There's an idea that's been floating around my head, one that I really hope to be able to do one day (but it's far beyond my present experience and abilities). I short it's a Newtonian space trading game with large scale ships. If you imagine Star Trek Online's space combat and ship scale cross-bred with Freelancer's open gameplay you won't be too far off.

I'm from a rather physics heavy background and as such I'm a big fan of Newtonian spaceflight. The problem, of course, is that most people don't have such a background. The learning curve for such a system of flight can be rather steep, making games that utilize it not very accessible to the layperson.

The solution I came up with is to have the AI do the driving (with the player optionally taking direct control). That's fine if you're flying from place to place, but it doesn't work so well in combat. A thought just popped into my head to address that shortfall.

Often in Star Trek the captain will order a particular evasive or attack pattern. ("Attack Pattern Delta Two" or such). Similarly a row of buttons could be added to the UI (next to the buttons to fire weapons and use abilities) that would trigger preset maneuvers. When these are activated the AI would take control of ship navigation and move it according to the pattern.

Some Examples:
Attack Pattern Omega - Keep the ship pointed at the enemy and keep close.
Attack Pattern Alpha - Keep distance from the enemy and fly evasively.
Evasive Pattern Alpha - Run directly away from the enemy.
Evasive Pattern Beta - A zig-zag run from enemy.

The player would have the option for direct control, of course. But the attack patterns would let the player focus on using abilities and targeting weapons.
Advertisement

Attack Pattern Alpha - Keep distance from the enemy and fly evasively.
Evasive Pattern Alpha - Run directly away from the enemy.
Evasive Pattern Beta - A zig-zag run from enemy.


Automated moves work well until something happens to be in the way like a hunk of rock - You would need a safety override built in.

That said, a hunk of rock between you and the other guy can also be a nice thing to have in space combat.
I think that's a good start. Various patterns come to mind, such as hiding behind the nearest asteroid, using gravitational slingshot to escape, flying backwards while firing, etc. More patterns become available if you have fighters available. I recall the book series "The Lost Fleet" by Jack Campbell had a lot about coordinating 3D fleet formations at near light speed.

Another possibility is you ask the "crew" to plot a course to a particular point, and the optimum course is shown on-screen like a racing line which you can follow, or ignore at your peril.
Are you planning for true Newtonian physics - that is, if I keep thrusting forward, will my velocity keep increasing? If so, then I can imagine these defined manoeuvres having less and less affect the faster the ship is going (as force applied by the thrusters relative to the velocity of the ship could become insignificant).

I've always disliked a "cap" on velocity in space games (see all space games made ever..) but as I've dabbled in making them, I find it's a necessary evil, along with velocity dampening, which makes small manoeuvres a little easier to handle.

Anyway, back to the matter at hand! The main problem I see with these defined manoeuvres is that they could quickly become obsolete if players find they are much more successful just using manual control - something you put a lot of time and love into may hardly be used.

Something that may be useful I think would be a series of "Tools" to make the flight a bit easier to handle. For example, a "lock on" tool that accelerates your ship to the velocity of the target ship and sets the target ship as the new frame of reference, essentially making it appear to stop while you control your ship around it.

Or, if you do create these manoeuvres, allowing inputs to still affect the ship - so if you start an "Orbit" manoeuvre, you can still dodge and weave but overall, you are still orbiting.
Please check out my attempt at making a game at www.Dubious-Games.co.uk!
Current project: Missile Base
I can see how planning a good interplanetary flight plan would be challenging, but space combat usually follows one of two simple patterns in which realism is not a problem:

  • Fly straight through as fast as possible and run away, either bombing as you pass or just defending (with well-timed deployment of anti-missile defenses, ECM, energy shields etc), and maybe turn back for another pass. The only thing you need, and AI can assist with that, is passing through appropriate waypoints with the desired bearing: AI assistance can easily tell if the kinks in your planned strafing run are too tight for your engines at the planned speed, and then execute it exactly without relying on slow and imprecise human pilots.
  • Slow down to a negligible speed to fight it out, spending horrible amounts of fuel for vectored thrust without actually going anywhere. This includes both slow "naval" battles, dogfights between agile craft, and the middle ground like the traditional Star Trek tactic of charges and ramming between medium size ships.
    AI assistance can easily translate 6DOF pilot inputs to igniting the appropriate engines to go there; Newtonian realism isn't compromised, but it remains behind the scenes as a constraint on how well the ship can be piloted in arbitrary ways.

Other jobs for the AI autopilot:

  • Dock with that space station or ship
  • Grab that object with our robotic arm
  • Land at that spaceport

Omae Wa Mou Shindeiru

Do you want pure Newtonian spaceflight because you think it'll be more fun, or just because it's more realistic? Starting with realistic and trying to make it more fun is not the way to go. Start with fun and add realism where it makes the game better.
Anthony Umfer

[quote name='ShawnCowles' timestamp='1331218334' post='4920427']
Attack Pattern Alpha - Keep distance from the enemy and fly evasively.
Evasive Pattern Alpha - Run directly away from the enemy.
Evasive Pattern Beta - A zig-zag run from enemy.


Automated moves work well until something happens to be in the way like a hunk of rock - You would need a safety override built in.

That said, a hunk of rock between you and the other guy can also be a nice thing to have in space combat.
[/quote]

The enemy AI would have to account for collision avoidance, shouldn't be difficult to add that functionality to the autonavigation AI. I was planning on using the same logic for both of them.


Are you planning for true Newtonian physics - that is, if I keep thrusting forward, will my velocity keep increasing? If so, then I can imagine these defined manoeuvres having less and less affect the faster the ship is going (as force applied by the thrusters relative to the velocity of the ship could become insignificant).

I've always disliked a "cap" on velocity in space games (see all space games made ever..) but as I've dabbled in making them, I find it's a necessary evil, along with velocity dampening, which makes small manoeuvres a little easier to handle.

Anyway, back to the matter at hand! The main problem I see with these defined manoeuvres is that they could quickly become obsolete if players find they are much more successful just using manual control - something you put a lot of time and love into may hardly be used.

Something that may be useful I think would be a series of "Tools" to make the flight a bit easier to handle. For example, a "lock on" tool that accelerates your ship to the velocity of the target ship and sets the target ship as the new frame of reference, essentially making it appear to stop while you control your ship around it.

Or, if you do create these manoeuvres, allowing inputs to still affect the ship - so if you start an "Orbit" manoeuvre, you can still dodge and weave but overall, you are still orbiting.


I'm thinking more of a recommended cap on ship velocity based on ship acceleration. With the game giving some warning that if you go too fast it will be more difficult to manuver.
And I was thinking of incorporating many different flight tools, docking, stopping, following, etc in addition to the combat flight patterns.


I can see how planning a good interplanetary flight plan would be challenging, but space combat usually follows one of two simple patterns in which realism is not a problem:

  • Fly straight through as fast as possible and run away, either bombing as you pass or just defending (with well-timed deployment of anti-missile defenses, ECM, energy shields etc), and maybe turn back for another pass. The only thing you need, and AI can assist with that, is passing through appropriate waypoints with the desired bearing: AI assistance can easily tell if the kinks in your planned strafing run are too tight for your engines at the planned speed, and then execute it exactly without relying on slow and imprecise human pilots.
  • Slow down to a negligible speed to fight it out, spending horrible amounts of fuel for vectored thrust without actually going anywhere. This includes both slow "naval" battles, dogfights between agile craft, and the middle ground like the traditional Star Trek tactic of charges and ramming between medium size ships.
    AI assistance can easily translate 6DOF pilot inputs to igniting the appropriate engines to go there; Newtonian realism isn't compromised, but it remains behind the scenes as a constraint on how well the ship can be piloted in arbitrary ways.

Other jobs for the AI autopilot:

  • Dock with that space station or ship
  • Grab that object with our robotic arm
  • Land at that spaceport



I've played quite a few battles with Newtonian spaceflight (ignoring fuel). I've seen the first case a few times, but more often than not ships tend to spiral around each other. Each tries to get forward facing weapons to bear and thrusts keep within range. Combined with the initial velocity the ships had this tendency to form something of a double helix going off into space. The tangential velocity also has the benefit of making for a more difficult target, with player's randomly firing strafing thrusters to make targeting more difficult still.


Do you want pure Newtonian spaceflight because you think it'll be more fun, or just because it's more realistic? Starting with realistic and trying to make it more fun is not the way to go. Start with fun and add realism where it makes the game better.


Newtonian spaceflight is important for preserving the atmosphere I'm aiming for. A more plausible setting that's not shiny and clean like star trek nor fantastic like star wars. I think there's an unserved niche for a more realistic space game. I want the game to be fun, of course, hence the AI flight control to lower the barrier to entry.

Thanks for all the great feedback.
the problem with realistic space dog fight is that there is no real need to dog fight at all. With airplanes you try to get behind the bandit so you can shoot at him (you shoot where your nose points at) and, possibly, so he can't shoot at you.
In a realistic physics space dog fight you can just turn away from where you're going and shoot, same for your enemy, so there isn't a "behind" and "front" anymore.. there is no terrain, no altitude advantage, nothing .. it's just a matter of turning where your enemy is and shoot, most of the time he'll be doing the same thing.. and you both die.

I did implement a prototype of this stuff.. it was boring as hell...

Stefano Casillo
TWITTER: [twitter]KunosStefano[/twitter]
AssettoCorsa - netKar PRO - Kunos Simulazioni

I think that if combat-ready spaceships were widely available, some of the first technology upgrades would be making things fit the human brain.

For example, in space, nobody can hear the enemy ships exploding because there's no air. It would be supremely useful to a combat pilot if the EM/light signatures from any nearby explosions or weapons fire were converted into binaural sound. The pilot gets instant awareness of what's going on all around him, much more intuitively than a heads-up display. (I always assume that's why we hear the X-Wing blasters in Star Wars movies.)

As for Newtonian physics, an AI-based thruster system could easily interpret "no throttle" as "slow down at a pre-determined rate". I would think this would be the space combat equivalent of cruise control.

the problem with realistic space dog fight is that there is no real need to dog fight at all. With airplanes you try to get behind the bandit so you can shoot at him (you shoot where your nose points at) and, possibly, so he can't shoot at you.
In a realistic physics space dog fight you can just turn away from where you're going and shoot, same for your enemy, so there isn't a "behind" and "front" anymore.. there is no terrain, no altitude advantage, nothing .. it's just a matter of turning where your enemy is and shoot, most of the time he'll be doing the same thing.. and you both die.

I did implement a prototype of this stuff.. it was boring as hell...



It seems like you're basing your argument on two rather major assumptions. A) that both ships have identically ranged weapons, and B) that the ships are 100% accurate.

There's no need for a traditional dogfight, but there is still much to be gained from maneuver. Ships with dissimilar weapons would want to stay in range of their own weapons while staying out of the range of their opponent's weapons. Moving targets are also more difficult to hit, so a ship would want to keep moving relative to their opponent. Changing direction, flying evasively, etc Even a laser will miss if it's aimed in the wrong direction.

A battle with multiple ships can benefit additionally. Ships would attempt to maneuver to isolate enemy ships from the rest of the enemy fleet and concentrate fire on the lone target while avoiding the concentrated fire of the enemy fleet.

As I mentioned in my previous post I've played games with these types of physics before, and they benefit greatly from some uncertainty in weapon hits.

This topic is closed to new replies.

Advertisement