Sunday, November 2, 2014Warp rails.
New name-changing gimmick, or new game-changing nimmick? No, that one didn't quite make as much sense as one would like. But the answer is: the latter. Finally, I had all the inspiration I need on the 'highway' infrastructure. I've got it. Warp nodes
connected by warp rails
Warp Rails: Because Tunnels Belong in the Past!™
Seriously folks. Tunnels are so retro. Rails are the new tunnel.
Here's how it works. Warp nodes are like big transformers that connect the power lines -- the warp rails
-- together. A warp node essentially creates a large 'warp potential difference' between itself and its neighbor (or two neighbors, in the case of a non-endpoint node). That potential difference induces a 'rail' -- a thin, extremely-energetic 'power line' that connects two nodes, almost like a constantly-arcing bolt of electricity.
To move using the warp infrastructure, ship's don't enter a boring tunnel -- no, they latch on
to a rail, riding the energy current to the other end. It's like a massive, futuristic zipline in space. Ships can tether and untether at any point along the rail, which means you can, as you would expect, 'break out' of the rail to reach a destination that's partway between two nodes. Of course, you'll break out at an extremely high velocity, so you'd better know what you're doing. Warp nodes can be temporarily disabled by damage, which causes automatic untethering when the broken rail is reached.
Now, the idea doesn't stop there. There's also a very interesting, very neat notion of what happens with 'traffic' as a result of the way warp rails work. You might ask how are collisions prevented?
The answer is that, like an expandable-lane highway, the warp nodes expand and contract the equilibrium radius of tethering to accommodate the traffic. When lots of ships are using the same rail at once, they'll be tethered at a larger radius than normal, so as to accommodate all ships without risking collision. While you're riding on the rail, you've essentially been allocated an angular 'slice' of that rail -- the rail will ensure that no other ships come into your angular slice, which prevents collisions. Big ships require larger angular slices, which means the rail must push the tether radius further out to accommodate capital ships.
But! It gets better. Keep in mind that the rail is providing energy to all tethered ships. When multiple ships are tethered, less energy is provided to each ship. Another natural explanation for this is that: the energy field created by warp rails falls off with the radius from the rail. So when the rail pushes the tether distance further out to accommodate more / larger traffic, you're essentially getting less energy because you're further from the rail. The math is negotiable, but simplicity is always preferred: energy falls off as 1 / radius. Circumference increases proportional to radius. The implication is that energy provided is directly reciprocal to the total size of ships using the rail. 1 small fighter going 3km/s, another fighter of the same size jumps in, they're now both going 1.5km/s. Make sense? Again, the exact math is negotiable.
Busier systems need larger rails for obvious reasons: traffic is going to get too heavy for the rails to be useful to anyone if busy systems have rails of equal power to desolate systems. It also provides a natural explanation for why it's really difficult
to knock out a major 'backbone' rail. They're massive, because they support tremendous amounts of traffic. You're not going to be able to disable a backbone of a busy system with one fighter. Piracy becomes about choosing locations wisely. Knock out smaller rails to isolated mineral fields.
There are three components to the graphics: the warp node graphics, the rail graphics, and the tethering / using-the-rail effects. The first two are already well-underway in our favorite little 3D testbed, and I'm already substantially pleased with the warp node graphics. Rails still have a way to go, but all in time.
Very, very excited to finally have this system designed and nailed down in a way that feels elegant, logical, and rich with gameplay opportunity.
PS ~ Here's the kicker: it came to me in a dream! Well, half-dream, that is. I've been working hard to explore lucid dreaming lately. Although I'm not there yet, I'm at least at a point where I'm able to go partially
into a dream state while hanging on to consciousness. This is great, because it turns out my subconscious is a whole lot more creative than my waking mind. I asked it about warp tunnels today, and in five minutes it had shown me a whole new way of looking at everything -- the nodes, the rails, the tethering, the traffic mechanic. It laughed at my paltry little struggle with warp tunnels. Thanks, brain!
Guess I should half-sleep more often.
PPS ~ Oh! Forgot to mention. The graphics for nodes and rails are both...heavy on the particle effects
So today I had to expose particles and particle systems to LTSL. I wrote all of the particle effects for nodes and rails in their respective LTSL scripts...which, of course, meant many, many F5s and huge amounts of fun with particles