Orbital IF

What’s the design gotcha that you’re running into? Again, I want to be clear that I’m not trying to talk you into anything or anything like that. I’m just wondering what the design problem was.

2 Likes

I needed to organize objects into visual range brackets, so that they would be described correctly when looking out the window or through the telescope. This meant that I still needed to have sorta precise positions at time T and be able to approximate distance.

I could interpolate stuff with a table, but I would still need to crunch theta and radius between two objects, somehow. So I still needed my custom data type.

3 Likes

Right. But at long ranges (on the order of the differences between planetary orbits) differences need to be very large to be meaningful. And for close-in stuff, keep in mind that you don’t have to solve everything in the same coordinate system.

Use the sun/solar system barycenter as the center of the coordinate system when the player is nowhere in particular, and everything can be fairly low precision even if you’re trying to simulate diffraction limited observations (which is probably orders of magnitude greater detail than is either physically realistic or convenient to stuff into a UI). If it was me I’d figure out what the acceptable deltas are, block off “regions” such that the parallax is roughly that delta, precompute observations as if everything is static on the celestial sphere, and then all you’ve got to do is solve your Euler angles/quaternions to translate that into observations from the perspective of the player given the orientation of their ship.

Once you get close to a body you’re going to orbit, solve observations and maneuvers with respect to the nearby body in terms of a local coordinate system that’s going to be mostly symmetric (and you can precompute all of your useful orbits for the body here as well) instead of trying to wrangle everything in terms of your “global”/sun-centered coordinates.

4 Likes

I really hate to be that person, but this was the approach I was using, lol.

Intercepts were considered valid if two objects got within a couple kilometers, and then I just dropped the object into local space around the ship and faked the approach. All planets had their own coordinate system, orbits were divided into discrete region segments, etc.

The problem, though, is the solar system is full of extremes, so I could only do so much faking and delta-clipping and reducing and frame referencing. But I was using all the tricks you listed.

I might try again after I recover from SpringThing; I probably wasn’t tweaking something hard enough, or implemented something slightly wrong. The problem with orbital games is that there are a lot of extremes, and they all tend to matter in pretty significant ways.

Idk, I have a lot of ideas.

3 Likes

Cool. If/when you get back to actively working on the idea, feel free to give me a shout. I’d be more than happy to put together working T3 code if that’ud help.

3 Likes

You guys are way out of my league in both math and programming, so my question/suggestion here might well be like Marie Antoinette asking why the people can’t eat cake if they have no bread.
As a last resort, could you do a modified terp with an intrinsic function set that does the calculations in C++ or something and returns the numbers to your TADS code?
Understood that custom terps are limiting, but just wondering if game performance could actually happen then…
Sorry if my observations are naive and obtuse!

2 Likes

My primary goal audience is the blind player base for IF, so use of custom terps or new engines has the question of “how well does it support screen readers?”

Otherwise I’d love to make the game from scratch in JavaScript or something.

3 Likes

Does QTads not support screen reading then?

2 Likes

It does (I assume it does, as a popular terp!), but this game might be better in something more specialized, is what I mean. I just can’t guarantee that the more specialized thing would support screen readers, and that’s a major problem for me.

3 Likes

The telescope is fixed or trainable/elevable ? as you easily figure, being a Naval historian, i know beck and call the fire control problem, whose indeed includes the calculation of the target bearing relative to own (star)ship…

Best regards from Italy,
dott. Piergiorgio

3 Likes

The telescope itself worked more like the radar system in a jet fighter. It spent 10 minutes scanning the surrounding sky, dumping its findings into a computer, and then would spend 30 minutes training itself on specific points of interest to gather data on velocities and possible thruster signatures (which meant acceleration and higher training priority), and the telescope would repeat this cycle automatically.

When the player “looked through the telescope”, you were actually opening up saved data from the most recent scan.

2 Likes

I immensely enjoyed the graphic novel The Forever War. It was drawn by Marvano and stays very close to the original novel of the same title by Joe Haldeman. (Which I have not yet read.)
The novel in turn is based on Haldeman’s own experiences as a soldier in the Vietnam war.

There is a war raging against distant (like, really distant) aliens. The story follows two soldiers who gradually accrue so much time difference with Earth that each time they come back for some well-deserved shore leave after combat, society has changed in unexpected ways.

The Forever War (comics) - Wikipedia

3 Likes

I own a copy of “Digital Apollo” and it’s a fascinating read. One thing I learned after reading the book was that the AGC used core rope memory.

The permanent memory, which stored the flight programs, consisted of a complex series of wires running in and out of magnetic cores that determined if a particular bit in a memory location was a one or a zero.

Thousands of these cores, meticulously threaded with thin, hair-like wires, were packed together into “ropes” that held Apollo’s programs. While cumbersome, this approach had one great advantage: the program was indestructible, literally hard-wired into the ropes. Astronauts became grateful for this feature when lightning struck Apollo 12 just after launch and the computer perfectly rebooted itself.

Apollo space craft had no disk drives, no FLASH memory, not even any magnetic or paper tapes. The software for Apollo was an actual thing. You could hold it in your hand and it weighed a few pounds.

Amazing. I didn’t even know such a thing existed before I read the book.

If you’re interested in this sort of history I can also recommend “Lunar Outfitters: Making the Apollo Spacesuit

3 Likes

on AGC, I think that this site is excellent:

https://www.ibiblio.org/apollo/

Best regards from Italy,
dott. Piergiorgio.

2 Likes