Limit Theory Development Summary: November 2017 - January 2018
Another year of LT development has come to a close and 2018 is upon us. It is with enormous joy and relief that I say "2017 was excellent!" Especially the latter half.
2017 opened with me returning alone from PAX South 2017, having shown a demo of 'BoxShipWars 3000,' feeling tentatively good about a candidate solution to the great performance crisis & ensuing meltdown of 2015. It closed with a team of three of us returning from PAX South 2018, having shown a demo of what actually looks a good deal like Limit Theory combat, running on tech that we have now proven can handle the demands of LT. Between the two endpoints, development has come to life and the feeling of an infinite, procedural universe of possibility looms on the horizon stronger than ever before :)
Limit Theory @ PAX South Recap
We spent the weekend of January 12-14th at PAX South in San Antonio showing off an LT combat demo. Although we had planned it as a bit more of a serious experience, by the end of the weekend, we had refined our demo into what seemed to work best for the five-minute-sampler PAX experience: pure chaos! A faction vs. faction all-out war, one-hundred units on each side, each respawning in small squads as they fell. The player ship had infinite health, infinite energy, and the ability to summon ever-more allies from nowhere ad-infinitum. The demo even included a ship editor that allowed players to tweak and explore the parameters used by Lindsey's procedural algorithms (note: not representative of the full-featured LT ship/station editor workflow.)
Here's a quick video capture we did afterward to showcase a bit of the demo. Note that there's no audio!
The player response to LT at PAX was really encouraging. We had numerous players express their amazement at the sheer amount of 'stuff' going on -- especially impressed were those who tried to crash the game by spawning 10k+ AI escorts, only to find a very gradual FPS degradation after they hit 2,000 ships. We compliments on the beautiful visual style, the smooth and responsive feeling of it all, the joy of being able to issue orders to a fleet, and the quality of the procedural assets. The ship generator was a bit hit, and folks were especially impressed upon learning that the ships were procedural down to the very vertex rather than lego-style recombinations of prefab assets.
If I were to boot up the old LTC++ and try to push it to do what our current setup did at PAX, it would have been a spectacular display of tears and molten lava -- the former pouring from me, the latter pouring from my laptop. We are easily capable of pushing 10x the amount of activity LTC++ was capable of, and at an extremely high framerate. All the while, we're not only putting more entities in the world, but the amount of dynamism is starkly superior to LTC++. Our demo was running full collision on all entities -- NPC ships collided with one another and with every asteroid in the scene; ramming small asteroids sends them flying off into the abyss; slowly pushing a large asteroid is even feasible with a large enough fleet. The AI drove thousands of turrets across hundreds of ships, each computing viable firing solutions. Tens of thousands of projectiles collided with everything in the scene. All those little details added up quickly into an experience that felt genuine, deep, and rich with opportunity.
All-in-all, what we had going on is exactly what LT promised to provide, and what I've thrashed my neurons for so many years to make possible: a universe alive with activity. Imagine this same scale of activity expanded beyond combat -- thousands of ships trading, exploring, mining, patrolling, constructing, researching, so on and so forth -- and you are left with the vision of a vibrant, living universe that captured the enthusiasm of so many (including myself) at the outset of LT: a single player experience in which you are far from alone!
Personally, I walked away from the experience with a wonderful (and rare) sense of comfort -- comfort that the unspeakable hours put into solving FPLT ever since the fall of LTC++ have truly been worth the pain that they all-too-frequently caused.
The State of the Limit Theory, January 2018
At this point, we've essentially got all of our core support and modding systems working. Where there was once a wild-west of Lua trickery, there is now a solid set of production-ready, battle-tested systems. It's rather scary how quickly we're able to implement vast swaths of functionality now!
In the past two months, we've ported and improved AI architecture from LTC++, as well as re-implemented a vast list of features: escort/formation flying, dogfighting, AI squad management, ownership and asset tracking, flying mechanics such as energy capacitors and boosters, and more. We've also ported things from the old LTC++ code such as muzzle flashes, dust clouds, engine trails, explosions, planets, and atmospheres, along with a slew of other small features - some of which we didn't showcase during the demo, like a basic manufacturing component with blueprints.
There's lots more, but for full details, I'll refer you to the devlog subforum. I'd like to call attention to how much of this functionality is, at long last, gameplay-centric or at least gameplay-adjacent! This, my friends, is the shape of things to come :)
Procedural Assets on the Rise
On the ship generation front, Lindsey's progress is really starting to show: we've got a solid library of component shapes, deformations, and geometric operations like bevels, tessellations, and greebling. Even basic usage of this library is capable of creating quite complex and interesting outputs, as those who explored the ship generator in the PAX demo quickly found out!
Lindsey's posted many-a-devlog and many-a-gallery on the topic, so for comprehensive treatment of the subject I'll refer you specifically to her recent devlogs:
- Friday, November 10, 2017
- Friday, December 1, 2017
- Friday, December 15, 2017
- Friday, January 5, 2018
And a few shots from her galleries:
Onward and Upward!
With all that PAX excitement behind us, we'll be spending the next week or two doing a mini postmortem and taking some time while we have it to deal with any blockers discovered during the demo sprint that affected our development efficiency. Lindsey, on her end, is looking to move on to capital ship algorithms.
I'm really looking forward to the next few weeks / months, as I think it's going to continue to be a lot of fun writing new gameplay, listening closely to see what the code is telling us about our architecture, and iterating until we're doing bigger and bigger things with less and less effort. PAX was truly a reinvigorating experience.
2018 is going to be a big year for Limit Theory. We can feel it in the air :) Thank you all for making it possible.
<3 The LT Team