301 releases · 35 resources

Changelog

What changed in every Oxide Studios resource, release by release. Read these before you update: migration steps and database changes are listed with each version.

Showing 101–125 of 142 releases

Oxide Landscapingv1.2.1

Patch

Added

  • Config.Blip.enabled option to hide the office map blip
  • Locale support — NUI text now reads from locales/en.json so the shift menu and summary can be translated
  • oxide-logger integration for shifts, payouts, crew ownership transfers, admin commands, progression saves, and errors

Oxide GoPostalv1.1.1

Patch

Added

  • Config.Blip.enabled option to hide the depot map blip
  • Locale support — NUI text now reads from locales/en.json so the shift menu and summary can be translated
  • oxide-logger integration for shifts, payouts, crew ownership transfers, admin commands, progression saves, and errors

Oxide Policev1.1.1

Patch

Fixed

  • Custom / addon fleet vehicles now get keys. Garage spawns are now server-side, so plates and vehicle keys line up correctly for streamed addon police models, not just stock GTA cars.

Changed

  • Fleet vehicles store their entity type (car, bike, boat, heli, plane), detected automatically when you add the vehicle. Motorcycles, helis, and boats now spawn as the correct type.

Database

  • Run sql/migrations/002_vehicle_type.sql to upgrade existing installations.

Oxide Blackmarketv1.4.1

Patch

Fixed

  • Dealer becoming invincible / unkillable / unarrestable - the dealer ped used a huge entity culling radius (50,000) which forced every player on the server into the entity's scope at once. Under OneSync this thrashed ownership migration between players and could leave the dealer in a state where damage and arrest attempts had no effect. The dealer now uses the default culling radius with orphan-mode persistence, so ownership migrates cleanly between nearby players and the dealer remains damageable and arrestable as intended.
  • Dealer initialization no longer reports success when the dealer ped fails to spawn - the failure is now surfaced so you can see it.

Added

  • Structured logging via oxide-logger - money movements, transactions, dealer spawns/kills/arrests, loot collection, reputation changes, admin commands, and security rejections (proximity exploits, invalid input, unauthorized arrest attempts) are now logged through the optional oxide-logger resource. Install oxide-logger to get a full audit trail in your console, file logs, or Discord webhooks. No effect if oxide-logger is not installed.
  • Dirty money metadata mode - new Config.DirtyMoney.useMetadata option lets you store dirty money as the value of a metadata field (default worth) on the configured item rather than stack count. Useful for inventory systems that use marked-bills patterns. Bills are consumed greedily by highest value first, and any change is returned as a new bill.

Changed

  • Removed verbose [oxide-blackmarket] print lines from the arrest flow that were appearing in the console regardless of Config.Debug. All debug output is now gated by Config.Debug or the oxide-logger configuration.

Oxide Weedv1.2.3

Patch

Added

  • New Config.ImageBaseUrl option — set this to a CDN URL (e.g. https://r2.qbox.re/myserver/inventory/) and any item image the inventory bridge can't resolve locally will fall back to that URL. Leave nil to keep current behavior.

Fixed

  • Freeze dryer Collect button not appearing at 0:00 — once a tray's timer hit zero, the UI could still report 0 dried buds until the next background tick (up to 30s). Slots now promote to dried as soon as they're due.
  • Freeze dryer timers drifting from the server clock — remaining time is now anchored to the server's clock, so timers stay accurate after long sessions or if the UI was opened mid-cycle.
  • Freeze dryer panel out of sync — the panel now re-syncs every few seconds and on demand, so missed state updates self-heal instead of requiring a reopen.
  • Freeze dryer bud models not updating from wet to dried — placed buds now correctly switch from semi-transparent (wet) to solid (dried) without needing to reopen the panel.

Changed

  • Freeze dryer tray progress bar now fills smoothly as buds dry instead of only jumping when a slot finishes.
  • Cleaned up unused commented-out items (growing manual, rolling papers, cigarillo wraps, lighter) from the default Germinator store config. Re-add them in shared/config/store.lua if you want them sold.

Oxide Animal Controlv1.1.1

Patch

Added

  • Uniform toggle button in the NUI shift menu (previously only available in the bridge context menu)
  • UI locale support — NUI text now reads from locales/*.json so the shift menu, summary, and call notification can be translated
  • oxide-logger integration for shift events, payouts, fines, ammo resupply, gear issue/return, progression changes, level-ups, timeouts, crew ownership transfers, auto-clock-outs, and admin commands

Changed

  • Config.Debug now defaults to false

Fixed

  • Progression load/save failures and zero-row updates now log warnings/errors instead of failing silently

Oxide Drugsellingv1.1.1

Patch

Added

  • Structured audit logging via oxide-logger — sales, robberies, police dispatches, and progression XP awards are now recorded with player and item identifiers (visible in console, file, and Discord sinks when oxide-logger is installed)

Fixed

  • Other players can now see the NPC walk up to the seller and play the negotiate/accept/reject/robbery animations during a sale. Previously the entire interaction was only visible to the selling player while bystanders saw the NPC continue wandering normally.

Oxide 3D Weapon Printingv1.1.1

Patch

Added

  • Independent Durability & Jam Toggles - Durability and jam systems can now be enabled/disabled independently via Config.Durability.enabled and Config.Jam.enabled in shared/config/durability.lua
    • Disable Config.Durability when your inventory already handles weapon decay (ak47_qb_inventory, qs-inventory, codem-inventory, etc.) to avoid double-decay or nil-quality issues
    • When durability is disabled, jam chance falls back to a flat per-shot percentage (Config.Jam.flatChance) instead of the durability-tiered chance table
    • When durability is disabled, weapon metadata no longer writes a durability value

Changed

  • Structured Logging - All internal debug output now routes through the oxide-logger bridge (olink.logger). Servers running oxide-logger get categorized, traceable logs for player actions, printer/bench interactions, crafting, and database operations. No effect on servers without oxide-logger.

Fixed

  • Quality Rounding - Weapon quality metadata is now properly floored to an integer, preventing rare non-numeric quality values from causing issues with downstream inventory systems

Oxide Weedv1.2.2

Patch

Added

  • Structured logging through oxide-logger for every audit-worthy event — plant placement / harvest / death, genetics (strain registration, gender check, pollen, crossbreed), money flows, store purchases, scientist lab reports & cloning, drying / freeze dryer / drying rack state changes, packaging / bagging / brick press output, smoking sessions, ownership rejections, admin commands, and DB failures. Configure Discord or file sinks in oxide-logger's config to receive the audit trail.
  • Player stats card now fully localized — level, XP, "MAX" indicator, and progression milestone labels (Planting & Growing, Street Selling, Lab Reports, Crossbreeding, Seed Cloning, Freeze Dryer) read from your locale file.

Fixed

  • Brick press metadata bug — bricks produced before this version had strain_id set to the strain name and strain_name set to a traits table, breaking strain lookup and downstream genetics on pressed bricks.
  • Seed cloning at the scientist now refunds the player if the clone fails (e.g. inventory full). Previously the player was charged but received nothing.
  • Watering and fertilizing plants, refilling the watering can, filling water containers, and rolling joints/blunts now emit audit events — these inventory and state mutations were previously silent.
  • Database query failures during boot (plants, lamps, equipment, drying slots, heaters) now log a warning instead of failing silently.

Changed

  • Removed the legacy WeedDebug print helper. Debug output now flows through oxide-logger and respects its configured log level / sinks. Setting Config.Debug = true no longer prints to the server console — install oxide-logger and set its level to debug for verbose tracing.

Oxide Newspaperv1.0.1

Patch

Added

  • Newspaper bag prop now attaches to the player's back when a route is picked up and detaches when the shift ends or the route is cleared
  • Structured logging across shifts, deliveries, progression, and the depot builder via o-link.logger for easier troubleshooting and audit trails
  • Server-side validation when a player reports running out of newspapers, preventing false out-of-ammo events while papers are still in inventory

Changed

  • Ammo system rewritten to track a per-shift ammo budget — players can refill the newspaper weapon up to the amount the server issued, eliminating transient "out of ammo" misreports
  • Delivery blip label now uses the localized text from locales/en.json

Fixed

  • Edge cases where the ammo monitor could trigger a false suspension while the player still had newspaper items to reload

Oxide Weedv1.2.1

Patch

Added

  • Per-snap-point rotation for heater placement on drying racks — Config.Drying.heater.snapOffsets entries can now be { offset = vec3(...), rotation = vec3(...) } to set a rotation delta applied on top of the rack's rotation. Useful for custom drying rack models where the heater needs to face a different direction at each snap. Bare vec3(...) entries continue to work unchanged.

Oxide Pizza Jobv1.0.1

Patch

Fixed

  • Supervisor target zones no longer duplicate when the resource is restarted
  • Uniform system now snapshots appearance before applying the outfit, fixing cases where clothing bridges corrupted the restore data
  • Removed dependency on custom GetIsPlayerDowned bridge function that prevented the resource from working with the original community_bridge

Oxide GoPostalv1.0.5

Patch

Fixed

  • Crew member names now display character names (first + last) instead of Steam names in the NUI, notifications, and invite prompts
  • Supervisor target zones no longer duplicate when the resource is restarted
  • Uniform system now snapshots appearance before applying the outfit, fixing cases where clothing bridges (e.g. illenium-appearance) corrupted the restore data
  • Removed dependency on custom GetIsPlayerDowned bridge function that prevented the resource from working with the original community_bridge

Oxide 3D Weapon Printingv1.0.1

Patch

Added

  • Item Printing (Preview) - Printers can now produce non-weapon items directly, no bench assembly required
    • New Config.ItemPrints table in shared/config/items.lua for defining printable items
    • Each entry supports: label, item, model (optional), filamentCost, printTime
    • Items are delivered as-is on collection — no quality, durability, or serial metadata
    • Ghost prop preview works when a model is provided, gracefully skipped when nil
    • All existing printer systems apply: filament cost, print time, level gating, XP, upgrades
    • /givewepblueprint command now supports both weapon and item blueprint keys
    • NUI distinguishes items (cube icon) from weapons (scroll icon) in the blueprint grid and USB picker

Limitations

  • This is a preview feature — full item printing support with metadata, categories, and dedicated UI is planned for a future release
  • Item prints are single-output only (one print = one finished item, no multi-part recipes)
  • No quality grades, durability, or custom metadata on collected items
  • Items skip weapon benches entirely — collected directly from the printer
  • Config.ItemPrints keys must not collide with Config.Blueprints keys (weapons take priority if duplicated)

Setup

  1. Define items in shared/config/items.lua
  2. Add level gates in shared/config/progression.lua under blueprintLevels
  3. Optionally add ghost prop scale/offset in shared/config/ghostprops.lua
  4. Give test USBs: /givewepblueprint [playerid] [itemkey]

Oxide Landscapingv1.1.4

Patch

Added

  • Tutorial tooltip system with KVP persistence, queueing, and auto-dismiss timer
  • 10 tutorial steps covering clock-in, mower usage, blades, obstacles, yard completion, timer expiry, vehicle damage, mower breakdown, level up, and crew join
  • Tutorial toggle (/landscapingtutorials) and reset (/landscapingtutorialreset) commands
  • Payment breakdown notifications on shift completion showing base pay, bonuses, and deductions

Fixed

  • Mower duplication when crew partner joins — crew members now adopt the existing networked mower instead of spawning a duplicate
  • Mower duplication on rapid unload/load — added mutex guards to prevent concurrent state changes
  • Mower duplication on load/unload cycle in crew — added ownership tracking so crew partners don't delete or re-spawn the leader's mower entity
  • Crew partner mower state desync — partner's local state now updates immediately on unload sync with background entity resolution retry
  • ox_target NPC zones persisting after resource restart — switched from sphere zones to entity-based targets matching the roadsideassistance pattern
  • Grass patches blocking ox_target raycasts to obstacle rocks — disabled collision on grass prop entities
  • Players could enter the cosmetic mower while attached to the truck roof — mower doors now locked for all players when on roof, unlocked when unloaded
  • Players could load the mower while another player was driving it — added occupancy check before and after progress bar

Oxide Roadside Assistancev1.0.1

Patch

Changed

  • Mission timers are now server-authoritative and distance-based — replaced hardcoded missionTime per event with dynamic calculation using Config.Timer.baseTime + distance * Config.Timer.timePerDistanceUnit
  • Removed extraTime config option — timer is now a single computed value
  • Removed missionTime field from all event definitions in shared/config/events.lua

Fixed

  • Towed vehicle freezing permanently when detached mid-tow — removed the re-freeze on detach outside delivery zone so players can re-hook and continue the mission