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 51–75 of 142 releases

Oxide Blackmarketv1.7.1

Patch

Fixed

  • Numbers and dealer locations saved in /blackmarket settings are now validated more strictly: corrupt values can no longer be saved or persist in the database, and previously saved settings are re-checked and repaired automatically at each restart.

Oxide Weedv1.4.1

Patch

Fixed

  • Saving a settings section in /weed settings could break that scene's camera — the brick press, freeze dryer and drying rack views turned extremely zoomed-in or empty and stayed broken until the setting row was deleted from the database. Numbers you save now keep their exact values, previously saved settings repair themselves automatically on the next server restart, and a corrupt value can no longer be saved at all.

Oxide Cocainev1.2.1

Patch

Fixed

  • Saving a settings section in /cocaine settings could break the cooking or packaging scene camera — an extremely zoomed-in or empty view that stayed broken until the setting row was deleted from the database. Numbers you save now keep their exact values, previously saved settings repair themselves automatically on the next server restart, and a corrupt value can no longer be saved at all.

Oxide Shopsv1.0.2

Patch

Fixed

  • The barber shop scene camera and admin-saved vehicle preview cameras (auction house spots) could open extremely zoomed-in or empty after their settings were saved. Saved camera values now apply correctly, and previously saved settings repair themselves automatically on the next server restart.
  • Emptying a list in /shop settings no longer breaks the editor.
  • Numbers saved in /shop settings are now validated more strictly: corrupt values can no longer be saved or persist in the database.

Documentation

  • README.md and docs/INSTALLATION.md: accuracy fixes from the docs review.

Oxide Multicharv2.0.3

Patch

Fixed

  • Some players landed on a character selection screen with no characters on it, or with characters missing. A slow-loading model or animation would stop the screen from finishing building. Characters now load one at a time, so a single slow model no longer takes the whole screen down with it.
  • Raised how long the resource waits for a character model to load from 5 seconds to 30. Heavily modded servers were running out of time on the shorter limit.
  • The mouse cursor did not appear on the character selection screen, leaving players unable to click anything. The loading screen was still holding on to the mouse; it is now dismissed first.
  • Characters whose saved position was recorded incorrectly spawned in the open ocean. Those positions are now ignored — the character spawns at Config.Spawn.new instead, and "Last location" is no longer offered in the spawn picker for them.
  • If anything went wrong while placing a character in the world, players were left on a permanent black screen with a frozen character and had to reconnect. The screen now always fades in and releases the character.
  • Reopening character selection while the map spawn picker was on screen broke the camera. It is now ignored until the spawn picker is finished.

Documentation

  • docs/CONFIGURATION.md: corrected several settings that were documented as working but are not currently applied by the resource — Config.Spawn.fallback, the three Config.Camera.selection settings, and Config.Logout.holdDuration / Config.Logout.fadeInDuration. Each is now marked as such, with a note on what actually happens instead.

Oxide Policev1.5.1

Patch

Fixed

  • Bodycam recordings now work on servers installed from the release package. The bodycam's video renderer was loaded from a folder that isn't included in the download, so recordings could silently produce no video. The renderer now ships inside the app bundle.

Oxide Shopsv1.0.1

Patch

Fixed

  • The admin panel map (/shop admin) was stuck on "Loading map…" unless oxide-vending was also installed on the server. The map images now ship inside oxide-shops, so the map works on its own.
  • Mask shop catalog previews showed blank images on servers installed from the release package; the image files are now included and load correctly.

Oxide Cocainev1.1.1

Patch

Fixed

  • Harvesting a wild coca bush no longer fails silently — players now get a clear message when a bush can't be harvested or they moved too far from it (two new strings in locales/en.json for translators)
  • Bushes on sloped terrain could refuse to harvest even when standing right next to them; distance is now checked horizontally, so hillside bushes work
  • Harvesting bushes back-to-back was blocked by an overly long anti-spam window — starting a harvest is now limited to once per 2 seconds instead of 5
  • Saving wild coca zone settings twice in quick succession could leave players seeing bushes in their old spots; clients now automatically re-fetch the new positions

Oxide Dispatchv1.3.5

Patch

Changed

  • The radial menu was consolidated into a single Dispatch wedge for everyone. Civilians see Call 911 / Call 311; responders additionally get a Set Status submenu, Set Callsign, Panic / Backup, and — when Config.DispatchHub.RadialEnabled = true — the Dispatch Hub, all in one place instead of three separate top-level menus. The Call 911 / Call 311 labels are now translatable in locales/en.json.
  • The radialId field in Config.ResponderGroups (shared/config/jobs.lua) is no longer used — all groups share the single Dispatch menu. Configs that still contain it keep working; the field is simply ignored and can be deleted.

Fixed

  • Vehicle plates spoken to AI Dispatch are now cleaned up before use. Speech-to-text spells plates out with spaces ("6 2 j y n 8 0 5"), which could make plate lookups fail and voice-created vehicle BOLOs store unusable plates — plates now have spaces and dashes stripped and are uppercased, and blank plates are rejected.

Notes

  • Existing servers can update in place — no SQL changes required for the 1.3.5 release.

Oxide Weedv1.2.7

Patch

Fixed

  • Players could load in unable to see any placed plants or equipment — if a player's game instance changed after loading (character select screens, instanced interiors), their world data could be built for the wrong instance, leaving plants, lamps, equipment, heaters, racks and freeze dryers invisible until relog. The server now detects the change and refreshes the player automatically, and joining during server boot no longer produces a half-empty world.
  • Smoking stress relief and hunger cost now actually apply — Config.Smoking.needsEffects.stressRelief (CBD strains reduce stress) and hungerCost (THC gives the munchies) were documented but had no effect. They now work on servers with a needs system.

Changed

  • Admin commands now accept standard QBCore/QBX/ESX admins with no server.cfg changes
  • Players in other game instances no longer receive plant and equipment updates from outside their instance
  • Removed the unused sell XP reward from shared/config/progression.lua — selling XP is granted by oxide-drugselling, not here
  • SQL files are now viewable in escrowed builds

Documentation

  • All docs and the README rewritten in plain language, with corrected XP values, notes that the drying rack and brick press must be added to a store via shared/config/store.lua, and framework support stated up front

Oxide Landscapingv1.2.3

Patch

Changed

  • Builder commands now use the standard admin permission — the old admin.landscapingjob permission is no longer needed, and standard QBCore/QBX/ESX admins pass automatically
  • The crew invite dialog now opens through your server's configured input UI instead of always using ox_lib
  • SQL files are now viewable in escrowed builds
  • Admin docs updated to describe the standard admin setup; configuration docs clarified

Fixed

  • Complaint suspension timers could be misread when loaded from the database on newer database library versions; they now count down correctly

Oxide Methv1.2.2

Patch

Fixed

  • Players whose game instance changed after loading (character select screens, instanced interiors) could never see placed labs, equipment or drying trays until relog — the server now detects the change and refreshes them automatically. Joining during server boot no longer produces a half-empty world.

Changed

  • /methkit, /meth_sellkit and /setmethlvl now use the standard admin permission and show a "No permission" message on denial. The recommended setup is add_ace group.admin admin allow (see docs/ADMIN.md); old per-command grants such as command.methkit no longer apply.
  • Equipment placement and removal updates are now only sent to players in the same game instance.

Oxide Animal Controlv1.1.4

Patch

Changed

  • /animalcontrolbuilder and its export tools now use the standard admin permission — the old admin.animalcontroljob permission is no longer needed, and standard QBCore/QBX/ESX admins pass automatically
  • The crew invite dialog now opens through your server's configured input UI instead of always using ox_lib
  • Added rate limiting to several job update events to protect against spam and abuse
  • Corrected the ammo item note in shared/config/animals.lua: QBCore's pistol ammo item is pistol_ammo, not ammo_pistol
  • Docs updated: admin permission setup corrected, fines and safety zone behavior documented

Removed

  • Removed config entries that had no effect in-game: Config.Vehicle.spawnDistance, Config.SafetyZone.scenarioBlockRadius, and Config.SafetyZone.clearVehiclesRadius

Fixed

  • Complaint suspension timers could be misread when loaded from the database on newer database library versions; they now count down correctly

Oxide GoPostalv1.1.4

Patch

Changed

  • /postalbuilder and its location export now use the standard admin permission — the old admin.postaljob permission is no longer needed, and standard QBCore/QBX/ESX admins pass automatically
  • Admin docs updated to describe the standard two-line admin setup

Fixed

  • Complaint suspension timers could be misread when loaded from the database on newer database library versions; they now count down correctly

Oxide 3D Weapon Printingv1.1.3

Patch

Fixed

  • Players could load in unable to see placed printers, benches and tables - if a player's game instance changed after loading (character select screens, instanced interiors, housing), their world data could be built for the wrong instance, leaving equipment invisible until relog. The server now detects the change and refreshes the player automatically, and joining during server boot no longer produces a half-empty world.
  • 26 printed-part item images renamed to match their item names - images for printed parts were named 3d_<part>.png while the items are named 3d_printed_<part>, so those part icons never displayed. Re-copy the itemimages/ folder into your inventory's image directory; filenames now match item names exactly.

Changed

  • Admin commands use the standard admin permission - all ten admin commands (/printer_kit, /give_parts, /wp_setlevel, etc.) now pass for stock QBCore/QBX/ESX admins and show a "No permission" message on denial instead of silently doing nothing. See the updated Permissions section in docs/ADMIN.md.
  • Instance-scoped updates - players in other game instances no longer receive printer, bench and table placements or in-use updates from outside their instance.
  • Removed the unused Config.Debug key from shared/config.lua - it had no effect since logging moved to the console log output.
  • Documentation corrections - weapon count corrected to 52, the QBCore item snippet in docs/INSTALLATION.md fixed (it was invalid Lua as written), the label toggle key documented as H, XP rewards documented as scaling with part cost, and the admin permission setup rewritten.

Oxide Cocainev1.0.1

Patch

Fixed

  • Players whose game instance changed after loading (character select screens, instanced interiors) could miss all placed equipment — pools, extractors, cook tables, presses — until relog; the server now detects the change and refreshes them automatically
  • Joining during server boot no longer produces a half-empty equipment snapshot

Documentation

  • docs/ADMIN.md now lists the correct /cokekit contents (4x Baking Soda plus 5x each of the other seven cutting agents)

Oxide Blackmarketv1.6.1

Patch

Fixed

  • Shop item edits not taking effect after a restart - editing a dealer's buy catalog in the settings menu updated the shop's appearance, but purchases still handed out the items from before the edit until the next time you saved in-game. Your saved catalog now loads correctly on every start, so what a player buys always matches what the shop shows.
  • Resetting a setting now applies immediately - resetting the shop inventory or dealer spawn settings to default from the settings menu takes effect right away instead of waiting for a restart.

Oxide Policev1.4.7

Patch

Changed

  • Patrol vehicles now stay in the world. A checked-out fleet vehicle no longer disappears when the officer clocks out, disconnects, or the server restarts — it stays parked wherever it was left and, after a restart, comes back in the same spot. Before, clocking out or a restart made the car vanish, and the vehicle count was quietly returned to the pool. Cars now have to be physically brought back to a garage before they count as available again.
  • Any on-duty officer can return a department vehicle. Returning is now a physical act: bring any of your department's vehicles to one of that department's garage bays and use the return option. It no longer has to be the car you personally checked out — handy when a colleague left a unit sitting in the field. To return a vehicle it must be parked at a garage bay; trying to return it anywhere else, or returning another department's vehicle, now tells you why.
  • A busy garage now says so. If every bay at a garage is occupied, checking out another vehicle is refused with a clear "return a vehicle first" message instead of spawning it on top of an existing car.

Added

  • Bosses can tow back lost units. The Fleet screen in the boss menu has a new Tow button next to each vehicle type that has units out in the field. It opens a list of every unit that is out — showing its plate, who checked it out, whether that officer is currently online, and the street it was last seen on — so you can pick exactly which vehicle to bring back. Towing returns the unit to the garage without anyone driving it, useful when the officer who took it is long offline. Each tow charges the department treasury Config.FleetRecoveryFee (in shared/config.lua, default 750; set it to 0 to make towing free).

Fixed

  • Firearm registration now works with ox_inventory. On servers using ox_inventory, the firearm registration desk always said "You have no unregistered firearms to register" even when the player was carrying weapons with serial numbers. Two causes: ox_inventory names weapons in capital letters, which the desk did not recognize, and ox_inventory marks every weapon it creates with its own "registered" note, which the desk mistook for a completed police registration. The desk now recognizes ox_inventory weapons and only treats a weapon as registered when it was actually registered at a police desk (or bought from a licensed weapon shop). Illegally printed "ghost guns" still cannot be registered.
  • Seized weapons are recorded on ox_inventory servers. For the same capital-letters reason, weapons submitted as evidence on ox_inventory servers were not being accepted as evidence items and their serials were not being logged in the MDT weapon registry. Both now work.
  • Works on servers running state bag strict mode. All synced player and vehicle state is now written by the server instead of by players' game clients. If your server has strict mode turned on (a FiveM setting that rejects client-written state), everything — cuffing with ESX inventories, fleet vehicle damage tracking, and the megaphone — now works correctly. Nothing changes on servers without strict mode.

Database

  • When upgrading, run the new file in sql/migrations/ (006_server_fleet_persistence.sql) once. It corrects the stored vehicle type on any boat and helicopter fleet vehicles so they spawn correctly with the new persistent-vehicle system. Fresh installs already include it, and it is safe to run on an existing database.

Notes

  • Nothing to turn on — persistent patrol vehicles and physical returns are the standard behavior now.
  • The one new setting, Config.FleetRecoveryFee, lives in shared/config.lua. If you use a customized copy of that file, copy the addition over to get it — fresh installs already include it.

Oxide Dispatchv1.3.4

Patch

Fixed

  • Dispatch map blips and panic alert cards now stay correct when a responder goes on duty, goes off duty, or switches department. Before this fix a responder's on-screen alerts could drift out of sync with what they were supposed to see — clocking in after an alert had already gone out wouldn't show that alert's blip, and going off duty or changing department could leave old blips and panic cards stuck on screen. Now, every time a responder's job or duty status changes, their alert display is rebuilt from scratch to match exactly the alerts they currently qualify for.

Notes

  • Existing servers can update in place — no SQL changes required for the 1.3.4 release.
  • No configuration changes are required. This fix applies automatically to every responder group (police, EMS, fire, and any custom groups).

Oxide Policev1.4.6

Patch

Added

  • Open the MDT from a tablet item. You can now make the Mobile Data Terminal open by using an inventory item instead of typing the /mdt command. Turn it on with Config.MDT.useItem = true in shared/config/mdt.lua — when on, officers open the MDT by using a police_tablet item and the /mdt command is switched off. The item name can be changed with Config.MDT.itemName. This is off by default, so /mdt keeps working unless you turn it on. If you run a non-Oxide framework, add the police_tablet item to your inventory first — see the "Register items" step in docs/INSTALLATION.md.
  • Use the MDT while off duty. A new setting lets hired officers open and use the MDT without clocking in. Turn it on with Config.MDT.allowOffDuty = true in shared/config/mdt.lua. Off by default, so the MDT still requires being on duty unless you turn it on. The minimum-rank setting for opening the MDT still applies either way.
  • Smoother on-screen speed radar. A new Config.Radar.Overlay.updateInterval setting in shared/config.lua lets you limit how often the floating speed readout above a vehicle refreshes, in milliseconds. Left at the default 0 it updates every frame, exactly as before.

Fixed

  • Admin commands use your server's standard admin permission. The admin panel (/padmin) and admin commands are gated by your server's normal admin permission. An old, unused setting that pointed to a custom oxide.police.admin permission has been removed, and the guides have been corrected. Before, the guides told you to grant a permission the resource no longer checks, so admin tools could appear to "do nothing" for staff who only had that custom permission. Grant your admins the standard admin permission — the same one used elsewhere on your server.
  • Boss menu actions no longer confirm twice. Hiring, firing, promoting and demoting officers, buying and managing fleet vehicles, and treasury deposits, withdrawals and payroll settlement now show a single confirmation message instead of two.
  • Breathalyzer color thresholds now follow your config. The "over the limit" and "caution" readings on the breathalyzer screen now use Config.Breathalyzer.overLimit and Config.Breathalyzer.cautionLimit in shared/config/breathalyzer.lua. Before, the screen always used the built-in 80 / 50 values no matter what you set.
  • Tackle cooldown and on/off switch now work. Config.Tackle.Cooldown is now enforced between tackles, and setting Config.Tackle.Enable = false now fully turns tackling off (the keybind is no longer registered). Both live in shared/config/interactions.lua. Before, these settings were ignored.
  • Speed radar range follows your config. The front and rear radar detection distances now use Config.Radar.OffsetFront and Config.Radar.OffsetRear in shared/config.lua. Before, the radar always used fixed distances and ignored those settings.
  • CCTV cameras can see into the distance. Camera feeds now draw far-away buildings and objects out to Config.Cctv.viewerMaxDistance in shared/config/cctv.lua. Before, distant scenery could be missing from the feed.
  • Zip-tie duty requirement now applies. If you set Config.FieldActions.Ziptie.requireDuty = true in shared/config/field_actions.lua, only on-duty officers can apply zip ties. Before, this setting had no effect.
  • Admin panel pop-ups appear on top. Confirmation boxes, input boxes, and notifications inside the admin panel now display above the panel instead of being hidden behind it.

Notes

  • The new and corrected settings live in shared/config/mdt.lua, shared/config.lua, shared/config/breathalyzer.lua, shared/config/cctv.lua, shared/config/interactions.lua, and shared/config/field_actions.lua. If you use customized copies of any of these files, copy the additions over to get them — fresh installs already include them.

Oxide Dispatchv1.3.3

Patch

Fixed

  • Panic alert cards could get stuck on a responder's screen and never go away. They now clear in three cases that previously left them pinned: when the responder logs out or switches characters, when the panic is closed but the responder had changed job/department or gone off duty since it fired, and — as a final safety net — automatically after a short grace period if the close signal is ever missed. The safety timer follows your Config.AutoExpire settings, and is turned off (cards stay until manually closed) when Config.AutoExpire.enabled = false.
  • The responder callsign popup now uses the standard input dialog so it looks and behaves consistently across all supported frameworks.

Changed

  • The default AI dispatch police channel (911) now points at the police job out of the box (it previously used a placeholder job name), so the example config works on a fresh install without editing. This only affects new installs — your existing shared/config/ai_dispatch.lua is untouched.

Notes

  • Existing servers can update in place — no SQL changes required for the 1.3.3 release.
  • Security reminder: the OpenAI key convar must use set oxide:ai-dispatch:openai_key sk-..., never setr. setr copies the value to every connecting player and exposes your key. If your server.cfg currently uses setr for this convar, change it to set.
  • The unused Config.Debug line was removed from shared/config.lua. It did nothing, so no action is needed.

Oxide Drugsellingv1.1.2

Patch

Added

  • Cocaine, crack baggies, and pressed cocaine bricks can now be sold through the street selling system, priced by purity (Pure, High, Mid, Low, and Dirty grades). Selling them rewards experience in oxide-cocaine, the same way selling weed and meth ties into their own resources.
  • New Config.OnDrugSold hook in shared/config.lua that runs after every completed sale. Drop in your own code (trigger an event, call another resource, send a webhook, hand out rewards) — leave it empty to do nothing.
  • New oxide-drugselling:drugSold server event that fires after every sale, for server owners who would rather react from their own resource than edit the config. Both give you the same sale details: who sold, the drug and item, the quantity, the final price, and the payout mode.

Fixed

  • The background task that clears out abandoned sell sessions now reports problems instead of failing silently, so cleanup keeps running reliably.