Update 1.32: Speargun Update

MAR 24 2026

Hello all,

GunColony has always strived to push the frontier of what is possible in Minecraft and beyond. Today, we introduce reliable, precise full-auto detection for our weapons, powered by Minecraft spear mechanics (requires Minecraft 1.21.11+). We also add 4 new and overhauled maps, ranging from a competitive defusal maps to symmetric arenas and lighthearted Mine-Spades maps that explore new frontiers in combining sandbox gameplay with gun mechanics. Simultaneously, we make a big leap in our transition to the standalone game by replacing our entire mob system with a custom implementation in the Place game engine, making 180+ monster types ready for the standalone game while improving their in-game behavior in GunColony.

Note: there are no actual spearguns in GunColony… yet… (Is this foreshadowing???)

PRECISE FULL-AUTO DETECTION WITH SPEARS!

From the beginning of GunColony, we have always strived to bring players the best possible first-person shooter experience within the constraints of Minecraft’s client. For more than ten years, one of GunColony’s biggest constraints was the inability of the Minecraft server to detect the exact duration of a player holding down their mouse button. This meant that a single mouse click would result in multiple shots being fired from a full-auto weapon, no matter how short the click duration.

These days are now over. By leveraging new mechanics introduced alongside Minecraft Spears in client version 1.21.11, we have developed a system able to precisely detect exactly when the player starts and stops pressing their right mouse button. We have built on this and devised an advanced server-side system that uses exact packet timings to determine exactly when to start and stop firing the player’s weapon with sub-tick precision.

This means that you can now tap-fire your full-auto weapons and precisely determine the duration of your firing bursts, a feature previously impossible in Minecraft. It particularly rewards low-magazine automatic weapons like the Mauser C96 that will now benefit from easier ammo conservation. In addition, semi-auto and burst weapons will now fire one shot or burst per click instead of repeatedly firing when the mouse button is held down.

This ability requires Minecraft 1.21.11+ clients. Our underlying server version remains the same for now, and older clients can play as before and will retain the previous behavior. It is nonetheless recommended to upgrade to the latest version of Minecraft to take advantage of this feature, and because we will be updating our GunColony server Minecraft version soon (thanks to our completed MythicMobs replacement – see below). If you want to revert to the old full-auto behavior, you can toggle the feature off in /settings. Note that to enable the feature, we use an off-hand item with an empty model that simulates the behavior of Spears; this will cause an empty off-hand hotbar HUD to appear on the bottom left of the screen when holding a gun.

We plan to expand on this new input detection ability to create unique game mechanics in the future, such as adding the ability to cancel delayed attacks (e.g. with Minigun), or new charge-up weapons that discharge a shot as soon as you release the mouse button.

 

NEW MAP: ANUBIS

Anubis is an entirely overhauled PVP & Competitive map by CrishTheCreator, with layout based on a Counter-Strike community map. It provides unique routes and plenty of opportunities for tactical usage of grenades.

 

NEW MAP: CHOCOLATINE

A new symmetric battle arena by dxc with a twist. Unlike other symmetric arenas, it is wide instead of long, providing plenty of opportunities for flanking. There is also a secret passage that can be used to flank enemies! Available in several PVP gamemodes.

 

NEW MAP: MELONWARS

A unique Mine-Spades map by dxc, consisting of two islands separated by water. Grab unique supplies like blocks, boats, and redstone components from chests scattered across the map, and fight to see which island comes out on top! Available in Mine-Spades on TDM.

 

NEW MAP: PETRI

Petri is a map that features a historical European town with a twist that its name suggests: the whole map is on top of a floating disk! Chests with unique resources are available in various buildings representing the farmers and aristocrats. Available in PVP modes including Mine-Spades.

 

CUSTOM MOB SYSTEM

We have worked hard to finally introduce a 100% custom mob system to the game, replacing the previous dependency of MythicMobs in our Mob-Arena arenas. This new mob system resides entirely within the Place game engine – it will let us easily migrate our mobs to the standalone game in the future. This was an ambitious system – the rework and its dependencies required three months of work and 35K+ lines of code. But we’ve finally done it, which not only gives us full control of the mob system going forwards to realize our wild gameplay ideas (for example, fully-custom AI that will allow thousands of mobs swarming towards you from hundreds of blocks away), but also unblocks us to finally update the server to newer Minecraft versions through removing old dependencies.

The new mob system is largely a technical overhaul for now, but there are concrete gameplay improvements that have already been made possible by the system. Which coincidentally makes Hangar, our hardest Mob-Arena map, even more impossible…

  • Thanks to technical improvements in the new mob system, custom projectiles shot by mobs no longer disappear when the mobs die
    • We expect this change to make Hangar considerably harder. Better practice your dodging skills!
  • In return, mobs with skills that require line of sight no longer use them immediately upon gaining line-of-sight with the target player
    • They will wait a period of time before using their skill. This gives players a window of opportunity to defeat gun enemies in Hangar at close range before taking damage.
  • Updated the Revenant’s guided missiles to use Soul Fire particle instead of regular fire particle because it looks cool and better distinguishes them from regular, unguided projectiles
  • Fixed a long-standing bug where custom projectiles fired by mobs were blocked inappropriately by non-full blocks such as carpets. This used to cause players standing at a certain location in Hangar to be immune to mob custom projectiles (e.g. Imps). This has now been fixed which removes the “safe spot” in Hangar and forces the player to be much more mobile in order to survive.
  • You might notice other minor differences in the behavior of some of our 188 custom mob types.

OTHER CHANGES

  • Updated ViaVersion to attempt to fix world loading issues encountered in latest Minecraft versions

BUG FIXES

  • Fixed a long-standing bug where newer, MythicMobs-powered mobs with degrading helmets did not reliably degrade their helmet, especially when damage is dealt in larger increments
    • This was because the skill was previously using MythicMobs “at health percentage” threshold. It now properly triggers below the percentage instead.
  • Fixed a few maps in the new playlist:
    • Concrete KOTH moved to Mine-Spades KOTH (the objective is designed to be accessible in Mine-Spades only)
    • FiringRange KOTH is removed as it does not have a KOTH objective set up
  • Fixed a long-standing bugs where multiple boss skills related to fireballs and Dragon Breath were misconfigured as they did not set a hidden fireball direction value in Minecraft.
    • Certain skills like Orbital Strike did not work at all previously; now they should function properly
  • Fixed an error handling issue in the staff-only map tools commands

DEVELOPMENT PROGRESS UPDATE

The last three months have been both grueling and rewarding for the development of the Place engine. After the implementation of the Place SDK system last fall, we finally have a solid foundation for a universal game data system that will support both the immediate standalone game and our future goals. It has been incredibly rewarding to see years of theory-crafting finally coming to fruition in the real codebase, allowing us to create a very modern and advanced game engine core that nonetheless stays fully compatible with Minecraft and supports our migration path towards the standalone game.

As we alluded to last time, we are now beginning the process of mass-migrating gameplay features from our existing codebase to the Place engine. The first goal we set upon was the complete migration off of MythicMobs. This goal was chosen for several reasons: 1. because it was an external plugin, which both meant being more self-contained (easier to migrate) and a larger potential payoff of migration due to being able to gain direct development control of more game systems; 2. because MythicMobs contained an excellent system for flexibly defining Minecraft items, and referencing it for the initial template for Place’s item system would serve as a proving ground for Minecraft compatibility in the Place engine; and 3. because removing MythicMobs was a hard requirement to updating our server to newer Minecraft versions, due to a MythicMobs addon we used that was no longer maintained.

To migrate off of MythicMobs, we needed to re-implement three main systems that the plugin used to handle for GunColony: Mobs (Living Entities in Place), Mob Skills, and Items. To build these features, we also had to modernize Place’s Commands system and build a new Chat Formatting system supporting hex color codes. Then, we had to migrate our existing config file containing 188 mobs and dozens of items, including re-implementing every single mob skill using lambda execution functions that are supported by dozens of new SDK-level APIs, and iterating and testing in-game to fix bugs (mostly new ones but also a few pre-existing ones). All together, the systems required very large amounts of work to re-implement, amounting to 35K+ lines of new code. Heavy, human-in-the-loop AI assistance was used to achieve this while working on the feature part-time. To give an example of the scale involved, we performed 6 consecutive AI-assisted gap analyses for the mobs and skill migration, iteratively building features into Place so that it can handle every single quirk of the 188 mobs currently used in GunColony, and ensure as close to identical gameplay as possible.

The task to migrate off MythicMobs was already ambitious, but we are just getting started. Between the gun system, arenas, GUIs, player data, moderation, there are many more migrations like this to come in the rest of the year if we hope of launching a public version of the standalone game by year-end, as originally planned – and that’s without even considering the elephant-in-the-room, the standalone game frontend. There are no hard promises because we prioritize long-run quality over short term deadlines and the game is developed in our spare time. Nonetheless, we are working simultaneously on new features and further development productivity leverage to try to make a 2026 launch possible. (Disclaimer: if launched, it will be a fully playable game but with much fewer features than GunColony and a temporary front-end renderer, so we’ll call it a demo or alpha build. GunColony is just too big and complex to replicate all at once.)

We’ve been busy! A list of new Place infrastructure developed since last update:

  • Full Command System Rewrite
    • Full integration with PlaceSdk, allowing modders to safely create custom commands with custom runtime code to interact with the game world programmatically.
    • New, much cleaner API to define commands and sub-commands without exposing the internal command tree structure.
    • Less focus on meticulous optimization for Command Block/Datapack-esque automation, in favor of SDK code cleanliness. For example, replaced index-based command argument access with name-based ones.
    • Commands can still return values for nesting purposes.
    • Suspending commands (via Kotlin Coroutines) are still fully supported for official game commands that need DB & network access (mostly admin commands). They can also still return values and be nested within one another for advanced scripting.
  • PlaceText Rich Text Format
    • New universal text format used by Place. Supports text formatting, hex color codes, gradients, rainbow, escape characters, and modern Minecraft features (e.g. hover events).
    • Full 100% support for Minecraft legacy color codes (both & and § prefixes supported). This means zero migration effort from existing GunColony configs.
    • Most syntax is identical to MineDown (Markdown-style text format for Minecraft), except that we support the two standard Markdown italic formats (*text* and _text_) in addition to MineDown’s own format, ensuring very high compatibility with documents in plain Markdown. This is important to avoid confusing both humans and LLMs, and to allow us to use our rich text format for our website in addition to the game itself. (Minecraft color codes in our blog posts? How cool is that?)
    • Fully custom implementation that uses a lexer-parser architecture instead of pure parser for improved maintainability, and with full support for Kotlin Multiplatform.
    • Full support for converting to Minecraft components for use in item name and lore, mob names, and chat/command output.
    • Permission flag system for flexible text parsing, limiting the features that can be used when parsing text from different sources. (For example, advanced formatting features can be disabled for player chat.)
    • Designed for network bandwidth optimization. PlaceText plaintext transfer over network is far more compact than Minecraft’s JSON chat format. The future standalone client will natively support rendering PlaceText in virtually all areas of the UI.
  • PlaceSdk Modifiers System
    • Allows one type of Game Object to define modifiers to be applied to another.
    • Convenient, type-safe Kotlin DSL syntax for modders. Example from our Strength potion effect definition: “entityModifiersPerLevel { attackDamage += 3.0 }”. This continues our goal with the PlaceSdk Kotlin DSL: it is easier to use than JSON and YAML configs, lets config and real Kotlin code lambdas live in the same file, and fully type-checks your configs at compile time to catch mistakes.
    • Used to implement “Entity Modifiers” system that serves as an improved replacement of Minecraft’s entity attributes system.
    • Fully general: any type of game object can implement fully flexible modifiers to any other type of game object.
      • Future use cases: Weapon Modification modifies Weapon stats; Weather modifies World stats; Mutator modifies Gamemode stats
  • Scheduler System
    • Performant task scheduling system that allows tasks to be run in the future with a delay. Used extensively by mob skills.
    • There is a separate scheduler per world, conforming to Place’s thread-per-world architecture.
    • Built on Place’s advanced game ticking system for delays as precise as 1 ms (vs. Minecraft 50ms) and support for concurrent simulation of game logic in Bukkit worlds on a standard Minecraft server.
  • Item System
    • Fully custom item stack system, ready for the standalone game and compatible with Minecraft.
    • Bi-directional conversion between Place’s own item representation and Bukkit ItemStacks, for example for read/write access to Minecraft player inventories and mob equipment from Place code
    • Supports display name, lore, HideFlags, entity modifiers (to replace Minecraft attribute modifiers), potion effects for potion items, and many other Minecraft item features used by GunColony’s MythicMobs items. All features are converted to the proper counterparts when converting to a Bukkit item system
    • We will use this item system as the basis for migrating GunColony’s famed weapon system in the future. All GunColony weapons will become native Place item types in the future.
  • Living Entities
    • A comprehensive living entity system that re-implements all MythicMobs features used by GunColony.
    • Supports every feature used by every mob in every existing GunColony Mob-Arena.
    • Skills are expressed via full Kotlin lambda functions rather than MythicMobs’ basic scripting system. Thanks to Place SDK’s design, these functions can be defined in the same files as the mobs’ base stats, offer expressiveness on the same level as the Bukkit API with even better syntax, and can eventually be executed on the server securely with very low overhead, opening up enormous possibilities for modding.
    • A custom projectile system was created to replace MythicMob’s system 1:1. These projectiles can be spawned programmatically and don’t actually exist as Minecraft game entities. They are instead simulated separately with custom collision logic.
    • Comprehensive APIs added in PlaceSdk, able to support a wide range of mob skills. This includes projectile skills, movement skills, attack effects, status effects on spawn, custom ranged attacks, and more. All of these APIs will be available to modders in the Place standalone game.
    • Standardized units and fixed many of Minecraft’s previous legacy decisions to make things much easier for modders. (For example, speed values are standardized to meters per second, rather than Minecraft using a quadratic formula for mob walking speeds, or 20:1 conversion ratios for many other velocities due to the game’s tick rate.)
    • Supports spawning Bukkit mob entities from Place mob type definitions, with various listeners to implement MythicMobs-like skills in the Minecraft world environment.
    • Modular interface design that leaves the door open for a fully standalone living entity implementation in the future while needing minimal changes to existing mob configs, ensuring our existing mobs will “just work” at standalone game launch. We only need to build a custom base entity physics engine and AI instead of the Minecraft one, producing a standalone-only implementation of the existing SDK interfaces.

Server Address

Supported versions:
Minecraft Java 1.17 - 1.21.6

Latest Updates

Server Status

Loading server status...