Vai al lettorePassa al contenuto principale
  • 5 ore fa
Un videodiario sul sistema Item 2.0 di Star Citizen.
Trascrizione
00:15Hello and welcome to Around the Verse, our weekly look at the development of Star Citizen. I'm Sandy Gardner.
00:21And I'm Eric Tyron Davis.
00:23While there are a lot of features planned for the upcoming 3.0 release, one that's been affecting just about
00:29every department is Item 2.0.
00:31Yeah, that's right. And migrating every ship to this new system is an enormous task.
00:35So today, we're going to dive in and explore this new system and the wide-ranging effects it will have
00:40on all of our ships and vehicles.
00:42But first, let's go to Austin and Turbulent for their studio updates.
00:46Hey guys, Jake Ross here, producer in Austin. The wheels are in motion on several features here in Austin.
00:51Let's dive right in and see what's been going on this month.
00:54Right now, the Austin design team is completely focused on things related to 3.0 or near-term goals.
00:59The core tasks we've been working on mostly are state machines for the first few NPCs we'll be implementing,
01:05state machines and organization of animation assets for the mission givers, like Miles Eckhart, and the Nav Beacon system.
01:12State machines are how we not only visualize how the NPC will behave, but also informs the animation team when
01:18and where our animations need to transition between each other.
01:21We hand off these state machines to the animators, who then improve the behavior or give backup feedback.
01:27Not only does this drive the animations we need, but it also guides our NPC's behavior setup in subsumption.
01:33The Nav Beacon system will allow players to create their own roads throughout a given star system.
01:38These can be used both in the vastness of space as well as on planetary surfaces.
01:43Beacons are physicalized objects that are deployed from ships and give players visual markers to lock onto for quantum travel.
01:49They also point to and fly towards when used on a planetoid surface.
01:54Players will be able to grant use access to others as well as hack another person's beacon.
01:59Both allow you to use someone else's Nav Beacon.
02:02Over time, beacons need to be serviced by the owner, restoring their energy source.
02:06Finally, because they're physical objects, you will not only be able to find them, but destroy someone else's beacon, if
02:12you so desire, which should make for some fun gameplay decisions.
02:15Do I hack it and use it myself? Do I destroy it so others can't travel? Do I sell it
02:19to pirates as a potential ambush point?
02:21There are lots of opportunities with this new system. We're excited to work on it and see it progress in
02:26the future.
02:26Finally, Miles Eckhart development is currently in progress.
02:29We have been organizing this mission giver's assets, which are being polished by the animation team in our Derby office,
02:34creating his tape machine, and getting his initial behavior set up and running in subsumption.
02:38Eckhart will be unlocked to the players by accumulating reputation with him, earned by completing other available missions.
02:44Once unlocked, you can visit him for a wide variety of missions.
02:48The new mission manager will drive his selection, but you will be able to choose from anything he currently has
02:52available.
02:52We're really looking forward to getting Eckhart into your hands in 3.0 release.
02:57The PU game director Tony Zurovec has had his hands full with several things this month, a major part of
03:02which is subsumption.
03:04As a reminder, subsumption is the data-driven and highly abstracted foundation on which all of the AI and mission
03:09logic in Star Citizen is constructed.
03:11Tony's finished conversion of the subsumption tech to Linux for integration with our backend services, and completed the shopping service
03:17for GameCode to start hooking the new shopping tech into.
03:20He's reviewed and directed mission scenarios for 3.0 as well.
03:24Ship artist Josh Koons has been working on the ship LODs for the Cutlass Black.
03:27It's a very consuming task since our LODs are mostly handmade, and the ship he's working on is quite large
03:33with many pieces that have to be optimized.
03:35In addition to optimizing the mesh, he also reduces the material IDs as he goes down the LOD chain.
03:41This way, the mesh will have less draw calls from a distance and be more efficient.
03:44Our server engineers have been working very hard since our last update.
03:48We've been providing support for the shopping service, which is a non-diffusion service.
03:53This service communicates with Diffusion and the game systems through our Diffusion gateway.
03:57The gateway allows external and non-diffusion services to communicate with the game as if they were internal Diffusion services.
04:04Recently, we've been focused on integration of the Diffusion code into the primary game development stream.
04:10This will be deployed with 3.0.
04:12This was a massive integration with a lot of moving parts and has required a large amount of collaboration between
04:17server engineering team and DevOps.
04:20The effort has taken a few weeks to get everything moved over, tested, and in a state where it can
04:25be deployed.
04:25From an internal perspective, we have been working on a service creation tool.
04:29This tool provides a simple-to-use UI, allowing engineers to create new services, add or remove or modify components,
04:37and management and resource control.
04:40The output of the tool is a basic service shell and set of source files that are customized for the
04:44new service.
04:45This is a huge time-saver and allows new engineers to create services without having to worry about any boilerplate
04:50work, and thus allowing for rapid service development.
04:53We have started to add Star Citizen-specific extensions to Ooze.
04:57For those who don't know, Ooze is a language written by lead server engineer Jason Ely.
05:01It's the scripting language that drives Diffusion.
05:04These extensions expose Star Citizen-specific constructs to Diffusion, allowing services to provide more intricate support for gameplay features, helping
05:11to move the game into a more distributed architecture.
05:14Finally, there has been work on the router mesh functionality.
05:16The router mesh distributes services over multiple router endpoints and provides redundant communication paths between other services.
05:23The mesh will use a technique to isolate high bandwidth services away from lower bandwidth or more critical services.
05:29The primary responsibility of the router mesh is to provide high levels of service availability and performance.
05:36This month on the Persistent Universe animation team, we finished up the two-handed carry animations.
05:41This includes standing, crouching, and for Zero-G.
05:44Standing, we can pick up 25 cm, 50 cm, and 75 cm crates.
05:49That is the new standard metric for crates and game that you can pick up.
05:52We can pick them up from the floor all the way up to a shelf that is 175 cm high.
05:58Crouching, we will be able to pick up 25 and 50 cm crates from the floor all the way to
06:02a ledge that is 100 cm high.
06:04In Zero-G, we will be able to grab 25, 50, and 75 cm crates floating around in space.
06:09Code and tech has hooked it up so that you can retrieve cargo in Zero-G, EVA back to your
06:15ship, stow your acquired loot in your cargo bay.
06:17We also did a last-minute mocap shoot in our office when animation director Steve Bender stopped by our Austin
06:22studio for a visit.
06:23Steve put on the mocap suit and ran around like a crazy person, capturing all of our FPS starts and
06:28stops for a stocked rifle locomotion set.
06:30We also took this opportunity to get Sandy Gardner in the suit and captured some exercise motion for our female
06:35characters when they decide to do a workout in our exercise usable.
06:38In this mocap shoot, we stuffed our alien animator Brian Brewer in the suit as well, because we just about
06:43killed Steve Bender on the first day, and captured needed animations for the crouching carry animations.
06:47We are starting work on some specific NPCs so that you can go into a pub, get a drink from
06:52an NPC bartender, or go into a shop and buy things from an NPC shopkeeper.
06:56Animation is working closely with design to make this experience a fun experience for all.
07:01On the ship animation team, we have been continuing our improvements to the cockpit experience.
07:04Working with the UK studio's design and programming team, we are in the midst of updating our GeForce Blend Space
07:10poses, utilizing a low-pass filter for smoother, smarter camera motion.
07:14As well as adjusting the cockpit geometry to allow for button presses.
07:18In addition to this, we are creating a system that will allow us to make comms calls within the ships
07:22during flight.
07:23This month, the DevOps team has been busy optimizing the build and publishing systems.
07:27The game builds are growing rapidly as content continues to pour in for 3.0, so we're constantly tweaking and
07:33tuning to keep up with the demands of the dev team.
07:37Ahmed and his team have been collecting feedback on network performance from our three locations, and comparing that to internal
07:43data so that we can optimize network performance wherever possible.
07:46This is an ongoing task, but we've already found some good opportunities for improvement in this area.
07:51For May, the Austin QA has been working heavily on regression of bugs, particularly on a massive sweep through our
07:57open bugs to see what items are still valid given the new systems and tech coming online for both the
08:02PU and Squadron 42.
08:03This allowed us to eliminate a considerable number of bugs before they ever reached development, saving our busy developer cohorts
08:10time they would have spent investigating issues that no longer were occurring on the latest build.
08:14Major testing items for our groups included actor serialization, multi-threaded resource containers, and network transport queue for the engineering
08:22teams.
08:22We continued testing the moons in the Stanton system for any potential issues, such as collision and performance testing.
08:28New vehicles, ships, and FPS items came online throughout the month, including the varying P8SC SMG that we were very
08:36excited to play with.
08:36In addition to testing the continued Item 2.0 implementation, all of which have kept our Arena Commander and Star
08:41Marine testers very busy.
08:42On the new system front, we've been working very hard testing the new procedural breathing and stamina system, as well
08:48as a new air traffic controller.
08:49Other projects we've been assisting with have included testing some updates to our current game launcher, primarily bug fixes to
08:55our players, but also a few quality of life fixes.
08:58We continued providing additional support for the animation groups here in Austin, including mocap file cleanup, supporting setup and teardown
09:05for pickup shoots, and in-game video captures for final reviews.
09:08Regular editor and engine testing is continued as well, with Austin QA completing regular smokes of the subsumption editor, procedural
09:14planet tools, as well as our normal editor testing.
09:17The player relations team has been extremely busy preparing for upcoming 3.0 work as well.
09:21The biggest item that players will see is the new player experience that will ultimately go on the website, and
09:26will match the new content coming up in the game.
09:28They'll also be adding to the Avocati ranks in the coming weeks, and are excited to announce that they'll be
09:33adding headcount in Austin, Manchester and Frankfurt.
09:36We're getting more and more excited the closer we get to 3.0 release.
09:39We have a ton of new content we're pumped to show off and get into your hands.
09:43Thanks for everything you do, keep it up, we'll see you around.
09:48Hi guys, here's your Star Citizen platform update.
09:51But to start, somebody you haven't seen in a while, we're going to see Benjamin Fardell to talk to us
09:56about other projects here at Turbulent.
09:58Hi, I'm Benjamin Fardell and this is the Turbulent monthly update for the month of May.
10:03This month we've been working really hard on redesigning a huge section of their RSI website.
10:07What we're designing now is a consolidated view of everything that's currently playable, what you can currently do in the
10:14game,
10:15and that will hopefully make it more understandable and more usable for any newcomers and existing players too.
10:20Our UX and content teams came forward to us with a lot of examples that we took great inspirations from
10:27about websites that felt particularly immersive of games that were making it easy to get into their universe,
10:33their backstory and get involved into what the game is without actually having played it yet.
10:38And that's what we're going for now so that people can come and know what Star Citizen is about
10:43even before engaging the rest of the community.
10:46What those websites have in common is that they make high use of a clean, streamlined design
10:52and images and videos that make you feel like you're coming into the game as you watch them.
10:59So that's the inspiration that we took from there is we're making it all about making Star Citizen shine in
11:05the website
11:05by showing and showcasing what it's accomplished so far, which is fantastic.
11:10We feel like we have more than enough material to make a compelling view of what Star Citizen is now,
11:16even that far into the process.
11:18We also took a lot of inspiration from what the community has been producing.
11:20We've witnessed a lot of incredible productions from members of the community, videos produced in the director mode,
11:26but also tutorial videos and streams, the whole setups that people have when they broadcast about Star Citizen.
11:33And that became a great input in the design that we put up for Star Citizen.
11:38A new module we're implementing for this new release of RSI is a new player guide,
11:43which is going to be a new module that covers all the bases you need to know,
11:48not necessarily if you want to get good at Star Citizen from the get-go,
11:51but if you just want to learn how to start playing the game.
11:54So we're working really closely with all of the CIG teams in player relations, QA and marketing,
12:02so that we can cover all the bases of everything that new players need to know when they want to
12:07start playing the game.
12:08And we're designing this as a modular interface that we can make evolve as new patches come in and new
12:13features come in,
12:14so that it can become a staple feature of the website when you want to point to something that's currently
12:21playable in the game.
12:22So keep your eyes open for this new and redesigned Star Citizen website coming in this summer.
12:28So in the past few weeks, we've been hard at work reviewing the first two months of live operations for
12:33our Spectrum Alpha.
12:34We've been reading all of your feedback, compiling all of it.
12:37We've already begun some work, but in this release that we're preparing now called 0.3.5,
12:43we've got major updates and major changes to the system, which I think you guys will like.
12:47The first one is we're transferring the view preference for threads.
12:52So instead of somebody creating a new thread and choosing which type of discussion,
12:55it's going to be fully managed by a view mode, which the viewer can decide.
13:00So you'll be able to set a global setting to decide if you want to see threads as nested or
13:04chronological,
13:05or we call them classic now.
13:08Or you can also, per thread, decide that you want to see this thread as chronological, but this one is
13:12nested.
13:13And so we're going to process your choice across sessions.
13:16And so this basically becomes a complete user preference.
13:19Hopefully, guys who prefer chronological threads versus nested will be able to just see chronological across the board,
13:26and hopefully you guys would like that.
13:28We've also done major work in this release to try to unify what we call the red state,
13:33which is if you've read a thread or a reply already.
13:37And so now we've changed the UI so that we display a yellow dot for items that you have not
13:43read.
13:43So this will reflect in your sidebar on the left, but also on threads and on every reply within the
13:49thread.
13:49And so this will help nested thread users who want to know if they've already read a reply or not
13:55through the tree.
13:56Even if it's not chronological, you'll be able to see, I haven't seen this reply or I've seen it before.
14:01One major change that we're also implementing is related to tags.
14:04So we're changing the way we're now surfacing tags on the community index so that you'll be able to jump
14:13directly from the list of channels to a tag straight up,
14:16which is basically more functional as a subform.
14:20The tags are also now can be set to mandatory.
14:24So when you create a channel, you can say this channel requires tags or not.
14:29They're browsable from the community index and from the channel directly.
14:32They're also bookmarkable, so you can bookmark a tag within the channel if that's what you're interested in.
14:39And there are also now these bookmarks, which are now, and this applies for every bookmark,
14:45every bookmark are now renamed.
14:47So you can go in your manage bookmarks and change the name of your bookmarks to something that you want
14:52to organize your sidebar the way you want.
14:55And so this applies to tags, but also to every other type of bookmarks that you'll store in the sidebar.
14:59035 also comes with major changes to search.
15:02We're adding new filters that will allow you to filter by author and by role.
15:07So you'll be able to search for all staff posts, for example, or search for every post from this user
15:11within the community or all communities you have access to.
15:15So this will make search more viable.
15:17It's also now accessible on mobile, which it wasn't before.
15:20So now if you're on the mobile screen, the search options will display and you'll be able to use them.
15:25035 also comes with a lot of work behind the scenes where we've been looking at usage patterns over the
15:30past few weeks.
15:31And there is a lot of performance updates we've done.
15:33So Spectrum should load faster for you guys.
15:35The thread listing should be at least 10 times faster than it was before.
15:40We've added a lot of server side reporting so we can track client crashes and basically try to preempt fixing
15:47stuff that you guys without having you guys report them.
15:49It's all automated for us.
15:50So that's really great.
15:51So this is it for 035.
15:53So a lot of changes coming up.
15:54We're hoping that by the time you see this, it's already live.
15:58It'll be a matter of days if that's not the case.
16:00So see you guys on 035.
16:02In terms of 036, which is our next shorter term version, we're working on revamping the mini profiles to display
16:08more information about you guys.
16:11I have a bunch of actions available on the mini profiles.
16:14We're going to more of a columnar display.
16:16We'll be able to jump from the mini profile to a user's post and take action specifically on a user.
16:22This is where we're going to add later on, not in this release, but later on all the functions for
16:26friendsness.
16:26Friends system blocking, stuff like that will go in that area.
16:29The major feature for 036 is the availability of custom roles.
16:34And so we want orgs to be able to add additional roles to their org, assign roles to their members,
16:41all done through the mini profile directly on Spectrum.
16:44So that's going to be a big thing for 036.
16:47There's also work going on in the editor for the forums to allow inline images, link formatting and more formatting
16:53options.
16:54This is turning out to be a bigger project than we thought, but we're hoping that it's going to be
16:58ready in 036 for you guys to use straight on the live site.
17:01There's also group private messaging that we're trying to achieve in 036, though this is more looking like a 3
17:08.7 feature, but we're still working on it.
17:10And of course, all of the background work related to voice transmission and game integration is also ongoing.
17:16But, you know, this is basically what we're looking for in Spectrum for 036.
17:22It's great to see Subsumption taking another step forward.
17:25The system is the bedrock for so much of the game, so it's exciting to see it all coming online.
17:30Yeah, and the PU game director, Tony Zurovec, who is creating the tech, is in Los Angeles this week working
17:35with the team on Subsumption and many other important features.
17:39Another new system that you've heard mentioned in previous Studio Updates is Item 2.0.
17:44It lays the groundwork for swappable ship components and so much more.
17:48Once fully implemented, Item 2.0 will provide the framework for many cool features to come.
17:53Yeah, and although converting ships to this technology is well underway, we thought it'd be good to explain the facets
17:59of this system
18:00and highlight just how important Item 2.0 will be to improving the overall Star Citizen experience.
18:12Hi, I'm Kirk Tomei, and I'm the lead technical designer here at Cloud Imperium Games.
18:16My name's Mark Gabin, I'm a senior gameplay programmer here, and I'm also known as the bug smasher-ish.
18:24Yes, it's that tacky, but it's great.
18:27Hi, my name's Ashram Kane, I'm a producer here in Los Angeles working primarily with the engineering and tech design
18:33team.
18:34So part of my job is working with engineering and tech design to get all of our ships converted over
18:42to a new framework,
18:43our Item 2.0 framework, which is going to support all of the multitude of features that we want to
18:49have in our ships moving forward in the game.
18:51The reason we had to do this conversion to get all these ships into this new framework was to support
18:57the kind of features we wanted in the long term.
18:59In the case of ships that already existed, we do need to update various components.
19:06The seats, the way we enter the ships, and the way we interact with the items and the various systems
19:11on the ships,
19:12so we can make them work with the new interaction system.
19:16In the cases of new systems, we need to implement them in accordance with that new architecture.
19:24It's easy enough to make a spaceship and put it in the game. Not that easy.
19:28But compared to what we're trying to do, it's a walk in the park.
19:31But when you want to have a spaceship with modular components that's upgradeable, swappable, changeable, damageable.
19:38When you want to have ships that die because components fail inside, or ships that explode because of damage done
19:45to important internal pieces.
19:47That's not something you can do with an out-of-the-box system.
19:51That's something you have to build from scratch.
19:53Honestly, this conversion is involving every single team in the entire studio.
19:57There is not a team that is not part of this.
19:59And I mean everybody, from marketing all the way to the physics guys in Germany who are having to be
20:05part of this.
20:05Because this conversion touches everything.
20:07It's primarily being driven by LA Engineering and LA Tech Design through Mark Abendt and Kirk Tomei.
20:14So as you guys know now, the current release we're using the 1.0 infrastructure.
20:20And we've used that since basically we released the dogfight module way back during the dinosaur era.
20:27That system worked really, really great for our single shooter ships where, you know, you used to have a guy
20:32sitting here.
20:33Maybe one co-pilot.
20:34But when you started having these much more big complex ships and you're just adding a bunch of items onto
20:41there,
20:41it became a big gigantic behemoth to maintain our item infrastructure.
20:47The biggest issue we had is when we have our ship, he knows of all of the items that are
20:52attached onto here.
20:53And when you have a guy right here, he gets all these callbacks and events saying,
20:57Hey, this was added. This was added. And you have control. You have control.
21:01And we have another seat.
21:02Since that event system was basically on the main route of the ship, he would get those same events.
21:08So if he had five seats, they would get events from everybody else.
21:14And then every other seat had to figure out who had what control and where.
21:18And then you had a more complex thing because then you had the visor or the HUD or the UI.
21:22You had the AI. You had the different modules all listening for these events, trying to figure out who had
21:28control when, how.
21:30And then when you add in multiplayer where the seat could come before the vehicle and then this item could
21:35come.
21:36And then we had to reconnect it, connect this here. Anything could come in in any order.
21:40It just became pure chaos trying to make sure everything worked in a nice coherent manner.
21:45As you can tell, we had a lot of fun bugs and it's also not maintainable.
21:49Especially since each of those items were their very own special cupcakes where we had all this logic built in
21:57for like the weapons.
21:59And if we want to use a single part of it, like say we had another type of weapon that
22:04didn't shoot projectiles.
22:05It shot some, we want to shoot M50s out.
22:07You had to basically copy pasta that logic into that other item.
22:11and then you have another set of bugs because you have to maintain two sets of logic blocks.
22:17And this was the whole item 1.0 infrastructure.
22:20So it just became a mess.
22:22Going back to that big logical block, we want to take each of those bits of logic
22:27and turn them into these bits of what we call them components.
22:32This thing handles geometry, we take it out, stick it in a component that handles geometry.
22:36This thing has a physics, take that out, stick it into a component that has physics.
22:40The idea was we shrink this item into nothing but its bare bones
22:45and it's just a list of logical blocks or components that define what the item actually did.
22:50So in theory I can take this piece, put it here, take this piece, put it here
22:54and now I have a whole new weapon or I have a whole new logical item that we wanted to
23:00do.
23:00And that was the very bare bones item 2.0 or infrastructure.
23:05So the item 2.0 system encompasses a lot of different components to make ships fit within our new architecture.
23:14The items that we're improving the gameplay functionality on are systems like power, cooling, the shield system.
23:24Utilizing our new room system, when you turn power off to a particular room, all the lights that are in
23:30there will automatically turn off.
23:32Or when you open up a door that's connected to that room entity, we can suck the atmosphere out.
23:38Being able to do things like set a door lock in between those two rooms
23:42so that we can simply connect those two rooms utilizing that airlock
23:47and it knows the states of the atmospheric conditions within those rooms
23:52and can react accordingly when you open that airlock.
23:55Implementing new ways in which atmospheric flight affects your fuel consumption.
24:00How those thrusters actually utilize power and fuel to fly.
24:04Better systems for functionalities such as quantum drives.
24:08We're able to balance the fuel consumption that ships will take to go from one nav point to another.
24:16Therefore we can make some of the ships that are larger and perhaps have a larger quantum fuel tank
24:22be able to make those trips without running out of fuel
24:26where some of the smaller ships maybe they can't and they must refuel before they can take that next jump.
24:32These are all parameters that we're updating and making it a little bit more transparent for the player to understand
24:39what's going on with them.
24:40So now that you have this control, it's cool, and the problem is how do you interact with this control?
24:47And that's where we bring in this other set of technologies that we have which is the interaction system.
24:51We had an old interaction system that hit a button and did something, but now we have much more contextual
24:56system
24:57where you can register these things called interactions on interaction points.
25:02And what that allows us to do is we can build a list of these things and then the code
25:06gets some callbacks.
25:07And if I look at, say, a door, I could get two interactions maybe open and close.
25:14And then code could get those and figure out what to do with them.
25:17Using this thing with the control thing is basically we have this thing called a seat access with seats.
25:23Before, we have this ship called a Constellation and we have these two turrets.
25:28And the thing about the turrets is when one came down, it had to block the other one.
25:32But we couldn't do that in the old one. So we kind of had to...
25:34You can actually do this now where the existing system, if you use the top turret, you can use the
25:39bottom turret
25:40and you can see the animations messing with each other because these two seats don't know about each other.
25:44But now we have this thing called a seat access that is aware of these two.
25:48It's basically a state machine for these two things.
25:51So if you want to get into either one, it will block the other one.
25:54And we do that by using the interaction system.
25:57The top one has an interaction to enter exit. The bottom one has an interaction to enter exit.
26:02And there's an invisible physics box, but you'll just see a glowing thing saying I can enter this turret or
26:08enter this turret.
26:09I'll walk up to it and you see the actual floating text saying I want to enter the top, I
26:14want to enter the bottom.
26:15So when I enter the top, the code will get the callback saying I should begin to move this one
26:20down.
26:21And the seat access will be, all right, since this one is moving down, I could block this one.
26:25So now if someone walks up as you're entering this guy, he won't get any interactions because he can't enter
26:31this one
26:31because he's blocked until this guy goes up to the top.
26:34And then now that interaction will pop up saying, hey, you can enter now.
26:37This isn't simply an engineering task or a design task.
26:40We're having to revisit animations.
26:42We're trying to revisit entire structures inside how ships are built from the ground up,
26:46which means we're having to reconsider how doors, simple doors, are implemented on the interior and exterior of the ship.
26:53And that's art time. That's time that the artists and modelers have to be involved in.
26:56And part of that means we're also having to do rework on some of the damage materials.
27:00and the UV-2s that we use for our damage states.
27:03Literally every team, one of the biggest impacts is things you wouldn't think about, like the prop team.
27:08Because we're having to do things like build our power components and our modular power supplies.
27:13And that means we need a prop for that. And that prop needs to be built by somebody.
27:17So all of the sudden, things that you never really saw on the ships were kind of there.
27:21I mean, they were a little bit hidden. They're suddenly going to be there.
27:24And as we start rolling out this technology more and more and implementing it through later iterations in the ships,
27:29you're going to be able to see these components inside the ships.
27:32And that means we need to have those components to show.
27:34One awesome example of moving one of the items to this new whole item 2.0-centric system on the
27:42vehicles
27:42is we have these lights on our spaceship.
27:45And with our 1.0 or legacy ships, we had an item that attached to an item port.
27:52And it would create these things called basically render nodes all along the ship.
27:58And it would look cool. I could see the lights on.
28:01Problem is if I get out of the ship or the wing blows off, the lights are technically still there.
28:07We did cheat and listen for when something blew off, but power doesn't do anything.
28:14You can't control them. They're always kind of on.
28:17So what we did for 2.0 is we have this technology called an object container.
28:23In the inside of our ships, it's basically a mini level that we could insert into our ships.
28:27So we already have that. We're using that for our item 1.0.
28:30And what we want to do is, since designers are placing a bunch of stuff like beds and all that
28:35stuff in there,
28:36we wanted them to use that same technology to have lights, those same lights that were defined before.
28:43So we basically tossed the old system, allowed designers to create lights,
28:47and using this thing called light groups, you could designate that these lights are basically the interior.
28:54These lights are the exterior. You had a way of grouping them.
28:57When you export that level, they create these things called item ports, and we attach these lights on the item
29:03ports.
29:04And since they're on item ports, the control manager now knows about them.
29:09And since they're an item and they have an item port, they could get power, they could get control.
29:15So now they register to this thing called the control manager, and they register to the item ports,
29:21and they could actually request to get power, they could request to get heat, and if they don't get it,
29:26we could turn off the lights, we could do anything we want.
29:31And we took it a step further. We have this thing called a light controller.
29:35It registers to the control manager, and those lights register to that.
29:38And if a user sits down in the seat, and he gets in to get it to the control manager,
29:42I can hit a button to turn off those lights that are inside of the ship that normally don't spawn
29:48in.
29:48It's not something that we can just sit down and say, we're going to do this ship, and then this
29:51ship, and then this ship,
29:52because it doesn't work like that.
29:54Each of these systems is so deeply interconnected that when we encounter a bug on one ship,
29:58we just can't stop and wait for that bug to be fixed.
30:01We have to move on to another ship that we can work on.
30:03We're having to work so quickly on so many different complicated pieces and track all of the bugs,
30:09that the real challenge is being able to predict where we're going to be.
30:14And the whole point of scheduling isn't to make a plan of how to get someplace.
30:19That's the easy part.
30:20It's being able to show where we think we're going to be based on the work that we're doing and
30:24the work that we've done.
30:24This work has never been done before. Nothing like this has ever been done before.
30:28The other difficult issue is that we do need to go in and do an entire retrofit of every single
30:34ship from step one.
30:37Some of the steps include converting the ship seats to the new system, creating a new dashboard element,
30:44which is the part of the ship when you're seated in the cockpit that you interact with,
30:48so that we can have visual interactions that come up that allow you to turn power on, engines on and
30:53off, set the ship to flight ready.
30:55These are interactions that occurred automatically before. Now we want to give the player a little bit more control
31:01to give them a more visceral feel when they're in the cockpit.
31:06This will also be true for other stations when you're seated.
31:09When we get an engineering station going, we'll allow you to aim in a certain direction, hit a button.
31:15This does a particular task, then utilize the screen so that you can divert power to repairing,
31:21swap out individual items on the ship, etc.
31:24So in some cases, we take the old assets and then update the code that we use to implement them.
31:31In other cases, we update the asset itself so that it will adhere to the new code standard that we
31:38need.
31:38But in most cases, we'll do both.
31:40So we'll take the dashboard out of the ship geometry, make it its own item,
31:46and then set up the interaction points so that when the player does get seated in the seat,
31:51they'll have an indication of where to look at to do these interactions.
31:56Coordinating all of these teams is a real challenge because we're talking about 400 people who need to be aware
32:01of what's happening.
32:02And the hardest part in coordinating all of these teams isn't necessarily tracking the tasks or the individual work on
32:08any given person,
32:09making sure that all the teams are aware of what's happening and what's coming down the pipeline.
32:13We don't want to break something that's going to prevent one of the teams from being able to work.
32:17A good example of this I can give is the AI team.
32:20We're having to be very conscious of delivering components and pieces of this feature in time for AI
32:26to have the opportunity to implement and integrate that with their system so that, you know, we can have people
32:32inside these ships
32:34and they can fly around and interact in all the different game modes.
32:37This is particularly vexing when it gets to more complicated parts of the interaction system
32:42because these ships have a lot of interactions.
32:44And so making sure that all the interactions are functioning is sort of the key point to making sure we
32:49can interface with these ships
32:50as we change and integrate them into Item System 2.0.
32:53But then there's the tertiary stuff that you don't really think about when you're considering doing all of this stuff.
32:58How does this interface with stations?
33:00How is this going to work when you have to go buy and sell and be cognizant of all of
33:05the items inside your ship inventory,
33:07your personal inventory, your player inventory?
33:10And then where do we want to go with that?
33:12How does the economy interface with all of these other pieces?
33:15So making sure that everyone is cognizant of the long-term goals as well as present in what we're trying
33:22to achieve
33:22for 3.0 and 3.1, that's the biggest challenge.
33:25There will be some balance tweaks that the player will notice,
33:29which will incentivize the player to explore upgraded items, for example, especially in ships.
33:35Because we are utilizing the new interaction system,
33:39it's the first thing that they'll notice when they walk up to a ship
33:41and when they get sat down and look at the cockpit, there will be a noticeable difference.
33:47Gameplay is one of the most interesting challenges in this conversion,
33:51because at once we need to maintain the gameplay that the community loves
33:55and the balance and hard work that the balance designers have implemented on these ships.
33:59On the other hand, we have to implement a whole new way of thinking about the ships and the ship
34:04balance.
34:04We have to implement new ways for the thrusters to function.
34:08We're rebuilding parts of IFCS and integrating IFCS into the item component system.
34:13And that means that we have to reconsider that balance as well.
34:16Suddenly a fighter is no longer just a fighter when you have to worry about managing your shields
34:19and your power supply and your weapon groups really in real time.
34:25With item system 2.0, we're going to have a lot more capacity for multi-crew ships as well.
34:29It's no longer going to be, oh, I'm riding around in your caterpillar.
34:32It's going to be, I need somebody on the shields and the power at the engineering station
34:37to manage this as I'm in a heavy fight.
34:40One of the big things is probably performance with this componentized system.
34:46Each of these components, so if we have a seat, it could have geometry, it could have physics,
34:50it could have a bunch of other logic. Each one could have their own update,
34:53but they could update on this thing called a batch update, which means during a specific time in the frame,
34:59we basically spawn a bunch of threads and say,
35:03you're updating, you're updating, you're updating, you're updating, you're updating.
35:05We may do like a couple thousand at one go, and then do another thousand,
35:10and then do another thousand, so that frame update went from like this to like this,
35:16and we could do a lot more.
35:17One of the biggest improvements we were hoping is going to be with John Pritchett's physics flight controller, the IFCS.
35:26We just actually recently moved his update block from, it was kind of a main thread physics call,
35:34and it was stalling physics, taking that out and moving into these batch updates.
35:39And it will still act the same, it's just now spawned off into one of those threads.
35:43So we're pretty much utilizing multi-core systems at this point.
35:48This is one of the largest things I've ever worked on,
35:52and it singularly can be considered one of the largest things that I think has ever been done in a
35:58game,
35:58particularly a multiplayer game, because this is a system that, I mean, think about the multiplayer games that are out
36:04there.
36:05I mean, you might have a mount in World of Warcraft or Elder Scrolls Online or a house,
36:10but you don't fly your house around, you don't have 20 houses that you fly around,
36:15and you have to worry about them being damaged, and the states that they're all going to be in,
36:19and how other players are going to interface with them.
36:21And that's something we're having to consider.
36:23When we talk about item system, item system is more than just the things in a ship,
36:29or the things on a space station, or the things on a planet.
36:31It's an entire framework for objects and entities in the game persistence,
36:38being persisted and having actual relevant information to be part of that player experience.
36:45I think players are going to start seeing an incredible versatility and power to this technology.
36:50That was some of the big architectural changes we want to do.
36:54But of course, changing something huge is going to have some big repercussions.
36:58So, stay tuned next time when we're going to tell you about some horrible, horrible fun
37:04that we had to do when transitioning from A to B.
37:09Thanks guys. Converting the game to item 2.0 is really no small task,
37:14but it's an essential one to building the best damn space sim ever.
37:17Yes, and it'll add a lot of versatility to ships
37:20and let players interact with them like never before.
37:23It should have a significant impact on gameplay.
37:26And that's it for today's episode.
37:28Please join us tomorrow for Happy Hour Friday at 12pm Pacific
37:31as Mark Abin and Ashran Cain join us to talk more about item 2.0.
37:36And thanks to all of our subscribers who make shows like ATV and Happy Hour possible.
37:41And thank you to all of our backers.
37:42We really couldn't build a game with hundreds of swappable ship components
37:46without your support.
37:48And that's all for this week.
37:49We will see you...
37:50Around the Verse!
37:52...
37:55...
37:56...
37:58...
38:00...
38:07...
38:09...
38:11...
38:38...
38:38...
38:42...
Commenti

Consigliato