▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Плагины/HungerGameSSS
HungerGameSSS

HungerGameSSS

HungerGameSSS is a high-performance Hunger Games plugin featuring unique Legendary Weapons with special abilities, dynamic gameplay systems, and full arena customization — built for competitive PvP servers.

245
3
Все версииHungerGameSSS 4.5.1

HungerGameSSS 4.5.1

Release1 нед. назад

Список изменений

[4.5.1] — Logic Bug Fix Pass (2026-03-16)

Fixed — 12 logic bugs across 11 weapon files

Critical

  • BUG-PL-01 · PhantomLongbow — ability completely non-functional (PhantomLongbow.java) arrow.remove() was called immediately in performProjectileLaunch, then a BukkitRunnable was scheduled 1 tick later. By the time the runnable ran, projectile.isValid() was false → instant cancel → ability only granted invisibility, nothing else happened. Fix: stop calling remove(). Instead set arrow.setPickupStatus(DISALLOWED), setGravity(false), setDamage(0) so the arrow flies invisibly. The tracking runnable now checks isValid() || isOnGround() || isDead() and calls arrow.remove() itself.

High

  • BUG-FY-02 · FountainOfYouth — inverted team check heals enemies, skips teammates (FountainOfYouth.java) isFriendlyFire returns true for teammates. The condition if (isFriendlyFire(player, target)) continue was therefore skipping teammates and healing enemies — the exact opposite of the comment. Fix: added !if (!isFriendlyFire(player, target)) continue.

  • BUG-VS-01 · VoidStaff — portal CD starts on first portal, blocks second placement (VoidStaff.java) portalCDs.put(...) ran unconditionally after any portal placement. Player placed portal #1, 40 s CD started, clicking again to place portal #2 hit the CD guard and was blocked — so a connected portal pair could never be created. Fix: moved portalCDs.put(...) inside the if (connected) branch only.

  • BUG-CC-03 · CorruptedCrossbow — extra bolts missing hg_ability metadata, no hit effects (CorruptedCrossbow.java) Extra bolts were tagged corrupted_extra and corrupted_bolt but not hg_ability. AbilityManager.handleProjectileHit only dispatches performProjectileHit when hg_ability is present. Result: extra bolts dealt only vanilla arrow damage with no Poison or Weakness effects. Fix: added extra.setMetadata("hg_ability", ...) when spawning each extra bolt.

Medium

  • BUG-CSW-01 · CrimsonChainsword — bleed only fires 1 damage tick out of 5 (CrimsonChainsword.java) runTaskTimer(10L, 10L) increments ticks 0→1→2→3→4 then cancels. Damage condition was ticks % 20 == 0 — only ticks=0 satisfies this → 1 damage tick instead of 5. Fix: removed % 20 == 0 check. Period is already the interval; every call = one bleed tick.

  • BUG-SB-01 · ShadowBlade — Shadow Step has no team check, teleports behind teammates (ShadowBlade.java) Shadow Step's target loop had no isFriendlyFire guard, allowing teleport behind allies. Fix: added if (e instanceof Player tp && isFriendlyFire(player, tp)) continue;.

  • BUG-RH-01/02 · RavagerHorn — lazy location capture + no Ravager cleanup on quit/death (RavagerHorn.java) (1) Stampede lambdas called player.getLocation() lazily — waves diverged if player moved during the 16-tick animation. Fixed: capture castLoc = player.getLocation().clone() before the loop. (2) No performQuit/performDeath hook — Ravager persisted in the world after the player disconnected or died. Fixed: added activeRavagers map + dismountAndRemove() called on both events.

  • BUG-DN-01 · DeathNote — passive task runs every tick (20×/s), expensive raytracing (DeathNote.java) runTaskTimer(1L, 1L) = 20 rayTrace(range:50) calls per player per second. With 10 players = 200 raytrace/s. Changed TASK_PERIOD from 1L to 3L (~7 raytrace/s/player), still provides smooth progress bar updates.

Low

  • BUG-VW-01 · VillagerWandtaggedForReward map memory leak (VillagerWand.java) Entries were only removed on entity death. Entities that fled, despawned, or were removed by arena reset left their UUID in the map indefinitely. Fixed: value now stores an expiry timestamp (now + rewardWindow). onEntityDeath checks now <= expiry. A cleanup task runs every 20 s to evict stale entries.

  • BUG-SG-01 · SoulGauntlet — action bar hardcodes -3 instead of blastCost (SoulGauntlet.java) If soul_blast_souls was changed in config, the displayed soul count was wrong. Fix: (charges - 3)(charges - blastCost).

  • BUG-WS-02 · WitherSicklesdualWieldActive desync when offhand is overwritten (WitherSickles.java) If a player manually placed another item into the offhand slot, dualWieldActive kept the UUID entry, blocking equipOffhand from re-running. Fixed onInventoryClick to detect this state and call dualWieldActive.remove(uuid).

  • BUG-AB-01 · ArtemisBow — standalone passive BukkitRunnable leaks on reload (ArtemisBow.java) startPassive() spawned a new task on every class instantiation. On plugin reload the old instance was discarded but the runnable kept running → N tasks after N reloads. Migrated to passiveTick() hook consumed by the single UnifiedPassiveTicker in AbilityManager. startPassive() and its runnable removed entirely.

Changed

  • pom.xml — version 4.5.04.5.1.
  • plugin.yml — version 4.5.04.5.1; description updated.

Файлы

HungerGamesSSS-4.5.1.jar(881.42 KiB)
Основной
Скачать

Метаданные

Канал релиза

Release

Номер версии

4.5.1

Загрузчики

Bukkit
Paper
Purpur
Spigot

Версии игры

1.21–1.21.11

Загрузок

9

Дата публикации

1 нед. назад

Загрузил

ID версии

Главная