Additional WvW stats?
As for score, objectives have a set score, dont they? If so, it’s just a matter of sorting out what objectives a given side has, itemize the points, and then just do the resulting math.
As for score, objectives have a set score, dont they? If so, it’s just a matter of sorting out what objectives a given side has, itemize the points, and then just do the resulting math.
That will give you the current +PPT (which is not what I’m looking for), but if you want the average for the week, you have to store the data every tick and then average it out to find the average +PPT. My point is there should be a better method for retrieving that data without having to repeatedly make API calls and store the data.
Web Programmer
So, while I agree, there are some pretty large technical hurdles to providing non-current data. As a short primer, the data’s path looks roughly like this:
1. The map instance servers running the WvW maps keep track of the current state.
2. Periodically, the current state is flushed and persisted to the per-datacenter singleton orchestration server.
3. The orchestration server re-emits the entire map state to a pool of backend WvW API servers which mirror the current state.
4. The API frontend servers query the backend WvW API servers to handle requests.
The problems are twofold:
- The orchestration server is, from my seat, immutable. It’s a singleton and controls pretty much all of Tyria, so any change to it is rightfully accompanied by hand wringing and many sleepless nights. Sentry and ruins state aren’t currently sent to the orchestration server, so the API will probably never be able to emit that data, nor is the score (PPT vs. PPK) breakdown.
- Both the API frontend and backend servers are completely stateless and often restarted. It’s possible to make the backend stateful, but it requires a significant overhaul. This combination makes it infeasible to store anything other than the current state, which is mostly what the API exposes.
The good news is that we’re aware of the issues; the bad news is that I’m not sure when we’ll have improved them in a way that the API will benefit from. In the meanwhile, the periodic polling workaround kind of works, even if it’s a bit of a hassle.
Sorry :<