The team continued to refine dodge-action triggering, which is currently used during combat when the player is aiming or shooting toward an NPC. Triggering this action requires careful evaluation of different conditions, such as the space within the navigation mesh needed to play the animation or the time spent aiming.
All character types will benefit from ongoing improvements to the AI weapon component. This work exposed all fire modes to the various behaviors, with the team enabling the AI to switch between fire modes the same way the player does.
The team are currently adding ammo box refill functionality for NPCs so that, in combat, any with low or no ammunition can retreat to an ammo box to refill. They’re also implementing specific urgent enter/exit/rummage animations and are improving the looting mechanism that allows players and NPCs to pick ammunition and store it on their loadouts.
A few bugs were fixed throughout the month too, including one involving raycasts being wrongly validated by the physics engine. Improvements were also made to the animations when NPCs move into and out of cover, and an unwanted behavior was removed that caused NPCs to blind-fire from cover when the player wasn’t there.
Ship AI made several improvements to the Tactical Query System, including optimizing the way it handles queries and structures data. They also improved and extended how different keywords are used. For example, in the target selection queries, they added the ‘HasTag’ property to select entities specifically tagged with a role.
They also extended the way weights are defined so they can configure both the actual weight of a property and the value it must have for weight calculation. A ‘ShipStateMonitorComponent’ was implemented to allow multiple ship states to be easily monitored and cached. This will allow multiple systems to use the data to drive logic.
The bartender has been mentioned in a lot in reports throughout the year as it has been used to test and develop general functionalities that will be used by all vendors in the PU.
The first pass of a feature that connects the different bars to the shop services was also implemented. This will enable the vendor to validate the price of items in relation to the player’s available cash and complete a transaction once goods are delivered.
Away from scenarios, progress was made on the patrol path functionality that allows instant path calculation for short distances. This significantly reduces delays when triggering specific cutscenes or animations for a much smoother experience. Support was also finished for the speed overrides on setups on the edges of paths.
Bug-wise, the team fixed several problems that were causing NPCs to stand on top of usables. The majority of these were a direct consequence of object container streaming preventing characters from reattaching to usables. For example, one was due to the usable code wrongly overriding the deferred attachment request by multiple characters, while another was a wrong navigation mesh validation when streaming back in where no validation was required.
For global AI, the team improved the functionality of the LookComponent. First, they converted the internal look request queue to a more sophisticated priority-based queue. Each request is now associated with specific semantics that pile on top of each other based on a predefined priority. They currently have the following semantic order, from the lowest to highest priority:
- Look ahead: When moving on a path, an NPC might try to look ahead based on the path it’s following.
- Procedural object discovery: When moving around, interesting things might be noticed by the NPC that can then be looked at.
- Behavior-driven requests: The behavior can sometimes explicitly request the NPC look at something.
- Trackview: During cutscenes, the designers can override targets based on the scene itself.
- Synchronization: In a PU environment, the networked target is used by the NPCs on the clients.
The team also made several optimizations to collision avoidance and subsumption. The component code was adjusted to better support the updated parallelization and server meshing too.
Last month, the Animation Team worked on force reactions, such as knockbacks, knockdowns, twitches, and flinches. They completed pre-visual work on zero-g push/pull, further developed grenade and object throwing, and undertook tests for high-gravity moves. Work continued on some new weapons too.
The bartender and bar patrons received attention (specifically bug fixing), as did the useables for flight hangars, cryotanks, and seated consoles. Work on the ‘chowline’ usable began too, which manages NPCs queueing for food.
They also continued to work through the mo-cap backlog, comms calls, and the review and selection pipelines. Time was also dedicated to developing COVID-19 safety plans for when mo-cap shoots can begin again.
“Last month was exciting for the Organics Team. We’ve been waiting for a long time for some of the last remaining features of the organics shader and the planet editor to be finished and, this month, a big update came in: the planet editor now features brushes!” – The Environment Art Team
A brush is essentially a collection of ingredients that can be painted onto the planet. In the past, Environment Art painted color, objects, and ground textures separately. With this update, the team can now assign all of these to one brush and paint them at the same time onto a surface. And helpfully, everything can be changed on the fly.
The organic shader also received huge improvements in terms of terrain asset integration; the team can now tell each object to pick up either the color of the bedrock or the terrain. This can be done for the whole asset or selectively for each material layered onto an object.
Production wrapped up on Pyro III and Pyro IV, and the whitebox assets for Pyro VI were further developed. Pyro V is currently on hold due to it requiring gas giant tech, which is in R&D alongside Crusader. The same goes for the touch-bending of vegetation assets.
In the US, the Art Team moved the Crusader Mercury to the final art stage, which involves iterating on feedback, adding textures, and adding LODs. Alongside this, greybox work will continue to hookup animations, implement interactions, set up internal and external doors, and set up RTT/comms calls. Additionally, Design will optimize flight, cameras, and visuals.
While awaiting the Mercury, the tech artists worked on several Maya rigs for pilot and operator seats. This work will create a template used by players, AI, and cinematics.
The Origin 100i series is nearing completion, with technical exterior work and the holographic cockpit button currently in progress. Work also continued on one soon-to-be-unveiled ship. Another that won’t be seen for a while is currently in the greybox stage.
Last month, work concluded on the Behring GP-33 grenade launcher, which required tweaks to its ammunition and rig. Weapon Art also finalized the Behring BR2 shotgun and began roughing out the Gemini A03 sniper rifle.
For ship weapons, the Behring S7 laser repeater was completed and work began on some new turrets. A pass was made on the Behring S12 torpedo to include a destroyed variant.
The team’s graphic designer spent time finalizing the reticle of the LBCO sniper rifle and completed his tasks on the LBCO ammo counters.
The Audio Team spent the month supporting gameplay features, items, and locations coming in Alpha 3.11. This included the improved throw mechanics, Behring GP-33 grenade launcher, and cargo deck, which received new music, walla (crowd sounds), and SFX. They also began adding music to locations without dedicated soundtracks, such as caves, and completed the audio reworks of the K&W Demeco LMG and Arclight pistol.
The team looked into new methods of adding dialogue to missions to give more variation:
“This is very early, so don’t expect to see any updates in near releases, but we have heard the feedback and are aware of the repetitiveness ourselves!” – The Audio Team
The also looked into implementing the new version of the Wwise software to give the designers more tools to use when developing.
Backend Services worked diligently throughout July to make improvements to existing technology that will increase the number of concurrent players and provide a higher quality experience in-game and when logging in. They also finished major refactors to the variable service and item caching system that will have the same benefits. These new services will be coming in future releases.
Last month’s character development focused mainly on supporting upcoming events and future releases. The team worked on several helmets and armors that will be revealed in the coming months.
Creature development continued and is now requiring the input of other departments. Creatures require AI and other support, so the team is working to secure the engineering manpower needed for a dedicated Creature Team.
Other work was in pursuit of several upcoming locations and landing zones, including the cargo decks and Orison; any time a character shows up in a render, in-game advert, or behind a counter, the team has to support it.
In last month’s Intragalactic Cook-off
, the community was asked to cook or bake something inspired by their favorite Star Citizen alien race. With the contest concluded, the Community Team published the complete collection of alien-themed recipes in the Alien Week Cookbook
Engineering spent part of July updating the compiler toolchain and supported the Intel SPMD Program Compiler (ISPC) WAF build chain. The ISPC will be used to write target-agnostic SSE-optimized code for heavy duty CPU computing, meaning it will fully utilize CPU capabilities on each machine the code runs. Several code paths for physics, the 3D engine, and zone system are being ported already.
Regarding physics, they made server memory optimizations that included tracking physical entity lifetimes and rectifying spawning issues. They also moved physical entity ID handling to amortize at a constant cost and reduced the async spawning load of thousands of brushes. They limited the number of async-created physical entities that can spawn in a frame, moved internal data to an allocated-on-demand structure, and removed legacy tracing of secondary pending rays.
Collision detection was improved by five percent in worst-case “carrack vs. Grim HEX” scenarios, and planet terrain patches were rotated to prevent them from overlapping if the patch is far from either the equator or poles. More context and markers for telemetry were added to help fast-track performance issues. Work was done on SDF sets for the Vehicle Feature Team and AFT support was given to dragging bodies onto ships and stairs. Improvements were made to the physics editor plugin, which now supports large-world coordinates.
System-wise, Engineering submitted several entity update policy improvements, started work on the rendering bounds update policies, began replacing the existing frame profiler with a new one based on ImGUI, and started optimizing SIMD code and memory layout for zone partitions.
Engineering also continued their ongoing work on the Gen12 renderer, including implementing the GPU resource set alongside code to prevent PSO redundancy.
They began improving runtime support for both the Gen12 and legacy pipelines (to ensure usability during transition), moved Gen12 work to batch jobs, continued work on global state removal in-renderer, and developed a more declarative approach for setting up screen passes with less duplicated and boilerplate code. Alongside this, D3D shaders now cache in the pipeline object, used material-IDs-to-objects are accessible at higher levels to allow for pipeline pre-compilation, and device manager access was removed from the legacy device.
The team supported G12 materials, improved the lifetime management of all render resources (ownership semantics), and continued schedule passes and bound resources for the render graph.
For planet atmosphere unified raymarching, they improved ray jittering when using temporal raymarching, improved noisy joint bilateral up-sampling, and increased the sharpness of up-sampled results for both guided and noisy JBL filtering. Improvements were also made to sample tagging of atmo silhouette pixels for better reproduction in the final up-sampled result.
Work on the planet toll, named PlanEd, was completed, including an overhaul to the deluxe painter. Planet serialization was also modified to use YASLI instead of DataCore.
The Gameplay Feature Team had a busy month in July. After updating the visuals on the player trading app, they completed the app’s base functionality and got it through testing to ensure it hit Alpha 3.10.
“We believe that players will be thrilled to now finally have the option to trade various currencies with their friends!” – The Gameplay Features Team
They also assisted the Social AI Team with setting bartenders up in various locations around the ‘verse.
With Alpha 3.10’s tasks completed, work for the next release began, notably converting the frontend screens from Flash to the new Building Blocks system. Although they plan to dramatically redefine the game’s entry experience at a later stage, the current goal is to get the frontend in a suitable place for these updates and improve the existing process.
Finally, they created design documents and high-level plans for a number of exciting, large-scale initiatives that will be hitting the PU in the near future and beyond.
The Vehicle Team finalized their work on Alpha 3.10 and acted on feedback relating to the weapon reticle and targeting UI. They also supported the Vehicle Experience Team with the new targeting system as well.
Restricted areas received significant focus following feedback from the Evocati and PTU, which resulted in several quality-of-life improvements while they evaluate further ways to improve the experience.
Alpha 3.10’s new aerodynamic system was iterated on too. Following feedback surrounding wind and how it interacted with the new system, values were modified and handling tweaked to make flying more intuitive. They also balanced the forces and torque on each ship to improve roll speeds and amend stall speeds for certain ships. Turbulence was also worked on, but this won’t be implemented until a future patch.
Lastly, looking to the future, the team worked on docking, reaching a point where they can dock a Merlin and a Constellation. Various elements impact this feature, such as physics attachments, multiplayer, and the UI that supports players when docking.
Level Design continued to expand on several new locations. Orison’s design is making great progress, with the team finalizing large parts of the layout. A pass was also completed for the location’s important core systems and markup. A handful of rest stops received new layouts and plans for additional content were made with the Mission Team.
The Lighting Team completed their polish pass on Lorville and turned their attention to Area18, which will receive similar treatment, including separate day and night lighting.
A key focus last month was improving the NPC lighting across all bar locations, especially on the bartender NPCs themselves.
“A lot of work has gone into the bartender, so it seems only fair that they are shown in their best light!” -The Lighting Team
Looking to the future, the Lighting Team kicked off R&D into improving the look of characters inside ship cockpits and through comms calls. Traditionally, ship lighting has been handled by separate teams, which has led to inconsistencies as lighting workflows have changed over time. In the coming months, the team aims to both raise the quality of cockpit lighting and add consistency to characters. They will also optimize various elements to reduce the lighting cost when multiple ships are on screen at once.
Last month, Narrative supported future mission text and worked through new and updated player wearables. They also generated scripts and supervised a remote voice-over recording session.
Otherwise, the team worked with Art and Design to further develop Orison and Pyro, creating documents outlining the general tone, potential storylines, and environmental storytelling to help sell the intended experience. They also began constructing a narrative timeline for the PU, where they can map out projected storylines on everything from a local level to events covering multiple systems. The Writer’s Guide began getting a long overdue update too.
Props spent the month supporting the upcoming cargo stations with an array of shopfront and dressing assets, including shop kiosks, stands, shelving, and counter sets. Additionally, a rework of the MMHC counter set to comply with the new bartender metrics was completed. Work also finished on the microTech Simpod, which is on display at the FactoryLine shop. New props for Grim HEX were kicked off and support was given to the cooperative locomotion system too.
Last month, Quality Assurance completed multiple test requests (QATRs) and continued to participate in weekly playtests. A key QATR involved a test of multiple aspects of the PU to ensure all the recent changes hadn’t negatively affected anything.
As the Combat AI Team recently added Derelict AI and new UGFs were placed on microTech’s moons, QA expanded their regular testing to include these new locations.
The Ship AI Team implemented an update to QT Linking, which QA were assigned to test. The changes focus on how players link and travel and set the groundwork for future updates to the system. The also continued their regular checks and supported the Ship AI Team.
Locations-wise, QA received a request to test changes to the restricted areas around Lorville and Area18. Support for the Tools Team continued, with QA continuing to work on DataForge, StarWords, ExcelCore, and the sandbox editor.
Last month, Turbulent delivered several tools that will be useful to game masters and player support teams. First, visibility for orgs in Hex’s Network Operation Center was finalized. Then, the lobby service was reworked to enable its fuller implementation in Hex.
CigTrace, a new logger for services activity was implemented. This enables the delivery of the CigTrace visualizer, currently a prototype to view player movement as a heat map. More tools will be added in the future to better analyze and visualize player activity during live events. The Game Services Team also achieved the first milestone of the wider identity service project.
Turbulent (Web Platform)
Turbulent’s Web Platform Team made changes to Spectrum, including the location and organization of player settings, which is the first step to preparing the UI to incorporate new features. Next up, players will see changes to the navigation bar. Ongoing efforts will eventually deliver multi-user private lobbies and private messages will no longer be restricted to two people.
User Interface (UI)
Firstly, UI created new fonts and updated existing ones to unify text going forwards. Secondly, they continued converting legacy systems to Building Blocks, this month focusing on the lens and comms calls. They also progressed with elevator panels, preparing them for release in the near future.
UI’s embedded artists continued to work with their teams on various features, including Alpha 3.10’s targeting updates and several upcoming features for Alpha 3.11 and beyond.
The Vehicle Team finalized their work on Alpha 3.10 and acted on feedback relating to the weapon reticle and targeting UI. They also supported the Vehicle Experience Team with the new targeting system as well.
They also looked into vehicle entrance and exit times, investigating how to speed up the process without speeding up the animations. Improvements were made to a few ships and a plan was built for tech to flesh out more improvements in the future. The team plan to expand the tech to not only speed up enters and exits, but to enable the designers to flesh out more interesting and complex sequences.
Time was spent linking gameplay systems, like shields, with SDF collisions. These improvements not only optimize collision impacts with shields but allow the gameplay to match the visual SDF. Additionally, the team ensured the collisions work with part detachment, part repair, and attached sub-items, such as turrets.
Finally, Vehicles worked with the Actor Feature Team on improving the radar and scanning experience for vehicles and on foot, including experimenting with how capital ships could interfere or hide among smaller ships.
They also added a method to utilize SDFs to generate an accurate cross-section surface area of an object. This allows them to plan how ambient signatures from nearby objects, like stations or asteroids, can interfere with the cross-section.
Aside from some final bug fixing and optimization for Alpha 3.10, the UK-based VFX Team completed pre-production tasks for Alpha 3.11 and 3.12. Included were the refinery deck (including large containers with molten liquid being poured into them), the Origin 100i series, and the Behring GP-33 grenade launcher.
Fire propagation also made progress this month, with the code prototype allowing propagation between entities and voxels across multiple surface types.
“Although still firmly in the prototyping phase, we managed to roll a flaming barrel across an interior surface and watch it set fire to the interior!” – The VFX Team
The team in Frankfurt worked to convert old CPU particle effects to the latest GPU particle system. This will bring both visual and performance improvements to some of the older CPU effects.
Both locales worked on SDF shields which, when complete, will correctly conform to the ship even when parts have been blown off.