The latest episode of Around the Verse is here! Check out the Studio Update from L.A. and more.
As per usual, anything said during the show is subject to change by CIG and may not always be accurate at the time of posting. Also any mistakes you see that I may have missed, please let me know so I can correct them. Enjoy the show!
Working on Drake Buccaneer: custom dual mount created, LODs generated, damage implemented, flight balance and VFX
Made a lot of progress on the revamped RSI Aurora: completed whitebox, finalising cockpit geometry and it’s heading into greybox
A few other ships progressing through design and a slew of "quality of life" fixes for 2.6.2
Completed design for multifunction displays for power, heat, coolers, shields, weapons, countermeasures and missiles
Checking various fixes for 2.6.2
Providing support for Austin QA with sanity checks, smoke tests, sweeps and deployment
Helping new hires get up to speed with the game
Swept ship destruction VFXs, Item System 2.0, loadout changes and the new targeting and ESP code
Additional 3.0 missions
Documentation for posters and props to populate the universe
Created a "Time Capsule" timeline for the Xi'an history and society documentation
Doing breakdowns of the ethnic groups in the SC universe utilising the power of the behind 3Lateral GDC demo
Started work on the new Shop Entity that uses data core components to add object/container streaming and retrieve their inventory from the backend
Added a interior grid type attribute to vehicle XMLs for designers which will reduce memory storage
Implemented the core state switching functionality for the Light Group Entity
Developing a framework in the IFCS to enable the autopilot, and AI, to handle situations like takeoff and landing
New features, debugging tools and bug fixes for the Room System and Atmospheric Containers
Added wear and dirt parameters to loadouts
Started work on the Entity Owner Manager which will manage ownership and lifetimes of all entities in the game in conjunction with backend persistence
Working on scanning subcomponents and refactored the object databank to support storage of child entities. This improves the thread safety of accessing data within the databank and improves performance.
The work focuses on two elements, ping component and angle of focus.
Ping is the method where a player sends out a wave to detect objects within scan range from ships, to asteroids, or where players enter or exit quantum travel.
Angle of focus allows players to adjust the angle for more range, but at the cost of a smaller focus.
Tech Content Team:
Has made performance improvements from changing the mesh vertex and position formats to greatly improve streaming of the meshes and reduce build size.
They’ve also improved Python integration within the editor which allows more development of python tools for all studios. The team can now script various sandbox processes such as generating modular outposts, asteroids, etc.
They’ve converted helmets to .skin format to prevent helmets disappearing.
The team also created tools that rig skins and export them automatically and as such reduces dev time from a day to just minutes.
Heads have been all converted to use the human skin shader which has reduced the memory cost by 90% of 100 megabytes.
Female character has had thousands of animations transferred from the male character to complete her motion set.
Team has completed a tool to track and report 1255 pages of Squadron 42 script which includes all storylines and the numerous wildlines. Once the lines are all in the system, the lines will be pulled based on players actions and situations and be able to randomise the wildlines so that they’re not repeated all the time.
Tech Content team created a tool for the Cinematics team to allow for visibility of scenes before engine to allow for fast exportation of animations and preview renders.
Worked through concept, high poly and currently on ingame mesh of the heavy outlaw which will then go to rigging and animation.
Light, medium, and heavy female marine armour and undersuit has been sent to rigging and implementation.
Female explorer suit has moved through the high poly phase.
EVA deck crew and marine BDU are in ingame mesh and texturing phase.
Medium and heavy armour versions of the OMC outlaw faction in production.
Mechanized Titan suit is in R&D along with other alien concept sculpts.
Mega Map is a new feature that lessens load times and eliminates load screens altogether
The Mega Map doesn't load all at once, but empties and streams new content as needed in object containers
This allows a user to switch modes a lot more quickly and effortlessly and creates more persistence
One bug from this allows for blurry free flight after getting tipsy in the hangar
Mega Map for multiplayer is complicated by the sheer numbers of players who might visit the same level at one time
Mega Map scales from single player to multiplayer without having to reload.
Object containers load in and out, depending on position, using other object containers to scale what’s displayed.
Sandi Gardiner (SG): Hello and welcome to Around the Verse, our weekly look at the development of Star Citizen. I’m Sandi Gardiner and while Chris Roberts visits the Frankfurt studio I’ve been joined today by CG Supervisor, Forrest Stephan. Thanks for stopping by Forrest.
Forrest Stephan (FS): And thanks for having me, it’s great to be here.
SG: In today’s episode we’ll share how the Mega Maps feature eliminates load screens between levels which means more time for gameplay and less time waiting. Very important stuff.
FS: Very important, but first lets kick it off with Eric Davis in our Los Angeles Studio Update. Take it away Eric
Eric Kieron Davis (EKD): Hey all I’m Eric Kieron Davis, Senior Producer here in Los Angeles. We’ve had quite a busy month since we last talked so let’s just dig right in.
To start off our ship team has been working on the Drake Buccaneer. Art has created a custom dual weapon mount, all LODs have been generated, the Tech Content team has implemented UV2s and damage, Tech Design is making their “flight balance” pass, which will get it ready for “flight with sound”, VFX is making solid progress as well. The Drake Buccaneer will be a great addition to the Drake lineup and we really can’t wait until you’re in the cockpit.
The Ship team has also made a lot of progress on the newly revamped RSI Aurora. The whitebox phase is now complete, which includes a proxy laying out the space, establishing the animation positions, laying out the screens, and making sure the characters could hold the controls. We’ve started the final geometry on the cockpit in an effort to improve the inside of the ship. Now that Tech Design has implemented all the art updates into the ship’s new archetype the RSI Aurora is heading into greybox. It’s been awesome to see all these different pieces come together and breathe a whole new life into an already great design. We’re really looking forward to finishing up and getting it back in the air.
There are a few other ships making their way through design as well as a slew of quality of life bugs/fixes for the upcoming 2.6.2 release but we’re not quite ready to reveal those just yet.
In addition to ship production the Tech Design group completed design for multifunction displays or MFD screens which control power, heat, coolers, shields, weapons, countermeasures, and missiles in preparations for Item 2.0 functionality. These designer prototypes are meant to help us understand what’s needed and and see how everything will interact with each other. Once these designs have been approved, the amazing UI team will create an interface to take advantage of that functionality that Engineering is implementing in the backend. Once the system’s in place a ship that is staffed by knowledgeable crew will be able to operate their ship beyond the default system settings and min-max the various ship systems to suit not only your playstyle but potentially save your life during a devastating attack.
This month QA aided LA Development checking a variety of fixes for 2.6.2 while also providing support to Austin QA with PTU and Live sanity checks, smoke tests, sweeps and deployments, and helping new hires get up to speed with the game. As for feature work the team swept ship destruction VFXs, Item System 2.0, and implementation of recent loadout changes, and tested multiple iterations of new targeting and ESP code.
For a quick reminder on quality assurance terms: A “sanity check” basically ensures the game loads which is now automated but still can take an hour and and another 30-60 minutes to investigate any errors that arise. A “smoke test” checks the basic functionality but this takes six to eight people roughly a day if there aren’t any major issues. And a “full sweep” means checking everything you possibly can - a process which requires a much larger team and can take over a week. As you’d expect full sweeps are mostly arduous, rigorous and intense but also incredibly important.
Now over on the Narrative team they’ve been hard at work at some additional 3.0 missions. They’ve also started some much needed documentation for posters and props to help populate the world of Star Citizen. They’ve also made a lot of progress on Xi’an history and society documentation by creating an equivalent Time Capsule approach for the Xi’an history from birth to present day.
Also those that saw the 3Lateral head test portion of GDC a few weeks ago, we can now talk about how the team has been doing breakdowns of ethno groups in the Star Citizen universe, utilising the power behind that technology as our Character Customisation is rapidly coming together.
Now the Engineering team has begun work on the new shop entity that uses data core components. It will allow shops to easily stream … be streamed in - and object containers - which will be finished in sprint. The plan is to make shops more dynamic and reactive to the economy by retrieving their inventory from the backend.
The Engineering team also added a new attribute to vehicle XMLs that will allow designers to specify the interior grid type of the vehicle: small, medium and large. This is a pretty big optimisation that will reduce memory storage as all ships previously defaulted to medium size.
Now last time we discussed the development of the new Light Group Entity that was equipped with a state machine to serve as the ultimate light switch. Now the implementation of the core state switching functionality is complete. The next step is to start using the Light Group in our vehicles and environments, and replace all instances of old layer switching method of light management. This new Light Group Entity has allowed us to reduce the number of lights we’ve been using which has dramatically impacted performance. For example on the Drake Caterpillar we were able to reduce from hundreds almost most thousands, of entities down to 90 or less with no visual impact. And that’s just the beginning: in the upcoming weeks we’ll continue to evolve the Light Group with additional features based on feedback from other departments.
We’ve been developing also a framework in IFCS, or Intelligent Flight Control System, for the autopilot to handle situations like a takeoff and landing sequence. This also applies to AI control: they will be providing AI developers with a set of tools for controlling the ship like a “move to” or “change to”, etc. This will improve stability and predictability of ship motion under optimal conditions.
There was also a large update to our Room System and and Atmospheric Containers with the addition of several new features as well as better debugging tools and several bug fixes. So far the Room System has only been implemented in a few locations but these changes will allow us to fully implement rooms and atmospheres throughout the various locations and ships in the game. At the moment all the airlocks you enter and exit are scripted events: they don’t factor in atmosphere of any kind. With this new system we’ll be able to replace this set up with an actual room and atmosphere that allows for a dynamic experience.
In addition to the Room System changes they’ve added a feature to allow designers and artists to set wear and dirt parameters for loadouts. This functionality comes in two levels: overall as well as individual values for specific items. Wear and dirt values are used by the render node to set shader parameters that make items look older, dusty, scuffed up, and burnt out. You’ve seen an example of this on the module surface outpost seen in the last week’s Studio Update. This task also used Loadout Editor side work where the team added UI support to edit wear and dirt.
We’ve recently also started working on a pretty massive task called the Entity Owner Manager. To give you a little background this is a core feature required to take our gameplay from a multiplayer game to a persistent online experience. This system will be responsible for managing ownership and lifetimes of all the entities in the game and will work in conjunction with the backend persistence systems to indicate dynamic changes to the world that need to be tracked and persisted across sessions. The Entity Owner Manager will also need to work with various game and entity … engine systems including debris, salvage, criminality, streaming, missions, cargo, shop and much more to help create the persistent experience across clients and servers.
In other news the team has been working on scanning subcomponents which require us to do some slight refactoring of object databank. Now the databank can support the storage of child entities which will be the subcomponents on ships, players, etc.
In doing this we also improved the thread safety of accessing data within the databank which allows us to move some calculations onto other threads which will help improve performance. This work is focusing on two big elements, the ping component and angle of focus.
The ping component is the method in which a player or a pilot will send out a wave to see if there are objects out there of note within their scan range. This could also be a ship, an asteroid or even signal traces that mark whether a player entered or exited quantum travel. Other players can detect these traces which could have some pretty heavy game implications. For example, if you’re an outlaw it could allow you to track potential prey.
Angle of focus allows players to adjust the angle with which they’re scanning. A smaller angle will provide more range but only contacts within the angle can be detected. We’re currently refactoring the underlying radar query logic to use zone queries rather than a huge iteration of registered radar objects which will make the scanning system much more efficient.
Now if you remember from our last update, our Tech Content team supports and implements every pipeline within Star Citizen and Squadron 42. One of the main focuses for this team is performance improvements, for instance we’ve changed our mesh vertex and position formats which massively improve streaming of these meshes as well as reduces the build size.
They’ve also been improving the Python integration within our editor which allows for faster development of Python tools usable by every departments across the company. They can now script any sandbox process they want, for example, placing asteroids, generating modular outposts, etc. All of which saves tremendous amount of development time on otherwise tedious and time consuming tasks.
You also may have noticed the player’s helmets were disappearing once they got to a certain distance away from you. As discussed in the character customization featurette not too long ago, we’ve now converted all helmets to a .skin format. The conversion was important to allow a unified LOD ratio across the character skins meaning no more helmetless people running around the ‘Verse. So don’t be afraid as the oxygen system comes online we would hate to be the reason you lose that FPS battle on the dark side of the moon.
To ensure this is easier in the future, Tech Content has also created tools that rig skins and exports automatically. This dramatically reduces dev time from potentially an entire day down to just a few minutes. Now that helmets are optimized, heads were next on the agenda. We’ve successfully converted all heads to use the human skin shader developed by our graphics team. Since we do 44 different areas of blended wrinkles and blended diffuse our texture cost was quite high at about 100 megs per head. With this change we were able to save roughly 90% of the original texture memory cross without a discernable visual impact. This means we can have a lot more characters in the scene without melting your graphics card.
With the implementation of the female character progressing rapidly, we’ve transferred thousands of animations from male to female to complete her motion set and provide a data for Animation to start iterating on. This will also allow us to focus on refinement and subtleties without compromising on what she’ll be able to do while exploring the universe. There’s quite a bit more to do but we’re making leaps forward every day.
Another character animation tool the Tech Content team has completed is this track and report the number of various wildlines each character will have in the universe. With over 1255 pages of script for Squadron 42 which includes all storylines as well as wildlines, we needed a tool to continuously generate reports on how many we’ve completed and what we have left to solve. Once the various lines are all in the system we’ll be able to pull those lines based on player action and situation. Also randomize the potential wildline response so the NPCs aren’t repeating the same line all the time.
To help our cinematics team focus on content need for Squadron 42, a tool was written to allow for visibility of scenes before they even hit the engine. This allows for fast exporting of animations and preview renders which would then automatically uploaded to Shotgun which makes it much easier and faster to review the many hours of cinematics for Squadron 42.
The character team has been blasting through the concept phase, the high poly phase and on to the ingame mesh of the heavy outlaw. Next it’s going to go into rigging and implementation. We’ve also sent the light, medium and heavy female marine armour as well as the undersuit to rigging and implementation. Once we had that male base suit done we utilized a wrap technique with adjustments to save development time and we’re sure getting everything together as quickly as possible. Another suit that has moved through the high poly phase is the female explorer suit. So she’ll be exploring the universe in no time.
On the Squadron 42 character front, both the EVA deck crew and the marine BDU have gone through high poly and are on to the ingame mesh and texturing phase, which means it should be in rigging and implementation in no time.
In a category of things we can’t talk about, we continue to develop the Vanduul as well as medium and heavy versions of the OMC outlaw faction and lastly the mechanized Titan suit is in R+D along with other alien concept sculpts and a whole lot more we can’t reveal just yet but stay tuned for updates in the coming weeks. Well, that does it here for Los Angeles, thank you so much for your support, we’ll see you again soon.
SG: As you may have seen on our production schedules, our developers have been working on a new system called Mega Map. Understandable some of you may not know what that means.
FS: It is a tough concept to grab. In the simplest terms Mega Map means to eliminate the loading screens. So it basically streamlines the Object Containers while loading in and out the different areas and the different game modes.
SG: The goal of Mega Map is to allow players to travel through the universe without interruption or lag time. To better explain how Mega Map does this let’s take a look.
Rob Johnson (RJ): The Mega Map is a new feature that we're putting into the game to cut a lot of the frustrations with load times out for people, since you eliminate load screens altogether. The issues that drove us to this technology come from the unprecedented scale of this universe we're creating. What this means is we couldn't load it into one map without crippling memory and performance, so we divided it up and put segments into object containers which we could load as needed. The problem with that was that it meant players would need to wait for a series of load screens as they moved about in the game. The Mega Map was our solution. We load the Mega Map as we would a standard map. The Mega Map itself is empty, but once the Mega Map is loaded we actually start to fill the Mega Map with content of various game modes, fire and object containers. So, we would load the Mega Map which is empty. Load the front end, which is a set of object containers. Load the front end game rules which tells the game how to work in that game mode. The user would then pick a new game mode to play. At that point we throw away all the object containers. We throw away the game mode; load in the Free Fly game mode and the Dying Star object containers, but we do that via streaming rather than a complete level load, so we are able to shave the vast majority of the load time down to a few seconds rather than long enough to warrant a load screen.
As you can see, even with Mega Maps switched on there is still a load stall. It's only a few seconds compared to the 30 seconds it takes to load without the Mega Maps feature, but it is still something we're working to eliminate by making the feature operate asynchronously. So game-play wise that's great for players if they want to be in the front end changing some settings. They can go to a hangar. They can put some items in their hangar, look at their ships then immediately go back to the front end; no load screens, pick a game mode; race mode. They can dive straight into race mode; play around with one ship, decide they don't like that ship, come back to the front end, switch to a new ship; still no load screens rather than having a process where they're setting on the front end. They have to think carefully where they want to go, because they know the load screen coming up, go there, do some stuff and then load screen again. So, by adding this new feature we're putting into the game the first application of a lot of the object containers streaming which will be a fundamental part of the P.U. experience moving forward as the P.U. becomes essentially like it's own Mega Map with a bunch of sets of object containers that will stream in and out as you move through that map. The thing that makes it tricky in terms of game-play programming is with the new flow we now not destroying and recreating the player between game modes, so with the new setup it potentially makes it easier to persist. Some … some of the player's attributes between these game modes, because the fact that we're not destroying them and recreating them.
So, one of the more interesting bugs that the new Mega Map flow has produced was QA finding that they could place down a liquor cabinet in their hangar, take a few swigs from a bottle, get slightly blurry vision wise then decide that they didn't want to be in the hangar anymore. They want to go to go fly their ship in free flight. However, with this new flow the player is not being destroyed and recreated, so unfortunately for you, the player, you now find yourself in the ship with blurry vision trying to fly through space which is probably not the best thing for a player to be doing. So, something we'll obviously be looking to fix, but a nice illustration of the kind of interesting challenges that we face in fixing up this new flow.
Clive Johnson (CJ): Mega Map for multiplayer is a little bit more complicated. It builds on top of the single player implementation. The tech is the same up to a point. The additional challenge is that each level in our multiplayer game lives in it's own server to handle the tens of thousands of players who might visit it at any one time. A multiplayer match and it comes to an end and you want to change to another multiplayer game mode and map then you're going to have to unload the map that you're into, Dying Star, go out to the front and make your selections to what you want to do, and then load into the next map, say Broken Moon doing Pirate Swarm or whatever. Because you're going from connecting from a server back to the front end, we're going to drop the connection, but we've got to keep the Mega Map in memory, empty out all its contents, put all the front end pieces in, let the player make his selection, and then go and connect to another server while keeping a map in memory at the same time, and then stream in all the new pieces for the new map.
It’s a bit like trying to unplug your computer and then replugging it without losing power. That’s not the way we’ve been doing things before. It’s very much: Get to the end of a match, you drop the connections to the server, you clear everything out (it’s kinda like a hard reset of a system), load in the front end, make your selection, into that hard reset of the system, connect to the next server. So we’re just keeping the map in memory but switching connections and servers, switching between single player/multiplayer game modes at the same time, without doing this reset, which is a bit of a challenge.
The way the engine is being built, it’s kind of the assumption that once a system starts up it’ll either be in single player mode or it’ll be in multiplayer mode and it’ll always stay that way until the system shuts down again. Now we’re changing these things dynamically all the time, so that can create a log of bugs. It’s kind of been a process of trying it out, find out what it breaks, fixing it, trying it again, find out what it breaks, fixing it, and we just keep doing that over and over.
Taking a system like Crusader, extending it, you might have an object container for each of the stations, each of the comms arrays. There will be an object container that contains references to the object containers for where all these other things are, and they’ll be just sort of left there in a very light weight form. Then as you head toward, say, Port Olisar the object container for Port Olisar will get loaded in and expanded. That may contain other object containers that contain the interior or different decks or whatever, and they’ll get loaded in on demand.
You have a skeleton structure that’s defined by an object container and then you can fill in the various parts and collapse them down again, load out another part. Then it will scale it going down to let’s say a room as an object container. Assemble them together to make a deck, assemble them together to make a space station, that’s an object container, interior and exterior possibly could be different object containers. That’s linked to an object container in space that says where that space station is, and that will be parented by a sort of root system object container that says where all the different space stations are in that system, different planets and so on. It kind of scales out that way.
So far it’s only been done for the Star Marine maps and Arena Commander maps. When we bring this technology over to PU it’ll have to be done through Crusader and the other systems will come online. It’s a lot of work that we need to do still, but the technology is kind of at the point where we can start seeing the benefits of it now. Star Citizen is a question of scale really, isn’t it? It’s taken a standard game and made it much bigger than anything else that’s currently out there. The only way that you’re going to be able to do that is by focusing on what the player needs to know and tailoring that experience for each player even though they’re all connected to the same server. So you’re always looking for opportunities to not do something. Avoid that little bit of work. Well, on the computer side of things anyway.
SG: Thanks guys for that insight on Mega Maps. Cutting down on wait times is really important to improving gameplay.
FS: Absolutely. I also look forward to seeing the multiplayer Mega Maps rolled out in Star Citizen.
SG: And then many players will be able to traverse the universe at the same time.
Now before we wrap up today’s show we want to express our gratitude to all of our subscribers.
FS: Yeah shows like this one would not be possible without your support which is why we are rolling out new subscriber perks. Due to popular requests from our current subscribers we’ve got a third edition of Jump Point in the works and we’re also making the free flight of the month a permanent edition for all of the subscribers. More details on the Subscriber Perk so take a look.
SG: Hey everyone I’m Sandi Gardiner.
Alexis Lesnick (AL): And I’m Alexis. We wanted to take this chance to thank all of our subscribers, both Centurions and Imperators for your ongoing support.
SG: We look forward to continuing the journey with you and we’ve updated your subscriber perks.
AL: If you’re new to the Star Citizen community, Star Citizen’s subscription programs were created to provide an added level of community interaction and off you some unique perks. As a subscriber, Centurion, or Imperator you get access to Jump Point.
SG: Jump Point is Star Citizen’s monthly magazine featuring interviews with the dev team, in depth looks at the process of building game assets along with new fiction and lore pieces.
There’s also the vault which is updated weekly with all sorts of ship concepts, environments, and characters.
AL: Subscribers allow us to create all of our video content. Shows like: Around the Verse, Bugsmashers, Loremaker’s Guide to the Galaxy, Happy Hour, and Citizens of the Stars. As well as more in depth events like 10 for the Chairman and the Subscribers Town Hall.
SG: We like to put you behind the scenes here, hear from the creators themselves about the development of Star Citizen. Centurions and Imperators get exclusive access to submit questions for Chris and the rest of the dev team to be answered during 10 for the Chairman or Town Hall videos.
AL: You also get access to the subscriber forums where you can interact with other subscribers and myself, as well as participate in subscriber only polls and Q&A threads.
SG: A new perk for all subscribers is our ship of the month club.
AL: That’s where we unlock a ship for subscribers to test fly. So if you’re dueling it out in Arena Commander or exploring the space around Crusader, you can try out a new ship every month. Imperators will also have access to test flight all available ships and variants when new patches go live for a duration of one week.
SG: Subscribers get a variety of other extras including early access to event tickets and discounts on physical merchandise as well as subscriber exclusive merchandise.
AL: And for the collector in you, there’s a free hanger decoration each month. These have ranged from models to ships, glowing algae plants, and even an ancient underwater creatures skull for your ingame hangar.
SG: Imperator subscribers get a little extra. Double the flair, double the discount coupon, plus your ship of the month roster is expanded too. You can get access to some of the limited alien ships like the Vanduul, Xi’An, and Banu ships as they become available.
AL: So again, thank you to all of our subscribers.
SG: And we will see you
SG/AL: In the Verse
FS: In addition to the new subscriber perks, all active subscribers or anyone becomes a subscriber before April 17th will receive an awesome piece of flair, a Big Benny’s Vending machine.
SG: That’s a great addition to any hanger and if you’re interested in learning more about our subscriber program, click on the link in the description below.
FS: And that’s all for today’s show. Again thank you to all of our subscribers as well as our backers. None of this would be possible without you so, so much thanks for everything.
SG: Also please join us tomorrow at 12 Pacific for Star Citizen Happy Hour for a special game development episode. Jared Huckaby, Tyler Nolin, and Tyler Witkin will be joined by Technical Designer, Calix Reneau.
FS: After the excitement of last week’s basketball half court reveal in the U.K. studio update. Calix will try his hand at creating a first pass game mechanic that might make it possible to shoot hoops in the game. Of course this isn’t a mechanic scheduled to go ingame, but it will be a fun behind the scenes look at digital scripting, all the same.
SG: Wow, sounds like a must see episode. Thanks for watching and we’ll see you.
SG/FS: Around the Verse.