This week, you'll hear from our Creative Director Brian Hicks and our Lead Producer Eugen Harton - as the department leads are fully focused on catching up on their tasks after a short Easter holiday, both Brian and Eugen are doing their best to report for them. Both also explain why some of the long-announced content isn't in the game yet, and what needs to be done to have it available during BETA.
Mind you, while our today's Status Report is a bit of a long read, it's also full of vital development information on the upcoming 0.62 and BETA updates, so get comfy, pour yourself a drink of your preference and reserve some time for reading - it's worth it! Also, Baty has some nice eye-candy bonus at the very end, so those who make it all the way through will surely be rewarded :)
Dev Update / Hicks
I watch a good deal of DayZ Twitch streams and YouTube videos in my free time - and over the last week or so, I saw something that concerned me: hearing conversation in regards to gameplay mechanics or systems currently implemented in the most basic form, and if they are intended (by developers) to ever change.
Between the new user actions and rewrite to Enforce script, and the decision for designers to stop writing new systems in SQF and focus entirely on creating new gameplay systems in the new tech - it can easily seem (to those who don't closely follow development) that we just don't care about the issues currently on the Steam build, or don't ever intend to address them. That couldn't be farther from the case.
For example, Peter and I have been going over functional issues with the central economy we want to see addressed for BETA and beyond - these aren't things that are being ignored. Far from it, but as always, the goal for the team is getting to the final product as quickly and efficiently as possible.
While the economy functions at a playable level and much of the technology required for the final product is there, the priority for the programmers responsible for the Central Economy of DayZ moves on to the next piece of the puzzle - in this particular case, support for public access to server files and required software, modding, and off-line mode.
When those critical technology tasks (that are being worked on by those specific programmers) are implemented into the internal version of the game, that's where we can shift our focus on iterating upon some of the functional issues of the Central Economy.
What kind of functional issues with the economy? Well - just to list a few:
Dynamic Event spawning behavior
Dynamic Event item spawn quantity control
Zone/Area restricted items bunching up in specific towns after extended persistence uptime
Repeated spawns of the same item types in a structure
Consistent availability of early game basic supplies
Also take a look at Peter's contribution to the last SR - it's a good example of how the current state of things is not final, how our features and systems will be iterated upon and improved.
To be honest, there isn't much of anything in the Alpha phase of DayZ that is functionally (from a design perspective) "complete". Nearly every gameplay system or mechanic the player touches is at a basic functional level, meaning the tech/script/animations are present and it operates in one way or another. Fleshing it out, addressing functional and gameplay issues - that isn't something we should be wasting time and resources on, especially when so much of it is being replaced.
"What about all that cool stuff you guys have shown for years but never ended up in the game?" You might ask - "What happened to that?!" - While I know both Eugen and myself have discussed this before, I can't fault anyone for missing it - it certainly is not easy trying to search or go back through Status Reports on DayZ.com at the very least.
Nearly everything that has been discussed since we stopped prototyping gameplay mechanics in SQF, stopped creating animations for new items on the old animation system, and so on is, and has been worked on. I know it can seem like cool things like base building, soft skills, or player facial hair growth has disappeared because we haven't publicly associated it with a specific release.
The reality of the situation is, with pretty much everything on that proverbial list being dependent upon the new player, and the focus for BETA being on getting the game stable and playable on the new engine modules - we're playing our cards close to the chest.
While we may end up with a BETA candidate build that has a huge chunk of the content and gameplay systems backlog functional in it - it's just as possible that we'll end up with a smaller chunk of the backlog content and systems in that first BETA build, and the rest of the list will follow up as quick as possible (which should be at a much quicker pace, having shed a good chunk of our nasty tech debt and overhead from supporting legacy and new tech).
We're in that situation because it is the technology - the foundation of everything inside DayZ that you guys experience - that is setting the pace and progress towards our goals right now.
As we get closer to these core components of DayZ's underlying technology being functional and usable in a multiplayer state, we can better gauge what the gameplay and content ingredients of the BETA milestone are.
I know for some of you, a good deal of this is information is something you all already know, as Eugen and I both have spoken on it several times before (and I couldn't have put it better than Eugen's contribution to the last SR), but for as many of you that may follow development closely and know all this already - there are just as many that might have missed some of this down the pipe.
You know what they say: now they know... and knowing is half the battle.
- Brian Hicks / Creative Director -
Dev Update / Eugen
Hi there survivors, since some of you appreciated my last Status Report contribution, I'm going to try and keep them as regular as possible. While knowing that my wall of text is not going to be an easy read for everyone, I do believe it's necessary to try and write stuff in technical detail in order to have and provide an honest coverage of what's happening in the DayZ Dev Team offices.
There will be a lot of stuff happening over the coming months, and I want to guide you through it with as much information as possible. At this point, there are two large releases scheduled for this year. and we're fully focused on those. The development is divided into strike teams - a smaller strike team is working on the 0.62 update, which we internally like to call a "Visual Upgrade". It contains tweaks to lighting and new forests, as well as general world fidelity improvements (we have more to come in that department for follow-up/future updates as well).
As far as what that means in a bit more detail, the Visual Upgrade coming with the 0.62 update will feature:
New tree models
New clutter (grass, small plants)
New surface textures (roads, plains and such)
Improved wind behavior
New shader for the wind, affecting trees and grass
Tweaked and changed lighting for the world (for a more apocalyptic feel, yay!)
Small improvements to satellite textures
Rain affected by wind and refinement of its behavior in general
Many reworked locations on Chernarus
Reworked ghillie (to be consistent with new tech)
Small bugfixes to some issues from 0.61
The 0.62 update will NOT introduce:
Any changes to gameplay
Any changes to buildings and structures (in terms of model graphical fidelity)
Any changes to player model fidelity
Any changes to animation fidelity
Any of the gameplay changes, or new content that we've been occasionally mentioning in Status Reports
(those are all scheduled for BETA/0.63)
After this milestone, the strike team for 0.62 will merge with the current 0.63 strike team, and join their efforts to reach BETA on our Steam branches as soon as possible. BETA/0.63 will be a major change for the game as a whole. That is the update that you guys have all been waiting for, and we have been working hard to reach that goal for the past few years. What does that mean in more concrete terms though?
All the new engine technology we have developed for DayZ, along with the content of the current game - all merged in and improved, as it has been refactored from functionality point, design-wise, and in terms of fidelity as well. Moreover, additional content and features that we couldn't properly implement on the legacy tech.
Besides all the refined features, content and overall improvements to the DayZ experience, we also aim to release a handy toolset very near to (or along with) the initial BETA/0.63 update. This toolset will contain the much-requested server files.
I know you are all asking: But when?!?! As much as I would love to tell you now, we want to be able to deliver a seamless core gameplay loop without bugs breaking it at first. Our main goal now is to get the melee combat and ranged combat work on the new technology, and in a real game environment, not only in a debug mode.
A lot of work has been done already (like new synchronization, damage system, player representation, and more), so this means mostly adding support in synchronization, and adding content for new features in the animation system are ahead of us, but it's still a lot to handle.
So just so you get the idea of what work is being done at the moment (from the perspective of disciplines):
Refactor of hard coded world interactions to script. There were still a couple left (opening doors for example). Creation of core synchronization model for these
Moving VOIP to server authoritative completely
New weapons API for weapon script implementation
Inventory conditions implementation for item states and more
Optimizations of item spawning for server performance
AI script API for behavior modification
New player spawn definition
New item spawn definition
Vehicle behavior in new technology
Backend toolset (srvlet) for central manipulation of economy, and server management (community version)
User actions manager for the new synchronization model
Player representation refactor and debug functionality for new player (visualization and toggles for testing and manipulation)
New hierarchy of item configurations (includes new technology like damage system, procedural coloring and such)
Data re-structuralization to suit the new setup (file structures at the moment)
Inventory refactor and optimization according to internal version
Integration of soft skills to actions in game
Electricity and its implementation
Placing of items in world and its implementation
Implementation of animation player turns
Polishing new weapon animations (unjamming)
Implementation of hit reactions to melee combat in the new system
Work on inverse kinematics and item poses
Tweaking player graph
Implementation of detailed user actions animations
New inverse kinematics implementation
New physics representation for non-player entities
New shaders for trees and grass
Hit reactions in animation system
Synchronization of new animation system
New models (sorry, don't want to spoil stuff!)
As you can see, there is a lot of work ongoing, in order to implement all the new technology and content. Most of the tasks are now aiming to get things working together as seamlessly as possible, and a lot of them are playable in different debug environments.
- Eugen Harton / Lead Producer -
Hello Survivors, before we look at the community content for the last two weeks, I would like to tell you about a 0.61 crash we are looking for that we are not able to reproduce internally. Your game can crash when connecting to the server after waiting in a queue, and when that happens, that is what we are looking for.
Should this happen to you, we would appreciate if you could send the crash dump files from folder Users\YourPCName\AppData\Local\DayZ to our Feedback Tracker.
We are discussing this issue further on our official forums - come join us:
Overall, we welcome reports of any crashes that you will be able to reproduce - please send them together with the dump files using the Feedback Tracker. Every report will massively contribute to speeding up the fixing process of those issues.
If the wallpaper from the last Status Report was not enough for you, we have another one here, that landed on our Twitter account and that could suit your desktop well. Gaming Roach edited his screenshot into an amazing wallpaper with infected as the main theme. You can find his original screenshot here. You have some talent, man!
Today, I would like to dedicate some space to one of the role-play communities. I am a big fan of role-playing myself, and I really enjoy watching entertaining videos from post-apocalyptic Chernarus. One of them is this video from an RPevent on the whitelisted AftermathRP server that is being organized every 2-3 months. It is about the evacuation of civilians by NATO group from Staroye to Chernogorsk's docklands, while a group of Russian rebels tries to stop them. Here is a part of the official event description from their pages:
When news first broke out about the virus, many assumed it was just the flu - horrible to have, but with treatment, something you can overcome. This was not because the survivors did not understand what the infected were, it was because of what they were told. Information was withheld to prevent widespread panic, to make evacuations easier and more importantly, to ensure that no one knew what was happening inside of the country, should they ever get out or be able to call home.
NATO started with their evacuation of civilians. They went into towns and camps, large in numbers and ‘rounded up’ those were staying there. If any questions were asked, NATO would simply point to one of the many flu warning posters they had put up around the country and inform people that it is a perfectly normal procedure, and they were just going to check people for symptoms, treat the ill and take the healthy to a safe location.
Good evening survivors! This week, Viktor shares the second part of his animation Q&A video, Eugen is expanding upon his recent talk on a game dev conference here in Prague, Peter provides an example of the new car damage visualization for BETA and we've talked Adam into making some new comparison images of the new forests!
Additionally, we have Mirek talking about another important milestone we've currently reached with our technology and Baty (among other things!) looks back at a pretty cool April Fools' joke from one of our community members.
Dev Update / Eugen
I don't usually contribute to Status Reports, but since Brian is out of office this week, I'd like to change that and touch upon a topic of DayZ development and Early Access development in general. Brace yourselves, as this will be a bit of a long read (but there's also a video embedded below).
For the start, I understand that a lot of you have concerns about DayZ development. I also do believe there have been some inherent issues with what is, and what is not viable for Early Access development phase, as this is something that was not tried a lot before, and most of it is pioneered (process-wise) as things evolve.
Early Access is a dynamic environment that is quite different from the traditional closed door development. I’m gonna get quite technical, so for those who do not feel like reading a wall of text, I had a presentation at White Nights Prague conference that takes on the subject of this Status Report contribution with less detail:
That said, I do stand by the development decisions we made as a team, but also see major flaws in how one can present changes in games’ underlying technology, where most of these changes are actually the base building blocks which, in time, will be able to provide a significant change of the overall player experience.
All these engine changes are, in the case of DayZ, developed with the aim to keep the game moddable at all levels, with expanded scope. The engine changes for DayZ include
Server-Client architecture (in most systems!)
All gameplay systems written inscript (to a certain degree)
We need to work on all that while we create data and iterate, while we’re slowly trickling some systems into the live game (the public Experimental/Stable branches of DayZ) to test them. That creates a certain lack of visible progress as things are in motion and need time to settle down. These days, many of the base systems are in-game internally, and we are spending a significant amount of time removing a lot of old systems, while interconnecting the new ones.
Let's compare that vision we have for DayZ with the live game that’s out there right now, just so that you have an idea of what it all means in practice.
Live game runs old physics system, where collisions are a giant hog on server performance. To replace that, you basically need to replace everything else, as many of these old systems were hard-coded to a large degree. You need to make an originally monolithic application into a modular one, where all these old systems are interconnected. You almost, almost start from scratch. And as small as it sounds, server performance can break anything. Most of the systems above have not been part of live game because of this dependencies in old structure.
Every issue in DayZ has a reason. Most of those issues that trouble you are known to us, and have a solution somewhere in all this work that we have done, and want to bring to you. Like the stairs killing you, which is a combination of many, many factors: Issues with data binarization, physics, collisions, server-client architecture and even script and player itself.
To fix a “simple” issue like that takes years of work because we really can’t take on any more technical debt and “hack” these fixes into the game to save the day. We play for the long haul, not for the short term gain. And as such, there lies the inherent issue of how to approach early access.
Things take time, and you can’t buy patience with a wall of text. You just can’t. And I get that now, when we have to face the truth here, as all these things that we worked for are not in a state to make for a fun game. Yet. That point (where we will present a fun to play game) is BETA for us.
Yes, we could probably, eventually set up a deployment to show each different technology change part by part (like we did with the renderer), but unless you have base the game loop present in a game, it’s just a tech demo. Even if we have all the parts ready, these details (bug fixing, connecting pieces together…) matter a lot.
I’m going to use a simplified story of a decision making that happened around one simple upgrade. How player sounds should work in the future:
Sound in games has a lot more to it than one would imagine at first. Besides the sound data itself (which has to be prepared in context of the technology, as in supporting its data structure, and also allows further data modifications by the underlying game technology that plays the final sound for the player) there is also the important part of letting the game know when it should play a sound. Let's call that an event.
You also need to edit all this in some way, to put events in gameplay that plays the sounds, and edit the sounds themselves, and don’t forget the pipeline for building the game that puts all this in some structure. Events have to be called from script, animations, items, environment... There has to be some logic to it. You need tools to visualize the data, a script to play it, have logic that decides how and why…
Many of these systems were originally hard-coded - hard to tweak, hard to change. So the goal was (and is) to bring them in line with the rest of the DayZ vision, and to make the game modular, editable (visually, if possible) and expandable in the future. So we’re talking about tons of disciplines that are affected, and you can’t do one part of it and think the whole thing will still function.
As you prepare the new technology to be compatible with rest of the new stuff, it is often impossible to keep things compatible. And more than often, you just need to move on and focus only on the new technology.
For example with player sounds, we’re now in process of writing the sound event manager, and then we will need to connect the sounds into data structure, and define events that launch them for new animations of player moving. Meanwhile, we’re also reworking all the textures to prepare the game to recognize surfaces better, or to recognize when a sound is played in interior/exterior. At the same time, we’re implementing a way to edit the data in animation editor, in order to be able to set up these events visually, not just by playing a loop like in the old system. At the end of all this, there will be sounds playing when the foot of the player touches the ground.
It might sound silly at first, but all these things and changes can expand the scope heavily for us and the modders alike. Its not going to be easy, but as I said, we're not going anywhere.
- Eugen Harton / Lead Producer -
Dev Update / Viktor
Our focus in the animation department is still mostly on melee combat and animations for new user actions. We are still iterating and adjusting animations and the game design to make the combat feel good. However, there is the second part of the animations Q&A video that got finished just minutes ago! In the first part, we were filming at our Motion Capture and studio talking about animations in DayZ in general.
This time, I am trying to explain our upcoming animation system and how it helps us improve the game. You can watch both parts right here:
- Viktor Kostik / Lead Animator -
Dev Update / Peter
After the new inventory was publicly released, we were continuously adding and implementing features to it which are directly connected to our ambitious revamp of how systems works with user actions, crafting, attachments and inventory management (you can check Status Reports from 1 March 2016 and 29 March 2016 to find out more about this effort to unify and simplify different behaviors).
As we were integrating all that stuff, current inventory implementation of scripted UI got bloated and finally became unsustainable. Currently, it's being rewritten from scratch, which may seems scary at first, but it's the right step for a better, cleaner, more functional and most importantly faster inventory UI.
System of gestures was implemented in Enforce script and it's not a hard-coded part of the engine anymore, which offers more possibilities. Powered by the new animation system, it brings smooth controls and seamless transitions from ending part of gesture animations directly to character movement. As over time number of gestures exceeds available function keys, we started the work on a new radial menu UI for gestures picking (binding gestures to function keys is still possible though).
With upcoming changes to vehicle physics and simulations, we are also enhancing visuals for different damage states of vehicles, as well as how to make new abandoned and wrecked ones from all these driveable models we already have. Large attachments like doors, hoods and wheels will be removable from these abandoned and wrecked vehicles, which can be combined with different color and damage states. The fact I like the most is the possibility to interchange all of these per attachment, or on different parts of body, depending on the direction of impact.
For more variation... see you in Chernarus folks!
- Peter Nespesny / Lead Designer -
Dev Update / Mirek
Last week, another major milestone has been met - we've moved animals and infected to the new animation system, which means the internal build of the game is only using one animation system now. This is great, because we can now focus only on one type of implementation, and can remove a lot of the legacy code, which will make our lives a lot easier.
Now we just need to connect existing game features to the new implementations of player and AI entities, and solve issues like AI pushing players etc.
Interaction system with game environment is heavily modified, too. In current 0.61 (and future 0.62) updates, the client side is asking the server side for possible interactions and the server returns a list of these actions. In 0.63, we've decided to get an action list on the client side, so there won't be any latency lag and there will be less network traffic between the client and server.
Also, there is going to be a client side prediction for each performed action, which means that you will see direct response when you press interaction button and server will be able to interrupt these actions in case of faulty prediction (e.g. two players are picking up some item at the same time) or in case of cheating.
Another major change in our internal version was the Voice over Network communication. It's now using client/server architecture as well. This allowed us to optimize voice data traffic, and more importantly, there will no longer be any peer to peer connections between players.
Together with these changes, our scripters should be able to begin with the Enforce Script implementation of new advanced communication features (like public address system or static transmitters).
- Miroslav Maněna / Lead Gameplay Progammer -
Dev Update / Adam
We've made serious progress on an important milestone task for the release of the 0.62 update - color tweaks for all the new vegetation assets. This task is focused on making sure that all new assets blend together and look just right. In addition to that, we are also utilizing colorization feature that brings much needed local color variety between individual assets.
Please consider content of all pictures in this status report as work in progress. They do not represent final state yet as we are still working on additional color tweaks and other things such as configuration of clutter (grass) and surface mask. Following two pictures show how the color tweaks affected the overall feel of the new Chernarus.
In first picture, you also have the option to compare it with current (0.61) version of Chernarus:
We've also added younger conifer forests to the layout of the new Chernarus forests. In our previous iterations, only older conifer forests were used for all conifer generation shapes. We have prepared a layout and included these younger parts everywhere we thought they would fit.
That not only includes denser spruce, larch and pine forest parts, but also clearings with really young trees. This change should give you an idea that many of the conifer forests on Chernarus were actively harvested for wood, and thus many resemble un-natural shapes.
Following pictures provides an example of young conifer forest parts near Devils Castle (which is one of the more harvested areas on new Chernarus). Again, you have the option to compare following pictures with current (0.61) version of Chernarus.
You may remember that I mentioned a western expansion in earlier status reports. This task is still very much active and just last week, we have replaced all prototype forest on the western part by the generation output. This basically means that the western border now has properly generated forests, same like pretty much the rest of the new Chernarus.
With this, I can happily say that you will be able to enjoy the whole new look of the whole western part of Chernarus in 0.62 update (time to say good bye to the empty lands with few trees!). That being said, this is just the firstiteration, expect many changes with future updates.
This picture is meant as a small teaseer of what you can expect on the western border. Direct comparison to the old Chernarus does not make sense in this case, as the terrain is now vastly different:
- Adam Franců / Map Designer -
Dev Update / Community Spotlight
Server Pipsi is preparing an interesting PVP event themed “Australia vs. New Zealand”. Player slots are filling up quickly, but New Zealand still has couple of available ones, so if you are from Dean Hall’s home country, be sure to sign up!
This amazing teddy bear from streamers and big DayZ fans Queennie and MrBlue, who've been supporting DayZ for several years, arrived to our office. Many thanks for the beautiful and kind letter that warmed our hearts.
When we are on the topic of gifts, DukeTales was showing off a birthday gift from his girlfriend on Reddit. The clock is hand-made and its face is decorated with cans you can recognize from the game. Happy birthday DukeTales!
Next, we would like to show you the absolutely brilliant artwork with DayZ theme by IqfishLP, which he published on Reddit. He even recorded the process of creating it. He managed to transform a common screenshot into this artwork worthy of being your new wallpaper. Great job!
To finish things off, let’s go back to one April Fools’ Day joke which spread through the community a couple of years ago and was initiated by Duro Bulo. I was not yet part of the DayZ team back then and I did fall for it. Duro Bulo started a hoax about a possible malaria infection being carried by the vicious mosquitos of Chernarus. He even made up a way to protect yourself from this dangerous insect – a bug repellent spray. Duro certainly does not lack creativity. But don’t forget, it is only a joke!
Tweet us if you encountered any DayZ April Fools’ joke this year. Did you get fooled?
If you have any community content or event which you would like to share with us, the easiest way is to tweet to our official Twitter.