![]() You can see the stat group definition here. Under stats there is a statGroupHash that points to the table of stat scaling functions for this weapon. Why?įirst, we look up the inventory item definition for New City in the manifest. I'll use one of the puzzles I mentioned before - how can a +10 masterwork only add +9 to a stat? My New City submachine gun is masterworked for Reload Speed, and before my recent change hovering over the mod would say it adds +10 Reload Speed. You may have noticed that before this change, perks like "Extended Mag" would show "+20 Magazine" when it really couldn't add +20 - the real value is only a few extra bullets in the mag. This let us show the proper value even for hidden stats, and we can also show the actual amount perks and mods contribute. The recent change in DIM was to switch to calculating all stats on our own, using the per-item scaling functions to transform the investment stats into calculated stats. However, we only had access to the investment values, not the calculated values, so that's what we showed. In game this is only vague text like "increases range", but we wanted to show the actual numbers. Second, we also showed the value that perks and mods would apply to your stats. Instead, we showed the raw investment value for those stats. These are never surfaced in the game UI, and the API doesn't provide them as calculated stats. First, we show a handful of "hidden stats", like Aim Assistance, Zoom, and Recoil Direction. Magazine Size is one of the stats that's notorious for being impossible to calculate accurately from just this data.ĭIM used these calculated stats up until recently, with a few exceptions. This gives a pretty accurate view of most stats, but even they cannot make use of the scripts that are used in game, so what (and DIM) reports as the stat values cannot ever be 100% accurate. ![]() The API provides apps with "calculated stats" which precalculate the effects of these per-item scaling functions. It's actually more complicated than that - there are scripts that can run in the game that modify these values further! Then, this investment value gets transformed by per-item scaling functions that map them into the value you see in the game UI. Each stat has a value called the "investment value" which is the raw value of the stat, usually from 0-100. DIM reads your live API data about your characters and their inventory, and combines that information with "the manifest" which is a mostly static database (also from Bungie) with information about all the different parts of the game.įor each item, there are a number of stats (Impact, Resistance, Magazine Size, etc.) which have different effects on how the item works. Bungie generously makes this API available to everyone to build on, and within it is a wealth of information about how the items and systems of Destiny work. This can lead to some unintuitive results, for example a tier 10 masterwork mod adding +9 to a stat (instead of +10).ĭIM works by using the API, which is the same API that all other Destiny apps and websites use, including the Companion App. This means that our stat bars and perk/mod values are more true to the effects you'll actually see in game. We're doing a bunch to prepare for Shadowkeep and Armor 2.0, and having accurate stats is an important part of that.Ī few weeks ago I shipped a change to how we calculate stats for DIM that brings it more in line with how Destiny actually works (though not perfectly, as we'll discuss). I wanted to talk about some changes I made to DIM recently, and how they affect what you see in the stat bars and perk/mod tooltips. Hi folks, this is Ben, one of the people who builds DIM (Destiny Item Manager). Tl dr - DIM's stats, especially for perks/mods, are more accurate to what's in game now, and we used math to do it.
0 Comments
Leave a Reply. |