Matrix API
Matrix API v2 的使用说明
获取 Matrix 结果
GET
https://penguin-stats.io/PenguinStats/api/v2/result/matrix
此 Endpoint 允许您获取 Matrix 结果。
Query Parameters
server
string
说明欲请求的服务器代码。目前我们支持 4 个服务器:"CN", "US", "JP" 和 "KR"。默认值为 "CN"。
show_closed_zones
boolean
是否显示已经关闭的 Zone 与 Stage。 默认值为 false。
is_personal
boolean
使用全平台数据或个人数据。若提供了 true,请确保 Cookie 中有对应的 userID。 默认值为 false。
什么是 Drop Matrix?
Suppose there is a matrix using stageId as row and itemId as column. Each element in the matrix represents the statistical data for that item in the stage. We will have a huge sparse matrix for all the items and stages, and for each server.
Drop Matrix 构成元素说明
Model
Properties
stageId
and itemId
are internal ids of stages and items. They can be found in this repository.
start
is the left end (inclusive) of the interval. Time unit is millisecond.
end
is the right end (exclusive) of the interval. Time unit is millisecond.
quantity
means the number of dropped items during the interval.
times
means the number of times this stage was played during the interval. The value may be 0, so please be careful when calculating the drop rate.
Interval
Not all submitted drop samples will be used in the calculation of this matrix. As you can see above, each matrix element has its own interval. We design a special mechanism to decide what each interval should be.
Let's take stage main_01-07
as an example. We have four time ranges A to D:
Time Range
Meaning
start
end
A
Arknights CN released ~ Chapter 6 released
1556676000000
1577174400000
B
Chapter 6 released ~ 应急理智小样 event ended
1577174400000
1578340800000
C
应急理智小样 event ended ~ 1st anniversary event started
1578340800000
1589529600000
D
1st anniversary event
1589529600000
1590696000000
Consider the following two items:
30012
: Chinese name is "固源岩". It shows up in the drop list ofmain_01-07
across all time ranges from A to D.ap_supply_lt_010
: Chinese name is "应急理智小样". It only shows up in the drop list ofmain_01-07
during time range B and D.
The calculation is assuming that the drop of ap_supply_lt_010
is independent from other items in main_01-07
. The quantity
and times
of 30012
can be summed up across time range A to D. So the summation interval of 30012
will be A to D, which means [1556676000000, 1590696000000)
. Here we say all ranges for 30012
in main_01-07
is accumulatable. (Maybe we should use the term "accumulable", however in the code and database we are using the former one, so we want to keep it as it is.)
For ap_supply_lt_010
, we are not sure if the drop rate in time range D is different from the one in B. Thus, we think that samples from B and D should not be summed up together. We would like to say ap_supply_lt_010
in main_01-07
is non-accumulatable during time range B and D. Our matrix API is designed to reveal the latest drop rates, so the interval of ap_supply_lt_010
in main_01-07
in the matrix will be [1589529600000, 1590696000000)
.
Although the data of ap_supply_lt_010
in main_01-07
is not showing in the matrix result, you can still use Advanced Query to get them.
The interval may be varies for different items in one stage. That is why we show it using start
and end
in the drop matrix element.
Last updated