Bungie-net / api

Resources for the Bungie.net API
Other
1.22k stars 92 forks source link

Feedback/Questions on DestinyLocationDefinitions #498

Open lowlines opened 6 years ago

lowlines commented 6 years ago

I've been looking into the map data for integration into my maps project (https://lowlidev.com.au/destiny/maps) and I've got some feedback/questions on it.

Feature request: Merge "bubbles" and "bubbleSettings" into a single property as the former just points to the latter.

Question: Looking at locationReleases for a given DestinationHash, the only time I'm seeing more than one entry is for Public Events (ie 2887180023), which all seem to point to the same worldPosition and basically the same exact settings. Why is that and what other instances would you possibly see multiple locationReleases?

Feature request: I recall this being an issue with how nodes are being tagged by designers, but it'd be really helpful is the navPointType was properly populated as there is very little other information on these definitions to help identify what they are for unless they point to an activity or vendor or if there's something in the displayProperties to scrape from.

Question: Can you provide in more detail what activityPathBundle and activityPathDestination are for, and/or provide an example of one? If I had a better understanding of their purpose, I might be able to reverse engineer the data manually.

Question: I can see that activityGraphHash is being set however all activityGraphNodeHashes are zero. Is this a bug?

Feature Request: Can the Destiny 2 icons be added? The Vendors appear to have all of the icons I can see in the UI game dumps (I actually like how complete the vendor icon/image set is), but activities have none and there's no differentiation between story missions like Red War, Curse of Osiris, Warmind and World Quests. It might also be worth adding a story sub activityType for each to the enum list. For locationReleases that don't have an associated vendor/activity, would it be possible to to return the map/ui icons or is that also tied to the navPointType issue?

vthornheart-bng commented 6 years ago

For the locationReleases, here's some background: Basically each of those represents a different state in which the public event location may be considered "active": but the way the data is set up on the game side, it can't reuse that location information even if it's the same.

So when you see a location with 3 locationReleases, you're seeing 3 different situations in which the game thinks it might be active or otherwise have its state changed... and in the case of publci events, it seems like the designers set up each of those "activations" to happen at the exact same location.

When we get around to returning you live location data, we'll use those tests to give you which of those releases is actually active right now, which obviously won't be that useful for public events aside from knowing that they're currently live; but it will be useful for others where they could theoretically change locations, if there are any like that.

I'll have to do some digging to find out more, as I don't actually know myself beyond that. The location data is one of those areas that we weren't planning on implementing any features around so I didn't pay it much attention, but that I wanted you all to be able to get access to... so most of it I just plumbed through as-is in case it was useful to someone. I'm going to have to do a little digging myself and see if there's anything missing we can add that would be useful or any extra context that will help make interpreting this data easier!

vthornheart-bng commented 6 years ago

I'll get back to the other ones once I have a few minutes! It's been a busy couple of weeks, oy!

lowlines commented 6 years ago

I have the location data rendering on my maps while in debug mode. Appending ?debug on the end of any map page will enable debug mode, which can be used to get a visualisation of release nodes (in the form of red dots, which you can click on to get the locationHash) on supported maps.

Below is a list of errors/issues with the data, sorted by map.

EDZ - (https://lowlidev.com.au/destiny/maps/earth?debug)

Titan - (https://lowlidev.com.au/destiny/maps/titan?debug)

Nessus - (https://lowlidev.com.au/destiny/maps/nessus?debug)

Io - (https://lowlidev.com.au/destiny/maps/io?debug)

Mercury - (https://lowlidev.com.au/destiny/maps/mercury?debug)

Mars - (https://lowlidev.com.au/destiny/maps/mars?debug)

Another issue I discovered is that the worldPosition data seems to vary between maps. Not only is there a scale factor involved, but the order and direction seems to vary as well.

Tower ScaleFactor: ~5.6

EDZ ScaleFactor: ~1.1

Titan ScaleFactor: ~1.32 Y-Axis: Inverted

Nessus ScaleFactor: 1

Io ScaleFactor: ~1.08 X-Axis: Inverted Y-Axis: Inverted

Mercury ScaleFactor: ~1.32 X-Axis and Y-Axis are swapped

Mars ScaleFactor: 1 X-Axis and Y-Axis are swapped