Tags
Creators
Details
1.0.3
Compatibility
Changes
Teams 1.0.3 — Web Dashboard, Team Trading & Reliability Improvements
This update introduces a web dashboard, interactive team trading, configurable achievements, improved invitations, and additional banking and storage safeguards.
New Web Dashboard
- Added responsive desktop and mobile layouts.
- Added player and team profiles with published statistics.
- Added Minecraft player-head avatars and full-body skin previews.
- Added optional SkinsRestorer integration for server-assigned skins.
- Added team and player leaderboards with search, sorting and pagination.
- Added player lookup and direct profile links.
- Added side-by-side team comparisons.
- Added downloadable statistic cards and shareable profile links.
- Added season snapshots and recap pages.
- Added team accent colors and light/dark themes.
- Added clear loading, empty, disconnected and offline states.
- Private or unpublished statistics remain hidden.
- Demo data is explicitly labelled and is never silently substituted when a configured server becomes unavailable.
Dashboard Branding & Installation
- Added configurable logos, backgrounds, welcome text, accent colors and navigation links.
- Added installable PWA support for compatible browsers and devices.
- Added cached public pages and snapshots with visible offline indicators.
- Added a bundled dashboard ZIP and detailed setup guide.
- Included localhost, public-domain, HTTPS, reverse-proxy and CORS setup instructions.
- Dashboard bundle filenames now follow the plugin version automatically.
- Retained generic default branding with custom server-logo support.
Configurable Achievements
- Added cosmetic milestone badges to player and team dashboard profiles.
- Added configurable achievement requirements.
- Added progress indicators, permanent unlock records and original unlock dates.
- Achievements remain available through the dashboard without an additional in-game achievement command.
Interactive Team Trading
- Added
/team trade <team-owner>to invite another online team owner. - Added clickable Accept/Decline invitations styled consistently with team invitations.
- Added
/team trade accept,/team trade denyand/team trade help. - Added
/team trade force <team-owner>with the separateitzzteam.command.trade.forcepermission. - Force-opening skips invitation acceptance only; both owners must still approve the exchange.
- Both owners must remain online, in the same world and within the configured trading distance.
- Added a mirrored, two-sided trade interface.
- Items come from personal inventories; shared team chests are not accessed.
- Added cursor pick/place interaction and shift-click offering.
- Offered items now leave the inventory and enter escrow.
- Preserved item names, enchantments, damage, custom data and container contents.
- Added support for up to 20 offered stacks per owner.
- Normal cancellation returns offered items to their owners.
- Trade money moves only between team banks, without using personal Vault balances.
- Added amount-entry dialogs, configurable presets and an option to remove offered money.
- Invalid or unaffordable money amounts return to the trade board without cancelling the session or changing the previous offer.
Trade Confirmation & Feedback
- Both owners must explicitly confirm the latest offer.
- Editing either offer resets both confirmations.
- Added a visible five-second countdown.
- Ready buttons display stack counts of 5, 4, 3, 2, 1.
- Added acceptance, readiness, countdown, cancellation and completion sounds.
- Added start and abort messages naming the other owner.
- Removed duplicate cancellation messages and unnecessary controls/tooltips.
- Added individual completion receipts showing received and given items and team-bank money.
- Added a receipt GUI fallback for clients without native dialog support.
- Insufficient recipient inventory space cancels the trade before bank funds move.
- Added final checks for cursor items, ownership, permissions, distance, funds and inventory capacity before settlement.
Invitations & Commands
- Players can now hold invitations from multiple different teams.
- Reinviting a player refreshes only that team’s invitation.
- Fixed invitation messages displaying raw
%player%and%team%placeholders. - Invitation buttons and inbox actions target the exact request.
- Joining one team cancels the player’s remaining join invitations.
- Simplified trade commands and removed redundant command-based offer controls.
- Updated help and tab completion with the simplified trade syntax.
/team createopens the name-entry interface even when extra arguments are entered.
Banking & Menu Improvements
- Made custom bank click routing explicit: left-click deposits, right-click withdraws.
- Added completion sounds for successful deposits and withdrawals.
- Rejected bank operations do not play success sounds.
- Removed duplicate permission-menu action prompts.
- Matched the dashboard player-search width to the server-statistics panel.
SQL Audits & File Organization
- SQL-backed installations now store transaction journals and GUI trade audits in the configured database.
- Existing transaction logs and GUI trade audit files are validated, imported and verified before being archived.
- Legacy audit originals move into
backups/legacy-audit. - Configuration migration backups now use
backups/config. - Recognized older root-level configuration backups move into the backup folder.
- Required configuration, request, achievement, season, library and dashboard files remain preserved.
- Added SQL audit copying and redirection during SQL-to-SQL storage migration.
- Added stricter validation for empty transaction histories, mismatched transaction IDs and invalid trade audit IDs.
- YAML storage retains its file-based audit fallback.
Reliability & Cleanup
- Fixed SQL connection-pool cleanup when team-manager initialization fails.
- Ensured the SQL pool closes even if draining the persistence worker reports an error.
- Removed obsolete preview-era trade helpers, unused tracking maps and unused internal methods.
- Expanded regression coverage for escrow, item conservation, inventory capacity, SQL migration, rollback and audit validation.
- Passed a clean release build with 124 plugin tests and 21 dashboard/PWA tests.
- Verified command permission declarations, Paper/Folia manifest consistency and bundled release files.
Updating to 1.0.3
- Stop the server and back up your Teams folder and player data.
- Remove the previous Teams JAR.
- Install the appropriate 1.0.3 JAR. Install only one variant.
- Restart the server.
- Update an existing website from
teams-dashboard-1.0.3.zip, preserving yourdashboard-config.js.
Important: Interrupted trades, uncertain economy-provider results and refunds that cannot fit in an inventory retain audit records for staff reconciliation. Do not delete audit records or blindly replay payments. Automated checks do not replace live testing with your server, clients, economy provider and database.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:BiaAD8Ew:qkDRb5lE"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:BiaAD8Ew:qkDRb5lE"
}

