GZ-Loot: Enemy Loot, Random Drops, and Auction House

by gz-mods

GZ-Loot #AUCTION_HOUSE_UPDATE: Now switch modes from loot boxes to state-sanctioned auctions! Get unique modded gear that can't be found anywhere else! #BITER LOOT UPDATE: Loot from enemies and from the sky! Biters and spawners of all kinds (incl. modded) will now drop items and FLUX. Use with GZ-Economy and RPG systems! 1.0.4: GZ-Threat enemies drop more loot!

Content
21 hours ago
2.0
542
Transportation Logistics Cheats

Changelog

Version: 1.1.41
Date: 2026-09-29
  Collector Roboport:
    - Fixed hatch rotation on the Collector body by listening to Factorio's linked Rotate and Reverse Rotate controls directly.
    - R now advances the output hatch clockwise and reverse-rotate advances counter-clockwise even though roboports are not naturally rotatable.
    - Native rotation events remain as a compatibility fallback and are de-duplicated when both paths fire on the same tick.

Version: 1.1.40
Date: 2026-09-29
  Changes:
    - Collector Everything mode now collects any valid Loot bag reward and ordinary ground item within range, including glands and other enemy drops.
    - Flux and Fragments modes remain strict filters; Collector/Spiderling infrastructure items are excluded from Everything mode.

Version: 1.1.39
Date: 2026-09-29
  Collector Roboport:
    - Rotating a raised Collector now moves its output hatch to the next clear cardinal attachment point instead of changing the port body orientation.
    - Normal rotation advances clockwise and reverse rotation advances counter-clockwise; blocked attachment positions are skipped automatically.
    - Hatch movement uses entity teleport so stored output and the hatch unit number are preserved for active Spiderling unload jobs.
Version: 1.1.38
Date: 2026-09-29
  Collector Roboport:
    - Added low-opacity selected-range field overlays: gold for the 22-tile collection area and blue for the 35-tile enemy detection area.
    - Kept distinct boundary rings and labels so both radii remain readable over terrain and factory entities.
Version: 1.1.37
Date: 2026-09-29
  Collector Roboport:
    - Increased collection radius from 16 tiles to 22 tiles. Target searches, selection overlays, GUI text, descriptions, and status API all follow the shared runtime constant.
Version: 1.1.36
Date: 2026-09-29
  Collector Roboport:
    - Completed Spiderling groups now schedule a next-tick collection pass, so available Collector slots keep cycling until no valid loot remains or the output can no longer accept the selected item.
    - Added a third collection mode: Everything. Flux and Shell Fragment targets share one nearest-first dispatch pool instead of one type starving the other.
    - Collector mode controls are now Flux / Fragments / Everything.
Version: 1.1.35
Date: 2026-09-29
  Collector Roboport:
    - Collector unload orders now identify the output destination explicitly as gz-collector-hatch instead of relying only on its unit number.
    - Collector hatch prototypes now opt into get-by-unit-number lookup for reliable shared-service addressing.
    - Requires Gizmod 1.0.96, which falls back to position/name resolution when a script-owned unload target cannot be resolved by unit number.
Version: 1.1.34
Date: 2026-09-29
  Collector Roboport:
    - Fixed Collector/body GUI replacement being force-closed by Factorio's native GUI open/close lifecycle. Body clicks now close the native roboport panel and open the Collector custom GUI on the next tick.
    - The output hatch is once again an ordinary chest when clicked directly.
    - The Collector GUI's Open Output button now uses the same deferred one-tick handoff so the native output inventory stays open reliably.
    - Close button and E/Escape now share the normal player.opened close path.
Version: 1.1.33
Date: 2026-09-29
  Collector Roboport:
    - Requires Gizmod 1.0.95, which fixes Spiderlings returning to the Collector output hatch but remaining loaded beside it instead of transferring cargo.
Version: 1.1.32
Date: 2026-09-29
  Collector Roboport:
    - Made Spiderling bay unloading idempotent: repeated Unload actions on an empty bay are harmless and never submit a zero-count ItemStack operation to Factorio.
    - Load/Unload controls now disable when the bay is respectively full/empty.
    - Opening the Collector Roboport body now replaces the vanilla roboport panel with the Collector custom GUI; the custom frame is also registered as player.opened so E/Escape closes it normally.
    - The explicit Open Output button still opens the normal output-hatch chest GUI.
Version: 1.1.31
Date: 2026-09-29
  Collector Roboport:
    - Collector unload jobs now use a 2.5-tile docking tolerance at the output hatch.
    - Requires Gizmod 1.0.94, which measures entity-backed Spiderling arrival from the target bounding box so completed trips release their active group slots and collection can repeat indefinitely.
Version: 1.1.30
Date: 2026-09-29
  Collector Roboport:
    - Added a dedicated forest-green armored hatch graphic for the retracted Collector Roboport.
    - Retracted collectors now create a full 3x3 sealed surface-cover entity at the roboport position while keeping the adjacent output hatch accessible.
    - Selecting the sealed cover shows the same 16-tile collection and 35-tile detection overlays as the raised roboport.
    - Existing retracted collectors gain the new cover automatically on configuration change.
Version: 1.1.29
Date: 2026-09-29
  Changes:
    - Collector Roboport keeps its neutral metal body and gains a forest-green animated highlight/glow accent.

Version: 1.1.28
Date: 2026-09-29
  Collector Roboport:
    - Reduced enemy detection/retraction radius from 44 tiles to 35 tiles; selection overlays, GUI text, descriptions, and status API all follow the runtime constant.
    - Requires Gizmod 1.0.93, whose Spiderling arrival-tolerance handling prevents return/unload orders from parking indefinitely beside the Collector hatch after the first trip.
Version: 1.1.27
Date: 2026-09-29
  Enemy Loot:
    - Removed native prototype-level GZ Flux loot from enemy units/spawners/worm turrets at final-fixes time so enemy currency is produced through Loot's virtual reward path instead of one physical ground entity per kill.
    - Added bounded ground-Flux consolidation as a compatibility guard for physical enemy rewards from external/legacy producers, collapsing duplicate same-denomination piles into one stack per 16x16 collection cell.
    - Enemy-death consolidation is queued one tick after the kill so prototype loot has materialized, and work is capped to four cells per tick.
    - Existing Flux litter is cleaned incrementally around connected players and as players enter new cells, avoiding a whole-surface migration scan.
  Integration:
    - Requires Gizmod 1.0.92 for cargo-safe Spiderling unloading and destruction behavior.
Version: 1.1.26
Date: 2026-09-29
  Collector Roboport:
    - Reduced collection radius from 32 tiles to 16 tiles.
    - Reduced enemy detection/retraction radius from 64 tiles to 44 tiles.
    - Updated selection overlays, GUI labels, descriptions, and status API to report the new ranges.
Version: 1.1.25
Date: 2026-09-29
  Collector Roboport:
    - Replaced Loot-owned/script-teleported visual Spiderlings with Gizmod's shared GZ Spiderlings service.
    - Collector jobs now dispatch real miniature SpiderVehicles that walk to ground loot with engine autopilot, pick it into their trunks, walk back, and unload into the Collector hatch.
    - Enemy loot bags are reserved by Loot, claimed atomically only after a Spiderling reaches the bag, carried in the real Spiderling trunk, and unloaded at the hatch.
    - Threat recall now retasks active Gizmod Spiderling groups back to the Collector before retraction.
  Architecture:
    - Loot no longer owns a Spiderling entity prototype or movement implementation; it owns only the Collector recipe/inventory integration and collection policy.
    - Requires Gizmod 1.0.91 or newer for the shared GZ Spiderlings API.
Version: 1.1.24
Date: 2026-09-29
  Integration:
    - Collector Roboport raise/retract transitions now use Gizmod's shared Space Platform build-animation service.
    - Removed the external space-platform-entity-build-animation-lib dependency; Gizmod 1.0.90 or newer now provides the transition animation.
Version: 1.1.23
Date: 2026-09-29
  Collector Roboport:
    - Collector raise/retract transitions now trigger the Space Platform scaffold/build animation.
    - Collection dispatches now create visible miniature Spiderlings that run from the collector to the actual recovered loot positions and return to the hatch.
    - Visible Spiderlings are capped per collector and use script-driven movement rather than pathfinding to keep the visual feedback lightweight.
    - Threat response now recalls visible Spiderlings before the Collector Roboport retracts.
Version: 1.1.22
Date: 2026-09-29
  Features:
    - Moved the Collector Roboport, Collector Spiderlings, hatch, technology, and runtime ownership from GZ Chitin into GZ Loot.
    - Selecting a Collector Roboport or its hatch now draws player-local collection (32 tiles) and safety (64 tiles) range overlays.
  Migration:
    - Imports existing Chitin-owned Collector state, including retracted installations, hatch inventories, collection mode, and internal Spiderling counts.
    - Shell Fragment collection remains available automatically when GZ Chitin is installed; otherwise collectors operate in Purple Flux mode.
Version: 1.1.21
Date: 2026-09-27
  Auction House:
    - The live auction view now shows the next three queued auctions to every player.
    - Upcoming previews show opening price and bundle contents but expose no admin approve/veto controls.

Version: 1.1.20
Date: 2026-09-27
  Changes:
    - Moved bulk metal ingots and their Foundry conversion recipes to GZ Economy, where their trade valuation is owned.
    - GZ Loot no longer defines or distributes ingots.

Version: 1.1.19
Date: 2026-09-27
  Changes:
    - Added Steel Ingot alongside the existing metal ingots.
    - Adjusted ingot icon set so Holmium is pink-tinted and Lithium reads as a separate pale-lavender metal.

Version: 1.1.18
Date: 2026-09-27
  Features:
    - Added foundry-cast ingots for copper, iron, tungsten, holmium, and lithium.
    - Added reversible foundry conversion recipes between 1 ingot and 1,000 matching plates.
    - Added new ingot item graphics and locale entries.

Version: 1.1.17
Date: 2026-09-26
  Integration:
    - Routed all equipped GZ Loot artifact armor bonuses through Gizmod's custom Bonuses GUI.
    - Routed the currently selected artifact weapon's family bonus through the same API, including Ranger, Hoarder, Ravager, and Royal traits.
    - Ranger armor's scripted +20% movement bonus now shares the same artifact refresh path as its custom bonus card.
Version: 1.1.16
Date: 2026-09-26
  Auction House:
    - Moved new-auction announcements from Gizmod Milestones to the Notify API. Auction openings now appear as fuchsia top-left glass notifications with an Open Auction House action.
    - Auction opening notifications opt into Gizmod's ODB bridge with dedicated readable Discord text, while no longer producing a Factorio chat announcement.
    - Added a public `open_auction_house(player_index)` remote opener for notification links.
Version: 1.1.15
Date: 2026-09-26
  Fixes:
    - Auction House admin/player sub-tab selection is now persisted explicitly per player instead of being inferred only from the current GUI tree, preventing periodic/state refreshes from bouncing admins back to Current Auction.
    - Replaced the destructive once-per-second Auction House rebuild with lightweight in-place countdown, pass-count, and balance updates. This prevents live Bid/Pass/Admin buttons from being destroyed and recreated under the mouse while a click is in progress.
    - Full Auction House rebuilds still occur immediately after actual auction state changes (bid, pass, approve, veto, auction transition), so all players remain synchronized without click instability.
Version: 1.1.14
Date: 2026-09-26
  Auction House:
    - Unanimous pass no longer lets very small populations instantly cycle auctions.
    - With 1 connected player, unanimous pass can shorten the auction to 15 minutes remaining; with 2 players, 10 minutes; with 3 players, 5 minutes.
    - With 4 or more connected players, a unanimous pass still advances immediately.
    - Passing never lengthens an auction that is already closer to its normal end.
Version: 1.1.13
Date: 2026-09-26
  Documentation:
    - Added the root AGENTS.md integration charter with mod-specific authority rules and the canonical GIZMOD service/API guide.
Version: 1.1.12
Date: 2026-09-26
  Discord/Milestones:
    - Auction House milestone announcements now provide a dedicated Discord-friendly text rendering through Gizmod's existing `discord_text` context field.
    - Discord auction notices use readable item names, artifact family names, quality labels, and Flux denomination names instead of exposing Factorio prototype IDs from rich-text icons.
    - Magic Drop pickup announcements use the same plain-text conversion for Discord while retaining their rich item/quality icons in game.
    - In-game milestone rendering is unchanged; the rich Factorio message and the Discord plain-text message are now separate presentation paths.
Version: 1.1.11
Date: 2026-09-25
  GUI:
    - Capped the GZ Loot window height so Auction House and Loot Pool content cannot expand beyond the screen-friendly frame size.
    - Converted the Auction House/Drops and Loot Pool tab bodies to vertical scroll panes; overflowing content now scrolls inside the window instead of making the whole window taller.
Version: 1.1.10
Date: 2026-09-25
  GUI:
    - Auction House refreshes now preserve the sub-tab that is actually visible on screen, eliminating the admin-preview snapback while an admin is using Current Auction.
    - Fresh Auction House opens always start on the normal Current Auction player view; Admin Preview remains a separate adjacent sub-tab.
    - Auction prices, balances, GDP limits, bids, and history now display normalized Flux denominations with the colored Flux item graphics instead of raw Purple Flux totals.
    - Denominations collapse at Economy's million-to-one ladder (for example, 12,000,000 Purple displays as 12 Blue Flux).
Version: 1.1.9
Date: 2026-09-25
  Auction House:
    - Expanded the admin preview queue from three to five upcoming auctions.
    - Added Approve Now to each admin preview. Approval is an accelerator only: it immediately advances the selected queued bundle into the live auction, while the normal 20-30 minute automatic rotation continues unchanged when admins do nothing.
    - Advancing an auction closes the current auction normally, including immediate delivery to any current high bidder, then announces the approved bundle and refills the preview queue.
    - Auction openings now broadcast through Gizmod's repeatable milestone_announce API, including the bundle contents, opening bid, and next scheduled rotation time.
    - Economy already uses its purple milestone color for vault milestones, so Auction House announcements use a distinct fuchsia presentation color.
Version: 1.1.8
Date: 2026-09-25
  Loot Pool:
    - Added Armor as its own independently toggleable themed Loot Pool category.
    - Equippables remains limited to equipment and military-equipment modules.
    - Updated the Weapons & Ammunition setting description to reflect the current one-weapon-per-ammo-batch behavior.
Version: 1.1.7
Date: 2026-09-25
  GUI:
    - Admins now see the normal player-facing Auction House as the default Current Auction sub-tab.
    - Moved upcoming-auction preview, GDP eligibility information, and Veto controls into a separate Admin Preview sub-tab.
    - Remembered the selected Auction House sub-tab per player across automatic GUI refreshes.
Version: 1.1.6
Date: 2026-09-25
  Auction House:
    - Every auction bundle that contains an artifact-capable weapon or armor now promotes one such item to an artifact. Bundles containing no artifact-capable equipment remain ordinary.
    - GDP eligibility is checked against the ordinary bundle first. Artifact promotion receives intentional headroom; if a higher artifact tier would push the final opening bid over the 70% GDP guideline, the promoted equipment is downgraded to the bottom-tier Hoarder artifact and the auction is still allowed.
    - Upcoming-auction validation now uses the pre-artifact eligibility price so guaranteed artifact headroom is preserved while queued.
  Artifacts:
    - Hoarder is now the bottom artifact tier, followed by Ranger, Ravager, and Royal. Auction value multipliers are Hoarder x2, Ranger x3, Ravager x4, and Royal x5.
    - Ranger armor grants +20% movement speed while equipped; Ranger weapons retain +20% range.
    - Hoarder armor grants +20 inventory slots; Hoarder weapons retain 25% improved ammunition efficiency.
    - Ravager armor strengthens its existing resistances by 25%; Ravager weapons retain +25% damage.
    - Royal armor remains indestructible through the GZ-Loot death escrow; Royal weapons retain +25% fire rate.
    - Updated artifact descriptions and Auction House hover cards to match the published artifact identities.
Version: 1.1.5
Date: 2026-09-25
  GUI:
    - Auction bundles now display real item slot icons with quantity and quality overlays for current and admin-preview listings.
    - Hovering an auction item icon opens a compact Gizmod glass detail card. Standard items use blue glass; Ranger's/Hoarder's/Ravager's/Royal artifacts use green/blue/orange/purple glass respectively.
    - Artifact hover cards describe the implemented weapon/armor bonus and show the artifact auction-value multiplier.
    - Timed auction GUI refreshes pause while an item hover card is open so the hovered element is not rebuilt out from under the cursor.
Version: 1.1.4
Date: 2026-09-25
  Auction House:
    - Auctions are now sold as one complete bundle rather than as independent per-item lots.
    - Each auction bundle contains at most three distinct item types; rolled quantities remain intact.
    - Weapon/ammo pairs consume two of the three item-type slots and weapons remain single-item awards. Armor remains singular.
    - Bundle opening price is the sum of quality-aware Economy cost basis × quantity × artifact multiplier for all contents, multiplied once by the shared 3-5x house premium.
    - The 70% average-GDP eligibility gate now evaluates the full bundle opening price.
    - Bidding, escrow, delivery, pass state, history, and admin upcoming-auction previews now operate on the complete bundle.
Version: 1.1.3
Date: 2026-09-25
  Fixes:
    - Reduced control.lua top-level local-variable pressure below Lua's 200-local chunk limit by grouping auction and Magic Drop balance constants into configuration tables.
    - No gameplay behavior or balance values changed.
Version: 1.1.2
Date: 2026-09-25
  Fixes:
    - Fixed the Loot Pool item inspector crashing when an item was selected. The six rarity preset buttons were being created as siblings with the same GUI element name; each preset now has a unique name while retaining the same tagged handler.
Version: 1.1.1
Date: 2026-09-25
  Auction House:
    - Auctions now run continuously on a randomized 20-30 minute cadence; the current auction closes exactly when the next one is announced.
    - Added per-player Pass. If every connected player passes before any bid exists, the current auction ends with no sale and the next queued auction opens immediately.
    - Added a three-auction admin preview queue with per-auction Veto controls; vetoed previews are rerolled from the shared Loot Pool.
    - Auction candidates are now gated by buying power: every offered lot must have an opening bid at or below 70% of current average player-team GDP/Flux wealth. Over-budget rolls are rejected rather than repriced.
    - Queue generation is throttled when GDP is too low or no eligible roll can be found, avoiding repeated per-tick reroll work.
  Loot Pool:
    - Weapons paired with an ammunition batch now roll exactly one weapon instead of two.
    - Armor rolls are always singular in both Loot Box and Auction House delivery modes.
Version: 1.1.0
Date: 2026-09-25
  Features:
    - Added a startup delivery-mode choice: physical Loot Box drops or an Economy-backed Auction House. Only one delivery system runs at a time.
    - Auction House cycles use the same Loot Pool, category frequencies, quality rolls, quantities, and per-item rarity overrides as Magic Drop chests.
    - House auctions run on a 20-minute cycle and use force-shared Purple Flux bid escrow through GZ Economy.
    - Auction opening prices are Economy production cost basis x quantity x a random 3-5x house premium x the artifact-family multiplier.
    - Added real recolored artifact prototypes for eligible weapons and armor: Ranger's (green), Hoarder's (blue), Ravager's (orange), and Royal (purple).
    - Weapon artifact traits are +20% range, 25% lower ammunition consumption, +25% damage, and +25% fire rate respectively.
    - Royal armor is preserved through player death and restored with its exact equipment state. Other armor-family prototypes are generated but do not enter random rolls until their runtime traits are defined.
  GUI:
    - In Auction House mode the first GZ Loot tab becomes Auction House; the third tab is now Loot Pool because its rarity controls feed both delivery modes.
  Dependencies:
    - Requires GZ Economy 1.2.3 for price-basis lookup and force-account bid escrow.
Version: 1.0.40
Date: 2026-09-25
  Dependencies:
    - GZ Economy is now a hard dependency (>= 1.2.2), establishing it as the required currency/value backend for Loot and the upcoming Auction House.
Version: 1.0.39
Date: 2026-09-25
  Fixes:
    - Fixed a Lua parse error in the Drops topology tooltip introduced in 1.0.38; newline separators are now encoded correctly.
Version: 1.0.38
Date: 2026-09-25
  Fixes:
    - Fixed a Magic Drops tab crash caused by duplicate GUI element names when rebuilding the item list on tab changes.
  GUI:
    - Removed the decorative treasure-map graphic from the Magic Drops editor so the tab focuses on the actual rarity controls.
    - Reworked the Drops tab into a wider theater-style layout and added the plain parchment map art there instead.
    - Widened the live topology grid to better match the map proportions while preserving the central X/Y axes and player-relative distance markers.
Version: 1.0.37
Date: 2026-09-25
  GUI:
    - Reworked GZ Loot into one first-class standalone window with Drops, Enemy Loot, and Magic Drops tabs.
    - Added a bordered relative topology map for active Magic Drops with only the central X/Y axes, visible player-relative distance markers, a compact drop list, and stable unit-number target buttons.
    - Drop target buttons now use Factorio 2.0 remote view and center the camera on the selected drop on any surface.
    - Restyled the window to match GZ Diplomacy/Economy with a draggable titlebar and close action.
    - Magic Drops now shows the treasure map at its native 3:2 aspect ratio instead of stretching it into a banner.
    - Added remembered per-player tab selection, visible Magic Drop filter state, read-only admin presentation, and cleaner automatic/override status.
    - Loot tabs now build lazily; opening the window only constructs the selected page, preserving Enemy Loot edits while avoiding hidden GUI work.
    - Magic Drop item browsing is paged at 80 rows per page so large mod packs do not create thousands of GUI elements at once.
  Balance/UI:
    - 100% now removes a Magic Drop override instead of storing a redundant 1.0 multiplier.
    - Gun rarity overrides now scale each compatible weapon's actual expected appearance rate in paired Weapons & Ammunition drops; 0% fully excludes that gun.
  Performance:
    - Moved science-pack recipe discovery, gun/ammo compatibility discovery, and quality prototype discovery into the init/configuration cache.
    - Normal Magic Drop generation no longer enumerates recipe, item, or quality prototype tables.
  Integration:
    - Registered Loot through Gizmod's current panel/dock API so the GZ Dock can launch the unified Loot window.
Version: 1.0.33
Date: 2026-09-25
  Integration:
    - Registered Loot with the GIZMOD Item Tabs API; items, fluids, and recipes created by this mod are grouped into its own row under the active MASTER tab.
Version: 1.0.32
Date: 2026-09-23
  Integration:
    - Magic Drops now grant GZ RPG XP when fully collected.
    - XP equals the floored straight-line tile distance from the collecting player's force spawn to the Magic Drop on that surface.
    - The granted XP is appended to the same green Gizmod pickup announcement as the collected item contents.
    - GZ RPG remains optional; Magic Drops behave normally when it is not installed.
Version: 1.0.31
Date: 2026-09-23
  Integration:
    - Magic Drop pickups now announce their collected item contents through Gizmod's repeatable milestone announcement API.
    - Pickup announcements use a green milestone color and preserve quality tags and quantities.
    - Existing active Magic Drops are given best-effort content snapshots on upgrade.
Version: 1.0.30
Date: 2026-09-23
  Features:
    - Added a default-on runtime setting to exclude atomic bombs from Magic Drop loot.
Version: 1.0.29
Date: 2026-09-20
  Changes:
    - Refactored the former Guns and Throwables theme into a dedicated Throwables category.
    - Renamed the former Random Ammunition theme to Weapons and Ammunition while preserving the existing setting keys for save compatibility.
    - Weapons and Ammunition rolls now choose a valid ammo item that has at least one compatible craftable gun, award 3-4 full stacks of that ammo, then award 2 compatible weapons.
    - If multiple valid weapons accept the selected ammo category, one weapon is selected at random.
    - Guns no longer roll as independent Magic Drop items; weapon/ammo compatibility is derived from Factorio prototype ammo categories, including modded weapons.
Version: 1.0.28
Date: 2026-09-20
  Balance:
    - Reduced each equippable item's Magic Drop selection weight by 90%.
    - Increased throwable/capsule stack quantities by 20x.
    - Science Pack drops now only include packs whose recipe is unlocked for at least one player force.
    - Science Pack rolls use quantities of 100, 150, or 200; Magic Drops still roll 2-3 item selections per chest.
Version: 1.0.27
Date: 2026-09-19
  Integration:
    - Added a deterministic source API for nearby enemy-loot bags so GZ-Chitin Collector Roboports can retrieve matching Flux or Shell Fragment rewards without scanning or duplicating GZ-Loot storage.
Version: 1.0.26
Date: 2026-09-19
  Changes:
    - GZ Loot-owned configuration and active-drop detail windows now use Gizmod Glass UI frame and scroll-pane styles.
    - The legacy standalone stats frame also uses Glass UI when Gizmod is available; vanilla GUI remains untouched.
Version: 1.0.25
Date: 2026-09-18
  Changes:
    - Enemy-loot registrations are now source-scoped so multiple mods can add loot to the same enemy without overwriting each other.
    - Added unregister_source and optional source arguments to the enemy registration API.
    - Migrates legacy single-spec registrations automatically and removes orphaned source registrations when mods are removed.
    - Coalesces same-item registered rewards into one loot bag per kill.
Version: 1.0.24
Date: 2026-09-04
  Changes:
    - Added a default-on runtime setting to limit Magic Drop item quality to the highest quality tier unlocked by any player force.
    - The cap is checked when each Magic Drop is generated, so newly completed quality research applies immediately without a migration or restart.
    - Disabling the setting restores the previous behavior where all non-hidden quality tiers can roll.
Version: 1.0.23
Date: 2026-08-25
  Integration:
    - Added a Gizmod event-bus subscription for GZ-Threat's Apex loot multiplier.
    - Biter/spitter global drops and registered additive unit drops now use the current Threat multiplier.
    - Spawner and other non-unit registered rewards are not multiplied.
    - Added gz-loot.get_external_enemy_multiplier for diagnostics.
  Performance:
    - No per-biter remote calls are required.

Version: 1.0.22
Date: 2026-08-23
  Changes:
    - Purple Flux enemy rewards now scale linearly with elapsed game time at +2.5% per in-game hour when GZ-Economy is installed.
    - Existing active GZ-Loot bags that still contain the legacy coin reward are migrated to Purple Flux on configuration change.

Version: 1.0.21
Date: 2026-08-23
  Changes:
    - Automatically uses GZ Economy Purple Flux instead of vanilla coins for the default enemy currency when gz-economy is installed.
    - Existing saves using the old default coin reward migrate to Purple Flux on upgrade; custom reward items are preserved.
    - Removing GZ Economy automatically falls back from Purple Flux to coins.
    - Added an optional gz-economy dependency so the integration/load order is explicit.

Version: 1.0.20
Date: 2026-08-23
  Fixes:
    - Added the missing register_enemy remote API that GZ-Terra's enemy-loot bridge was already expecting.
    - Registered enemy loot is additive to the normal configurable GZ-Loot reward and supports guaranteed/random count ranges and probability.
    - Gameplay-critical registered drops remain active even when the generic enemy reward is disabled.
    - Added unregister_enemy and get_registered_enemy API helpers for compatibility/auditing.

Version: 1.0.19
Date: 2026-08-23
  Changes:
    - GZ-Loot now owns global ground-item pickup flying text; collected item stacks show a local +count/item popup.
    - Increased every character prototype's native loot pickup distance by 1 tile.
    - Increased scripted GZ-Loot bag pickup radius from 1.25 to 2.25 tiles so bag markers use the same expanded collection philosophy.
    - Removed these collection-QoL responsibilities from GZ-Terra.

Version: 1.0.18
Date: 2026-08-23
  Changes:
    - Moved the random-drop HUD into the Gizmod GZ Dock when Gizmod is active; the old independent top-flow loot frame is removed.
    - Added ui_status / compact_status remote data for Total, Active, Collected, and Next Drop.
    - Added open_details / open_window remote launchers so the Dock loot control opens the existing detailed drop window.

Version: 1.0.17
Date: 2026-08-23
  Changes:
    - Registers a Gizmod "Magic Drop" milestone and completes it for the player/force that empties a Magic Drop chest.
    - Tracks the most recent player who opened each active Magic Drop so the achievement can name the collector.

Version: 1.0.16
Date: 2026-08-23
  Performance:
    - Spread loot-bag hover and expiry work across ticks with small rotating budgets instead of updating every active bag in one synchronized pulse.
    - Throttled proximity pickup queries to six ticks per player.
    - Reworked random-drop chest maintenance so chest expiry/timers are processed incrementally instead of nested player x chest scans every second.
    - Staggered optional helper-line and statistics GUI refreshes away from the global 60-tick boundary.
Version: 1.0.15
Date: 2026-08-23
  Optimizations:
    - Reworked loot bag gold motes into static entity-attached rendering objects instead of rewriting every mote position/color every four ticks.
    - Reduced the scripted hover update to one sprite-target change per bag every eight ticks.
    - Added an engine-side gold light so the loot marker keeps its highlighted look without continuous Lua animation work.
    - Fixes the severe GZ-Loot script-update regression introduced by the 1.0.14 animated particle implementation.
Version: 1.0.14
Date: 2026-08-23
  Changes:
    - Added a subtle vertical hover/bob animation to enemy loot bag markers.
    - Added animated gold/yellow particle motes around enemy loot bag markers.
    - Loot bag animation remains rendering-only; marker position and pickup behavior are unchanged.
Version: 1.0.13
Date: 2026-08-23
  Bugfixes:
    - Loot bags are now non-item ground markers and can no longer enter player inventories.
    - Walking over a loot bag marker now awards the configured reward item directly.
    - Inventory overflow remains attached to the same ground marker until space is available.
    - Existing tracked 1.0.11/1.0.12 item-based loot bags are migrated to marker entities on configuration change.
Version: 1.0.12
Date: 2026-05-16
  Bugfixes:
    - Removed invalid runtime label styles from the GZ Loot configuration and active chest details GUIs.
    - Fixes multiplayer crash when opening Configure from the active chest details panel.
Version: 1.0.11
Date: 2026-05-13
  Changes:
    - Replaced enemy coin pile drops with one corpse-position loot bag pickup.
    - Loot bag pickup now awards the configured reward item and count, then shows local floating pickup text.
    - Inventory overflow now re-drops remaining loot as another bag instead of spilling coin piles.
Version: 1.0.10
Date: 2026-05-13
  Changes:
    - Added top-layer loot bag visuals for enemy loot drops.
    - Added local floating pickup text when a player collects tracked enemy loot.
    - Added graphics/gz-loot-bag.png as the replaceable loot bag visual asset.
Version: 1.0.9
Date: 2026-05-13
  Changes:
    - Added configurable enemy drops on entity death.
    - Added support for vanilla biters/spitters/spawners, worm turrets, Space Age pentapods/spawners, and Explosive/Toxic/Frost/Armored biter-family names.
    - Added a GZ Loot customization panel and remote interface for Gizmod tab integration.
    - Added /gz-loot-config command for direct access to the customization panel.
Version: 1.0.8
Date: 2026-05-08
  Changes:
    - Added player-present planet filtering so random drops only target valid planet surfaces that currently have a connected player physically present.
    - Updated Gizmod registry capability report.
Version: 1.0.7
Date: 2026-05-08
  Changes:
    - Added Gizmod plugin registration.
    - Added /gz-loot status command.
    - Updated local shortcut icon references for the gz-loot mod id.
Version: 1.0.6
Date: 2026-01-26
  Bugfixes:
    - Custom multipliers for a specific game on FL servers
    - Added a function to force loot to spawn on command
Version: 1.0.3
Date: 2026-01-25
  Bugfixes:
    - Fixed a bug where chests could spawn on technical or temporary surfaces
Version: 1.0.2
Date: 2026-01-25
  Features:
    - Added "Themed Mode" selected categories (e.g., Ammo, Modules, Military,  Raw Materials, Science Pack, Intermediate Product).
  Changes:
    - Added a new notification system: if "Themed Mode" is active, the chat will list all currently selected categories (e.g., Ammo, Modules, Military,  Raw Materials, Science Pack, Intermediate Product).
Version: 1.0.1
Date: 2026-01-24
  Bugfixes:
    - Fixed a multiplayer bug where rendering lines could cause desyncs or unintended visibility toggles between players.

  Changes:
    - Refactored the helper line system: visual lines are now managed per-player within storage.player_settings.
    - Individual players can now toggle their own helper lines via shortcut without affecting other players on the server.