Commit Graph

360 Commits (f0574527b927b8f1e39be568ff6a999f7661f8a5)

Author SHA1 Message Date
William 33c2eb2237
refactor: Use cloud `☁` for server for HuskHomes consistency 11 months ago
William 299586aa86
refactor: Rename `DATA_UPDATE` -> `LATEST_SNAPSHOT` 11 months ago
William 05c988f2c7
refactor: Extend `DATA_UPDATE` Redis cache time on `LOCKSTEP` mode 11 months ago
William 8e0ad76968
refactor: Improve `getUserCheckedOut` debug log 11 months ago
William 4db162e78f
refactor: Even more minor debug logging tweaks 11 months ago
William 272bc1278a
refactor: More minor debug logging tweaks 11 months ago
William 35fdcf7106
refactor: Further improve debug log messages 11 months ago
William 48e087a3d7
refactor: Improve debug log wording for `getUserCheckedOut` 11 months ago
William ca000197e4
refactor: Further improvements to debug messages 11 months ago
William a6bab88cee
refactor: Add debug log for `listenForRedis` timeout 11 months ago
William f0c64df439
refactor: Improve debug logging messages 11 months ago
William ac5ab56717
fix: Don't wrap `saveUserData` in `runAsync` twice 11 months ago
William 4c2bb5c6df
fix: Get correct platform Audience for OnlineUsers 11 months ago
William fb069296e1
refactor: Use native adventure implementation on Paper 11 months ago
Roman Alexander 22eedc8522
feat: Add support for Redis Sentinels (#216)
* Add support for Redis Sentinels

* Add some comments
11 months ago
William278 5ec0f1b098 Support MC 1.20.4, improve timestamp exceptions 12 months ago
William 83e27cca83
locales: Add Korean (ko-kr) courtesy of cada3141 12 months ago
Joo200 029407613f
locales: add new localization to de-de (#215) 12 months ago
Daniil Nartsissov 3d6ff7c30b
Save cause localization support (#214) 12 months ago
Daniil Nartsissov 5833ce955f
locales: add ru-ru localization (#211) 12 months ago
dependabot[bot] b3a5091828
Bump commons-io:commons-io from 2.15.0 to 2.15.1 (#209)
Bumps commons-io:commons-io from 2.15.0 to 2.15.1.

---
updated-dependencies:
- dependency-name: commons-io:commons-io
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: William <will27528@gmail.com>
12 months ago
dependabot[bot] 5d1bd7c3a9
Bump org.jetbrains:annotations from 24.0.1 to 24.1.0 (#208)
Bumps [org.jetbrains:annotations](https://github.com/JetBrains/java-annotations) from 24.0.1 to 24.1.0.
- [Release notes](https://github.com/JetBrains/java-annotations/releases)
- [Changelog](https://github.com/JetBrains/java-annotations/blob/master/CHANGELOG.md)
- [Commits](https://github.com/JetBrains/java-annotations/compare/24.0.1...24.1.0)

---
updated-dependencies:
- dependency-name: org.jetbrains:annotations
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1 year ago
WinTone01 7b8c75dbeb
Create tr-tr.yml (#207) 1 year ago
dependabot[bot] c973dc5f05
Bump com.zaxxer:HikariCP from 5.0.1 to 5.1.0 (#199)
Bumps [com.zaxxer:HikariCP](https://github.com/brettwooldridge/HikariCP) from 5.0.1 to 5.1.0.
- [Changelog](https://github.com/brettwooldridge/HikariCP/blob/dev/CHANGES)
- [Commits](https://github.com/brettwooldridge/HikariCP/compare/HikariCP-5.0.1...HikariCP-5.1.0)

---
updated-dependencies:
- dependency-name: com.zaxxer:HikariCP
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1 year ago
Ceddix c09fde4c36
Update German (de-de) locales, fix broken link in README (#196)
* updated the locales url

* updated German translation
1 year ago
dependabot[bot] 8d3beab145
Bump commons-io:commons-io from 2.14.0 to 2.15.0 (#193)
Bumps commons-io:commons-io from 2.14.0 to 2.15.0.

---
updated-dependencies:
- dependency-name: commons-io:commons-io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1 year ago
dependabot[bot] cdf666bde6
Bump org.apache.commons:commons-text from 1.10.0 to 1.11.0 (#194)
Bumps org.apache.commons:commons-text from 1.10.0 to 1.11.0.

---
updated-dependencies:
- dependency-name: org.apache.commons:commons-text
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1 year ago
dependabot[bot] 93913ca4ef
Bump org.json:json from 20230618 to 20231013 (#187)
Bumps [org.json:json](https://github.com/douglascrockford/JSON-java) from 20230618 to 20231013.
- [Release notes](https://github.com/douglascrockford/JSON-java/releases)
- [Changelog](https://github.com/stleary/JSON-java/blob/master/docs/RELEASES.md)
- [Commits](https://github.com/douglascrockford/JSON-java/commits)

---
updated-dependencies:
- dependency-name: org.json:json
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1 year ago
Missing_Love 6fc827dedf
Update zh-cn.yml (#184) 1 year ago
Missing_Love b8aa1d9701
Update zh-cn.yml (#183)
Update Chinese Simplified Translation
1 year ago
William 51116cbdfb
docs: Minor updates to links/legacy migration 1 year ago
William 289227e763
locales: Remove redundant comments in Japanese 1 year ago
William 3b8a9e4ed1
locales: Fix Dutch filename 1 year ago
William 7db3ed678f
Paper plugin support, save player itemsToKeep rather than drops if not empty (#179)
* Paper plugin support, save itemsToKeep if present, close #172

* Fixup wrong packages, suppress a warning

* Update docs, add settings for death saving, reorganise config slightly

* Improve default server name lookup

* docs: Add note on Unsupported Versions

* docs: Minor Sync Modes tweaks
1 year ago
William cae17f6e68
Introduce new lockstep syncing system, modularize sync modes (#178)
* Start work on modular sync systems

* Add experimental lockstep sync system, close #69

* Refactor RedisMessageType enum

* Fixup lockstep syncing

* Bump to 3.1

* Update docs with details about the new Sync Modes

* Sync mode config key is `mode` instead of `type`

* Add server to data snapshot overview

* API: Add API for setting data syncers

* Fixup weird statistic matching logic
1 year ago
Arno Keesman c2b9e6c932
add Dutch translation (#176) 1 year ago
dependabot[bot] 518853c921
Bump commons-io:commons-io from 2.13.0 to 2.14.0 (#174)
Bumps commons-io:commons-io from 2.13.0 to 2.14.0.

---
updated-dependencies:
- dependency-name: commons-io:commons-io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: William <will27528@gmail.com>
1 year ago
Namiu/うにたろう 37a671dae9
Update ja-jp.yml (#170) 1 year ago
William 55e443cd49
Improve error handling on data sync 1 year ago
William 575122e6dd
Tweak max health syncing calculation, add config option 1 year ago
William 856cbb9caa
Allow conversion of v1-v3 data snapshots 1 year ago
William 7034a97d3a
Fix wrong timestamp/UUID being used for legacy conversion (#167)
* Maintain legacy snapshot IDs when updating

* Also maintain timestamps during conversion

* Actually implement timestamp fix in LegacyConverter
1 year ago
William 635edb930f
Fix wrong syntax message on `/userdata restore`, Close #166 1 year ago
Villag3r_ 7c9ac37eb7
Update it-it.yml (#163) 1 year ago
William 105f65c93a
v3.0: New modular, more compatible data format, new API, better UX (#160)
* Start work on v3

* More work on task scheduling

* Add comment to notification display slot

* Synchronise branches

* Use new HuskHomes-style task system

* Bump to 2.3

* Remove HuskSyncInitializationException.java

* Optimise database for MariaDB

* Update libraries, move some around

* Tweak command registration

* Remove dummyhusksync

* Fixup core synchronisation logic to use new task system

* Implement new event dispatch subsystem

* Remove last remaining future calls

* Remove `Event#fire()`

* Refactor startup process

* New command subsystem, more initialization improvements, locale fixes

* Update docs, tweak command perms

* Reduce task number during data setting

* add todo

* Start work on data format / serialization refactor

* More work on Bukkit impl

* More serialization work

* Fixes to serialization, data preview system

* Start legacy conversion skeleton

* Handle setting empty inventories

* Start on-the-fly legacy conversion work

* Add advancement conversion

* Rewrite advancement get / apply logic

* Start work on locked map persistence

* More map persistence work

* More work on map serialization

* Move around persistence logic

* Add testing suite

* Fix item synchronisation

* Finalize more reliable locked map persistence

* Remove deprecated method call

* remove sync feature enum

* Fix held item slot syncing

* Make data types modular and API-extensible

* Remove some excessive debugging, minor refactor

* Fixup date formatting, improve menu UIs

* Finish up legacy data converting

* Null safety in item stack serializaiton

* Fix relocation of nbtapi, update dumping docs

* Add v1/MPDB Migrators back in

* Fix pinning/unpinning data not working

* Consumer instead of Function for editing data

* Show file size in DataSnapshotOverview

* Fix getIdentifier always returning empty

* Re-add items and inventory GUI commands

* Improve config file, fixup data restoration

* Add min time between backups (more useful backups!)

* More work on backups

* Fixup backup rotation frequency

* Remove stdout debug print in `#getEventPriority`

* Improve sync complete locale logic, fix synchronization spelling

* Remove `static` on exception

* Use dedicated thread for Redis, properly unsubscribe

* Refactor `player` package -> `user`

* `PlayerDataHolder` -> `UserDataHolder`

* Make `StatisticsMap` public, but `@ApiStatus.Internal`

* Suppress unused warnings on `Data`

* Add option to disable Plan hook

* Decompress legacy data before converting

* Decompress bytes in fromBytes

* Check permission node before serving TAB suggestions

* Actually convert legacy item stack data

* Fix syntax errors

* Minor method refactor in items command

* Fixup case-sensitive parsing in HuskSync command

* Start API work

* More work on API, fix potion effects

* Fix cross-server, config formatting for auto-pinned issue

* Fix confusion with UserData command, update docs images

* Update commands docs

* More docs updating

* Fix sync feature enabled/disabled checking logic

* Fix `#isCustom()`

* Enable persistent_data syncing by default

* docs: update Sync-Features config snippet

* docs: correct typo in Sync Features

* More API work

* bukkit: slightly optimized schedulers

* More API work, various refactorings

* docs: Start new API docs

* bump dependencies

* Add some basic unit tests

* docs: Correct typos

* More docs work, annotate DB methods as `@Blocking`

* Encapsulate `RedisMessage`, minor optimisations

* api: Simplify `#getCurrentData`

* api: Simplify `editCurrentData`, using `ThrowingConsumers` for better error handling

* docs: More Data Snapshot API documenting

* docs: add TOC to Data Snapshot API page

* bukkit: Make data types extend BukkitData

* Move where custom data is stored, finish up Custom Data API docs

* Optimise imports

* Fix `data_manager_advancements_preview_remaining` locale

* Fix advancement and playtime previews

* Fix potion effect deserialization

* Make snapshot_backup_frequency default to 4, more error handling/logging

* docs: Add ToC to Custom Data API

* docs: Minor legacy API tweaks

* Remove some unneeded catch logic

* Suppress a few warnings

* Fix Effect constructor being supplied in wrong order
1 year ago
William 9018ad02e1
settings: Fix wrong comment 1 year ago
William 62095364ce
2.2.8: Explicitly specify MariaDB Driver class name 1 year ago
William b73de81519
Add missing Maria schema 1 year ago
William 12e882fe22
v2.2.6: Crafting inventory safety, Maria v11 support (#153)
* Clear player inventory crafting slots on sync

* Bundle Maria driver for v11 support
1 year ago
Joo200 97ad608d56
Add mariadb protocol option type (#145)
Co-authored-by: William <will27528@gmail.com>
1 year ago
William f6aab54d4d
license: Relicense under Apache-2.0 1 year ago
kFor c306d700ce
Option to blacklist all commands (#138)
* Option to blacklist all commands

* blacklist all commands by default

---------

Co-authored-by: William <will27528@gmail.com>
1 year ago
William 29f8d8bf50
Bump dependencies 1 year ago
dependabot[bot] 4f65cf49ef
Bump commons-io:commons-io from 2.11.0 to 2.12.0 (#134)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: William <will27528@gmail.com>
2 years ago
William 5840f61571
Fix tests 2 years ago
William 6bd12dc000
Update DesertWell to 2.0.2, improve adventure API usage 2 years ago
William 1afbd3753a
Merge remote-tracking branch 'origin/master'
# Conflicts:
#	.github/workflows/java_ci.yml
#	build.gradle
2 years ago
William 38a063420b
Add license headers 2 years ago
William 7bb4bff485
Make case conversion operations use the English locale 2 years ago
小蔡 0c7e052d44
Update zh-tw.yml (#124) 2 years ago
dependabot[bot] e20a0da845
Bump net.kyori:adventure-api from 4.13.0 to 4.13.1 (#120)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2 years ago
William 7ed7d0a29e
Add additional cast checking to PDC tag fetching, cast via complex type (#118) 2 years ago
William278 e7e7995e4e Bump dependencies 2 years ago
William a9b1070725
Encapsulate Settings, tweak keys, add empty dead player save option, close #73 2 years ago
William 5a000add98
Fix deadlock on busy servers with small thread pools, close #100 2 years ago
dependabot[bot] aec2836d1e
Bump com.github.plan-player-analytics:Plan from 5.5.2254 to 5.5.2272 (#108)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: William <will27528@gmail.com>
2 years ago
dependabot[bot] 4f669170c2
Bump org.jetbrains:annotations from 24.0.0 to 24.0.1 (#107)
Bumps [org.jetbrains:annotations](https://github.com/JetBrains/java-annotations) from 24.0.0 to 24.0.1.
- [Release notes](https://github.com/JetBrains/java-annotations/releases)
- [Changelog](https://github.com/JetBrains/java-annotations/blob/master/CHANGELOG.md)
- [Commits](https://github.com/JetBrains/java-annotations/commits)

---
updated-dependencies:
- dependency-name: org.jetbrains:annotations
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2 years ago
dependabot[bot] 8ea8c7b7ba
Bump com.github.plan-player-analytics:Plan from 5.5.2208 to 5.5.2254 (#104)
Bumps [com.github.plan-player-analytics:Plan](https://github.com/plan-player-analytics/Plan) from 5.5.2208 to 5.5.2254.
- [Release notes](https://github.com/plan-player-analytics/Plan/releases)
- [Commits](https://github.com/plan-player-analytics/Plan/compare/5.5.2208...5.5.2254)

---
updated-dependencies:
- dependency-name: com.github.plan-player-analytics:Plan
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: William <will27528@gmail.com>
2 years ago
dependabot[bot] acab4ae58a
Bump net.william278:DesertWell from 1.1 to 1.1.1 (#102)
Bumps [net.william278:DesertWell](https://github.com/WiIIiam278/DesertWell) from 1.1 to 1.1.1.
- [Release notes](https://github.com/WiIIiam278/DesertWell/releases)
- [Commits](https://github.com/WiIIiam278/DesertWell/compare/1.1...1.1.1)

---
updated-dependencies:
- dependency-name: net.william278:DesertWell
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2 years ago
Ceddix ea822b0f4b
fixed some issues I made (#101) 2 years ago
dependabot[bot] 24a9974ff7
Bump com.github.plan-player-analytics:Plan from 5.4.1690 to 5.5.2208 (#99)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: William <will27528@gmail.com>
2 years ago
dependabot[bot] 222a9871e0
Bump dev.dejvokep:boosted-yaml from 1.3 to 1.3.1 (#98)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: William <will27528@gmail.com>
2 years ago
William278 f15790030f Update dependencies 2 years ago
William 4288742052
Update dependencies, close #85, close #86, close #87, close #88, close #89 2 years ago
William 1d7f6a8d8b
refactor: Use mappings class for PDC tag type handling 2 years ago
evlad 2d1d8f1ab6
Sync lock: Cancel item frame interaction, add command blacklist (#84)
Co-authored-by: William <will27528@gmail.com>
2 years ago
William ad885a9a15 Bump library versions, fix test dependencies 2 years ago
William fe89e7b770 Fix tests 2 years ago
William f6663f0c09 Refactor; consolidate Logger and ResourceReader, simplify certain method arguments 2 years ago
William c2c5a424fb Add checks against the user being an NPC 2 years ago
William 9900b44858 Disable locked map syncing by default 2 years ago
William 9019181208 Merge remote-tracking branch 'origin/master' 2 years ago
William 99483387f1 Add additional error handling for player health and statistic updating 2 years ago
evlad 105927a57f added dummy method 2 years ago
evlad 71706bf9ae expose locked players + add a method on OnlineUser 2 years ago
William 101e0c11d7 Fix unsynced players having data saved on world save / death 2 years ago
William 2017ecc20f Minor refactoring / code improvements 2 years ago
William ded89ad343 ACTION_BAR as default notification slot 2 years ago
William d682e6e6c6 Fix notifications through Toast AndJam library 2 years ago
William278 16eee05065 Add notification slot configuration, support for toasts 2 years ago
William278 b664e2586d Bump gson to 2.10 2 years ago
William278 d594c9c257 Truncate long data save cause names, close #60 2 years ago
William278 532a65eca8 Ensure players remain locked on disconnect and shutdown, close #67 2 years ago
William 5af8ae0da5 Use canvas rendering approach, finish locked map synchronisation 2 years ago
William278 c0709f82bd Add the ability to synchronise/persist locked maps cross-server, close #14 2 years ago
William278 945b65e1bc Minor performance improvement to event cancelling, add checks against inventory clicks 2 years ago
William278 efcb36d345 Fix database username at wrong config path 2 years ago
William d5569ad3ed Fix event priorities in config, bump to 2.1.3 2 years ago
William d8386fd2a2 Fix edit nodes not being respected 2 years ago
William 3bfea58f35 Make event priority configurable for three key events 2 years ago
William 51cf7beeb8 Remove redundant compiler warning suppressors 2 years ago
William bac760165e Tweak logic for determining if a player is dead, fix issues with <1HP players being detected dead 2 years ago
William c888759d33 Merge remote-tracking branch 'origin/master' 2 years ago
William 089ea5b63a Fix unsafe joins on inventory and ender chest commands, better exception catching, Close #58 2 years ago
Villag3r_ 7584ea0070
Update it-it.yml 2 years ago
Ceddix 8ba90fadc4
Updated german locales 2 years ago
William 480796fbee Remove config.yml 2 years ago
William d828631dea Merge branch 'master' into triumph-gui 2 years ago
William 4fddbc2b32 Automatically expand menus to accommodate custom inventory/echest sizes, close #45 2 years ago
William 43cd367ca3 TriumphGUI for menus, fix missing inv/echest view message, fix data saving despite no updates, close #42 2 years ago
William 19ca504bab Suggest delete and restore commands rather than run them 2 years ago
William 394b8ff1d1 Disable dump commands for operators by default 2 years ago
William 4577da3336 Restore users with at least one health point 2 years ago
William c3b339b3dd Minor cleanup, tweak listener method names 2 years ago
William 2b91154ca2 Ensure players have their inventory contents saved on death 2 years ago
William 2351be31e3 Merge branch 'annotaml-config' into save-on-death 2 years ago
William 624543b93d More test fixes 2 years ago
William c13f4b2a05 Merge branch 'annotaml-config' into save-on-death 2 years ago
William 00b8d335d8 Fix tests 2 years ago
William 89d8b79ae3 Add ability to save user data on player death 2 years ago
William acd97a1cb0 Migrate config to Annotaml 2 years ago
William 8c0f7a295f [ci skip] tweak comment 2 years ago
William 7536bfaaf5 Add `/userdata dump` command, for file/web dumping of user data json 2 years ago
William cbf5d9c24e Implement variable-sized user data; only save needed data 2 years ago
William b9e474d946 Variable-size data format support: Deprecate `getXData()` methods in `UserData` in favour of optional returns 2 years ago
William 3d232f97fb Shade adventure instead of bundling at runtime 2 years ago
William 6d649d0889 Extra logging for DataSerialization exceptions 2 years ago
William 0754837820 Start work on data list pagination via PagineDown, update locales 2 years ago
William 049cd8ecca Migrate plugin to MineDown/Kyori-adventure 2 years ago
William278 59a0002c16 Migrate to DesertWell for about menu, version checking 2 years ago
William278 61020e04d9 Fix typo in default command description 2 years ago
William278 ff1ace8342 Update version format 2 years ago
William 258356e45d Bundle boosted-yaml, adjust shading and build scripts 2 years ago
William e1628b6448 Download jedis at runtime 2 years ago
William 3282f5739c Fix nested futures on #ensureUser causing ineffective #join synchronisation calls, close #40 2 years ago
William 50e66be0c0 Relocate DummySettings 2 years ago
William 593c88c8ba Fix tests, create DummySettings 2 years ago
William 2f700b2d93 Use Commodore for rich command completion registering 2 years ago
William d1c95030f0 Added config option for syncing dead player inventories, cancel damage if locked 2 years ago
William 1ed2414241 Add Bulgarian (bg-bg) courtesy of Pukejoy_1 2 years ago
William 8847483ff8 Correct Persistent Data serialization 2 years ago
William 125f142cf5 Fix tests 2 years ago
William dafbcad10e Fix PersistentDataContainer synchronisation, bump to v2.0.2 2 years ago
William e4262abfd7 Prevent synchronisation of newer user data formats, tweak error messages 2 years ago
William fc6a760848 `usersAwaitingSync` -> `lockedPlayers`, also lock while quitting 2 years ago
William e03a580870 Tweak exception wording 2 years ago
William 112e5fe0bd `longblob` rather than `mediumblob` 2 years ago
William ae4f005a9c Additional exception handling to player quit event, stop edge-case asynchronous execution 2 years ago
William 460cb54a7d Merge branch 'master' into zh-tw 2 years ago
William ebf5b77f00 Add credit to HookWoods 2 years ago