Releases: plan-player-analytics/Plan
5.7 DEV build 3298
5.7 DEV build 3298
DEV build to test new publishing pipelines to Ore, Hangar and Modrinth.
No changes compared to DEV build 3294/3295 https://github.com/plan-player-analytics/Plan/releases/tag/5.7.3295
5.7 DEV build 3295
5.7 DEV build 3295
Hotfix for config update bug in build 3288.
DEV build to test new publishing pipelines to Ore, Hangar and Modrinth.
Change log
- Fixed config resetting some values to default on reload
- Fixed table sorting with alphabetical things
5.7 DEV build 3294
5.7 DEV build 3294
Hotfix for config update bug in build 3288.
DEV build to test new publishing pipelines to Ore, Hangar and Modrinth.
Change log
- Fixed config resetting some values to default on reload
- Fixed table sorting with alphabetical things
5.7 build 3288
5.7 build 3288
This release contains bugfixes to build 3265 and a new theme.
Special thanks to Kopo, Leolebleis & Guinness_Akihiko for contributions to this update
Change log
Website
- Improved readability of World Pie on servers that have over 7 worlds
- Improved readability of Server Pie on networks that have over 7 servers
- Moved Performance graph loading to Web Worker (async threading in browsers) - This should improve rendering times slightly
- Fixed issue where Join Address Groups would reset when using HTTPS
- Fixed a couple of instances where Trend was not properly showing
- Fixed 'showPlayersOnline is not defined' when viewing network page on networks with multiple Proxy servers
- Fixed a bug with Change history floating on top of the Save button in Theme Editor when using Night mode.
- Fixed CUSTOM locale defaulting to Chinese locale for time/date/country localization due to "Best match" in browser matching.
- Fixed Swagger documentation not showing
- Fixed 'New player retention' label in Server overview
- Fixed typo in a locale key
- Fixed Low TPS Insights showing entities instead of CPU
- Leolebleis fixed reverse-proxy https address not being recognized as correct address
Fabric
Kopo updated Fabric to use Mojang mappings (Tested with 1.12.9-1.12.11)
Themes
Added solarized theme based on https://github.com/altercation/solarized
Config
- Possibly fixed a race condition that caused server identity to be reset, creating duplicate servers when server was shut down during Database patching
- Fixed trailing comments removing part of config setting value.
- Fixed some config changes being applied every time
Locale
- Guinness_Akihiko updated KO locale
Other
- Builds now require JDK 25 for switch to Mojang mappings.
5.7 DEV build 3265
5.7 DEV build 3265
This dev release is a collection of bugfixes intended to release next weekend.
Special thanks to Guinness_Akihiko for contributions to this update
Change log
Website
- Improved readability of World Pie on servers that have over 7 worlds
- Improved readability of Server Pie on networks that have over 7 servers
- Moved Performance graph loading to Web Worker (async threading in browsers) - This should improve rendering times slightly
- Fixed a couple of instances where Trend was not properly showing
- Fixed a bug with Change history floating on top of the Save button in Theme Editor when using Night mode.
- Fixed CUSTOM locale defaulting to Chinese locale for time/date/country localization due to "Best match" in browser matching.
Themes
Added solarized theme based on https://github.com/altercation/solarized
Locale
- Guinness_Akihiko updated KO locale
Other
- Builds now require JDK 25 in preparation for switch to Mojang mappings.
5.7 build 3247
5.7 build 3247
This update brings a big bunch of new features and improvements, such as Theme Editor, Milliseconds per Tick, Players online -tooltip, Database move/merge rewrite and many others.
Special thanks to Kopo, SaolGhra, TWJohnJohn20116, Shadowhackercz, Vankka, DrexHD, Jsinco & julianvdhogen for contributions to this update
Change log
The theme settings have changed.
See https://github.com/plan-player-analytics/Plan/wiki/Migration-guide-from-Version-5.6-to-5.7 for what might need changing in the config.
Website
Fixed vulnerabilities
- Fixed potential XSS injected through malicious plugin. (User would have had to click the link to activate XSS) What is XSS
- Fixed potential Session hijack vulnerability after successful XSS where attacker could read authentication cookie through javascript.
- It is recommended to run
/plan logout *after the update to protect against this vulnerability, even if the sessions will eventually expire.
- It is recommended to run
There has not been reports of exploitation of these vulnerabilities.
Theme Editor
You can now create your own themes for Plan without needing Html Customization. This is the main new feature of this version and is documented here.
- theme.yml has now been deprecated and will be deleted if it only contains default values
MSPT (Milliseconds per Tick)
Milliseconds per Tick (average/95th percentile) have been added to performance metrics on all applicable platforms.
Players online -tooltip
You can now hover over Players online graph to see who was online at specific time (up to 63 players).
Query page improvements
- New filters have been added
- Played on date
- Activity group on date
- Last seen between
- All 'between' filters now support 'Before' and 'After' by deselecting one of the checkboxes (e.g. played between -> played before)
- Multi-select components have been replaced with a mobile friendly, text searchable alternative that no longer requires pressing Shift for multi-selection
- Fixed timezone inconsistency between View time input fields and the graph
Performance graph improvements
- Performance graph tabs now sync the graph range-finder so that you can view different data for same time easier
- Network performance graph colors now vary between servers to be easier to read
- Fixed extra Series label appearing in HTTP mode on Performance graph (This was the plugin version history series in HTTPS mode)
- Added Uptime data to Performance as Numbers tables
Other
- Kills table can now be searched/sorted/exported and gets up to 25000 entries from the database
- Added support for nickname search in player tables
- Fixed some night mode text invisibility issues
- SaolGhra fixed error
r.includes is not a functionrelated to Litebans - Fixed 'View full query' button in the modal that opens when clicking Server calendar
- Fixed clicking Server calendar results including players who played on other servers during selected days
Config
- Changed default
Display_options.Player_head_image_urltohttps://crafthead.net/helm/${playerUUIDNoDash}/120(Existing configs need to be manually updated) - Jsinco updated 'Data_gathering.Join_addresses_.Filter_out_from_data' to support regex. Note that any existing setting values with . (dot character) will now match any character.
Display_options.Theme(default "default") now refers to theme name in the theme editor rather than "What theme.yml to copy values from"Display_options.Night_mode(default false) added
Data
- MSPT average and 95th percentile added to plan_tps table
- Register date
0(1970-01-01) is now regarded as invalid. - Ban status is now updated by an automatic task that cycles through all known players small amount at a time
Sponge
- Sponge API 14 is now used, API 8 is no longer supported.
Fabric
- Fabric was updated to 1.12.9 by DrexHD (Supports 1.12.11 as well)
Velocity
- Velocity was updated to 3.5.0-SNAPSHOT
Database
Database move system rewrite
Rewrote the system responsible for copying data from one database to another since previous system would crash under large datasets. The goal of this was to allow copying large SQLite databases to MySQL even on larger servers. The system was tested against a 3 GB MySQL database on a server with 1 GB of allocated memory. (Sidenote: Please don't try to run your server off 3 GB large database.db SQLite file)
- /plan db move, /plan db backup, /plan db restore use the new system
- Added /plan db merge command (permission: plan.data.merge) which allows merging SQLite data to existing MySQL. This is useful for those merging multiple servers into a network when all servers had Plan installed on separate SQLite databases.
Other
- id column added to old plan_tps tables that did not have it yet via Patch.
- Lock hints for selections inside transactions to reduce deadlocks
- Fixed 1020 "Record has changed since last read in table" error on MariaDB 11.8.3
- Fixed dyplicate key violation related to AllowListBounce
- Possibly fixed ShutdownDataPreservationTransaction failing on existing join address insert
- Fixed playtime queries where session started before view window or ended after.
Locale
- Dates, time amounts & country names are now translated based on the selected locale. (If specific ones aren't please report it as a bug)
- HighCharts & Calendar are now translated based on the selected locale
- TWJohnJohn20116 updated zh_TW locale
- Shadowhackercz updated CS locale
- julianvdhogen updated NL locale
Extensions
- Fixed ArithmeticException related to LibertyBans when bans were infinite
- Fixed an issue related to rendering boolean values
- Updated Jobs extension to support newer version
- Added Time.Periodical_tasks.Extension_player_data_refresh_every setting (default 15 MINUTES) which only affects plugins that decide to support it.
- Made gathered PlaceholderAPI data update periodically
Placeholders
- Fixed network_players_online always saying 0
Other
- Added Typescript support.
- Vankka updated DependencyDownload to clean up libraries folder of old versions
- Kopo updated the build system to speed up builds & IDE indexing performance
5.7 DEV build 3232
5.7 DEV build 3232
This dev release includes new features and bugfixes done during a surprisingly productive weekend.
Full release still requires solving problems that arise from MariaDB 11.8.3 change where innodb_snapshot_isolation has now been turned on as default
Special thanks to Kopo, SaolGhra, TWJohnJohn20116, Shadowhackercz, Vankka, DrexHD, Jsinco & julianvdhogen for contributions to this update
Changes since DEV build 3211
- julianvdhogen updated NL locale
- Potentially fixed issues with Mariadb 11.8.3 error 1020 "Record has changed since last read in table"
- Changed default Display_options.Player_head_image_url to
https://crafthead.net/helm/${playerUUIDNoDash}/120
Change log
Website
Theme Editor
You can now create your own themes for Plan without needing Html Customization. This is the main new feature of this version and is documented here.
- theme.yml has now been deprecated and will be deleted if it only contains default values
MSPT (Milliseconds per Tick)
Milliseconds per Tick (average/95th percentile) have been added to performance metrics on all applicable platforms.
Players online -tooltip
You can now hover over Players online graph to see who was online at specific time (up to 63 players).
Query page improvements
- New filters have been added
- Played on date
- Activity group on date
- Last seen between
- All 'between' filters now support 'Before' and 'After' by deselecting one of the checkboxes (e.g. played between -> played before)
- Multi-select components have been replaced with a mobile friendly, text searchable alternative that no longer requires pressing Shift for multi-selection
- Fixed timezone inconsistency between View time input fields and the graph
Other
- Kills table can now be searched/sorted/exported and gets up to 25000 entries from the database
- Added Uptime data to Performance as Numbers tables
- Added support for nickname search in player tables
- Performance graph tabs now sync the graph range-finder so that you can view different data for same time easier
- Network performance graph colors now vary between servers to be easier to read
- Fixed extra Series label appearing in HTTP mode on Performance graph (This is the plugin version history series in HTTPS mode)
- Fixed some night mode text invisibility issues
- SaolGhra fixed error
r.includes is not a functionrelated to Litebans - Fixed 'View full query' button in the modal that opens when clicking Server calendar
- Fixed clicking Server calendar results including players who played on other servers during selected days
Config
- Changed default
Display_options.Player_head_image_urltohttps://crafthead.net/helm/${playerUUIDNoDash}/120(Existing configs need to be manually updated) - Jsinco updated 'Data_gathering.Join_addresses_.Filter_out_from_data' to support regex. Note that any existing setting values with . (dot character) will now match any character.
Display_options.Theme(default "default") now refers to theme name in the theme editor rather than "What theme.yml to copy values from"Display_options.Night_mode(default false) added
Data
- MSPT average and 95th percentile added to plan_tps table
- Register date
0(1970-01-01) is now regarded as invalid. - Ban status is now updated by an automatic task that cycles through all known players small amount at a time
Sponge
- Sponge API 14 is now used, API 8 is no longer supported.
Fabric
- Fabric was updated to 1.12.9 by DrexHD (Supports 1.12.11 as well)
Velocity
- Velocity was updated to 3.5.0-SNAPSHOT
Database
Database move system rewrite
Rewrote the system responsible for copying data from one database to another since previous system would crash under large datasets. The goal of this was to allow copying large SQLite databases to MySQL even on larger servers. The system was tested against a 3 GB database on a server with 1 GB of allocated memory.
- /plan db move, /plan db backup, /plan db restore use the new system
- Added /plan db merge command (permission: plan.data.merge) which allows merging SQLite data to existing MySQL. This is useful for those merging multiple servers into a network when all servers had Plan installed on separate SQLite databases.
Other
- id column added to old plan_tps tables that did not have it yet via Patch.
- If MySQL runs into error code 1020 'Stale read' error, the transaction will retry instead of erroring
- Fixed dyplicate key violation related to AllowListBounce
- Possibly fixed ShutdownDataPreservationTransaction failing on existing join address insert
- Fixed playtime queries to include playtime where session started before view window or ended after.
- Potentially fixed issues with Mariadb 11.8.3 error 1020 "Record has changed since last read in table"
Locale
- Dates, time amounts & country names are now translated based on the selected locale. (If specific ones aren't please report it as a bug)
- HighCharts & Calendar are now translated based on the selected locale
- TWJohnJohn20116 updated zh_TW locale
- Shadowhackercz updated CS locale
- julianvdhogen updated NL locale
Extensions
- Fixed ArithmeticException related to LibertyBans when bans were infinite
- Fixed an issue related to rendering boolean values
- Updated Jobs extension to support newer version
- Added Time.Periodical_tasks.Extension_player_data_refresh_every setting (default 15 MINUTES) which only affects plugins that decide to support it.
- Made gathered PlaceholderAPI data update periodically
Placeholders
- Fixed network_players_online always saying 0
Other
- Vankka updated DependencyDownload to clean up libraries folder of old versions
- Kopo updated the build system to speed up builds & IDE indexing performance
5.7 DEV build 3211
5.7 DEV build 3211
This dev release includes new features and bugfixes done during a surprisingly productive weekend.
Full release still requires solving problems that arise from MariaDB 11.8.3 change where innodb_snapshot_isolation has now been turned on as default
Special thanks to Kopo, SaolGhra, TWJohnJohn20116, Shadowhackercz, Vankka, DrexHD & Jsinco for contributions to this update
Changes since DEV build 3189
- Added Players online list -tooltip to Players Online graphs
- Added support for nickname search in player tables
- Added Time.Periodical_tasks.Extension_player_data_refresh_every setting (default 15 MINUTES) which only affects plugins that decide to support it.
- Made gathered PlaceholderAPI data update periodically
- Added more Query filters (Played on date, Activity group on date, Last seen between)
- Added Before and After checkboxes to all between filters to allow more flexible filtering
- Added theme editor to navigation item
- Fixed theme.yml being recreated
- Fixed night mode issues where something had no colors set
- Possibly fixed ShutdownDataPreservationTransaction failing on existing join address insert
- Fixed playtime queries to include playtime where session started before view window or ended after.
- Fixed Query timezone inconsistency between time fields and the graph
- Fixed 'View full query' button in the modal that opens when clicking Server calendar
- Fixed clicking Server calendar results including players who played on other servers during selected days
Change log
Website
Theme Editor
You can now create your own themes for Plan without needing Html Customization. This is the main new feature of this version and is documented here.
- theme.yml has now been deprecated and will be deleted if it only contains default values
MSPT (Milliseconds per Tick)
Milliseconds per Tick (average/95th percentile) have been added to performance metrics on all applicable platforms.
Players online -tooltip
You can now hover over Players online graph to see who was online at specific time (up to 63 players).
Query page improvements
- New filters have been added
- Played on date
- Activity group on date
- Last seen between
- All 'between' filters now support 'Before' and 'After' by deselecting one of the checkboxes (e.g. played between -> played before)
- Multi-select components have been replaced with a mobile friendly, text searchable alternative that no longer requires pressing Shift for multi-selection
- Fixed timezone inconsistency between View time input fields and the graph
Other
- Kills table can now be searched/sorted/exported and gets up to 25000 entries from the database
- Added Uptime data to Performance as Numbers tables
- Added support for nickname search in player tables
- Performance graph tabs now sync the graph range-finder so that you can view different data for same time easier
- Network performance graph colors now vary between servers to be easier to read
- Fixed extra Series label appearing in HTTP mode on Performance graph (This is the plugin version history series in HTTPS mode)
- Fixed some night mode text invisibility issues
- SaolGhra fixed error
r.includes is not a functionrelated to Litebans - Fixed 'View full query' button in the modal that opens when clicking Server calendar
- Fixed clicking Server calendar results including players who played on other servers during selected days
Config
- Jsinco updated 'Data_gathering.Join_addresses_.Filter_out_from_data' to support regex. Note that any existing setting values with . (dot character) will now match any character.
Display_options.Theme(default "default") now refers to theme name in the theme editor rather than "What theme.yml to copy values from"Display_options.Night_mode(default false) added
Data
- MSPT average and 95th percentile added to plan_tps table
- Register date
0(1970-01-01) is now regarded as invalid. - Ban status is now updated by an automatic task that cycles through all known players small amount at a time
Sponge
- Sponge API 14 is now used, API 8 is no longer supported.
Fabric
- Fabric was updated to 1.12.9 by DrexHD (Supports 1.12.11 as well)
Velocity
- Velocity was updated to 3.5.0-SNAPSHOT
Database
Database move system rewrite
Rewrote the system responsible for copying data from one database to another since previous system would crash under large datasets. The goal of this was to allow copying large SQLite databases to MySQL even on larger servers. The system was tested against a 3 GB database on a server with 1 GB of allocated memory.
- /plan db move, /plan db backup, /plan db restore use the new system
- Added /plan db merge command (permission: plan.data.merge) which allows merging SQLite data to existing MySQL. This is useful for those merging multiple servers into a network when all servers had Plan installed on separate SQLite databases.
Other
- id column added to old plan_tps tables that did not have it yet via Patch.
- If MySQL runs into error code 1020 'Stale read' error, the transaction will retry instead of erroring
- Fixed dyplicate key violation related to AllowListBounce
- Possibly fixed ShutdownDataPreservationTransaction failing on existing join address insert
- Fixed playtime queries to include playtime where session started before view window or ended after.
Locale
- Dates, time amounts & country names are now translated based on the selected locale. (If specific ones aren't please report it as a bug)
- HighCharts & Calendar are now translated based on the selected locale
- TWJohnJohn20116 updated zh_TW locale
- Shadowhackercz updated CS locale
Extensions
- Fixed ArithmeticException related to LibertyBans when bans were infinite
- Fixed an issue related to rendering boolean values
- Updated Jobs extension to support newer version
- Added Time.Periodical_tasks.Extension_player_data_refresh_every setting (default 15 MINUTES) which only affects plugins that decide to support it.
- Made gathered PlaceholderAPI data update periodically
Placeholders
- Fixed network_players_online always saying 0
Other
- Vankka updated DependencyDownload to clean up libraries folder of old versions
- Kopo updated the build system to speed up builds & IDE indexing performance
5.7 DEV build 3189
5.7 DEV build 3189
This dev release is a release candidate for 5.7 release.
Special thanks to Kopo, SaolGhra, TWJohnJohn20116, Shadowhackercz, Vankka, DrexHD & Jsinco for contributions to this update
Changes since DEV build 3123
- Czech locale updated by Shadowhackercz
- Fixed an issue related to boolean values in Extensions
- Added Server Uptime to Performance as Numbers tables
- Vankka updated DependencyDownload to clean up old downloaded libraries
- Added MSPT (Milliseconds per Tick) metrics to Performance
- DrexHD updated fabric to 1.21.9
- Jsinco updated join address filter setting to support regex
- Rewrite of the database move/backup/restore system
- Updated to use velocity 3.5.0-SNAPSHOT
Change log
Website
Theme Editor
You can now create your own themes for Plan without needing Html Customization. This is the main new feature of this version and is documented here.
- theme.yml has now been deprecated and will be deleted if it only contains default values
MSPT (Milliseconds per Tick)
Milliseconds per Tick (average/90th percentile) have been added to performance metrics on all applicable platforms.
Other
- Kills table can now be searched/sorted/exported and gets up to 25000 entries from the database
- Added Uptime data to Performance as Numbers tables
- Multi-select components have been replaced with a more intuitive alternative, especially on mobile
- Performance graph tabs now sync the graph range-finder so that you can view different data for same time easier
- Network performance graph colors now vary between servers to be easier to read
- Fixed extra Series label appearing in HTTP mode on Performance graph (This is the plugin version history series in HTTPS mode)
- Fixed some night mode text invisibility issues
- SaolGhra fixed error
r.includes is not a functionrelated to Litebans
Config
- Jsinco updated 'Data_gathering.Join_addresses_.Filter_out_from_data' to support regex. Note that any existing setting values with . (dot character) will now match any character.
Display_options.Theme(default "default") now refers to theme name in the theme editor rather than "What theme.yml to copy values from"Display_options.Night_mode(default false) added
Data
- MSPT average and 90th percentile added to plan_tps table
- Register date
0(1970-01-01) is now regarded as invalid. - Ban status is now updated by an automatic task that cycles through all known players small amount at a time
Sponge
- Sponge API 14 is now used, API 8 is no longer supported.
Fabric
- Fabric was updated to 1.12.9 by DrexHD (Supports 1.12.11 as well)
Velocity
- Velocity was updated to 3.5.0-SNAPSHOT
Database
Database move system rewrite
Rewrote the system responsible for copying data from one database to another since previous system would crash under large datasets. The goal of this was to allow copying large SQLite databases to MySQL even on larger servers. The system was tested against a 3 GB database on a server with 1 GB of allocated memory.
- /plan db move, /plan db backup, /plan db restore use the new system
- Added /plan db merge command (permission: plan.data.merge) which allows merging SQLite data to existing MySQL. This is useful for those merging multiple servers into a network when all servers had Plan installed on separate SQLite databases.
Other
- id column added to old plan_tps tables that did not have it yet via Patch.
- If MySQL runs into error code 1020 'Stale read' error, the transaction will retry instead of erroring
- Fixed dyplicate key violation related to AllowListBounce
Locale
- Dates, time amounts & country names are now translated based on the selected locale. (If specific ones aren't please report it as a bug)
- HighCharts & Calendar are now translated based on the selected locale
- TWJohnJohn20116 updated zh_TW locale
- Shadowhackercz updated CS locale
Extensions
- Fixed ArithmeticException related to LibertyBans when bans were infinite
- Fixed an issue related to rendering boolean values
- Updated Jobs extension to support newer version
Placeholders
- Fixed network_players_online always saying 0
Other
- Vankka updated DependencyDownload to clean up libraries folder of old versions
- Kopo updated the build system to speed up builds & IDE indexing performance
5.7 DEV build 3123
5.7 DEV build 3123
This dev release contains quite a lot of changes, so please report any bugs that you may find.
Special thanks to Kopo, SaolGhra & TWJohnJohn20116 for contributions to this update
Change log
Website
Theme Editor
You can now create your own themes for Plan without needing Html Customization. This is the main new feature of this version and is documented here.
- theme.yml has now been deprecated and will be deleted if it only contains default values
Localization
One goal in this version is to reduce the amount of mixed language (e.g. selected language + English) appearing on the website. This work is still underway. If you're using a locale that still has English lines in it, please help translate it
- Dates, time amounts & country names are now translated based on the selected locale. (If specific ones aren't please report it as a bug)
- HighCharts & Calendar are now translated based on the selected locale
Other
- Kills table can now be searched/sorted/exported and gets up to 25000 entries from the database
- Multi-select components have been replaced with a more intuitive alternative, especially on mobile
- Performance graph tabs now sync the graph range-finder so that you can view different data for same time easier
- Network performance graph colors now vary between servers to be easier to read
- Fixed extra Series label appearing in HTTP mode on Performance graph (This is the plugin version history series in HTTPS mode)
- Fixed some night mode text invisibility issues
- SaolGhra fixed error
r.includes is not a functionrelated to Litebans
Config
Display_options.Theme(default "default") now refers to theme name in the theme editor rather than "What theme.yml to copy values from"Display_options.Night_mode(default false) added
Data
- Register date
0(1970-01-01) is now regarded as invalid. - Ban status is now updated by an automatic task that cycles through all known players small amount at a time
Sponge
- Sponge API 14 is now used, API 8 is no longer supported.
Database
- If MySQL runs into error code 1020 'Stale read' error, the transaction will retry instead of erroring
- Fixed dyplicate key violation related to AllowListBounce
Locale
- TWJohnJohn20116 updated zh_TW locale
Extensions
- Fixed ArithmeticException related to LibertyBans when bans were infinite
- Updated Jobs extension to support newer version
Placeholders
- Fixed network_players_online always saying 0
Other
- Kopo updated the build system to speed up builds & IDE indexing performance
