Jump to content

Vector Movement Plotter


redner

Recommended Posts

I think this is a good time to release my Vector Movement Plotter Java program. It's still a small program which can be easily extended, forked, and/or rewritten (code-wise or language-wise). Also, it's a good time to show my limited knowledge of 2D Newtonian physics.

 

Anyway, I've always been looking for a good Newtonian-base board/tabletop/miniature game system. The closest one is Attack Vector: Tactical by Ad Astra Games. Unfortunately, my mind can't handle 3D. So for 2D, I like Magestic Twelve Games' Starmada. It's a good system, but their "Newtonian" rule system feels like a redefinition. IE, it's not Newton's math I'm dealing with, but it's Magestic Twelve's "math". AV:T can be played in 2D. I was inclined to computer-ize it, but I'd also be dealing with their own version of Newton.

 

So, I blew off the dust from my college Physics textbook and proceeded to write my Vector Movement Plotter Java program. The program basically generates a location point(expressed in meters), a directional facing, and speed for every seconds for a ship to follow. In the /VecMov02/dist directory, there's the VecMov02.jar file. You should be able to double-click on it to make it run.

 

When you start the program, you'll see eight (8) veriables: Facing, Location, RSpeed, RDirection, Acceleration, Rotation, Seconds, and Scale.

 

Facing: This is where the nose of a ship is pointing to. And it's expressed in degrees (0 to 359).

 

Location: X and Y coordination of a ship.

 

RSpeed: This is the resultant speed which a ship is travelling. This value should never be negative since RDirection takes care of that.

 

RDirection: This is the resultant direction which a ship is travelling. It's expressed in degrees (0 to 359).

 

Acceleration: This is based on the Facing variable. It is assumed that "thrust" is generated from the ship's aft. BTW, I could have used real thrust, but that would involved the mass of a ship. Anyway, the end product of thrust is acceleration.

 

Rotation: This is where I didn't apply Newton physics. I didn't want to deal with spin inertia. So I use the Asteroid math; the ship just spins to the number of degrees set per second.

 

Seconds: This is where players define how many location points they want generated per turn/segment/round.

 

Scale: This variable re-calculates a ship's location for your convenience when you're dealing with miniatures or cardboard cut-outs on the table.

 

Finally, let me say somethings about the variables, Acceleration and Rotation. These variable can be looked at as cost to a thrust and/or maneuver rating currency. With a fixed amount of "money", you can allocate them to Acceleration and/or Rotation in a 1-to-1 basis. But, you don't have to do that. You can make it a rule that one (1) thrust point gets you 4 degrees of Rotations every turn/segment/round. Just have fun with it.

 

-

 

PS

I used JDK 7 with NetBeans 7.0.1 in Linux Mint.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...