Unofficial site, not affiliated with modrinth.com.What is this?
Плагины/StormtrooperX
StormtrooperX

StormtrooperX

Make ranged mobs miss more - reduce accuracy of Skeletons, Strays, Pillagers, and Piglins

40
1

StormtrooperX 1.9.0

release13 мая 2026 г.

What's New

Added

  • Folia support via a runtime-detected PluginScheduler abstraction. On Folia 1.20.4+, async work routes through Folia's AsyncScheduler / GlobalRegionScheduler (via reflection so the Spigot API 1.18 compile dependency is unchanged). On Spigot, Paper, and Purpur the legacy BukkitScheduler is used. The scheduler is selected once at plugin enable; plugin.yml declares folia-supported: true.
  • Graceful Folia fallback. If RegionizedServer is detected but Folia's scheduler API cannot be bound (e.g., a future signature change), PluginScheduler.create logs a WARNING and falls back to the legacy scheduler instead of failing plugin enable. Async tasks continue working in degraded mode rather than bricking the plugin.

Changed

  • DatabaseManager H2 thread safety. H2 operations (isOptedOut, setOptOut) are now serialized through an internal lock. JDBC Connection instances are not thread-safe, and Folia's regional async pool can dispatch concurrent opt-out reads/writes onto the single shared H2 connection. The MySQL path is unchanged — HikariCP gives each thread its own pooled connection, so no lock is taken there.
  • UpdateChecker callback contract. The update-check callback is now invoked on the async worker thread instead of being hopped back to the main thread. Logging only (java.util.logging is thread-safe). The previous main-thread hop was unnecessary on Spigot/Paper and forbidden on Folia. Javadoc on UpdateCallback#onComplete documents the off-thread contract.
  • Constructor signatures. OptOutManager now takes PluginScheduler in place of Plugin; UpdateChecker now takes an additional PluginScheduler argument. Internal change — affects no plugin.yml/permissions surface, no end-user config.

Security

  • Tightened UpdateChecker githubRepo validation to ^[a-zA-Z0-9._-]+/[a-zA-Z0-9._-]+$ (matching GitHub's actual repo-name charset). Defense-in-depth against path traversal, CRLF injection, and arbitrary URL-component characters in the segment that flows into the GitHub API URL. The current call site is hardcoded to GooberCraft/StormtrooperX, so this is preventative only.

Tests

  • New PluginSchedulerTest — 7 tests covering the legacy scheduler delegation (via MockedStatic<Bukkit>) and the factory's non-Folia branch
  • New UpdateChecker constructor tests — 5 tests covering semicolon injection, multi-segment paths, path traversal, CRLF injection, and the valid-character allowlist
  • Total test count: 156 → 170

Upgrade Notes

If upgrading from 1.8.x: No configuration changes required. plugin.yml adds folia-supported: true automatically; existing config.yml files continue to work as-is.

Server compatibility: Folia 1.20.4+ is now supported in addition to Spigot, Paper, and Purpur. Folia is detected automatically at startup — log message confirms which scheduler is in use (Folia detected, using regional schedulers vs Standard Bukkit scheduler in use). No Folia or Paper API dependency was added to the build; the plugin still compiles against Spigot API 1.18.

JAR verification: Built and attested via GitHub Actions with Sigstore. Verify with gh attestation verify StormtrooperX-1.9.0.jar --repo GooberCraft/StormtrooperX (requires gh 2.43.0+).

StormtrooperX 1.8.0

release13 мая 2026 г.

What's New

Added

  • Parched mob support (Minecraft 1.21.11+, Mounts of Mayhem) — the new desert skeleton variant that fires Arrows of Weakness with a bow. Treated as a standard bow user for accuracy nerfing. Gracefully disabled on servers older than 1.21.11.

Tests

  • Added EntityConfigLoadingTest — 10 tests covering both loadEntityConfig variants, the version-gated IllegalArgumentException fallback (the path Parched takes on older servers), and the displayEntityStatus Disabled branch
  • Total test count: 146 → 156
  • StormtrooperX class line coverage improved from 61% → 72%
  • Tightened Jacoco package line-coverage minimum from 0.50 → 0.60

Dependencies

  • Bump JUnit Jupiter from 5.14.3 → 6.0.3 (major version; transparent upgrade with no production-code impact)

Documentation

  • Backfilled CHANGELOG entries for v1.6.3 (Modrinth publishing + dependabot/CI bumps) and v1.7.0 (Java 11 drop, MC 1.18 baseline, +5 test classes) which previously shipped without release notes

Upgrade Notes

If upgrading from 1.7.x: No configuration changes required. The new parched: entry is added with sensible defaults (enabled, accuracy 0.7) on first config regeneration; existing configs continue to work as-is.

Server compatibility: Parched only spawns/exists on Minecraft 1.21.11+. On earlier versions, the plugin logs Entity 'Parched' is not available in this Minecraft version (1.21.11+ required) and continues normally — no errors, no startup failures.

StormtrooperX 1.7.0

release25 апреля 2026 г.

What's New

Compatibility

  • Dropped Java 11 support — minimum is now Java 17
  • Raised minimum Minecraft version to 1.18 — drops support for 1.13–1.17
  • Added Minecraft 26.1.x support
  • Added Java 25 to CI test matrix (17, 21, 25)

Dependencies

  • Bump mysql-connector-j 9.6.0 → 9.7.0

CI / GitHub Actions

  • Bump codecov/codecov-action v5 → v6 (Node 20 → 24)
  • Bump softprops/action-gh-release v2 → v3 (Node 20 → 24)

Tests

  • Added BowShootEventTest — 8 tests covering onBowShoot() event handler
  • Added CommandHandlerTest — 11 tests covering all onCommand() paths
  • Added ConfigMigrationTest — 4 tests covering migrateConfigToV3()
  • Expanded OptOutManagerTest — async DB exception handling coverage
  • Expanded PluginResourceTestapi-version assertion

Upgrade Notes

If upgrading from 1.6.x: No configuration changes required. Your existing config.yml is fully compatible.

Java requirement: Java 17 or higher is now required. Minecraft 1.18+ already requires Java 17, so this should have no impact on existing servers.

StormtrooperX 1.6.3

release18 марта 2026 г.

Dependency Updates

  • Updated mysql-connector-j from 9.5.0 to 9.6.0 (7 bug fixes including multihost URL and batch statement handling)
  • Updated bstats-bukkit from 3.1.0 to 3.2.1 (improved robustness against exceptions)
  • Updated org.jetbrains:annotations from 26.0.2 to 26.1.0
  • Updated Maven build plugins (compiler 3.15.0, surefire 3.5.5, shade 3.6.2)

StormtrooperX 1.6.2

release2 декабря 2025 г.

What's Changed

Performance

  • Use EnumMap for faster entity config lookups (~30% improvement)

Bug Fixes

  • Guard against zero-length velocity vectors (prevents NaN in edge cases)
  • Validate MySQL pool configuration values with clear warnings for invalid settings

Documentation

  • Document valid ranges for MySQL pool settings in config.yml

Dependencies

  • Update Mockito from 5.15.2 to 5.20.0

Full Changelog: https://github.com/GooberCraft/StormtrooperX/compare/v1.6.1...v1.6.2

Совместимость

Minecraft: Java Edition

26.1.x1.21.x1.20.x1.19.x1.18.x1.17.x1.16.x1.15.x1.14.x1.13.x

Платформы

Поддерживаемые окружения

Сервер

Создатели

Детали

Лицензия:MIT
Опубликован:5 месяцев назад
Обновлён:17 часов назад
Главная