Milestone 3 Update
Added 2024-12-31 00:50:10 +0000 UTCIt’s the most wonderful time of the year. No, not Earth holidays. No, not the announcement of the next Frungy league starting rosters. It’s time for an update on Free Stars: Children of Infinity! If you haven’t already, be sure to read our last update. Now, let’s cover our progress since then.
Playthrough and Through
For our game’s “Adventure” mode, we characterize the different aliens and their interwoven stories as quests which the player can complete, like chapters of a book players will read in whatever order they discover in our open world. Like The Ur-Quan Masters, aliens and the interactions the player can have with them create a web of relationships and ways players can choose to make progress. One alien may contain a key to progress through two separate quests, and those quests may unlock a new alien, and so on.
During this milestone, we ramped up our work to implement two more fully playable quests. These two quests include a minimum of four different aliens, but depending on the player’s chosen path, the quests could also include up to eight aliens in total. All of that is now implemented and playable! It is a massive accomplishment for us to be able to prove out not just that players can make progress through our story, but that they can make progress differently, including branching and converging paths. In true UQM spirit, it’s up to players to decide who their friends or foes are, and we can support many avenues for success.

The Process is incomplete, yet here they are.
For our quests this milestone, speaking in broad strokes without spoilers, we also proved some of the unique needs for these parts of the storyline. We built an alternate Melee experience where the player has to engage in a boss battle, with special moments in the battle leading up to a unique conclusion besides the usual victory screen in Melee. We support spheres of influence moving, changing, and going away as part of aliens’ stories. We have quest placements with unique flows similar to the aforementioned boss battle, where players can find themselves suddenly in conversations with other characters or transported to different locations.
All of this is happening as a result of our work during the milestone to actually review our entire game’s plot flow-chart, detailing every step of the way for every alien and the varied outcomes. We built a workflow that let us put in stub conversation logic which has no interesting words to read but lets us test the progression of alien stories. Those stubs are very fast to create and do a good job of proving all of our assumptions, as I work with our narrative lead to ensure every connection on the script’s side is also made on the game’s side.
Beyond just saying these elements are in, we are also creating certain unique pieces for the first time. If we prove we can do something once, we know we can do it again and what’s involved. It has a snowball effect, too. The more of these building blocks we have and can stamp down when they’re reused, the more of a representative play experience we can create. The more playable our game is, the more we know if the dang thing is actually fun or not! Finally, although we spend so much time planning and predicting the desired flow chart, seeing what works and what doesn’t helps us make changes as needed.
Traders of the Lost Quark
Trading Posts and the entire trading system came online this milestone as a proof of concept, along with tracking of inventory and things players will trade and trade for. At a high level, the purpose of the trading system is to provide players with an alternate or supplemental source of income, upgrades, and, in some special cases, key/quest items alongside Planetside and Melee experiences.
The current design includes both trade and the auction house, though we only implemented the more challenging trading component for this milestone. Trading has no direct currency conversion like RUs. It runs entirely on bartering, where players can find things they want and then will need to determine the most cost or time effective way to get them.

Proof of concept trading UI representing your inventory, a trading post's inventory, and the exchange rates.
Likewise, if players are actually trying to turn a profit in RUs (which have their own purpose), they will want to find a way to amass as many goods as possible before “cashing out” through the auction house. Trading is most effective when viewed like bio data from UQM, as the supplemental currency they use to acquire unique upgrades. The lifeforms players collect from planet surfaces are themselves trade goods, too! We hear pet Whackin’ Bushes are all the rage in some parts of the galaxy. That said, we also are going to try allowing a conversion to RUs so it can potentially have as much staying power as possible, if players enjoy the experience.
We now have the ability to define trade goods and place them in trading posts. We define what trade goods players can receive in exchange for other ones, universally. We also can define trading posts which have unique exchange mappings, so players will learn that at particular locations, they can get better exchange rates. In addition to the unique exchange rates, trading posts can hold unique, limited quantity items like upgrades or key items which the player can trade for. This is currently hand-defined but could easily be procedurally generated, in case we want different playthroughs to be different in this regard.

As players discover trading posts, they can reference their own knowledge from the starmap.
You can now start playing the game, pick up a couple planetside critters, and, with enough exploration, discovery, and patience, spin those planetside critters into a veritable fortune. There will be a lot of tuning to do, but a critical element of trading is the player’s ability to access information so they can make good decisions. Note-taking was and still is fun for some players, but in our era of digital information, we want to help players take notes. Trading also was our first foray into automatically making information available on our interactive starmap beyond just stars and spheres of influence. We want players to feel clever for solving puzzles, not having good long-term memory.
Shipshape
We achieved another intended goal: finishing the design and alien assignment of all our ships for Melee. If you’d watched some of our old development streams, you might realize we have no shortage of ship prototypes. One of my go-to sayings was that we have 50 half-ship ideas. Taking all of our prototype half-ships at various stages of completion and fusing them into complete, playable ships makes us feel much better about the more time-consuming aspect of creating art assets.

Prototype of the "Gravityball" ship.
Having finished our full suite of Planetside creature artwork last milestone, we moved back on to making ship art as well. Below you’ll find a couple of our colorful, new inclusions.

Santa Claws is coming to town.
We have a few more ship-related art pieces we’re going to keep concealed for now, but we built the art for the ship boss fight we mentioned when discussing our quest implementations. It is frightening, weird, and we are excited for players old and new to see it.

The "Luxury" ship.
Last but not least might be the ship players who experienced UQM are most interested in: the Mark II! While we haven’t started crafting the art yet, we have implemented the intended design for the ship, allowing players to play the experience in-game and use the Mark II to make progress at least in a limited fashion. By the next milestone, we’ll have something more fleshed out to share, since it’s purely functional at the moment.

Mark II concept.
Interior Crocodile Alligator
Sliding into home plate is our “Interior” (aka Floyd) experiences, which we are now able to create at scale. We had built a few prototypes of what these levels would be, but had no real strategy for crafting all of them. One of the challenges with our Interior experiences was that it required a lot of layout of objects in space, particularly with complete collision shapes (walls, corridors, rooms, etc.), unlike the rest of our game. We had previously only done layout with our Starmap, placing stars and topography in Hyperspace. We decided that the same strategy would work for Interiors as well, but we needed a few enhancements to get there.
On a purely technical note, Tiled (and the reading of tmx files) is now directly integrated with Simple, our gameplay design tool. We had previously been able to use Tiled to read in our Starmap and do some Starmap-specific things, but with some technical work and design, we can now use Tiled maps to make any kind of 2D gameplay layout. Our designer can now build an Interior map in Tiled working with 2D shapes. In Simple, they design and script the behavior for those elements (doors, switches, enemies). Then they simply create a Tiled-defined layout which places all of the elements in the right positions at runtime.

Layout of a Floyd level in Tiled.
What does that mean? That means instead of making mesh in 3D by hand and having to calculate coordinates for dynamic placements, we can very rapidly plot levels and plop down objects using the already-familiar Tiled workflow. In short: we can make a lot of levels and make them really fast, especially since it’s all 2D from a design standpoint. Lastly, even though the work is happening in 2D, our physics engine is also 3D, so we have code which generates 3D mesh with walls based on nothing more than our 2D shapes made in Tiled.

Visual proof of concept of the above Floyd level running in-engine with dynamic elements.
So how do Floyd levels play? Think of a mixture of The Incredible Machine plus Sebil Engineering plus Braid. A little bit of action with some more puzzle elements than you’d usually find in UQM. We think they’re going to be pretty fun, and now we can actually make a handful for us and others to try. This coming milestone we’ll be actually making assets for these levels, and then we’ll have something to show you!
Heart to Art
On the art front, we continued to keep our schedule for our comms screens, probably the most complicated art we are making. We were able to finish four new ones, up from just three last milestone, including one which we budgeted additional time for since it’s one of the more important characters in our story, and another which uses a unique workflow because you see and interact with the character in places besides just the comms screen, which is also out of the ordinary for UQM.

"Orbo" might like to speak with you.
It was only a tiny bit of work, but we proved our tech workflow which will let us create different lander skins as well. Between this work being finished as well as all of our ship designs being complete, it means we’ll also be reaching out to backers who will be designing lander skins and ships to start working with them! This milestone, we also reached out to all our Planetside creature designers and started getting and designing submissions based on their work as well. We haven’t started the art creation, but we have no shortage of excellent concept pieces submitted by backers to work with.

We can paint the lander with all the colors of the skins.
Multi-Layer Multiplayer
We wouldn’t say it’s finished (nothing is ever finished), but we put together a complete, front-to-back experience for multiplayer joining and inviting this milestone as well. This was a large technical task, but also has a lot of design elements around it. While we already supported the notion of players dropping in to games in progress, we also want players to be able to connect and join each others’ games in what we’ll call the “lobby” as an organizing chamber.

Multiplayer lobby demonstrating 3 players connected together. Very proud of the art.
Until now, none of that was possible because our Simple networking concept had no notion of connecting players without having some gameplay around. Beyond that, our Godot viewer where we build UI had no clue what was happening with the networking and had no ability to make rules about joining or leaving games. Think of things like saying “the game is full, no one else can join” or being aware that a player is in the middle of their own game and wanting to confirm they would like to accept an invite to join another player before stopping what they’re doing.
We now have this entire flow functional. This means all of the following can happen:
You can start at the title screen, start playing the game alone, have a friend join you for multiplayer, and then quit back to the lobby while your friend stays with you.
You can start at the title screen, enter the lobby, have a friend join you, and then continue from your adventure savegame, where you will both start playing the game together.
While in the middle of a co-op adventure game, you and your friend decide you want to play some Super Melee together. You can quit out to the lobby, change the game mode to Super Melee, and then start playing a pvp match together.
Kick a network player from your game or stop new players from joining you.
If you’re working with the Steam version, you can use the Steam game overlay to send an invite to someone. Even if they’re in the middle of their own adventure game, they can accept your invitation, whereupon they will see an “are you sure?” message and can either continue playing or join your game. Likewise, you can do this going the other way and join a friend in the middle of their game (assuming they have set a setting which permits this).
All of this means we can actually design and create UI and flows for a fun network play experience. Our old paradigm was fine for testing the actual gameplay moments, but our new way lets us actually test something that’s more of a finished product in how it behaves.
Stretch Goal Stroll
Lastly, we started work on some of the technical requirements everyone is so excited for. We were likely going to be doing controller support anyway, but since we’re making console versions, we definitely are doing it now. I shared a short clip of our controller proof of concept with our Patreon supporters, discussing how an abstraction for stick input would work with our thrust-driven ships, but if you don’t have time to watch, the long story short is that ships feel pretty fun to control with a controller now and are intuitive enough that a novice player can pick up a controller and start getting somewhere.
We also need to support localization and voice-overs (VO), and one of our most text-rich areas is in alien conversations. We use Ink for our conversation writing, but there is no out-of-the-box support for either localization or VO. We built a tool which lets us add markup to Ink files that we can use to allow humans to still write in Ink but also let localization teams and voice actors ensure the right text is shown in another language and the right VO plays for any given line.
Risk Take and Bake
Time for an honest look at the work we did! If we review our plan for this milestone, we actually can see that we succeeded in almost all of what we set out to do. There are some areas where we are a little behind. In some cases this was an intentional change of priority, like opting to create more playable story sections, while in other cases some things took longer than expected or had complexity we didn’t anticipate until we got there.
Right now, the “riskiest” things we put off until later are probably further work on our adventure co-op mode and our planetside texture generation. We have a “pretty good” co-op experience, but we want it to be much more than that, and there simply hasn’t been time to actually prove the tweaks we want to do. The texture generation is enormously complicated, as we detailed in our last milestone update, because Planetside is enormously complicated given the diversity of art elements. If you go all the way back to our Kickstarter trailer, you can see we obviously can and did make something, but there’s a long way to go from a trailer to an entire game, given that there isn’t a straightforward workflow for tweaking, and we have to translate from artistic vision to code. These are the areas of greatest concern for us, and they are taking the front seat for our next milestone so we can have them in the bag.

Split-screen co-op play.. just as good or bad as it was before this milestone!
There are a few other elements which slipped, like finalizing gas giant gameplay and finishing our remaining ship art. We are not terribly concerned about either of these, respectively, because the gas giant gameplay prototype is fairly isolated and well-proven, and because ship art-making is a known quantity and very easy to plan around. We also skipped some more minor engineering tasks. While we are behind on those, we traded off some of that time for creating more playable story sequences and assets for our boss fight experience.
We feel these are far, far more important because we need to test just how playable our game is and focus on that. The longer we go without testing a real, representative experience of the finished game in aggregate, the less sure we are on the right track.
Testing, Testing
As we reached the point in development where a lot of our game is playable and has enough art/UI to back it that an uninformed player might be able to get by, stitching it together into something that is playable for a long while became a priority and was the cause of some of our reprioritization. Not just to prove it to ourselves, but to make a real, playable build that we could have some hope of having a meaningful test with some fresh players. I (Dan) can spend hours staring at the many trees we’re making in our proverbial forest, but it will take us watching someone else with a bit more distance to see if they even like the forest, never mind the trees.
We put a lot of energy, time, and funds into making assets for experiences we think are fun, but we never truly know for sure just how fun they are, or what things should take precedence and priority until we get to test it a bit. For all we know, players may find something on the side extremely interesting. Players might not know how to play in ways we could never have fathomed. Our game might be really fun, but players might be having trouble finding the fun parts because they don’t have tools they need to get them there. We’re not just talking about tuning, but instead whether or not players can even follow the many branching paths we’ve laid out for them and if they have fun doing so.

Is this thing fun? We don't know yet!
Can the player not even accrue enough funds to afford things that will help them survive some of the challenges our game poses? Are players discovering things that completely break everything? Are players having fun being challenged by our game in different ways? Do players always have an idea on what they think they have to do next (whether or not they’re right)? The sooner we can see answers to these questions, the sooner we can make sure we’re investing into the right parts of the game.
We need to create an actual test plan. While many of you reading might be jumping up and down and excited to playtest the game, and we’re incredibly appreciative of it, we need a process for having playtests first. We know we could get a lot of willing, ready, and able testers, but it takes a lot more to turn those tests into meaningful work and change on our side. We’re simply not ready for this, and we don’t have a person right now in the position to help do the required management of this process. We’ll be starting small with a few testers here and there, but scaling it up into a process where we have our proverbial million monkeys at typewriters is beyond what we can support right now. If we do need oodles of playtesters, we are happy we know where to find you.
What’s in Milestone 4
Beyond doing more of what we’ve already been doing, we have a handful of large goals we want to achieve for our next milestone. Here’s what we’re going to try to accomplish:
Finalize quest placements and stub conversations for all of our playable story slices. The player should be able to start and finish the entire game as it exists today in a playthrough.
Finish a co-op design that can be playtested.
Complete the planetside surface texture generation which can support our UQM suite of planets (we have some new ones!).
Implement the full set of Hyperspace mechanics and build a section of finished Hyperspace, including the strategy for how we’ll be handling its visuals.
Prove one relatively final UI with our interactive starmap.
Prove we can handle local co-op technical needs for UX (think of showing multiple menus at once in a split screen).
Start processing backer-submitted ship and lander skin designs.
Finish our Super Melee ship AI tech & design.
Finish our core set of Interior/Floyd levels and demonstrate our approach for art in at least one.
Prove our technical solutions for modding. We have a rough plan, and we’d feel more confident if we can prove how it will work.
Closing Remarks
If it sounds like we have a full plate, it’s because we do! Making games is hard, and every decision adds up to a lot of time. I (Dan) have been doing my best to support backers with questions, but I also don’t have as much time for a lot of rapid, small-sized information sharing. I have always struggled with social media, but I do it for our project since I know that’s how many people like to communicate and stay in touch. The current state of Twitter is honestly too difficult for me to deal with at this point, so I will likely look into setting up an account on BlueSky where I can also be bad at keeping up to date with but maybe feel better about when I do. I’m much more active on our community Discord.
I miss our development streams a lot, but the project needs me. Beyond any individual contributions to design and engineering, I need to support our team, help artists, set technical requirements, and make sure other people are communicating with each other and following our process. I tell everyone working with me the same thing: this isn’t about what you or I need, this is about what the project needs. Truly, this is the spirit we work in. We have a lot of support and enthusiasm from everyone, and we have to deliver what people are excited to see. We do have to streamline a lot of things, and everyone has to let go of some things they wish they could have. To seasonally-spiritedly quote Cake (the band, not the food): The ornaments look pretty, but they’re pulling down the branches of the tree.
It is great to take a moment to pause and write these updates, but the rest of my time I am simply thinking about what we have to do that we haven’t done yet and how we’re going to accomplish it. Down in the trenches, the work we do is just trying to make progress, trying to answer questions, and trying to make sure we can take the simplest, shortest paths possible. I continue to encourage my teammates to appreciate the value of an answered question–even answered incompletely or incorrectly–since we have a long list of unanswered ones. Our time now is for taking the number of questions down to 0. Some of the things we might think matter actually won’t and vice-versa, but we really won’t know until there’s enough game to play and a focus on letting playtesters get at it.
On a personal note, if you followed some of our development streams, you would know I always had a pile of cockatiels flying around my desk and sitting on the monitors. Many of you were even familiar with one of my little Yehat pals who usually just sat in front of the camera I set up for her to be a part of the show. I’m sad to say Buhar passed away unexpectedly just last month at the age of 15. She was with me for most of those 15 years after I adopted her and was here for our entire project’s development. In case you were wondering who Captain Buhar was in our game screenshots, on Kickstarter or Steam, now you know. She will be missed dearly.

Buhar at work and at play.
We hope you have a wonderful end of year and have a happy holiday time, whatever that is for you.
Join us on Discord, Twitter (where at least I will post important stuff like this), and Reddit to be a part of the community. Our BackerKit page is still available for late pledges.
And, finally, thank you to everyone who is still so generously supporting us here on Patreon. We're so happy to have had your support.
Comments
"Is this thing fun?" YES
Thunk
2025-01-01 18:48:43 +0000 UTCSorry about Buhar, I know how rough that is. 💔 Thank you for one last update for 2024. It's looking great.
Martin Lettvin
2024-12-31 00:57:21 +0000 UTC