This week, Brian is addressing how walkie talkies in DayZ are the new server-wide chat. Eugen is touching upon the complexity of DayZ, as well as some of the recent tasks of the entire team. We also feature Peter who shares exciting news about changing the inner workings of loot spawns (this will be an extra crunchy topic for any future DayZ modders out there!) Next up are our map designers Mark and Adam, and yes, they have some screenshots for you this time!
Dev Update: B. Hicks
The last time we spoke I mentioned discussing the impact of sway, and the implications on gameplay. I think one of the overlooked aspects of replacing the animation system, and legacy player is the fact that this isn’t just a “change” in how sway / hold breath, and the likes behave. With the legacy setup, early on Peter and I both supported adjustments to try and refine where it was sitting as an experience in game. Pretty rapidly we realized that where we wanted it to be, and what the technology would allow us to do were two things very much apart. Rather than wasting development time trying to iterate and iterate upon a system that was slated to be replaced, the focus was placed on functionally where we wanted to be with the final product.
Its important to understand that as I said earlier – this isn’t just a change. This is a replacement of the technology and player – so the old methods for sway, stamina, and such are gone. As we move towards beta, and start getting those builds into the hands of players – then we can refine the new methods of sway, and get it to a point in which you still need to be aware of your stance, weight (hopefully!), and the amount of sprinting you are doing – but that it is entirely manageable and does not feel like this daunting and overwhelming rigid inflexibility it can become in some situations with the current legacy Steam builds.
In addition to this, Peter and I have also been spending some time discussing the implication of server wide chat (specifically VOIP). I’ve noticed aside from strong private shard communities like DayZ Underground – folks don’t seem to be utilizing radios in game. While on servers such as that, I find the communication across the map with random players occurs far more often. Personally, I’m a firm supporter of radios being starting gear so that every player can opt-in to server wide communication should they choose it – but I’m still working on converting Peter to this mindset. One of the limiting factors I’ve noticed the community discussing is the rate at which radios consume batteries, and the hunt for batteries themselves being both unrewarding and difficult.
I know a lot of folks have expressed a desire for the old global chat (which personally I do not miss at all) – and some have also expressed an interest in the old kill feed. A default on global chat is just not something we ever felt had a place in DayZ. That said, it can easily be turned on for mod authors, a kill feed as well shouldn’t be difficult to put together.
For Peter and I – the immersion of the radios themselves, paired with the fact that they effectively serve as an opt-in global VOIP, is incredibly attractive. As I’m sure you all recall – we increased their range greatly several builds back. Aside from availability of the radios themselves, and consumption of batteries, I think they represent where we’d like global VOIP to be. So I encourage you all to utilize them more, so I can convince Peter that they should totally be player starting gear.
Dev Update: E. harton
Hey guys! First things first, I want to share the conclusion to the story I mentioned here the last time! We managed to fix the crash – yay! This means that everything seems to be in place for 0.62 on Experimental and I can’t wait for you guys to play with the new environment visuals and sounds. There is still space to improve and make things more distinct, but the work does not stop there after we send 0.62 to Experimental/Stable. It’s the first step to get visuals and audio where one would expect them in 2017.
To continue with stories from the development front, large part of our daily routine here is planning for BETA, and doing recaps with the aim to refocus the development, structuring our team into smaller feature teams. In the last two weeks, we revisited mind maps of these feature blocks to set up a core functionality of DayZ – starting with larger ones, and working our way down to smaller, more actionable items that we can “close” as development items.
DayZ is a complex game. It’s a system sandbox where its gameplay loop starts working only when all the small details are in, and start interacting with each other. It’s one of the hardest genres to iterate upon, as you can’t structure the features easily, and every single thing can break the gameplay ecosystem. I highly recommend the original Deus Ex postmortem that was featured at GDC 2017 by Warren Spector himself.
If you separate the work we have done over the years, you can simplify it into three layers: engine, data and gameplay. Engine is the core base and modules upon which we want to build this game, data are visual assets (e.g. models) or audio that support the features, and gameplay is represented in both code and script. That’s why we have technical designers writing script, and gameplay programmers doing the same for the DayZ codebase.
Over the course of the last two years, these two groups (programmers and scripters) have been focused on closing core support systems for the architecture of gameplay in the new engine, and haven’t had the chance to see their individual parts of the game work together. It’s exciting now that what you could previously see only in a debug mode, or under parameters for internal client, is now finally able to support actual gameplay, and can be seen inside the game in a broader context. It’s a start of something much bigger for everybody in here.
Instead of focusing on systems and technology, we are finally making a game. The core gameplay loop is our focus now, split into melee combat, ranged combat, player character and its interaction with the world, and the infected (and their interactions with the world). All these pieces we have been building are slowly getting playable. There are still hurdles along the way and ahead of us – but that’s how development works.
What we’re doing now is obviously one of the most critical parts of DayZ development, but all these previous decisions to create tech first, and focus on enjoyable experience later, are going to benefit the game (and gameplay) in the long run.
To give a glance at the currently open development items in our teams :
- AI script implementation
- Zombie behavior script representation
- Inventory and item conditions
- Item spawn definition
- User actions in multiplayer
- Network traffic optimization
- Sound event manager
- Performance optimizations and multithreading changes
- Input changes
- Navigation changes
- Hit reactions on player
- Tons of crash fixing
- Tons of bug fixes
- Weapon mechanics animations polishing (unjamming, reloads)
- Inverse Kinematics poses
- Hit reactions on player
- Melee combat prototype
- Ranged combat prototype
- User actions in multiplayer
- Player representation
- New player and item spawn definition
- Inventory UI refactor
- Radial menu for gestures
- Soft Skills
- Player action targeting
- Positional environment audio
- Infected audio recording preparation
- Player and weapon animation events setup
- Playtesting the 0.62 update
- 0.62 feature testing
- Internal client stabilization
- Tree fire geometry
- Buildings optimization
- Doors unification
Dev Update: P. Nespesny
In regards to Central Economy, there were some changes made in terms of loot spawning and its definition for BETA version that we are working on. Till now, loot placement was defined directly as specific point per one item in .p3d files, grouped in named selections (which are paired with categories and tags in configs and areas in area map later). There has been a need to pay close attention to dimensions of given items against each other, and available space around them to avoid unnecessary clipping between items, or between item and building itself.
This process was tedious as it lacked sufficient spatial orientation in object editor, leading to prolonged time needed to populate a building (for example, the school building has tens of thousands of spawn points defined in the old system). Not to mention that packing and exporting proxies was mandatory in order to be able to see new/adjusted spawn points working in game, stretching the time even further. You can see how it was set for the police station on the screenshot below.
Instead of exact points, the new loot placement uses ranges. Range simply defines a circular area within which item can be spawned. During placement of these ranges, they are checked against each other and building itself in real time. This approach avoids any clipping and collisions of items during spawning. Placement output is stored as XML directly in the mission folder, so it’s very convenient for modding, it also can be loaded and edited.
The best part of this new system is that it’s completely defined and visualized directly in game, from free-fly camera. Additionally, everything is real time, which (coupled with independence from addons) cuts down the time required for setup dramatically.
After introduction of this new system, we managed to get from more than 1.000.000 spawn points (mind that was after massive reduction for 0.61 version from 4.000.000+ spawn points) to current ~130.000 used, and at the end, what matters the most is the increased server performance. Don’t waste time doing unnecessary things… see you in Chernarus folks!
Dev Update: M. Gill
Hi everyone, Mark Gill here! I’m one of the map designers who has done many tasks for Chernarus, but more recently I’ve been focused on developing the new Chernarus forests for this 0.62 visual upgrade. This has been a lengthy, challenging, but also rewarding process. I will try to share some of the thought process behind the changes that were made.
With the new forest overhaul, we hope the survivor experience in DayZ will be greatly enhanced. We tried to make traveling through forests a more immersive experience. Repetition can quickly become boring on a map of our scale, so as you traverse through forests across the map, the visuals will change at a fairly rapid pace. This was a large undertaking, but it was important to keep the visual stimuli changing in unpredictable ways.
We were able to increase the number of tree variations thanks to our talented artists to create types of forest that display different characteristics. The overall shape, size, and canopy development gives sections of forest a sense of age. These sections can vary from close spacing of younger variants. to farther spacing of older variants. There are limits to density due to the performance impact, but hopefully the amount of variables at play will keep you on your toes as you travel across the map.
Broadleaf hedgerows and forest edges now have a lower profile than in the past. This looks more natural and adds more coverage at a lower height. With this change, sections of forest are more self-contained with this “bushier” egde-line. This helps block some sight in and out of deep forest. While much thinner then reality, this balanced result is an important improvement to the visuals as well as gameplay. Moving as an individual or group in and out forest should be a more significant shift as well as hiding. While you may feel safe and hidden within deep forest sections, there is also the opposite of not knowing who may be nearby. We hope you will enjoy your freshly upgraded playground!
Dev Update: A. Franců
Hello everyone, I hope that you enjoyed this SR’s contribution from Mark, our map designer, who has showed a great passion for such whopping task as transforming the nature of Chernarus is. He spend countless amount of time designing and configuring how the new forests and individual vegetation looks and we are all excited for the day when you finally be able to experience new Chernarus too.
We are currently really busy with map tweaking to make sure we can deliver the new Chernarus in best possible shape we can in given time. Please keep in mind that update .62 has touched almost every corner of Chernarus and while we do our best to make sure everything will look just like we wanted, there will be some minor map-related issues. Also, keep in mind that update .62 contains initial changes to the whole western border, completely getting rid of old terrain and object layout and replacing it with much more detailed landscape and layout. This work, labelled as western expansion, is however split into several phases and more additions and fixes are planned for later updates.
In addition to many great improvements to the way grass, trees look and behave in wind, our programmers also went and fixed many issues related to lighting and sky. One of the major things was that before 062, shadows were turned off too early / too late and that impacted the quality of scene (mainly interiors) in a very bad way. This issue was fixed along with many more (like smoother sky-fog transition, reduced size of the moon and sun, moon visibility, horizon look, and more…). These changes have enabled us to focus on lighting config for Chernarus, which saw some great changes. While we do not consider it to be final, we hope that it will prove to be a very fitting addition to the visual update coming with 0.62.
Additionally, in January 24th SR I promised you that I will show you the new railway stone bridge, so here it is! Coming in 0.62 along with many additional changes to the railway network of Chernarus!