Skip to content

Commit 146c6ea

Browse files
Add data-collection page
1 parent 15a8f5c commit 146c6ea

2 files changed

Lines changed: 157 additions & 1 deletion

File tree

Lines changed: 155 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,155 @@
1+
---
2+
title: Data Collection
3+
---
4+
5+
All plugins by FancyInnovation collect anonymous usage data (using [FancyAnalytics](https://fancyanalytics.net/) and [bStats](https://bstats.org)) to help us understand how the plugin is being used and to improve it.
6+
No personally identifiable information is collected, and you can opt out of data collection (see below).
7+
All collected data by all servers is aggregated, we don't store any IP addresses, server names, or any other information that could be used to identify a specific server or user.
8+
Only a sender_id is temporarily stored to prevent duplicate entries, it will be deleted a few minutes after the data is sent.
9+
10+
We highly value your privacy and are committed to being transparent about the data we collect and how it is used.
11+
If you have any questions or concerns about our data collection practices, please don't hesitate to contact us.
12+
13+
Please note that the data collected is used solely for improving the plugin and is not shared with any third parties.
14+
It helps us understand how you all use this plugin and allows us to make decisions about future features and improvements based on real usage data.
15+
16+
## Opt-out
17+
18+
### FancyAnalytics
19+
20+
You can disable data collection via FancyAnalytics by setting `send_metrics` and `send_errors` to `false` in `plugins/FancyAnalytics/config.json`.
21+
22+
### bStats
23+
24+
To disable data collection via bStats, you can set `enabled` to `false` in the `plugins/bStats/config.yml` file.
25+
26+
## Collected data
27+
28+
### FancyNpcs
29+
30+
FancyNpcs stores the following data:
31+
32+
- amount_non_persistent_npcs (the amount of non-persistent NPCs on the server)
33+
- amount_not_player_npcs (the amount of NPCs that are not players on the server)
34+
- amount_npc_actions (the amount of NPC actions on the server)
35+
- amount_npcs (the total amount of NPCs on the server)
36+
- amount_npcs_having_attributes (the amount of NPCs having attributes on the server)
37+
- amount_npcs_interaction_cooldown_longer_than_5min (the amount of NPCs having an interaction cooldown longer than 5 minutes on the server)
38+
- avg_interaction_cooldown (the average interaction cooldown of all NPCs on the server)
39+
- commit_hash (the commit hash of the plugin version)
40+
- cpu_cores (the amount of CPU cores available to the server)
41+
- enabled_player_npcs_fflag (whether the player NPCs feature flag is enabled)
42+
- enabled_update_notifications (whether update notifications are enabled)
43+
- java_version (the version of Java the server is running on)
44+
- jvm_name (the name of the JVM the server is running on)
45+
- language (the configured language e.g. en, de, etc.)
46+
- npc_type (the type of NPCs on the server, e.g. player, cow, etc.)
47+
- online_players (the amount of online players at the time of data collection)
48+
- operating_system (the operating system the server is running on)
49+
- operating_system_architecture (the architecture of the operating system the server is running on)
50+
- operating_system_version (the version of the operating system the server is running on)
51+
- plugin_version (the version of the plugin)
52+
- server_size (player count but in ranges / categories, e.g. small, medium, large)
53+
- server_software (the server software the server is running on, e.g. Paper, Folia, etc.)
54+
- server_version (the version of the server software the server is running on)
55+
- using_development_build (whether the server is using a development build of the plugin)
56+
57+
### FancyHolograms
58+
59+
FancyHolograms stores the following data:
60+
61+
- amount_holograms (the amount of holograms on the server)
62+
- commit_hash (the commit hash of the plugin version)
63+
- cpu_cores (the amount of CPU cores available to the server)
64+
- enabled_update_notifications (whether update notifications are enabled)
65+
- fflag_disable_holograms_for_bedrock_players (whether the feature flag to disable holograms for Bedrock players is enabled)
66+
- hologram_type (the type of holograms on the server, e.g. normal, item, etc.)
67+
- java_version (the version of Java the server is running on)
68+
- jvm_name (the name of the JVM the server is running on)
69+
- online_players (the amount of online players at the time of data collection)
70+
- operating_system (the operating system the server is running on)
71+
- operating_system_architecture (the architecture of the operating system the server is running on)
72+
- operating_system_version (the version of the operating system the server is running on)
73+
- plugin_version (the version of the plugin)
74+
- server_size (player count but in ranges / categories, e.g. small, medium, large)
75+
- server_software (the server software the server is running on, e.g. Paper, Folia, etc.)
76+
- server_version (the version of the server software the server is running on)
77+
- total_amount_attached_traits (the total amount of attached traits on all holograms on the server)
78+
- using_development_build (whether the server is using a development build of the plugin)
79+
80+
### FancyDialogs
81+
82+
FancyDialogs stores the following data:
83+
84+
- amount_actions (the amount of actions)
85+
- amount_body_elements (the amount of body elements)
86+
- amount_buttons (the amount of buttons)
87+
- amount_dialogs (the amount of loaded dialogs)
88+
- amount_input_elements (the amount of input elements)
89+
- cpu_cores (the amount of CPU cores available to the server)
90+
- java_version (the version of Java the server is running on)
91+
- jvm_name (the name of the JVM the server is running on)
92+
- online_players (the amount of online players at the time of data collection)
93+
- operating_system (the operating system the server is running on)
94+
- operating_system_architecture (the architecture of the operating system the server is running on)
95+
- operating_system_version (the version of the operating system the server is running on)
96+
- plugin_version (the version of the plugin)
97+
- server_size (player count but in ranges / categories, e.g. small, medium, large)
98+
- server_software (the server software the server is running on, e.g. Paper, Folia, etc.)
99+
- server_version (the version of the server software the server is running on)
100+
101+
### FancyWorlds
102+
103+
FancyWorlds stores the following data:
104+
105+
- amount_worlds (the amount of worlds on the server)
106+
- commit_hash (the commit hash of the plugin version)
107+
- cpu_cores (the amount of CPU cores available to the server)
108+
- enabled_update_notifications (whether update notifications are enabled)
109+
- java_version (the version of Java the server is running on)
110+
- jvm_name (the name of the JVM the server is running on)
111+
- online_players (the amount of online players at the time of data collection)
112+
- operating_system (the operating system the server is running on)
113+
- operating_system_architecture (the architecture of the operating system the server is running on)
114+
- operating_system_version (the version of the operating system the server is running on)
115+
- plugin_version (the version of the plugin)
116+
- server_size (player count but in ranges / categories, e.g. small, medium, large)
117+
- server_software (the server software the server is running on, e.g. Paper, Folia, etc.)
118+
- server_version (the version of the server software the server is running on)
119+
- using_development_build (whether the server is using a development build of the plugin)
120+
121+
## FancyAnalytics data schema
122+
123+
The data collected via FancyAnalytics is stored in MongoDB. Example data record:
124+
125+
```json
126+
{
127+
"projectId": "the id of the project",
128+
"metricId": "plugin_version",
129+
"timestamp": 1776545490344,
130+
"interval": "FIVE_MINUTES",
131+
"values": {
132+
"2.9.0": 1192.0,
133+
"2.5.1": 51.0,
134+
"2.5.2": 55.0,
135+
"2.5.0": 148.0,
136+
"2.6.0": 88.0,
137+
"2.2.2": 4.0,
138+
"2.7.1": 572.0,
139+
"2.7.0": 169.0,
140+
"2.10.0": 16.0,
141+
"2.9.1": 1121.0,
142+
"2.9.2": 7100.0,
143+
"2.8.0": 629.0,
144+
"2.4.4": 135.0,
145+
"2.8.1": 271.0,
146+
"2.4.2": 101.0,
147+
"2.4.3": 1.0,
148+
"2.4.0": 12.0,
149+
"2.4.1": 41.0,
150+
...
151+
}
152+
}
153+
```
154+
155+
Aggregation happens every 5 minutes and all the 5-minute records will be aggregated into a 24-hour record at the end of the day.

content/docs/minecraft-plugins/meta.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
"fancyholograms",
99
"fancydialogs",
1010
"fancyworlds",
11-
"minecraft-version-support"
11+
"minecraft-version-support",
12+
"data-collection"
1213
]
1314
}

0 commit comments

Comments
 (0)