Star Citizen: Around the Verse - Usables: The Universe at Your Command
Transcript — every row opens the video at that moment
- 00:00:15
hello and welcome to another episode of around the verse our weekly look at star citizen's ongoing development I'm sandy Gardner and I'm Chris Rose on today's show we examine our expensive usable system and look at what it takes for a player to pick up put down and even sit in an object in game as well as whether we break the record for most mess hall animations in one episode oh we probably will but first let's check in with the team for the latest bugs and block is affecting three point zero in this week's burn down welcome back to burn down our weekly show dedicated to reviewing progress on issues blocking the release of star citizen alpha 3.0 last week we ended at seven total must fix issues which were prioritized as three blockers two criticals one high
- 00:01:02
and one moderate so let's check in on progress this week so yeah what I'll do is pass this list of Gira's over to this list of bugs over to QA we'll gather up the bugs for them and put any new ones in pretty much all my notes for this are gonna be just the list of here the bugs that we've highlighted in our playthrough and I'll call out the ones that look like they're gonna need to be a PT must fix and and then call out Aaron to make a decision on like on which ones of those if he agrees with them all or which ones he doesn't this morning the doors and the easy hub doors and grim heads don't open it's been assigned over to Matthias it could be a DBA animation issue the rest of them are all for the most part or
- 00:01:50
back and related earlier today though we had a gameplay review with production leads and directors the idea of that was to go through what we want to do for evocati you know get up out of your bed in olisar get into a ship go round and explore do various bits of traversal and some quantum travel jumps do some exploration we wanted to really make sure that what we were looking for with so many and new bugs that had appeared that no one had bugs yet just to make sure that we got absolutely everything we really wanted to get fixed for the evocati and i'm glad to say that we actually only found three bugs all of which we already knew we needed to fix up for the other carry so that was really good the important stuff is four giant fixes stuff I don't think outside
- 00:02:38
of that any of those blockers for going to okati so we'll just see once we get one get the persistence I've fixed up and I think we could probably go with what else we'll picked up I did see an issue when I plan today and I'm not sure it's just the cutlasses all ships that the UI is is completely blurry and and the colors on least on the UI are just absolutely insane so I just want to make sure that that's that's just a Cutlass issue and not all ship why don't one thing from the engineer discussing the object container sort of opening up an editing Institute especially for lighting so you know Ariel's been doing some work Steve Humphries is kind of starting to get work but I think there's a disconnect between engineering stuff
- 00:03:27
which we have some taxa people just be working on by themselves versus what the users need and what so we were talking about trying to put a little bit of focus on that because I think the problem is that like there's things they've done but like listening is know about right and then maybe some of the things work but in the way it would be good for the artists anyway so what we hear is someone that can drag a bit of that process that can straddle between the technical side and the artistic side I volunteered you in engineering yeah that sounds good and again sort of like we talked about in the project directories Derek and I have to think that because ultimately all the tools programmers render Derek very well not all of them but two of the four basically would be it would be but what
- 00:04:17
happen is like it's you know finding out like walk you know like what would make it easier for you or Chris Campbell today panas or whatever and making sure that like we're doing the things because we have these tacks I mean arrows be working on the cross object container editing he's got QT windows just to bring up and stuff but yeah I think a lot of the on the content side people aren't even aware like I think it was only today and I think there's some issues opening it up but they want to fix it but so what I'd like to do is sort of have someone's driving that process I think is the global content that's kind of your job to extrapolate this should translate for engineering what they need to be for the tools and stuff making sure you're listening to
- 00:05:06
all the needs of the content traders because I think we've had a bit of disconnect it's like we need these things and so cheers get paid and then people sort of work on the chair know what's worse have attractive it doesn't have a cohesive like beat up like oh that right being slow-mo I think we're in slow-mo so this is the book the Clyde's working on right now and this will eventually catch up this is like the first time you guys have seen this in a few days right and we have been seen it's just fairly infrequently now yeah yeah typical typical happens on the I've been much to
- 00:05:54
get a low repro book for starmap yesterday so only as far as we know so the clock was actually running very slowly on the client and the effect if you look at this video here as you can see players starts moving he's moving very slowly he does eventually recover so and we have these four times that we've got from the ping and pong messages we enter two sample points on a linear regression and that's allows us to estimate this straight line and offset and slope and the reps and drift between two clocks and the offset between them and you don't account for latency we don't account for lateness see in these samples what we rely on is
- 00:06:48
the mathematical technique using to balance it out and the reason that we do that is because latency isn't symmetrical so the time it takes for a message to go from client to a server is very rarely the time equal to the time it takes for the message to go from the server back to the client so that can skew our time compensation algorithms a bit so we use several samples an average house users and say least squares method to try and balance it out so the bug was actually the one on the samples the first sample was getting rejected but then the second sample would being so you'd have an unbalanced error it was very large and throw the whole
- 00:07:34
calculation off take time for an the client to recover then so the fix was to make sure that we only ever enter the samples in pairs and if we're going to clear out the history because it's got to diverge from the new input through again then we only we clear out the whole thing up two pairs and we don't ever have a stray one left in we did a desk review with Aaron and and he basically sat with us played through the game and just called out issues that he fought with a big big things that would stop was going to evac ie there's only a couple of issues of that and then we got together a list that would come under the things that he pointed out we send the email to production and got the mas
- 00:08:22
fix labels stuck on all of those issues just so they've got more eyes on a full production right now I'm testing a bug that was the gamescom bug the big one that caused the crash on stage so the reason the bug was happening on stage is that we weren't free in the tope the tokens for each of the seats that a player may take these are like tokens that allow a play to get in to getting to the copilot seat getting to the the pilot seat maybe even exchange goods at a shop or all the different different things that players can do and we weren't freeing all of the tokens when it when clients would disconnect or crash so the bug fix wants to insure that on a client disconnect we picked up the signal and ensured that all the tokens that they were taking up at the
- 00:09:09
time were freed and then said that any new clients that were either in the game or connected later could then retake their tokens and take the seats the last two [Music] to the plane of the solar system when you do a jump because turns up market system and that changes several things perfectly marked bugs now is the stations around crusader near Portola start the you can have to for some reason you jumped on your way off i think is obtaining issue because the arrival radius is like and for something then small he really should just travel
- 00:09:56
around closer we've currently got two bugs left now before we go to evocati yesterday we had the persistence issues that were causing a lot of grief got fixes him for those QA in austin got a new build for that and tested them they all seem to be fine so we were actually looking on course to have gone to the evocati group we had a book come in last night from ATX as we were preparing to push to evocati it was a server crash that happened when ships were d spawning our server it was picked up by one of our network engineers in the UK who ensured the cache tokens were removed prior to an entity being shut down and
- 00:10:45
it means that the servers are now stable as we prepared for another peak evocati push came in this morning we had an email from our us studio in Austin that came to as whilst everyone in the UK gone home and this kind of outlined what the underlying cause of a few other issues we were seeing was the the main course seemed to be that our build system for for some reason hadn't been picking up any changes in our persistent data cache over the last couple of bills which is seems to have been the the main reason as to why we had a few issues like all the sharp items not being present at all in any of the shops and then also once we'd run a build with the with the
- 00:11:34
persistence cache properly updated there were a few crashes related to this because in the previous time the interim time had been some work that had gone on with the persistence cache which then had a bit of a knock-on effect of causing some other crashes frustrating experience and you're going to get a whole bunch of people download it and then if the frequency of crashes is relative or proportional to the amount of people playing there will be a lot more you'll be having pressures every minute to go because you're gonna fill up these instances pretty quickly I would guess every ever County would be like this is the very first time they get to play 3-0 so they'll be excited don't download it then though we get
- 00:12:22
kicked out to the desktop like what I can glean out of it right now it is very strange so it's gonna need some digging as to why this particular sequence of events has occurred we want this to be as clear and as stable as possible is you testing the environment it's going to be plated meaning 3.0 is multiplier you test in multiplayer you just connect it to a server and then I guess just make sure the UK QA for the gym and QA is available - oh yeah so as you can see we've started our official go/no-go sync which is the place where key stakeholders from each discipline
- 00:13:10
evaluate the build with Chris and ensure we're all in agreeance that it's ready for the publishing process these will be held almost daily going forward this week our issue count fluctuated up and down based on build stability when we hit 0 issues yesterday we held our first go/no-go sync and we discovered a few new issues we needed to fix prior to this release we had another sync today and even with our new fixes that build remain unstable so at the time of filming this we've reduced our must fix issues from last week by 2 meaning we have 5 issues blocking this first release we're getting very excited by the prospect of wider testing and cannot wait to get this massive update to the star citizen universe for you to play in the very very near future see you back next week here on burndown thanks Eric if you're looking for more information
- 00:13:57
on what bugs move smash then be sure to check out the production schedule report on our website now let's turn our attention to usable x' which basically consists of any items that players at AAA can't interact with in the game this includes everything from picking up a cup using a laptop to hack and control point in summary or even sitting at a table in the mess hall so there you go devising a system that could make the experience feel real and natural while covering the vast amount and variety of usable that would appear in the game was a huge challenge the team had to tackle yes so let's take a look use of balls for us started in the lead up to last year citizencon
- 00:14:47
we've kind of realized that you know we have a lot of seats in the game and the only type of seats available to us with the pilot seats pile seats are complicated you don't want to say like oh it's a park bench or it's you know a bench in the mess hall or a bed you don't want to say like that has the same attributes as a pilot's seat we wanted to create something simplest we came up this idea which is just oh it's just a simple seat is super super lightweight and easy to mass-produce so we started with art then it kind of grew into to also incorporate other things like the first the first actual test case of this simple seat which meant we had to change the name really was there hacking laptop in the star marine so that's there's no
- 00:15:37
seat involved at all so it became like more like yeah I use about something to use and when you use it it plays an animated reaction on the player and it might be multiple ways you can use it so you have to hold in a fort on top of it so you can select like oh I want to hack the laptop I want to close the laptop maybe saw and closed it now you need to open it first you know all that kind of complex behavior so in a game world it's like talking to babies right when when I tell you sit on a chair you know how to sit on a chair because you've done that a thousand times but what happens in the game world is that the AI needs to actually ask the chair how it is supposed to use it so it's like the the chair needs to hold the data of you can
- 00:16:26
sit from all those different angles you can use those animation to do so when you are actually sitting you can play this this and and that stuff if you're sitting and I'm attached to a table you can pick up stuff that's on the table but then again well when you are sitting on the chair you know that there's something on the table and you just pick it up di has no conscience of that so you need to tell or tell Dai - basically you're on a chair that's linked to a table and so the table tells you I also have a glass on me and yeah I then has to know that it can pick it up but basically we're gonna we're remapping all the way our brain are hardwired for the AI step-by-step so all that seems trivial is actually something that we need to
- 00:17:15
take care of so it's like we're mapping every conscious choice linked to walking so you're putting your foot up putting your foot forward putting your foot down putting your other foot up and you basically need to tell the AI to do all of those stuff one by one instead of just relying on its ability to just in you know do what it's supposed to do because there's no such concept so after the failure we basically realized that we needed the angle of the other discipline in a more involved way and then we have had up until now so coming from the UK studio in the densest limb against lins team what we were joined by Jamie Visser he who is a gameplay programmer we started working on the improvement of the workflow and how the
- 00:18:03
animation and geometry of the usable were processed in the pipeline and we got a few updates in that were actually speeding up the pipeline so much such as all the alignment around the usable that I talked about we actually read that that from the animation so you don't need all of this heavy clunky markup which basically sped up the art process so much and from Austin we were working with Bryan Brewer which was helping us from the start in the first installation and kept doing so creating some kind of triangle of people coming at this system from all of their angle and trying to covering all the bases and all the cases that we needed so we were both able to basically optimize the pipeline for everyone because one of each discipline
- 00:18:52
was involved with citizencon there was some request that we didn't see coming such as older repair and maintenance in action warden Idris for example meaning you have to take components out of certain parts of the ship inspect them replace them carry them around and all that was not ready the first time we tried to do all that and so basically what we realized is that the system has to be request base and be able to kind of cater to all of those new requests that was they were coming in so we created a whole process where people can actually request usable we created a way to basically categorized those requests and you know identify where what were stuff that we could already do and I
- 00:19:43
would go through the pipeline easily and stuff that we actually had to build some tech for and coming out of citizencon there was a lot of stuff that we need to take for so wants to start the the team was actually created it was really easily to pick from those and actually just go in here okay let's let's lift that locker let's lift that locker let's lift that locker and just go for it so the first time you've you've seen a usable list the hacking panel and then we've kind of moved on me also converted there medopad dispenser that's gonna be a usable hopefully in the next release so we're slowly kind of growing like the players interaction with the usable and then at the start of this year designers wanted to use the usable x' for a eyes as well so we started this whole new
- 00:20:34
sprint paradigm where we're working like with design we're working with prop team that were working with the animators everyone together in in a task force that's gonna grow this kind of AI actors interacting with things in the world in lots and lots of different ways so the first case we had was the mess hall table so we had a single big usable like a long mess hall but with eight different different actors could sit potentially sit at the same time if you choose to eat together like a family they could all sit there at same time so I was first we had to do we had to take the usable now was a entry point like a single actor could use it I mean how to make sure that you know all all these eight
- 00:21:24
actors could potentially use it at the same time you know they can do different things in it so we'd have to grow their idol sets so we don't want them all to sit Sachi uniform we wanted to be allowed to have a small offset play different animations so that's another thing that was added every place on a mess table is slightly different like you can't use the same animation necessarily to get to sit at the end bit of a bench as you would when you sit in the middle of the bench you actually got more entry points if coming in from the side of something than if you come in from behind it as well so to make it feel natural you don't want someone to have to walk around the table in order to get to the end you want them to be able to use the shortest path like any human would and
- 00:22:11
and the ones to get on it as well as they hold sort of what did it do when they're when they're at the mess table I mean if there's eight of them how do you make it break it up so it doesn't feel like that their religion is just lined up in in four slots on each side doing the exact same things playing through the exact same sequences like how do you make you feel natural and as well as getting off like you know you want to make sure that they when they when you come out of a usable you'd always go out the same way you don't you know always go out behind you and then set off in your new direction you might go off like slightly to your left or slightly to right because that's where you want to go next and then I think the complexity if you take the missile as an example there's been there's the tables there's things on the table right it there might be a clause there might be a plate yeah
- 00:23:00
you don't need to eat while you're still using usable when while using usable you're actually using another thing on top of it so there's this stacking behavior that kind of grew this feature beyond the original I mean if you look at the hacking laptop it's just the case of getting their hack for a certain amount of time they're playing my choose two cones on the hack yeah and say like okay I've been interrupted it or that the laptop itself says well you've finished a hug this useful interaction is no longer available to use you need to stop using it which means you would play there play the excess it was a simple like entry animation leads to like a looping idle where you're doing something because of the interaction you've chosen and then you can either choose to exit it because you you don't
- 00:23:48
want to do it anymore you want to console the interaction or they're usable itself says well you can no longer do this so now you need to play the exits here and so for entry idle exit but then when you come to a a I they might want to do lots of things but when they when they use in the use of alts you know they because of this tacking behavior I mean the same could be true for something as simple as two laptop you might you might you might go on to it you might go like okay I go up in my lap I said I want to hack it so you know I'm gonna hack it but then I'm gonna go like oh actually I don't want to hack it and I just wanted to destroy it because my hack failed so I choose like the destroy options I happened to bring a glass of water with me I just pour it over their laptop or forego nothing you know it's a destroyed and now no longer allowed to use it there's nothing you
- 00:24:36
can use it's a destroyed object I think that the code to destroy it would be instilled in the item 2.0 well that would be another component you know this is a destructible objects so if it describes it and then that and it's up to be usable to link an interaction assess I want to destroy it play the suitable animation and then its own point in the animation triggered the disruption behavior the idea is that this useable component is like the glue between like what you can do and what happens when you do them how do we make the use of wolves feel more real and natural I mean a lot of that comes down to having variation in the animation so to begin with we had we had kind of
- 00:25:26
cumbersome like if you look at the entry alone we had that we had a set up the bridge was like you would say right here's our usable we have five animations so for each animation we say this animation starts here this animation starts here this automation starts here and so on and then in data you would have to say okay we set up this point here we linked that to this animation and then they I will choose the one that's most natural based on you know where is moving from and which direction is coming in from and try to solve a really nice natural motion in 2d useable but of course we realize by quickly that that wouldn't really scale because now you can have to you know if you want to create another one that's another data point and then
- 00:26:13
you're gonna have to do it off every single useful that's a lot of data you have to set up we will basically approach the problem from two angle which is we need this quality of animation this fidelity and that this basically we needed to look good and feel alive that's one thing and we're getting closer and closer to that mmm getting it just right but the other thing is we're gonna have to build like thousand of usable to populate all the outpost all the landing zones some insights inside ships on planets and such inside all of the levels of squadron 42 we can't afford for it to be too heavy on production we need to optimize the process we need it to be actually fast so we're actually trying to get all the good stuff without any of
- 00:27:02
the bad stuff which is we need it to look good but we needed to go fast we needed to be smart but we needed to not take too much time of too much people and be too expensive on production and we needed to be able to basically if someone requests are usable if he gets if he gets it the day after then my job is done so what we're doing instead is we we're just saying like okay give us all the entry animations and then give it just like a big group of animations and then we just extract the movement from that those animations and we'll build up the entry points from that validated points because you know you don't want to be able to end reusable by going through another usable of through another person or if it's outside the navigation mesh then I wouldn't be able to find a path to it so we can remove all these dynamic points we add them
- 00:27:50
however we want really and if someone wants to add a new entry point or different style of entry they just you know put it in there it builds it the data dynamically and the more variation without that when you're already you're gonna get a much more natural style like you might have like a way to sprint into a usable or just walk into a useful as well that's like getting into it from like the other side which whichever whichever feel more natural and gives you that variation as well because each animation will have its own little unique style so you could have the same usable you can be looking at five six a is using it and every time they're playing a slightly different animation getting in there and then once that once once you're in the usable itself having variations in how you look while you doing that it's another great way to to
- 00:28:40
give it more sort of more life so making sure that there's not just a single single style of sitting lots of different styles and and and very give its variations as if you're staying on a seat for a long time make sure that constantly shifting around fidgeting about you know settling into a new pose we're hoping anyway that that will give it a more more natural look and another big thing is of course making sure that while if you're looking specifically at the seat that's usable making sure that you know the upper body is still available and they can do things like they can taking glanced around you know if the play comes into view they can maybe look at him or just acknowledge someone else walking past them even though they're busy playing playing what should be a usable interaction one of
- 00:29:32
the thing that the usable has been true is this this process of actually failing once which I'm smiling about was actually painful but the good thing though is that it just highlights how energy of the process is especially when we're trying to push the envelope to do something new and something fresh something that has never been done before we're doing that we have to try things and we have to you know sometimes take things out that we thought worked and didn't and technique new things in that we thought weren't necessary and actually were and so what really has been good with the usable is that following this first failure we abducted a really more fluid approach where we try something we'll review it we put it to the best of you know put it through its paces and if
- 00:30:20
it doesn't work we change to something else and we just try to cover every problem that is thrown our we're not one by one but as one system trying to make it evolve to cover everything rather than try to like extend it over and over until it crumbles from so looking at but like the Sprint teams have a sheets but but the biggest breakthroughs have been I mean I think the biggest one really for me personally was when we were able to get rid of the alignment slot so not having to say like this is an entry point this is the animation in place but being able to just say here is a group of animations that will let you get into this usable you can dynamically build all the data you need in order to select which one is best for your current
- 00:31:08
situation and like was doing the same on the way out to say like hey I'm gonna go I'm gonna exit this seat or I'm gonna stop hacking now and I'm gonna go left you know just making sure like a small thing like that just making sure that the exit is already taking him in the direction that he's now gonna move it's just such a massive advantage to like how you scale this and and and and give this sort of the fidelity that it needs but then I other things is you know obviously we use we try to use AI K where possible to allow someone to be slightly out of alignment so you don't have to sit perfectly on a seat you don't have to get perfect on to the hacking console you know but it's constantly allowing a little bit of like fix up in the extremities so VR needs to
- 00:31:57
read a reach occult make sure that we're not forcing you to be perfectly aligned with that cop that a cop can be off by a bit that could be rotated slightly differently and we can we can use a bit of AI K to get the correction in the hands of make the the reach feel natural and look natural and and just try to reduce snappiness wherever possible I mean we used same when when positioning as well you know if if we need something to be quite exact we always try to average the correction out over a longer period of time so that you don't see that kind of if it's five centimeters out you don't want one frame to say now fixing about five centimeters because it will always you know 60 frames a second but five second five centimeter leap in one frame will be
- 00:32:47
noticeable so if you if you can kind of smooth that out and try to make it as data-driven as possible you know give the designers the ability to say like right do the positional smoothing of this amount of time say we did okay like right when do we start okay we've got two types of okay we try to use we got animation driven okay which is in the control of the animator the animator says like right this is you can use this okay first of all they can say whether you can use it or not and then they can also blend it in and out over time use that a lot for for weapons like if you want to reload a weapon your left hand has to come off the weapon but you don't want to snap it down to the magazine you wanted to you know gradually come down but you might not know where it is because you might hold the weapon differently because you've installed some kind of custom attachment on it
- 00:33:34
that wasn't there in the original animation so we had already had offset your hand to grip it correctly and there the other type of a I came with more of a sort of design driven I came where they can kind of go like right at this point in the animation I wanted to start reaching this point this cop this part of his face you know finished salute you know fix up a little bit where the hand goes and that that's more darkness as a layer on top of animation so you have the animation and then you have there the data from the design they're saying you know how are we gonna blend this in how we're gonna blend it back out and what what what hand is moving you know and where is he moving to what is actually interesting with the usable
- 00:34:23
steam in a more human kind of aspect is like we have basically I'm a member here in Frankfort we have Jamie over in the UK and the enca steam is actually lending hands a lot in the in the UK Ben Curtis is working on props and um geometry and is often lending us his hand from the UK also but we're also working with Brian Brewer over in Austin so in the u.s. today we happen to be doing a pickup shoot for our usable system we're gonna be doing things like opening the door we just finished our door metrics and fin figuring out what we need for that the toilets we finally have settled on toilet metrics so we have captured a couple little moves that we need to flush out our toilet system good Adele we do a little impromptu shoots like
- 00:35:11
this in order to capture the little bits and pieces that we've been redoing realizing that we need with research and development we have something that we've been capturing called transitions we are there are little animations that help us transition from one animation to the next what this allows us to do is anytime we have a big shoot at Imaginarium studios or if we set up our full system we have these little transitions that will help us get into and out of those those in particular motions some of the usable is are quite complex in that if we want to keep interaction sequence so we might want to say like take the trade for example well I say say that when you go up to use the trade dispenser you actually do the full sequence you so you go up you get the tray you get caught you get plate you get a knife and fork and that's one big
- 00:36:01
animation but during that one big animations he's actually gonna have to like become a owner of a cup become oh man our plates become owner of a fork become owner of a knife then release ownership from all of those and it might be like a as well because you know wifey he didn't step all the way up where he came up in there was a slight angle so every time he's touching one of those items we might want to do a small Cade animation driven or procedural fix up to two reached item its way its way I mean you it's where you draw the line right they they're whole like the whole idea is that with the usable sister you shouldn't have to they should be so scalable that that unless unless we reach a point where we're going like right we're taking it too far now this is going to take too long to support a scale back and let's simplify this as long as you can describe it in in the
- 00:36:49
in data for the code it hopefully shouldn't be that much different as you can see usable x' will be an essential part of the universe going forward that's why the team has put so much work into making the system as robust as possible and we've still got a lot more work and functionality to add because being able to interact with a wide variety of items and locations will only add to the realism that we're trying to achieve with star citizen and squadron 42 and that's all for today's episode for more information on the development process take a look at our production schedule which we updated tomorrow yes thanks to all our subscribers for your support we could only produce around the verse bug smashers and all our other great shows because of your guys support so thank you very much yes and to all of our backers your interest and enthusiasm to see a game done differently is what has made star citizen possible yes it really
- 00:37:37
has and thank you guys very much as well and until next week we'll see you thank you for watching so if you want to keep up with the latest and greatest in star citizen a squadron 42 development please follow us on our social media channels you
Transcript from YouTube’s automatic captions — punctuation and Star Citizen jargon are approximate. The video itself is hosted by CIG on the official channel.

