Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Contour maps, turn based gaming, and space travel

  1. Apr 1, 2012 #1

    I'm working on a 2D turn based space combat game, and I'd like to nail the mathematics of how a ship would truly move in space. Without going too much into my control scheme, here's the problem I'd like to solve:

    "Given a ship at point (x_0, y_0), with initial velocity V, along with a fixed length of time, T, and a maximum amount of energy/thrust/fuel a player can spend during this turn (which lasts T seconds long), what is the function f(x, y) that describes how much fuel will remain should the player decide to go to point (x, y) this turn?"

    Now, this may seem like an ambiguous question (and, I guess, it could be), but here are some other constraints:
    -During this time interval T, only a single, constant force can be applied for the duration of T
    -There are no external forces at play

    Now, intuitively, I'd guess that the set of (x, y) points where f(x, y) = 0 would form an ellipse of some kind. This is backed up by some preliminary work I've done, but I'm pretty well lost at this point. Here's my attempt at solving the problem, thus far:

    since x_f = x_0 + v_x * t + (1/2) * a * t^2, and likewise for the y component, I can say that:
    a_x = (2/t^2) * (x_f - x_0 - v_x * t).
    From this, I can find the magnitude of a:
    ||a|| = (2/t^2) * sqrt((x - (x_0 + v_x * t))^2 + (y - (y_0 + v_y * t))^2)
    needed to bring the ship to some point (x, y) in time t. However, beyond this, I'm not sure how to model my function f(x,y) so as to draw where a player could go. Initial ideas have included creating some maximum amount of acceleration, A, that a player can use this turn, but that doesn't really make any physical sense. I've tried working in the Tsiolkovsky rocket equation (http://en.wikipedia.org/wiki/Tsiolkovsky_rocket_equation), but I don't quite know how. Any ideas?
  2. jcsd
  3. Apr 1, 2012 #2


    User Avatar
    2017 Award

    Staff: Mentor

    Rocket mass m, exhaust velocity v and acceleration a give you [tex]\frac{dm}{dt}=m \frac{|a|}{v}[/tex]

    With the approximation that the player burns only a small part of his current rocket mass during a turn, you can keep m constant. v is usually given by the type of rocket. Therefore, dm/dt is proportional to |a|. Usually, dm/dt is limited by the construction of your drive, which limits |a| for each turn.
    Without this approximation, I think you'll need some integrals, as m and therefore dm/dt is changing over time.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook