2022-01-10_09.40.12

Update 1.5.4: Heavy Firepower

Hello all,

In this update we are adding ammo modifications to the heavy .30-06 Springfield caliber, as well as the modern 5.45x39mm, and bringing back three weapons that feature these calibers. We have also added performance improvements following profiling that should significantly lower the CPU usage of the server once again.

RETURNING WEAPONS

M1919A4

A heavy tripod-mounted machine gun firing .30-06 Springfield. It is both powerful and accurate, giving the user a huge advantage over the opponent if properly positioned, and allowing for effective suppressing fire. However, due to the tripod, the ADS speed and movement speed of this weapon is very slow and makes the user an easy target when caught off guard. It also has a high supply cost.

AN-94

A long-range assault rifle chambered in 5.45x39mm. It has a two-round hyperburst feature that can deliver accurate bursts down range at a cyclic rate of 1800 RPM in-game. It also has low recoil and excellent accuracy in full-auto, especially for the first few shots. However, it has a slightly lower rate of fire, lower mobility, and higher supply cost than the AK-74M.

RPK-12

A prototype AK-12 fitted with long barrel and 60-round casket magazine to serve in a machine gun mode. It features a three-round burst that has higher rate of fire than the normal full-auto mode for quickly dispatching an enemy at closer ranges. Otherwise, it is best suited to longer ranges. Like the L86 LSW, its stats are midway between LMGs and assault rifles.

To obtain this weapon, link your Minecraft account with the Discord server.

NEW MODIFICATIONS

We’re almost done with rifles and can soon move into pistol calibers!

We have added 4 new ammo modifications to the 5.45x39mm caliber.

  • Tula Civilian Ammo: similar stats to the Tula Civilian Ammo for the 7.62x39mm caliber.
  • 7N10 AP Ammo: a basic AP ammo that allows 4-hit-kill chest shots to armored opponents at the cost of additional recoil.
  • 7T3M Ammo: a tracer round with a lightweight bullet that leads to higher velocity and accuracy at the cost of damage range.
  • 7N24 AP Ammo: so called “super-armor-piercing” ammo that uses a heavy bullet and tungsten penetrator for maximum armor and block penetration. Increases range and recoil, reduces base damage and velocity.

Another 4 ammo types were added to the .30-06 Springfield caliber.

  • M1906 Ammo: The original .30-06 ammo. Decreases cost by 2 Supply, hurts damage, velocity, and range.
  • M1922 AP Ammo: A heavy armor piercing ammo. Increases block penetration significantly and armor penetration slightly, with a small downside to velocity and recoil.
  • M1917 Ammo: Early expanding ammo that increases headshot damage at the cost of velocity and range.
  • M2 AP Ammo: High velocity armor piercing ammo that allows a 1-shot-kill to the chest of armored opponents at any range with the Szecsei, alongside other benefits, but comes at a hefty penalty to recoil and flinch.

BALANCE CHANGES

  • AKS-74U: headshot multiplier decreased from 2.8 (semi)-2.1 (auto) to 2.7-2.05
    • This change matches the AK74M’s headshot multiplier, as the AKS-74U has a higher rate of fire than the AK74M. It has minimal effect on shots-to-kill. The AKS-74U should still be a strong PDW and worthy of its price.

DISCORD CHANGES

  • Changed Trainee role color from green to yellow to not be confused with other players.

PERFORMANCE IMPROVEMENTS

Yesterday, we reached an almost-full PVP lobby, yet the server was holding a stable 20 TPS with roughly 30 ms tick times. We are very proud of these performance results made possible by the changes in the Mob-Arena Tweaks Update.

Additionally, we have additionally taken advantage of the full lobby and done a profiling and optimization pass for the server. Today’s changes should eliminate remaining inefficiencies in the code and allow each game server to support significantly more than 24 players before any lag starts to appear, while increasing the number of servers that can be hosted on the same hardware.

  • Added a library for weak, referential-equality hash maps to further increase the performance of the weapon data caching system by eliminating the need to compare ItemStack data when getting the weapon data instance
  • Significantly improved performance of checking whether players have a specific Perk by using the same data caching system as weapons
  • Additionally improved performance of getting the type of the weapon in case no cached value is available
  • Added caching for the item in the player’s hand to ensure the same weapon data instance can be reused over multiple ticks, dramatically improving overall gun system performance once again
  • Enabled OpenJ9 string compression to improve performance and reduce memory usage for string operations
  • Enabled OpenJ9 concurrent garbage collection option for “gencon” collector
    • Pause times are now usually imperceptible and allows for the smoothest gameplay possible while avoiding the overhead of more complex garbage collectors
  • Fixed a bug that caused map loading to be much slower in Domination and KOTH modes

OTHER CHANGES

  • Tweaked the Mob-Arena ammo refill amount for Light Machine Guns to more closely match assault rifles of the same caliber
  • Changed ViaVersion configs to eliminate console spam from sound effects being converted back to older versions

BUG FIXES

  • Fixed a bug where the loadout sign and item in the Competitive lobby opened PVP loadouts instead
  • Disabled anti cheat for the first second after respawning to hopefully fix rubberbanding issues

Hotfix January 11th, 2022:

  • Possibly fixed a new memory leak caused by the weapon data caching system (it is probably a JVM bug so we can only try to find workarounds)
  • Decreased AN-94 burst rate of fire from 90% to 85% of full-auto rate of fire, and increased recoil very slightly
  • Decreases the backup ammo capacity of the RBB-451 in Zombie Siege from 400 to 125 (seriously, why was it that high before?)
2022-01-03_03.03.49

Update 1.5.3: Mob-Arena Tweaks

Hello all,

This is a minor update designed to improve the server’s performance and address some balance issues in Mob-Arena.

MOB-ARENA CHANGES

Made a few changes and bug fixes to make Endless more difficult. Players should not be able to become immortal simply by getting blown up by a few Creepers!

  • Reduced the duration of Creeper explosion potion effects by half to 1-10 minutes instead of 2-20 minutes
  • Fixed a bug where there was a 10% chance of the Creeper effect being permanent rather than the stated 5%
  • Fixed a bug where Creepers could still receive Regeneration levels higher than 1 in Endless
  • Fixed a bug where mobs in Endless were not receiving Netherite equipment
  • When a mob has more than 20 armor points, any additional armor point now ignores weapon Armor Penetration and instead decreases weapon damage exponentially by a flat 30% per 10 armor points
    • As a result, weapons with armor penetration less than roughly 90% will now deal more damage than before to mobs with >20 armor points
    • This prevents low armor penetration weapons from becoming even more underpowered in Endless due to the addition of Netherite armor to mobs
    • Netherite equipment still counts as 1 more armor point than diamond per piece
    • Protection enchantment still counts as 1 armor point per piece (mobs will never have protection enchantment higher than level 1)
  • Increased the frequency of boss skills in Expert difficulty by roughly 20%
    • This helps make boss fights feel more like boss fights and less like hitting a bullet sponge over and over
    • Bosses are the hardest waves in Expert difficulty. Use your equipment and items from the Shop to aid you in boss fights!
  • The Hunger effect now sets players’ hunger to 6
    • This means that sprinting and regenerating health is disabled
    • This makes Husks more dangerous instead of just a reskin of the Zombie

PERFORMANCE IMPROVEMENTS

  • Changed some old methods to use new weapon stat accessors to greatly improve performance
  • Improved the performance of applying multiple modifications on weapon stats of “double” and “int” types
  • Fixed a performance issue where some data about PVP maps was not properly cached, causing constant MySQL querying
  • The current fire mode of a player is now cached and updated once per tick, increasing the performance of checking conditional modifiers when retrieving weapon stats
  • Various new caching methods were added to the weapon data system. This should dramatically increase performance throughout the gun system
    • Item NBT querying in weapon data is now cached. The NBT of the item is now only reloaded a single time per weapon data instance, as long as no setters in the weapon data class are called
    • The weapon data instance of an ItemStack is now stored in a thread-local cache and can be reused between different parts of the code that uses the same item
    • The weapon type of an item is now cached inside the weapon data object, making it much faster to find the weapon type

TEMPORARY SERVER MEASURES

  • Increased the maximum RAM allocation of PVP and Competitive to 9GB temporarily until the memory leak is fixed. This should ensure that these servers no longer lag or crash due to the memory leak from now on

BUG FIXES

  • Fixed another memory leak bug on the PVP server due to the scoreboard system
2022-01-03_01.10.11

Update 1.5.2: Elephant Gun

Hello all,

This minor update brings back the much-requested L39, as well as the STG-44 and the M1014. It also fixes an important memory leak in PVP as well as several other issues.

 

RETURNING WEAPONS

Lahti L-39

An anti-tank rifle which is realistically impossible to handle by one soldier. It cuts your movement speed in half, but essentially gives you a 20mm autocannon in exchange! As the most expensive weapon in the game, it can be equipped to fire APHE, Frag, HE, and Incendiary rounds to dominate long-range situations provided that you are fine with being stationary.

STG-44

The world’s first widely-used assault rifle. It is the cheapest assault rifle, tied with the IMI Galil, and offers a good sustained-fire accuracy unlike the Galil at the cost of only having a 500 RPM rate of fire. It is a jack of all trades, master of none – while its overall performance is significantly worse than more expensive weapons, one may still wish to use it to save Money or Supply Points depending on the mode. The STG-44 lacks specialized ammunition types.

M1014

A no-frills semi-automatic shotgun. While the close range damage is similar to the SPAS-12, the M1014 has a slower fire rate and higher recoil, but tighter spread and better effective range. It has the same supply cost as the SPAS-12. It unlocks at Player Level 1. Noob gun!

MOB-ARENA CHANGES

In Update 1.5, Creepers in Endless mode could now give beneficial effects to nearby mobs and players when exploding. While it was fun, they were very overpowered as it meant that players could easily obtain permanent potion effects like Speed, Regeneration, and Jump Boost. We have decided to nerf these effects but keep them in the game, but in return, mobs in Endless can now spawn with Netherite weapons and armor.

  • New mobs introduced between Minecraft 1.13-1.17 will now have correct XP values when defeating them.
  • Updated disguise plugin to hopefully fix various issues with disguised mobs
  • Nerfed the potion effects from Creeper explosions that were unintentionally introduced in Update 1.5
    • Limited the level of Regeneration and Jump Boost to level 1. Speed, Strength, and Absorption are still unlimited
    • Effects now only have a 5% chance to be permanent. For the other 95% of the time, the effect on the Creeper will be a random duration between 1 and 20 minutes
    • The Absorption effect will never be permanent
    • It is still very much worth going for Creeper potion effects, but they are no longer completely overpowered!
  • Turtle Helmets now count towards armor when calculating gun damage
  • Mobs in very high rounds in Endless can now spawn with Netherite gear
    • When calculating gun damage, Netherite armor is counted as having 1 extra armor point per piece compared to diamond armor
  • Mobs in Endless will now have a higher chance of spawning with weapons at higher rounds
  • Anvils will no longer break when used in Mob-Arena

BUG FIXES

  • Fixed a major bug where a memory leak caused the PVP and Competitive servers to crash after a few hours
  • Fixed a bug where you could see your own disguise in Zombie Siege
  • Fixed a bug where advancement messages were not properly disabled
  • Fixed a bug where teammate nametags appeared white instead of their intended color
  • Fixed a bug where the Reduced Debug Info gamerule was not being applied in-game
  • Fixed a bug where the High Voltage Gloves was missing reload sounds
  • Fixed a bug where the ZCart custom mob looked like a player instead of a spawner minecart

Hotfix January 4th, 2021:

  • Fixed a bug where the new mob armor changes did not work
  • All chunks are now unloaded on round end in PVP and Competitive to further reduce memory leak issues
  • Added caching of item NBT data to significantly improve performance
    • This was necessary because the new 1.17 method of retrieving NBT turns out to be much slower than the old 1.12 method and causes significant CPU usage
    • This may introduce subtle issues in the gun system because some of the code wasn’t designed with this caching in mind. If you run into any issues, please report it on Discord so it can be fixed
  • Reduced the frequency of sending the player movement speed and FOV packet
    • This slightly reduces server CPU and network usage
    • Packets are now only sent once per two seconds, or if the player’s speed or field of view changes

Hotfix January 5th, 2021:

  • World references in the map system are now nullified on game end in PVP and Competitive to further reduce memory leak issues
  • Fixed another potential source of the memory leak issue in the scoreboard system
  • Fixed a bug where an old admin command was accessible by regular players using the tab auto-complete
  • Disabled auto-update for a plugin that would occasionally cause the server to hang on startup