Tags
Creators
Details
Licensed GPL-3.0-only
Published 3 weeks ago
Updated last month
All versions
0.1.0
Release
SOS-Staff 0.1.0last month 32
Compatibility
Minecraft: Java Edition
26.2
26.1.x
1.21.11
1.21
1.20.6
1.20
Platforms
Folia
Paper
Purpur
Spigot
Changes
Changelog
All notable changes to this project are documented in this file.
[0.1.0] - 2026-09-12
Bug Fixes
- Ping a category's own ping-role on ticket creation (26edc5a)
- Restore the executable bit on gradlew (ef25f13)
- Replace the legacy Bukkit scheduler with per-player EntityScheduler (0750355)
Chores
- Add .gitignore and untrack build artifacts (0caf5d7)
- Add GPL-3.0 license (938ade6)
- Target Paper API 26.2 with Java 25 toolchain and JUnit 5 (5da60a8)
- Add test-scope Paper API and Mockito dependencies (651d039)
- Add HikariCP and sqlite-jdbc dependencies with Shadow relocation (2b69167)
- Add Cloud Command Framework dependency with Shadow relocation (98ca812)
- Add JDA dependency with Shadow relocation (5ffad4f)
- Generate VersionInfo at build time (a2d895a)
- Add MockBukkit test dependency (f0eeab6)
- Add CI/CD workflows, changelog and commitlint config (08a2ea2)
- Make release.yml manual-only until publish secrets exist (b85306c)
- Bump GitHub Actions to their current major versions (ec2053c)
Documentation
- Add the project README (9b2dcef)
- Add per-platform store listing descriptions (b92da6f)
Features
- Base struct (5c0809f)
- Add ConfigManager with config.yml loading and validation (78ded00)
- Add LangManager with multi-locale loading and fallback (c10ff3f)
- Bootstrap SosStaffPlugin main class (af9d8c5)
- Add Ticket domain model and TicketRepository contract (e1fa35d)
- Add SQLite-backed TicketRepository with versioned schema migrations (c1a6eb0)
- Add TicketService with anti-spam checks and escalation (8ff54d7)
- Add player commands wired to TicketService (877ee8d)
- Add DiscordGateway and ChannelOrchestrator, wire ticket creation to real channels (338da33)
- Add TicketMessageRepository for the ticket_messages transcript (dcf7be4)
- Add bidirectional live chat relay via Discord webhook (46c6d48)
- Add EmbedFactory for ticket embeds and button rows (e4ec39d)
- Add InternalActionRegistry for the reserved action-button keys (9d15b5b)
- Handle Discord ticket buttons and post the initial ticket message (f99e82f)
- Add real SQL pagination to TicketRepository (6b66f57)
- Add the in-game ticket creation GUI (f23663e)
- Add /sostaff panel with staff live-chat attachment (59d0f69)
- Add GDPR erasure and transcript retention (28c6c2c)
- Add automatic Discord re-escalation for unclaimed tickets (d12ee27)
- Add /sostaff reload and /sostaff gdpr erase (9e8a27d)
- Add ticket lifecycle events and a public SosStaffAPI (ce5c860)
- Add PlaceholderAPI, LuckPerms and Vault soft-depend integrations (da38f2d)
- Derive the plugin version from git tags with Axion Release (a3d0713)
- Add bStats metrics and a Modrinth update checker (3a32b1a)
- Report configuration and adoption stats to bStats (219ba9d)
Refactoring
- Fix a real reopen-row bug and clean up IDE inspection findings (926320d)
- Extract TicketCreationCoordinator out of PlayerCommands (1691c40)
Tests
- Verify all shipped languages stay in parity with the pivot (cb72b0d)
Build
- Produce a single, unversioned jar in build/libs (b76e523)
- Stop appending -SNAPSHOT to versions between releases (83a87b4)
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:AP34yq7Y:vlCiFbay"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:AP34yq7Y:vlCiFbay"
}

