Monthly Report July
Greetings Citizens,
From wrapping the Squadron 42 motion capture shoot to the all-hands-on-deck team effort to finish the Gamescom 2015 multicrew presentation, work on Star Citizen has been going at a fevered pace! We’re incredibly proud of how teams around the world have come together to create a live demonstration of Star Citizen’s future. If you missed the demo, the entire presentation will be available on the site next week. And if you’re interested in the work that went into making everything from large world to shared physics grids a reality, read on…
CIG Santa Monica
Happy Summer Everyone (well those in the Northern Hemisphere that is)! It’s been a little over a month since summer began so we filled it by sticking our heads up in space. We’ve had an incredible month full of defeated challenges and smashed bugs. Like always, we love sharing with everyone what we’ve been working on, so check it out and let us know if you have any questions.
Engineering
We’ve had a jam-packed month full of everything from updating seat animation controls and general streaming and optimization improvements to 1.1.5 bug fixing and optimization.
We were hard at work on our AI this month focusing on AI weapons targeting, AI module compatibility and general AI behavior for larger ships. Turrets were a big focus for us this month because we worked hard on turret attack behavior creation, turret IK (Inverse Kinematics) hookups and overall turret compatibility. This also allowed us to focus on turret rotation bugs and other kinds of bugs like projectile bugs and collision bugs. We established a clear working process for disabling and enabling gravity inside a ship. We’re also really excited by the CGA loading and cache improvements we made this month.
Some general ship work included a Merlin HUD bug we couldn’t wait to fix and a Gladius issue we found that was preventing it from following splines. General HUD support was on our list this month as was an interactor code fix we couldn’t wait to correct. With all the hard work going in to our new character pipeline, our own Okka Kyah has been hard a work implementing the multilayer material system that we hope will enhance our characters and take them to the next level. That wraps it up for engineering for this month. Thanks for reading!
Design
Much like our engineering brethren, we’ve had a myriad of 1.1.5 balance and bugs for this most recent patch, ship fixes, and new ideas we can’t wait for you to see. Let’s dig in!
As designers, balance is something we are always eager to do because we enjoy not only playing the game ourselves but also integrating your feedback and perspective. We were really looking forward to 1.1.5 because we finally got to implement a lot of long standing updates and balance adjustments to several elements.
These included Everything everything from tuning ships to retain momentum, to giving missiles disruption damage. We enjoyed working on specific ships like the Mustang Delta and bringing in ships like the Merlin and Scythe.
In addition to those updates, we worked on some HUD screens, shield proxies and general component retrofitting. We setup some torpedoes, updated some of our logic flowgraphs and fixed some spawning bugs. The Cutlass Blue got a little love this month when we addressed the hatch interactions. We established some new player loadouts and setup some new ships. With new ships always come updated loadouts, new stats, items and general flight balance.
This month was full of the kind of bugs fixing which you’re never short of when it comes to making a great big game! We did a lot of level flow review to give provide the best experiences possible as well. We also focused a bit on turrets such as general setup, usage and interactions. In addition, we worked hard on hatches, and doors.
We also wrapped up some additional Starliner documentation left over from the previous month and addressed a ton of new items for the Merlin and Scythe. That about does it for this month. Stay tuned for more in-depth breakdowns and details all month long.
Art
Phew. Another busy month for the art team. Even after creating a whole batch of new ships, components, characters, outfits, etc. we still find ourselves looking forward instead of back at all of our hard work most of the time, so let’s take a moment now, with you. Here’s what we worked on this hot month in Santa Monica, California.
Zane our local UI guru has been hard at work with all kinds of different ship screens. He worked heavily on engineering screens, the Merlin HUD and the Scythe HUD. We also had several bug fixing tasks to get 1.1.5 out the door as quickly as possible. We wanted it to look as good as it could before you downloaded everything to your computer.
Another part of our month has been helping clear out FPS character bugs to make sure those characters are all ready to go as soon as possible. We’ve also been looking at the general placement of flashlights on our characters. We needed a new design to make sure it lit the path ahead of your avatar as well as possible when going through dark areas. We don’t want you to get caught off guard!
We also continue to be hard at work on concepting characters to use in Star Citizen. This is no small feat. The sheer quantity of people, aliens, and creatures that inhabit this universe is immense and we’re not holding anything back when it comes to concepts. We want to make sure we’re giving this universe the best layout of characters possible. Everything from in-depth uniforms to advanced pilot helmets to organic creations. We’re doing it all.
On the ships side, as you know we spent a lot of time on the Merlin and Scythe this month. We’re also always working hard to get ships out to you as fast as possible, and next up on our list is the Herald. We made several steps forward on bringing that ship to your hangar as soon as possible. We also spent quite a bit of time developing Vanguard interior variant concepts to get those ships into production quickly. We did a lot of UV setup on multiple different ships including the Merlin and the Scythe. Our resident lighter, Marc Toscano worked on final lighting for the Cutlass Blue, the Merlin, and others.
Another part of our job as artists is to provide beautiful images for our community team to show you along the way, so we spend some of our time getting as much imagery out to you as possible. That does it for the art team for this month. It’s an honor to create art alongside you so keep your feedback coming.
Writing
Hello everyone.
Not much to report here…
Just kidding
The past few months have been a whirlwind of activity with the Squadron 42 performance capture shoot. Dave and Will were present on set to generate any rewrites that were needed as well as incorporate any changes to the level scripts based on work done by the Design team. In addition to that, we needed to generate wild lines and interactions for the secondary and supporting characters that you encounter in the story. Overall, it was a fantastic experience working with the amazing crew and tremendously exciting to see these performances come alive.
Meanwhile, Adam and Cherie have been holding down the fort (and even hosting a show) back in the States. Adam has been organizing the S42 scripts with our Production Office in the UK, helping out with wildlines and tackling the News Updates. Meanwhile, Cherie has been busy organizing the massive internal company database to make it more user-friendly and… well… organized. She’s also been helping lay the groundwork for the StarMap and the Galactapedia.
Now that we’re all back in the office, we’ve been getting back up to speed with the needs of the Persistent Universe, Marketing and pushing forward on Squadron 42.
Conclusion
And there you have it. Another busy month for the studio out in Santa Monica. We really appreciate you taking the time to read about all of our hard work and if anything intrigues you, please don’t hesitate to reach out if you want to know more! We always want to tell you how much you mean to us. Without you, we wouldn’t be able to make this great game. Thank you for everything and remember, we always value your feedback. Thanks for reading, now back to work!
CIG Austin
Howdy from Texas!
The Austin team has been hard at work on many fronts through the month of July. We’ve had several updates to the live service with a number of game updates and a whole host of updates to our back end infrastructure. The team has been working tirelessly on many things that may be demo’d at Gamescom or soon thereafter. Here are detailed reports from each team!
Persistent Universe Team
Art
The PU Art Team has been busy this month preparing for Social Module v0 release and beyond. Our Environment Team has been full bore on the ArcCorp>Area18 environment. The level design has undergone a complete overhaul, and it has done wonders for the landing zone. We’ve added sweeping vista shots into the city, seedy back alleys for shady dealings, brushed up the shops to take them to the next level, and polished the VFX across the level. We’ve started from ground zero on the lighting over the whole level, updating the skybox, atmospherics, etc. to make a truly beautiful environment, which is saying something considering ArcCorp is supposed to be this gritty, grungy planet. Major kudos go to our internal Environment Team and the team at BHVR for making this environment truly something to behold.
Our Character Team has been working towards several goals this month. The FPS characters are in bug-fixing and optimization phase now, a few more fixes and these bad boys will be ready for release. We’ve also been updating our characters from the SXSW demo so that they will be ready for Social Module v0. Next month, we will start on creating some new clothing assets so that we can get some proper variety in place for the release of Social Module.
As ever, our Concept Team looks to the future busting out beautiful art that helps shape the PU. Ted Beargeon is wrapping up the Style Guide for the Stanton>MicroTech>New Babbage landing zone so that Ken Fairclough can take it and start working on some look/feel pieces for that particular environment. Ken has been fleshing out concepts for the Nyx>Delamar>Levski market bazaar area as well as finishing up a smaller version of the security turret prop he concepted a couple of months back. Character concept artist, Megan Cheever, has been helping to define the look for one of our clothing lines, Terra>Fashion Casual. This clothing line will likely be the most prominent line found in systems that fall within Terra’s sphere of influence. These are the types of clothes you’d find on planets like ArcCorp, Crusader, Odyssa, Mariana, and of course Terra itself.
Our Animation Team has been helping out on various areas of the project, as always. We’ve been lending a hand with animation tasks for our upcoming demo for GamesCom, and even though we can’t really reveal what exactly we’ve been doing for the event, we can say that we are extremely excited to show you guys what we’ve been doing. We’ve also been working on the revamped No-Weapon Locomotion set for the player character. We’re using mocap captured while at Imaginarium Studios, so with a little love from our Lead Animator, Bryan Brewer, we’re getting this locomotion set to the best it can be. On the PU side specifically, Vanessa Landeros has been implementing emote animations for our upcoming release. We’ve gotten 19 emotes hooked up so far including /taunt, /threaten, /cheer, /dance, and more.
Design
The first part of this month was spent wrapping up initial passes on design docs for the Smuggling, Piracy, and Mercenary occupations for the PU. Very early on, however, attention shifted to breathing life into the ArcCorp>Area18 environment for the purposes of a Social Module release. We’ve been setting up NPC activity on the landing pads, placing ship traffic around the city, and setting up NPC activity for various shops. We’ve also been hooking up emotes to the chat system via DataForge so that they can be viewed and tested in game.
Another task on the Design Team’s plate this month was discussions on standardization of object interaction points. We are trying to standardize several areas of our project to alleviate the workload required, and that includes standardizing how NPCs and players both pick up and put down objects such as crates, cups, weapons, tools, etc.
A few of our designers also spoke with the gameplay programmers multiple times this month with the purpose of brainstorming what tasks to include in Subsumption, our peaceful NPC AI System. Subsumption is now online and working, for all intents and purposes, but we are now going to be improving it by adding more NPC “tasks” for our designers to play with. This includes things like “Compare”, “Compute”, “Create Object”, “Destroy Object”, “Find Object”, “Pathfind”, “Use”, “Send Event”, “Wait”, and much more.
Engineering
The month of July was a wild ride for the PU Engineering Team, starting with the resonating bang of the Fourth of July celebrations!
The team put in some heavy support for the 1.1.5 release, which included the first iteration of our new Generic Instance Manager (GIM) as well as a lot of network optimization work to get our dogfighting matches up to 16 players (from 8) into a match together! Many thanks to our awesome QA department for helping us test this rigorously…we couldn’t have done it without them! As a part of this push to increase player count, we also implemented a lot of additional tools to help profile and monitor our network performance.
The team effort continues to make expansions and improvements to our GIM system for future releases, as well as updating and improving the many services that it interacts with such as our Persistence, Presence and Friends services. The Austin Team also enjoyed a visit from the LA studio’s Lead Engine Programmer Paul Reindell earlier in the month, who stopped by to work with our Lead Network Engineer Jason Ely on our Persistence service.
Our friends at Wyrmbyte have wrapped up the bugs with their iPredictor system, which helps out by reducing the amount of network traffic consumed by tracking ships, asteroids and missiles in real-time play. Feedback from that has been nothing but positive. Wyrmbyte has also been busy diving into network and animation improvements for characters as well, which will be essential for our upcoming Social and FPS modules. All the while, progress has continued on our Solar System Server and Universe Simulator, both of which will be needed to help bring the Persistent Universe to life.
Chugging away behind the scenes, some of our team continues to focus on internal tools for engineers, artists and designers. Continual updates, improvements and added functionality have been rolling out for our Dataforge, Asset Validation Tool, and our Useable and Character Archetype Editors.
Currently, the bulk of the team is supporting work planned to be shared with you all at Gamescom in August. For sake of not spoiling the surprises, we won’t go into detail here…just prepare yourself to be “wow’d.” The team is very excited to share the labors of their efforts and expect backer reaction to be enthusiastic. They have also been working towards new features and content for a big PTU release that will be incoming after Gamescom. We’re sure this has you all on the edge of your seats! We’re confident that the wait will be worth it.
On top of all this, the team continues on bug fixes and feature support for various features being focused on both inside and outside of Austin. There’s always a lot of moving parts and a variety of work to keep everyone busy, but it is part of what makes working in game development exciting. There’s definitely never a dull moment! Stay tuned for more action next month!
Live Operations
QA
The month of July has been very active on the QA front with multiple PTU and public releases as well as one hotfix. In addition to ensuring that these releases were properly tested, the team worked on many other tasks.
Andrew Hesse has been settling into his new role of being QA lead by overseeing all areas of testing. Andrew worked closely with our engineers to provide valuable profiling data during our 1.1.5 internal multiplayer playtests. This data was instrumental in helping developers identify some potential fixes which helped eliminate in most cases the frequent stalls that have been happening when ships are destroyed and respawn. In addition to this, Andrew tested a significant improvement to the way ships fly from Wyrmbyte called iPredictor which resulted in ships flying much smoother when viewed by others.
Jeffrey Pease has been working closely with engineers to test and monitor the new Generic Instance Manager. After the release of 1.1.5, Jeffrey continued to monitor connection issues over the weekend and reported any outages directly to our server engineers. We were able to identify multiple issues and promptly deployed a 1.1.5 hotfix the following Monday that included fixes to the Generic Instance Manager. These fixes helped to dramatically improve the lobby connection experience.
The team worked closely with designers Matt Sherman and Calix Reneau providing comprehensive feedback on any balance changes. This was a very iterative process that eventually resulted in some welcome changes to ship flight, health, weapon heating/cooling as well as missile and countermeasure effectiveness.
Robert Gaither is our newest addition to the QA team. Robert has extensive QA experience and has already been very effective in assisting Todd Raffray with Social Module and Persistent Universe testing.
Todd, Robert, and Melissa have been spearheading the testing for Gamescom. Each day they test each aspect of the presentation and at the end of the day provide a comprehensive break down of critical issues.
Todd has continued to ensure that any features related to multi-crew, Social Module and Persistent Universe are thoroughly tested. The latest of which is the Augmented Reality experience while shopping which is part of the shopping phase 1 deliverables for social module.
Tyler Witkin and Andrew Rexroth have been continually testing Star Marine. Tyler ensures that all open issues are current as well as verifying any issues are fixed that have been set as resolved by development. He also has been coordinating each company wide Star Marine playtest and gathering the resulting feedback for our design directors. Tyler also conducted a comprehensive analysis of the Star Marine juke system.
In addition to his Star Marine duties, Tyler captured video footage and screenshots that are being used by community, marketing, Turbulent, and production for various projects like advertisements, weekly FPS reports, and the background of the new launcher.
Some other things QA was working on that may not seem as exciting but are still very important are fielding special testing requests by individual developers, testing integrity of builds deployed by the new BuildBot system, testing the Cryengine version 3.7 integration into the project, and testing new deployments of the tool used to disseminate builds to developers we call CopyBuild.
This next month is going to be another big one for QA. We are currently focused on the Gamescom presentation, as well as some expected releases around the same time. Also we hope to roll out the new Issue Council by the end of August. This will dramatically improve the bug reporting experience for any members of the community that would like to assist in the testing process. See you at Gamescom!
Game Support
This has been an exciting month for the Game Support team, particularly since we got up and rolling with the 1.1.5 Publish(es) to the Live Service this month!
Our core mission is to represent the needs of the player base and to help make the service better, and we feel that we kept busy on that front. We worked very closely with designers and developers, as well as with a few of our more intrepid players in the modding community, to make 1.1.5 a more compelling experience. Not only did we do the normal job of triaging game-facing bugs, but we actively teamed up with DevOps and QA throughout the month to monitor the deployment and release of the new Launcher and the General Instance Manager (GIM), something we will continue to do for each publish.
The 1.1.5 release had a TON of new content and features, as well as several backend services, so we actively kept busy on our tickets as well as providing Live Service Notifications on our forums and on Reddit (both have which have proved very popular). Particularly helpful was working with the community in understanding the user experience from all over the globe. We spent a couple of weekends making sure everything was working smoothly, to which we received extremely kind messages thanking us for our service. We’d like to thank you in return as we are here for you… and we’re as excited about seeing Star Citizen grow as you are!
Speaking of, since we are back in the cycle of pushing out publishes, the Game Support team will be actively engaged managing further playtests, starting with testing the new Arena Commander 1.1.6 and Launcher 2.3 updates and all throughout August with Live concurrency playtests. We think there is a lot of value in working with players to improve the game, which fundamentally is the spirit of the entire project.
To that end, Game Support will also be creating a special “test group” to be named that’s made up of players who are dedicated to the meticulous and detail-oriented challenge of playtesting the game with us. We’ll expand what we have learned from running our playtests to having regularly scheduled sessions on PTU where we give you specific “missions” to test new content and features, and how to report that in a manner that is much improved from the current forum-based solution. More on that will come from our Turbulent team, but we’re very excited to team up with them for a new system that will be formally announced very shortly!
In addition, we had some really good times exploring and learning some of the Star Marine modules during our internal playtests (plus, it’s fun!). It’s great to “feel” the environment in which players are going to live and breathe, and only by walking through their steps can we best help them. We’ve got some great ideas on how players will be interfacing not only inside their module, but in the greater Star Citizen ecosystem. We’ll be excited to continue to learn along with you as the universe continues to grow and expand, and to better understand how we can best continue to serve you.
IT/Operations
Rapid builds and lots of developer support and testing for us in July. This month we’ve spread the team out to support multiple initiatives. Paul and Hassan completed the Frankfurt office move on time and on budget. Everything went smooth and the developers weren’t impacted by any down time; some commenting that they’ve never seen a move go this well in any other company. As soon as they returned to their studios Paul and Hassan continued planning, building, and testing for the GamesCom event in early August. Paul has already flown back to Manchester to help Hassan with final preparations and to help pack all our gear for the events.
Mike “Sniper” Pickett has directed his laser focus to enhancing and developing new internal tools to further improve the data delivery performance throughout the company. Much like our experience with the new launcher patcher development effort, he’s had to spend some time tuning down performance as he has now found ways of totally saturating a gigabit network to the point of failure. His work has been invaluable to the development effort though with some developers reporting as much as 120x improvement in delivery times for our largest assets used in development and testing, particularly for those who must switch back and forth supporting different branches of code throughout the day.
Dennis, Chris, and Kyle have been very busy supporting developers at each studio with hardware adjustments and upgrades. They’ve also been building and rebuilding test systems for the QA teams to help them work through various bugs seen on different hardware configurations.
With the major improvements made to the build system by the DevOps team, IT has also started the final pass of tuning on the build servers themselves. This project involves much greater use of parallel processing and caching on custom built compute and storage arrays. We’ve started work on the game server build processing by moving the major compiling workload away from the larger build servers to an array of smaller build workers. Early results are positive so testing will continue prior to an official roll out next month. We’ll be applying the same improvements to game client builds as well.
We’ll see you at GamesCom!
Dev Ops
The majority of July has been focused on two of the large projects the team was working on last month; the new launcher, and the new build server.
However, we have also shipped a few patches to PTU, released a test version of the new launcher also to PTU, and released the 1.1.4 and 1.1.5 patches to live.
The current public launcher is version 1.6 and uses a third party code base for the UI and patching. Our new launcher is written completely in house. Over the past couple of weeks, players have had a chance to use version 2.1 and version 2.2 on the PTU. Players have been testing out the new UI and speed increases, however we have gotten some complaints from players that the launcher hogs too much of their bandwidth! Version 2.3 will have options to allow the players to put bandwidth caps on the launcher which will hopefully grant a better experience. Version 2.3 is currently in testing with the company for playtests, and will be released very soon to the PTU, and if testing goes well we plan to begin using it with the Live service very soon as well!
We are now in testing with the new build server. This new build server architecture is built on BuildBot instead of Jenkins, and is completely redesigned from the ground up. This makes builds much more modular, easier to troubleshoot, and faster. We are close to switching to this server to build new builds going forward. The first builds from that system going out to the public in September. For the players, they shouldn’t see any difference at all from this switch over. Just as a reminder, not only should it allow us to run more builds at the same time, increasing the throughput of work, but by reducing the amount of time developers wait for build, it will also decrease overall build times. Currently, it takes about 4hrs to make one build on our Jenkins server and we usually make around 6-8 builds a day for development to progress. As you can probably quickly see from the math, this is more time in the day than we have. The new build server will allow us to run 2-4 builds at the same time, and should reduce the build time to around 1hr 40mins (this time is from our initial tests). This should improve performance for everyone in development!
The team is gearing up to support GamesCom and a bunch of upcoming releases that we are excited to share with our backers! August promises to be a very busy and productive month.
Foundry 42 UK
Art
Gamescom has taken a lot of focus this month and unfortunately we can’t share what was worked on otherwise that’ll blow the whole show! We have continued to staff up the art department, there are a lot of jobs going here in the UK Studio, so if you know good people, have them apply!
Ships
Idris interiors, Retaliator polish, Mining bot exterior materials, Xi’an Transport ship all are rocking along well. As for the Vanduul fleet – we are reducing production on this for a while so that we can solve some of the tech issues that the larger ships are causing, but fear not, there is a plan and it’s a matter of checking that it works! This will have implications for the large ships seen in Star Citizen and Squadron 42 and ideally pave the way to getting these massive hulking objects to look great and run at a good frame rate.
Environments
Gamescom; the team has been working hard at putting some new and special together, we’re looking forward to the reaction, next month we’ll be able to elaborate more!
UI
We have been working hard on redesigning the health system for FPS mode and creating the new and improved diegetic USE button design along with 3D artist support in the creation of decals and some cool assets to support holographic displays.
A lot of work has gone into multicrew UI screens. These screens include the Multi-Function Displays (MFD’s), Support screens (in three different aspect ratios), Turret screens and Engineering screens. Work has also gone on with overhead MFD screens. The UK and LA have been collaborating heavily on getting something special to see – watch this space!
VFX
What a busy month it’s been for the VFX team, even by CIG and F42 standards – but in a good way of course! We had a lot of fun getting the Merlin flight-ready effects in place, including the thrusters, weapons and damage. The Glaive has also had some attention, based on the effects we created for the recently flyable Scythe. We’ve also been giving lots of love to some of the larger ship effects, both interior and exterior; really can’t wait to show off these awesome ships. Oh, and if you think they look pretty in your hangar, just wait until you see them blow up!
Aside from ships, we’ve also been working hard on Star Marine effects. Lots of optimisation tasks – making sure we’re improving performance – while steadily improving the quality. We’ve been working closely with the designers and focusing on weapon readability too, to help create a consistent visual language. It’s not just about making the effect look pretty, they also need to make sense to the player from a gameplay perspective, especially in the heat of battle!
We’ve also been working on several environment effects, including experimenting with camera-bound particles trigger via proximity. So for example if you’re flying through an asteroid field, we can trigger particles based on your proximity to the centre of the field, getting denser the deeper you get. This approach can help us create extra detail without killing frame-rate.
Additional work has gone into the Quantum Travel effects. VFX art along with graphics engineers have provided a very impressive screen effect, with various parameters exposed which we can tweak and combine with the particle effects. This has been a real challenge due to the multiple camera views that this effect might be seen in. It’s not just the pilot in the cockpit; we need to consider what QT will look like to say, an engineer looking out of a side window in the cargo bay, or a spectator witnessing a ship entering/exiting QT.
Props
The prop team has mainly been focused on working up and polishing assets for the Gamescom demo, which also helps lay the foundation for the environment technology that will be used throughout the game, including Squadron 42.
Apart from Gamescom the focus has been documenting and planning. All the exciting things!
The new pipeline is in its final stages of being proven out with example assets underway. A full review of all the current assets in game is almost complete and this will be used to plan out the next few months of work, bringing assets in line with the new pipeline and filling in the gaps where required to build up the prop library.
Next on the cards is going to be planning out the universal prop backlog which will be used to dress the environments with all the human scale objects.
Design
It’s been a strange month on S42 Design. The company focus has very much been on the FPS Module and the Gamescom Demo, but we’re happy to make the effort, as all of these systems contribute to the development of S42’s gameplay regardless. This has been brilliant for us as it really focuses people on completing important modules of the game that have been worked on, but not nailed. We have seen the “Large World” functionality added, allowing us to create huge maps that you can fly around without the errors we were getting the further away you got from the origin point. The “Local Physics Grid” is in, allowing players to run around a ship while it is barrel rolling in space. But, as often happens in development, while focus is being directed on super important blocking issues for major components of the game, we find that general progress on the day-to-day issues get shuffled down the priority ladder. So to that end we juggled the Foundry 42 design resources around a bit this month to match with the companies priorities. People who would have been blocked on various level issues, left just moving crates around or playing with enemy ship numbers, have been given specific mini vertical slices to solve, such as Ship-to-EVA and back, looting, landing / take-off, the conversation system, radar, scanning and sub-target acquisition, etc. Basically, lots of things that have a design, but haven’t been taken closer to final due to other priorities. It has been great to get more focus on these issues and react to feedback from the community, this kind of development it where we stand apart from most games companies. We have you to tell us what you want to see from this awesome game.
QA
This month has been about ensuring thorough testing of the sc_alpha releases while supporting the development of Star Marine, S42, Social Module and the demo we’ll be showing off at Gamescom. So it’s been a busy one!
In the midst of all this as this we’ve been going through a bit of a transitional period within the department – as mentioned last time out, Steve Brennon has stepped into Chris Hill’s boots as Senior Tester here in the UK – something which he has done admirably – earning himself honorary CHill-cig status. Goodbye Chris, you’ll stay in our hearts…always. As well as this, Matthew Delanty has metamorphosed into a designer – after stepping out his cocoon he was quickly tasked with having to beef up the Vanduul Swarm difficulty as well as starting work on a new game mode for Arena Commander. So, in light of this, we’ve had to undertake a lot of interviews this month – expect to see further new voices and faces in the community very soon.
Also, UK and ATX QA have spent a lot of time giving feedback this month to the ship designers regarding the balancing of the game, which is important for the single-player game as well as the PU – this was quite an organic process that relied on us being able to provide information on a day to day basis. So hopefully you’ve been able to see the benefits of this in 1.1.5.
With the doubling of the player count from 8 to 16 in 1.1.5, we’ve had to rely on a lot more cross-studio playtesting during the crossover periods of the QA departments in ATX and UK. So these have become a more regular occurrence this month. As part of this, we’ve had to deal with reproducing the performance issues that were reported by the community – thanks for your continued feedback!
Without giving away anything that has not already been discussed regarding Gamescom, UK QA have been testing the new Largeworld map and dealing with the new can of worms of issues that come from Multi-Crew. Something that is a challenge in terms of team synchronization, but one we’re enjoying immensely.
Code
This month, as you’re probably already aware, was when we released the 1.1.5 version of Arena Commander, which is our first release with full Wwise support. This has been a herculean undertaking involving all our audio engineers and designers, and something which will give us the ability to move the audio onto the next level. With a change this big it has, of course, not been without its teething issues. Once we launched 1.1.5 it became clear there were a lot of people having major performance issues which were quickly tracked down to audio leaks and general over-use. On the code side this meant a big scramble to trace where the leaks were happening and then plug them up. A few patches later and it’s looking a lot better for everybody, and we’re optimistic we’ve caught all of them, although we’re still monitoring the release with our QA to make sure that is the case.
It was slightly unfortunate as we had also been involved in trying to fix some of the in game stalls which we know have been frustrating everybody playing in the multiplayer matches, and allowing us to double the number of players in an AC match. Of course getting the player count up then just starts to expose different bottlenecks in the code which will need to be looked into; such is the way of these things. Longer term we’ve got a lot of big engineering changes to the engine which will help improve performance drastically, things like the global resource manager which then unlocks the work required to get prefabs loading in the background, the zone system which will allow us to be able quickly cull entities from being rendered and updated which the local player isn’t concerned about, or our new entity component system which will be a much more efficient way of updating the entities and give us the ability to move them over to our job system.
The good news is that we’ve been making huge strides in all these areas. The global resource manager is pretty much complete and in our main development branch, so is getting tested regularly, and the same with the entity component system. We now just have to start moving the entities over to using it, and make sure they’re all nice and thread safe too, to really see the benefits. We’ve also been working very closely with the Frankfurt and Santa Monica studios to get the zone system implemented, and it’s great to see everything starting to come together there. Being able to walk around a ship whilst it’s flying, get out, get onto another ship, fly around, rinse and repeat, has been a long time coming but well worth the wait.
Audio
This month was our first Wwise release, which has been a long time coming but we’re very happy to finally get it out there. As those of you keeping tabs on the forums etc. will know it’s not been entirely without its problems, but it’s most of the way to being stable now. We’re optimising all the time in response to user and QA feedback however so if there any little niggles and foibles, we hope to iron these out as we progress!
Otherwise (there’s no pun there, hopefully) it’s been getting through work for the next few main releases. We have some recording sessions lined up for weapons and footstep Foley which will be great; we’ll try to get photos and video from those just so you know what’s coming. We have some new starters in August too.
The more eagle-eyed – well, bat-eared maybe, whatever the listening equivalent is – will have noticed that Origin’s ship computer returns to a familiar old friend.
If you need any more info on the audio side do look up the Wwise release write-up – sorry this one is so short, not our usual style but it’s all hands on deck right now! Thanks for listening.
Graphics
This month has all been about 1.1.5 and Gamescom for the graphics team. The release of 1.1.5 was the first to have the geometry streaming system enabled. This loads in only the required geometry that is close to the camera and allows more detailed meshes with an overall lower GPU memory footprint and therefore better performance. However many of our older ships and environments didn’t (and some still don’t) have the required low detail versions called LODs. This resulted in a LOT of bugs where these non-optimised meshes would take up too much of the overall available memory pool and not leave enough memory for everything else, which then results in meshes disappearing. We spent a lot of time helping the artists determine which meshes they needed to optimise and managed to bring most levels within the streaming budget, however there are some extreme cases which still have issues such as if you own many non-flight ready ships that don’t have LODs yet (Freelancer, Constellation etc). So for the next release we’ll be including some new streaming logic for the ships that reduces their memory cost and therefore the associated problems, and meanwhile the artists are working on bringing the older ships up to full/final spec as soon as possible.
The mesh merging system we’ve been working on for quite some time is now finished and is being tested by the artists and is looking promising. One of our test cases allows us to turn an asteroid field made of 6000 unique asteroids which costs 20 milliseconds of CPU time to process into a set of merged LODs that take less than 1 millisecond to process and this only costs a few megabytes of memory. This system will now be rolled out to all environments currently in production to vastly improve the memory usage, performance and art-workflow.
Some other bits of tech we’ve been working on for upcoming releases are planet shadows (perfect shadows with no blockiness at any range), multi-crew damage shader (extension of damage shader to work on ships made of multiple smaller parts such as the Retaliator), quantum drive effects (various blurs to convey the extreme speed), and various bug fixes with the recently completed large-world tech.
Foundry 42 Frankfurt
This month the Frankfurt team moved into our new office space. We were handed the keys on the 1st, spent a few days loading in the furniture, and officially started working in it on the 6th. The move went smooth, with only one day of downtime from production, and the team seems happy to finally have some more breathing room. We’re pushing our recruiting efforts again now since we have the additional space and the amount of applications has been positive and almost overwhelming. Shortly after we moved in we had Chris, Erin, and others visit to check out the new place, followed by 2 days of good planning meetings. The teams been busy this month, here’s a breakdown from most of the disciplines and what they were focused on For July.
Cinematics
The last couple of months we were busy prepping and then capturing all the story bits and pieces in our Squadron 42 script, which, with the branching included, clocks in at over 450 pages.
After coming back from the main story p-cap shoot at Imaginarium in London, we are starting to sort through performance selects which will be ongoing for some time. We are currently working on getting a particularly important character in-engine whose fate will kick-start the story of Squadron 42.
Without spoiling anything, our cinematic environment artist in Frankfurt is hard at work creating two unique environments that both play a major role in these opening cine scenes of the game, and our cinematic animator is busy with the mountain of material the shoot has created. We’re also doing Vanduul test animations for an upcoming pickup shoot where we will get the performance of a particularly important Vanduul. (I asked Hannes to share pictures, but it was too difficult to show something without spoiling anything)
Engineering
July has been an extremely busy month for Frankfurt engineering, with the team focusing on Multicrew and Gamescom. All systems developed during the last months came together for the first time into the Gamescom map: large world, rendering with camera relative system – the map is REALLY large… takes about a couple hours to fly through from one side to the other with a spaceship. It is now possible to operate a multicrew ship with physically correct simulation, interacting with a ship composed of thousands of individual parts moving through space efficiently leveraging the Zone system. This efficient moving of large, complex and interactive groups of physicalized objects is something that was impractical with CryEngine before.
The accompanying screenshots are showing various stages of Retaliator setup and integration with the Zone system, new vis areas and prefab systems: we have formalized the entire pipeline for ships content production, rendering and efficient integration with the engine and physics system. The debug colors are showing the various zones or areas the Retaliator interior is subdivided with, then you can see the final Retaliator in game setup with areas and zones, the camera culling looking from outside and the clipping of the camera view frustum through all visible Retaliator windows.
Some interesting assumptions that are not valid anymore when working with large worlds – for example sometimes in programming its common to calculate bounding volumes from a list of points by starting with setting maximum bounds to relative high values, values like 99999. However those values are now easily getting exceeded when working with large world spaces… a lot of systems and tools had to be reviewed since when moving to large world coordinates certain assumptions don’t hold anymore. A large amount of bug fixes and optimizations to the new systems were done – and a lot more are to come now that Star Citizen, and Squadron 42 starts making use of these new developed systems. During the next month we are expecting to be polishing these new systems and have them enabled by default.“
AI
We have made some very interesting progress during July regarding the AI in Star Citizen and Squadron 42. The studios in Frankfurt and Manchester have worked closely with big focus on human AI.
First of all we have focus on movement and navigation. As you already know last month we made a first pass on using the CryEngine MNM system and the multithreaded pathfinder. This allows us to handle a customizable amount of pathfinding requests that will run in parallel with the game update, and each of the separate tasks running the A* calculation can have a customizable quota they can use so that they won’t stall the job systems with long operations. This month we have continued iterating over this system, expanding the functionality provided in CryEngine to correctly support local navigation meshes. This is the first step for us to be able to handle AI NPCs moving inside a multicrew ship or any large moving object in the world. Next step is to integrate the navigation meshes into the zone system, so that all the required element of a zone are correctly handled by the engine.
Another item we have worked on is exact positioning and exact move. Squadron 42 and our Subsumption systems requires, in some situation, that an NPC would reach exactly a location facing a specific direction so that we can be sure that the requirements for a specific actions are fulfilled. In conjunction with that we have created a specific behavior node to provide the Move and ExactMove functionalities to the Behavior Tree so that also the systemic behavior can query to the Movement System these specific types of movement.
We have connected the Tactical Point System and the Cover System, so that we can query from the systemic behaviors cover location that respect specific functionalities. To prove the system we have developed a basic human behavior that moves around the map, searches for cover and shoots at the player. To achieve that also the CryEngine posture manager has been integrated into the query so that we are able to evaluate at run-time if different characters can have a proper posture to shoot from a specific cover to hit a precise target. The Cover System is also the first system being integrated into the zone system.
This will allow us to include covers inside moving space ships. We have also concentrated some efforts into integrating the Usables system into our Navigation code, so to allow designers to place Usable Objects in the world as a navigational link to perform systemic jumping, vaulting, etc.
In addition to the internal development, Frankfurt has also continued coordinating the work made by Moon Collider on the improvements of the DataForge/Behavior Tree connection, the addition of new events triggered by the perception system and the iterations on the space ships behaviors.
Design
As expected the design department in Frankfurt had its fingers in a lot of pies trying to help with everything from the FPS Module, AI Behaviours, Multicrew & Squadron42.
First of all this month we welcomed a new member to our design team: Clement Melendez. He quickly managed to get up to speed with the Star Citizen universe and the new tools we use and he is already now taking over one of the levels for Squadron42. Most of his work this month involved prototyping new layouts & gameplay scenarios that fit best inside the main storyline script for the Squadron 42 mission.
The other level for Squadron 42 that is in the works in Frankfurt is progressing nicely but we can’t say much about it without spoiling the plot! Suffice to say, Andreas, our Lead Level Designer, has been hard at work on it trying to give you some pretty unique and memorable encounters & environments that you will hopefully enjoy and remember for a long while.
Todd has been in overdrive mode this whole month, working tirelessly with the UK Design team and the Illfonic guys to bring you an FPS experience that plays as smooth as possible for 1.2.0. The new juke system has proved a worthy challenge and being something no one attempted before in the FPS world, it gave us quite a headache to begin with. Now things are starting to look a lot smoother and most of the kinks have now been phased out of the system. We hope this will give the player a greater sense of immersion as their avatar will have weight, inertia, starting, stopping and every little change of direction will cause the proper animations to play rather than just sliding the character in an unrealistic, cheap way.
Chris Nolan and Dan Trufin have been working very closely with our internal AI Programmers and the Moon Collider guys setting the foundations of our FPS AI. There is a lot of refactoring going on when it comes to AI code and our job is to make sure that these foundation systems are built in such a way that we can build the AI that Star Citizen and all its modules needs, from enemies to friendly ones, from single player campaign to story character and persistent universe.
There is a lot of iteration going on when it comes to the tools the designers use to build the behaviours for these AI and we are trying to make sure we get things just right from the beginning as we do not want to have to perform massive reworks with every new module added. Besides the tools, we are looking specifically in how different AI react to different stimuli for example: how does a trained UEE marine react to hearing a box fall behind him, or a bullet whizzing past his head, the player jumping right in front of them out of nowhere or how would a civilian miner, or reckless pirate deal with the same situations.
In short we are trying to add soul to these AI so when you see them move, attack, react in game you instantly understand who they are and what they are capable of. There is a lot of experimentation going on but we’re sure that eventually the results will be worth it 🙂
Towards the end of this month, as our tech guys made the Zone System available, they needed someone to help with the Retaliator Multi-Crew setup so since we were in the same locations as them we were the obvious choice for the job. This involved setting up interior VisAreas and Portals for the Retaliator and a lot of back and forth between us and Tech trying to iron out all the issues that popped up from us using this first implementation of our “universe” tech. We use these VisAreas to make sure that, while you are in a room inside the ship, the game renders only the objects you actually see in that room rather than the entire exterior of the ship and other ships around you that you might not actually see. The portals on the other hand help us create holes in these VisAreas for stuff like windows/doors. The tech guys also provided us with new tech for VisAreas that allows us to do more complex shapes as the old ones CryEngine comes with are basically square-ish rooms that don’t really fit with our sleek Retaliator Hull. Merging the old VisAreas with the new ones brought its own set of problems but it was nothing that we couldn’t fix between us and Tech.
Build Engineering
Been working on some tools that will be later on embedded in our auto testing pipeline. The idea is to have an external app that can fire and then connect to an instance of the game. Once the connection (implemented as a named pipe) has been established, messages can be sent to and received from the channel to allow controlling of the game at runtime. It’s possible to get or set cvars, exec commands against the game, get crash dumps and much more. All this gets then exposed to Python (thanks IronPython!) so it’s possible to write tests by using a powerful scripting language.
Audio
Sorting out a large variety of issues in preparation for our first release with the new Wwise-based audio system. Lots of minor bugfixes and tweaks, working together with the sound designers to optimize the audio assets and make sure we stay within our memory and performance budgets. Finished the first pass on a Managed Audio Object system that allows the sound designers to place a large number of positional sound sources in the game world efficiently, without degrading the engine performance. This is an absolute must for the worlds of out scale in order to achieve the level of detail we are aiming for.
BHVR
Greeting again Citizens,
We are always eager to send you guys our monthly updates. A lot is going on in the office, and all 40 of us developers can’t wait to reveal all the work we’ve done. However, as with any major game development, things take time to complete, especially as we work to achieve a high level of quality.
Here’s what the team has been working for July:
Design
Casaba Outlet now has a new layout to give you a more immersive shopping experience, and we will apply all that we have learnt to all the other shops.
The Million Mile High Club is also in the works. This will be a great place to meet your fellow citizens.
We also hope you enjoy your July Subscriber Flair object: the Vanduul Scythe Armor Plating, a part of the Puglisi Collection.
Art
So close, so close. We are currently applying final touches and optimizing Area18 of Arc Corp. Over the past months, we worked on Terra and NYX … and other planets we can’t yet talk about, but in July we put all our efforts into ArcCorp. New graphical development from UK and Frankfurt allowed us to bring the visual fidelity to the next step. Kuddos to their work!
UI
This month there has been a big push as we try to wrap up the first iteration of the chat UI, as well as update the look of the contact list, review its current functionalities as well as develop a plan for the next round of features. We are also starting work on a collapsed version of the chat UI, which will help keep your screen uncluttered as you explore the galaxy.
We also continued making steady progress on polishing mobiGlas AR mode, AR labels, as well as some of the shopping interfaces.
Engineering
This month we’ve worked on a lot of exciting stuff! We’ve worked on making sure the transition from your private Hangar to a Multiplayer Planetside Location is a smooth process. We’ve also been working on improving the Shopping Experience by adding Augmented Reality (AR) functionalities as well as building a new Ship Shopping Kiosk for Astro Armada. To improve immersion, we’ve been working a system that will replicate certain UI Elements (i.e. mobiGlas) of one player to other players. This way you’ll be able to see what are friends are doing when they access their cool mobiGlas applications. We’ve also added a lot of functionality to our Chat system and improved the existing ones.
We’ve also put in a lot of effort to make sure your sweet hangar flairs are functional in a multiplayer environment as well as adding functionality to the HoloTable so you can manipulate ships and items without having to spawn them, a much needed performance improvement.
We’ve been providing support for new lobby features required for the FPS Game Mode as well as providing general lobby fixes. We’ve also put in place a new engine framework to greatly improve the performance of various holographic UI elements that you find in the game (i.e. Ship Visor). For example, in Arena Commander Free Flight, we’ve seen situations where we were able to pass from 60fps to 75fps! 🙂
Last but not least, we’ve been providing support to prepare the Gamescom Demo that you guys will be able to see and enjoy very soon!
Illfonic
Howdy Citizens!
It’s that time again folks! Another month, another FPS update. The team here has been working hard on finishing up the juke system, and are now mostly focused on bug fixing. We have also been addressing a host of tweaks and reworks to gameplay and level design from the CIG folks.
Engineering
The engineers have been fixing up the remaining issues with the juke system, and we’re just about there. There are still some minor issues to address, but for the most part the system is in and working with very little popping or mistakes in the animations. We have also been addressing the remaining issues with the procedural cover system. In addition, we have been making tools for designers so that they can easily tweak where the weapon is in the game view. For most games with lower fidelity and interactivity requirements, this would be a fairly trivial task, but due to the shared 1st and 3rd person animations, a little more work was required. A charge shot mechanic for the sniper rifle was also implemented. This presents the risk of taking a bit more time with your shot, with the reward of dealing more damage.
Design
The design team has mostly been focused on reworking the Gold Horizon level. Feedback was received from the Frankfurt studio and internal playtesting to take some areas of the level and restructure them to reduce long sight lines and add in some geometry to fill in much of the open space. Tweaks to the ladder object have also been made so that it gels with the new ladder implementation and animation work that has been taking place over at Foundry 42.
Art
The environment art team has been doing a pass on the Gold Horizon level focused on signage and color coding. This involves adding signs throughout the level that point towards key locations like the med bay and the security office. This is mostly achieved through iconography instead of text, and a system of color bars traveling down hallways and throughout rooms so you can easily get a visual read on your current location within the level. Work also continues on porting over the Gold Horizon level to new standards and metrics that will be consistent with all future assets from all studios. Some small changes have also been made to the weapons, mostly focused on the sights and scope attachments.
Animation
The animation team worked really close with the engineers and Steve Bender over the last month to finish out the juke system. Now that most of the engineering work is done and the bugs addressed, they are fixing things on the asset side and adding polish to each and every animation in the game. Animations overall are looking really good now, much better than what has been shown in the past!
Thanks again for the continued support and well wishes Citizens. We really appreciate the community as a whole, you guys are awesome!
Turbulent
Greetings from sunny Montreal! Here’s what we’ve been up to in this last month:
Jump Point – Behind the Scenes
Our team was featured again in Jump Point Magazine (July issue), this time for the web version of the Starmap. We sat down with Michel Labelle (Creative Director) and Anderson Bordim (UX Designer) to talk about the project in broad strokes – inspiration, goals and challenges. At this point, we can’t share any final screenshots, but we did provide a photo of some sketches of the interface. Thanks to David Ladyman for putting it all together!
Starmap
This month, we worked on the WebGL viewer, which is what you will use to browse the Verse. Right now, we’re focused on the Galaxy and System views, and how we transition between the two. At the same time, we’re building the 3D animated versions of the celestial objects – for example, planets, stars and asteroid belts. The final web stack for the starmap is now constructed, as we have our first viewer implementation running using technologies like Typescript, Three.js and a lot of GLSL shader code. (We’ll be doing a tech deep-dive on this setup once we’re totally happy with it.)
Even though we’re still in the early stages of development, we think you will be impressed when you see the final result. Next up is integration of the UI.
On the art front, we are working on 2D versions of other celestial objects – for example, space stations, and gas planet. The UI is engineered to be able to show receptacles for space objects that have no model or textures yet. There’s also something we have code-named “Control Disc”, which will allow you to retrieve information about a particular celestial object that will become the primary driver for action on any objects in the map.
On the data API side, we continued to work on the data model for the Verse, that is, all the objects found in the Verse and all of their attributes. We are working closely with CIG to ensure our data model contains all the relevant data provided by the game itself; this is a huge endeavour to catalog, categorize, input and verify all of the universe data.
Issue Council
All of the revised design layouts and user flows have been approved, so we’re in the final stretch of development. (In order to save time, we had started coding before all layouts were finished.) QA will begin early next month, so we’ll be able to run a full test cycle with CIG QA. Normally, we would allow access to the community at the same time, but since we’re integrated with CIG’s bug-tracking system we first need to control the flow of test bugs via the Issue Council.
Community Hub
The Community Hub is feature complete. This month, we built a reusable submission tool that allows you to upload pictures and galleries of your own creations, embed your YouTube play sessions, submit your Twitch or podcast feed URL, or report interesting links you’ve found on the web. This tool was integrated into the Community Hub, and potentially can be used elsewhere on the RSI website if the need arises.
QA has begun already, and will continue into next month. We will soon give access to community moderators for beta testing their toolset for these new features.
If you were lucky enough to get a ticket for Gamescom in Cologne, Germany, then keep an eye out for our demo video in which we preview the Issue Council and Community Hub.
Migration to Google’s GCE
This month we finished rebuilding the web architecture in preparation for our move to Google’s GCE (Google’s Compute Engine). Historically, the web stack has been at Rackspace for a long time (since the first days of the campaign). The new setup there is a fully deployed and orchestrated set of docker containers. Containerizing the web stack has been a big endeavour but the final gains will be a tremendous benefit – in ease of deployment, requirement management and isolation of the different parts that comprise the RSI Platform.
Ship Happens
This month saw two highly-anticipated ships introduced into the store and Electronic Access: the Merlin is now a full standalone ship, and Imperator subscribers can try out the captured Vanduul Scythe in Arena Commander.
Launcher
The first release of Star Citizen’s “Launcher v.2” was sent to the PTU for testing. Thanks to everyone who contributed feedback! Even though this launcher looks very similar to the previous one on the UI side, it has been totally re-implemented from the ground up using a more modern Javascript/HTML stack. What we’re all trying to prove here is that a peer to peer based launcher can perform better than a patch/diff system (upon which the Launcher v.1 was based).
In this last week (we are currently deploying the code to production) we are bringing a major improvement to the launcher by allowing seamless account authentication between Production and PTU. This required a new security sub-system to allow authentication APIs across the RSI environments to talk to each other securely. The end result is that “Launcher v.2” should have a neat toggle to switch from LIVE to PTU without all the hoops that were required with Launcher v.1.
If all goes according to plan, Launcher v.2.3 is what you will be using to patch the game starting with 1.1.6.
Game-triggered Reward system
A new game-triggered reward system was introduced in the platform. Players will be able to obtain rewards based on certain game conditions and events. Can’t reveal any more information at this point; you’ll have to wait until our next monthly report!
What you didn’t see
This month, we built an Android application that enables CIG staff to support special promotions and pledge offerings at special events or remote venues such as Gamescom and other shows. It has a simple interface and streamlined payment flow, so that the staff can, for example, quickly choose the relevant ship(s) or offerings and have the user complete payment with a couple of taps.
Moon Collider
This was an important month here at Moon Collider for multiple reasons, not least of which was that the Nucl.ai Conference (previously Game/AI Conference) was held in Vienna this month, which is one of the most important conferences for games AI. Always wanting to keep at the cutting edge of games AI, of course we sent some people to attend, and as hoped, there was plenty of good knowledge to be gained there. Don’t worry, though, that didn’t stop us from churning out a bunch of cool features for Star Citizen!
Engineering
One of the big focuses (foci? focaccia?) this month was the Star Citizen Alpha 1.1.5 release, and making various improvements to the AI in Vanduul Swarm. We worked with the designers to do a pass on all of the behavior profiles for the various enemy ships, helping them tweak all of the values that combine to give each enemy its unique personality. These different parameters can sometimes interact in subtle ways so it can take a bit of experimentation to get a balance that feels right for the kind of behavior that you’re going for.
We also did some improvements to overall ship behaviors. There was some initial experimentation in making the AI behave in a way that makes it a little easier to get on their tail and chase them. We ended up dropping this change when it turned out not to make the combat more enjoyable overall, and instead opted for some improvements that make the AI a little more aggressive. For example, now when they do a fly-by they will tend to turn and get on your tail faster. They are also now better in general at avoiding obstacles such as asteroids.
There was what appeared to be a minor bug that came up in the tutorial, where an AI ship would not perform a roll correctly. This ended up leading us to find some subtle issues with the AI ship handling in various cases, and the fixes we did as a result not only solved that particular problem, but have improved their overall flying stability and orientation when maneuvering.
Moving away from 1.1.5 but still on the topic of ships, we made a really nice improvement to the AI’s ability to follow splines. We’ve written about the coolness of splines in the last couple of monthly reports so check back on those if you need a catchup on what we’re using them for. One nice feature of splines is that designers can specify the speed that they want ships to fly along them at, and this can change at different points along the spline too. The problem is, what happens when a ship can’t maintain the requested speed, or is not maneuverable enough to stay on the spline at that speed?
Up to now, ships would do their best to keep to the spline, but could come off it if it was too aggressive for their capabilities. A designer could set up a spline and know that a certain type of ship flew fine along it, but not know if a different ship, such as a bigger, slower one would be able to stay on it. The feature we added this month was an improvement to the way ships follow splines so that now, if they can’t stay on the spline at the requested speed, they will slow down as needed in order to stay on it. This means that designers can make a spline go through tight spaces and be confident that every AI ship that tries to use it will be able to successfully get through and not unexpectedly crash into something along the way.
A neat side benefit of this feature is that designers can also now request that all ships fly on a spline as fast as possible, rather than setting a particular speed. So now they can just say “as quick as you can”, without having to tune to specific ship types, and know that all AIs will stay on it.
Continuing with the work of the past couple of months on the behavior tree editor for designers, we did more general improvements to this feature based on their feedback so far. In particular, we added some validation and error handling support, which checks over any behavior tree before running it and tells designers if it’s been misconfigured in some way, such as nodes on the tree missing an input value.
We also added in a bunch of new signals that designers can set their behavior trees to listen for, such as if the AI hears a weapon fired, or if they see an enemy. This was a fairly simple thing to add in theory, but it required having a general ability to send information signals from anywhere in the game code to the AI system to tell it that some interesting game event had occurred, so a lot of the work was in adding this ability to the code.
I mentioned last month that we were working on a solution to unify the Kythera string hash feature with the one used by the rest of the Star Citizen code. We managed to solve it by allowing Kythera to switch between its own version or an external one if desired. This required some fiddly refactoring in order to get it right, since the string hash is such a central class in Kythera, but we sorted it out in the end.
Finally, we’ve been working on an improved logging mechanism to aid debugging which we call a personal log. This is an ability to log information of interest from places such as within the code or from behavior trees, and have it be associated with a particular AI. It then allows you to filter your logging to see all of the events of interest that have happened for that AI if you’re trying to track down a problem. It also allows log messages to be placed above the heads/cockpits of AI, which can be a really handy tool for designers when they are working on behaviors, since they can annotate their behavior trees with messages like, “I’m moving to cover!”, and then instantly see this while playing the game without having to tab out of the game to check the state of the AI.
We did most of the work on implementing the feature this month, and we expect to get it finalized and into the hands of designers early next month. As always with new features, we look forward to seeing the results once they put it to good use!
Community
Hello Everyone!
We have been really busy this month, we always are but every month brings a different set of challenges and opportunities.
We launched a new show! Chris Roberts: Game Commander has gone over very well and we are proud of that. The show was designed to give backers a more intimate look at some of the day to day operations of the man himself. Chris Roberts isn’t afraid to get his hands dirty when it comes to making a game. I remember one of my first days here I stayed late and watched as he helped code part of the then unreleased Arena Commander, this was a big moment for me and we wanted to share that with you.
The Wonderful World of Star Citizen returned after a long hiatus, this is a personal favorite of ours as it is a fun way to highlight some of the best content from the ‘Verse. You guys are awesome and we are so happy to be able to share your work. Keep it up Citizens, our fan content and relationship with our backers is the single most special aspect of Star Citizen, also it is shaping up to be a pretty amazing game!
We have a new editor! Justin Chambers joined us and he has taken over editing ATV, 10 FTC, MTD, etc. He and Hennessy have been teaching each other a few things, which has allowed us non editors to be more active on the forums.
We now have a ship status page on the official announcements forum! This has been requested a lot over the past couple months and we finally were able to share it with you. A couple unknown ships were announced and we hope you have a better understanding of where each ship falls in the pipeline. I personally worked really hard on this and I plan on updating it monthly. Head over HERE to check it out it may answer a few lingering questions.
The ground work for a complete rework of the ‘Ask a Dev’ forum has been set and we plan on rolling this out in the near future. We took a look at what worked and what didn’t and we have a pretty good plan. We will hard reset all the Ask a Dev threads soon. Some CIG employees are very active in the forum, and some are not, our current plan is to curate questions in less active threads and get them to the people that can answer the questions. You will be hearing a lot more from the community team in these threads as we will be relaying the information back. Please let us know if you have a suggestions or concerns.
That about wraps it up for the community team. We are eager to spend another month with everyone and we shall see you all, in the ‘Verse!