Features

Complete overview of all Oxide 3D Weapon Printing features including printing, blueprints, upgrades, assembly, quality, durability, and progression.

How every system works from the player's point of view, plus the details server owners need for balancing.

3D Printing

The 3D printer is the heart of the system. Players place a printer in the world, load blueprint USB drives into it, feed it filament, and print weapon parts one at a time. Every printer is saved to the database, so placed printers — including their upgrades, stored blueprints, and any print still running — survive server restarts.

Printing Process

Use a 3D Printer item from your inventory — a see-through "ghost" preview of the printer appears.
Move the preview where you want it and confirm placement.
Walk up to the placed printer and interact with it (a "Use Printer" prompt appears).
Load a Printer USB that contains a weapon blueprint.
Pick which part of the weapon to print.
The printer takes the filament from your inventory and starts a live countdown.
Come back when it's done and collect the finished part.

Each part in a blueprint has two costs:

  • Filament — How many filament items are taken from your inventory (1 to 5 per part, depending on the weapon)
  • Print Time — How long the print takes. Starter pistol parts take 10 minutes each; the biggest sniper and machine gun parts take 75 minutes each. Nozzle upgrades shorten these times.

A player only needs to be at the printer to start a print and to collect it — the print keeps running while they're away, and even across a server restart.

Printer Status Screen

The printer prop has a small built-in screen (a DUI page) that shows live information:

  • Which blueprint is loaded
  • Print progress with a countdown timer
  • Printer status (idle, printing, complete)

USB Malfunction

Loading a USB into a printer is risky: there is a chance the USB is destroyed instead of loading. The base chance is 25%, lowered by:

  • Player level — Each level removes 1.5% from the chance
  • Cooling Fan upgrades — Mk I: -10%, Mk II: -20%, Mk III: -30%
  • The chance never drops below 5%, no matter how high the level or upgrades

The printer interface shows the player's current malfunction chance before they load, so the risk is never a surprise.

Blueprint Storage

When a USB loads successfully, the blueprint is saved onto the printer itself — the USB is gone, but the blueprint stays on that printer permanently. A basic printer holds 1 blueprint; Storage Drive upgrades raise that to as many as 8. Players can switch between stored blueprints freely without any more USBs.

A stored blueprint can also be ejected: the player gets a fresh USB for it back in their inventory and the storage slot frees up. You can't eject a blueprint while the printer is busy printing from it.

Blueprints

Blueprints define which parts can be printed for each weapon. Each blueprint lives on a Printer USB item, and each weapon is locked behind a progression level.

Weapon Categories

There are 52 weapons in total:

CategoryWeaponsLevel
Pistols (Basic)SNS Pistol, Vintage Pistol, Flare Gun, Pistol, SNS Mk II, Ceramic Pistol, Double-Action Revolver, Marksman Pistol, Machine Pistol1
SMGsMicro SMG, Mini SMG, SMG, SMG Mk II, Combat PDW, Assault SMG2
Shotguns (Basic)Pump Shotgun, Sawed-Off Shotgun, Double Barrel Shotgun, Sweeper Shotgun2
Pistols (Advanced)Combat Pistol, AP Pistol, Pistol Mk II, Heavy Pistol3
Rifles (Standard)Assault Rifle, Carbine Rifle, Special Carbine, Compact Rifle, Bullpup Rifle4
Shotguns (Advanced)Pump Shotgun Mk II, Bullpup Shotgun, Assault Shotgun4
Rifles (Military)Assault Rifle Mk II, Carbine Mk II, Special Carbine Mk II, Bullpup Mk II, Advanced Rifle, Military Rifle, Heavy Rifle5
Shotguns (Heavy)Heavy Shotgun5
Pistols (Heavy)Pistol .50, Heavy Revolver, Heavy Revolver Mk II, Navy Revolver6
SnipersSniper Rifle, Marksman Rifle, Marksman Rifle Mk II7
Machine GunsMG, Combat MG, Combat MG Mk II8
Snipers (Heavy)Heavy Sniper, Heavy Sniper Mk II8
ExoticPerico Pistol9

Part Types

Parts vary by weapon category. Common part types include:

PartUsed By
Pistol SlidePistols
Pistol GripPistols
Pistol MagazinePistols
Compact FrameCeramic Pistol, Perico Pistol
Revolver FrameRevolvers
Revolver ReceiverRevolvers
Trigger GroupVarious (revolvers, shotguns, rifles, SMGs)
SMG ReceiverSMGs
SMG BarrelSMGs
SMG MagazineSMGs
Compact BarrelMini SMG, Machine Pistol, Compact Rifle
Folding StockAssault SMG
Rifle UpperRifles, Machine Guns
Rifle LowerRifles, Machine Guns
Rifle BarrelRifles, Machine Guns, Marksman Rifles
Rifle HandguardSelect Rifles
Rifle MagazineRifles
Rifle StockRifles, Machine Guns, Marksman Rifles
Bullpup ChassisBullpup Rifle, Bullpup Shotgun
Shotgun ReceiverShotguns
Shotgun BarrelShotguns
Shotgun StockShotguns
Pump HandlePump Shotguns
Double Barrel SetSawed-Off, Double Barrel Shotgun
Sniper ReceiverSniper Rifles
Sniper BarrelSniper Rifles
Sniper MagazineSelect Snipers, Marksman Rifles
Sniper StockSniper Rifles
Long ScopeHeavy Snipers, Marksman Rifle Mk II
Drum MagazineMachine Guns

Item Printing

Added in v1.0.1 — this is a preview feature. Full item printing support with metadata, categories, and a dedicated interface is planned for a future release.

The printer can also produce regular (non-weapon) items directly, with no bench assembly needed. Item prints are set up in shared/config/items.lua under Config.ItemPrints — by default there's one example (a lockpick).

How It Works

Item blueprints work exactly like weapon blueprints — same USBs, same printer, same malfunction risk — with two differences:

  1. One print job produces one finished item (there are no "parts")
  2. The finished item is collected straight from the printer — no weapon bench involved

Filament cost, print time, level gating, XP rewards, and nozzle speed upgrades all apply normally.

Collecting Items

When the print finishes, the item goes into the player's inventory as a completely normal item — no quality grade, no durability, no serial number.

Interface

The printer interface marks item blueprints with a cube icon; weapon blueprints get a scroll icon. Selecting an item blueprint shows a single print button instead of a parts list.

Preview Prop

If the item entry includes a model value, a see-through preview of that prop spins on the printer while it prints. If model is left out, there's simply no preview — everything else still works.

Level Gating and XP

To lock an item behind a level, add its key to Config.Progression.blueprintLevels in shared/config/progression.lua. XP is awarded when the print is collected, same as weapon parts.

Limitations (Preview)

  • One print = one item; no multi-part recipes
  • No quality grades, durability, or custom item data on collected items
  • A key used in Config.ItemPrints must not also exist in Config.Blueprints — if it does, the weapon wins
  • /givewepblueprint accepts item keys too, for testing

For the config fields, see Config File: shared/config/items.lua.

Printer Upgrades

Every printer can be upgraded individually across five categories. To install an upgrade, have the upgrade item in your inventory and use the Upgrades tab while at the printer — the item is consumed. Upgrades must be installed in order (Mk I, then Mk II, then Mk III).

If a player picks their printer up, the upgrades stay on the printer item and come back when it's placed again.

Upgrade Categories

Nozzle

Makes prints finish faster.

TierItemPrint SpeedPSU RequiredLevel Required
0 (Stock)—Normal——
Mk Iprinter_nozzle_mk115% fasterNone1
Mk IIprinter_nozzle_mk230% fasterPSU Mk I3
Mk IIIprinter_nozzle_mk345% fasterPSU Mk II6

Storage Drive

Lets the printer hold more blueprints at once.

TierItemBlueprint SlotsPSU RequiredLevel Required
0 (Stock)—1——
Mk Iprinter_storage_mk13None1
Mk IIprinter_storage_mk25PSU Mk I3
Mk IIIprinter_storage_mk38PSU Mk II6

Cooling Fan

Lowers the chance of a USB being destroyed when loaded.

TierItemMalfunction ReductionPSU RequiredLevel Required
0 (Stock)—0%——
Mk Iprinter_cooling_mk1-10%None1
Mk IIprinter_cooling_mk2-20%None3
Mk IIIprinter_cooling_mk3-30%PSU Mk I6

Build Plate

Adds a quality bonus to weapons the printer's owner assembles at a bench (see Quality System).

TierItemQuality BonusPSU RequiredLevel Required
0 (Stock)—+0%——
Mk Iprinter_buildplate_mk1+3%None2
Mk IIprinter_buildplate_mk2+6%PSU Mk I4
Mk IIIprinter_buildplate_mk3+10%PSU Mk II7

Power Supply (PSU)

The PSU does nothing by itself — it exists to power the higher upgrade tiers.

TierItemLevel Required
Mk Iprinter_psu_mk12
Mk IIprinter_psu_mk25

PSU Dependency Chain

Trying to install an upgrade without the PSU it needs fails with an error message telling the player which PSU is missing. The upgrade path:

  1. Install PSU Mk I (level 2) to unlock Mk II upgrades for Nozzle, Storage, and Build Plate, and Mk III for Cooling
  2. Install PSU Mk II (level 5) to unlock Mk III upgrades for Nozzle, Storage, and Build Plate

Weapon Assembly

The weapon bench is where printed parts become finished weapons. Each weapon has a recipe listing exactly which parts it needs.

Assembly Process

Use a Weapon Bench item from inventory and place it, same as the printer.
Walk up to the bench and interact with it (a "Use Workbench" prompt appears).
The bench shows every weapon you have the parts and the level for.
Pick a weapon — the parts are taken from your inventory and a crafting animation plays.
When the timer finishes, the weapon lands in your inventory with a quality grade.

If the player disconnects or cancels mid-assembly, the parts are returned to their inventory.

Ghost Guns

Weapons made at the bench have a blank serial number and stay untraceable — even when traded to another player or moved between inventories. Police weapon-registry systems will not find an owner for them.

Assembly Recipes

Different weapons need different parts. A few examples:

WeaponParts RequiredCraft Time
SNS PistolSlide + Grip + Magazine20s
PistolSlide + Grip + Magazine30s
AP PistolSlide + Grip + Magazine + Trigger Group45s
Assault RifleUpper + Lower + Barrel + Magazine + Stock60s
Heavy SniperReceiver + Barrel + Magazine + Stock + Long Scope90s
Combat MGUpper + Lower + Barrel + Drum Mag + Stock + Trigger Group90s

Assembly recipes use the same level requirements as their blueprints — see Progression.

Weapon Preview

While the assembly screen is open, a 3D model of the selected weapon is shown sitting on the bench, so players can see what they're building.

Quality System

Every assembled weapon gets a quality percentage and a matching grade. Quality also sets the weapon's starting durability — a 72% quality weapon starts at 72% durability.

Quality Grades

Base quality depends on how far the builder's level is above the weapon's required level:

GradeQuality RangeLevels Above Requirement
Poor20-30%0 (exactly at the requirement)
Decent35-45%1
Standard50-60%2
Quality65-75%3
Superior80-90%4 or more

In short: building weapons well below your level produces better results. A level 5 player assembling a level 1 pistol rolls in the Superior range; a level 4 player assembling a level 4 rifle rolls Poor.

Quality Bonuses

Two bonuses are added on top of the base roll (total quality is capped at 95%):

Experience bonus — lifetime activity slowly improves your output:

MetricThresholdBonus
Total prints collectedEvery 50 prints+2% quality
Total weapons assembledEvery 25 assemblies+3% quality
Maximum combined bonus—+20%

Build plate bonus — when assembling at a bench, the system looks at all printers the player owns and applies the quality bonus from the best Build Plate among them (+3/+6/+10%). The player doesn't need to be near the printer.

Bad Luck Events

Each assembly has a 10% chance of a "bad luck" event that knocks 15 percentage points off the final quality (it can't drop below 5%). Both numbers are configurable — see Bad Luck Events.

Weapon Durability

3D-printed weapons can wear out with use and eventually break. Durability decay and the jam mechanic are two separate systems, each with its own on/off switch (Config.Durability.enabled and Config.Jam.enabled). Both count real rounds fired.

Compatibility With Other Inventory Decay Systems

Some inventories (ak47_qb_inventory, qs-inventory, codem-inventory, etc.) have their own weapon decay tied to per-item quality. Running both at once can cause double-decay or, in the ak47 case, a nil arithmetic on field 'quality' crash inside the inventory's own loop. Set Config.Durability.enabled = false to let the inventory handle decay while keeping the jam mechanic active.

Degradation

When Config.Durability.enabled = true:

  • A fresh weapon starts at a durability equal to its quality (a 72% quality gun starts at 72% durability)
  • Each shot removes 0.15% durability (configurable via Config.Durability.degradePerShot)
  • At 0%, the weapon is destroyed and removed from the player's hands and inventory (if Config.Durability.breakAtZero is on)

When Config.Durability.enabled = false, printed weapons get no durability number at all and never break from this resource.

Weapon Jams

When Config.Jam.enabled = true, every shot has a chance to jam the weapon. A jammed weapon cannot fire; the player presses E to clear it, which plays a 3-second animation (configurable via Config.Jam.unjamTime). Two modes:

Durability mode (when Config.Durability.enabled = true) — the worse the weapon's condition, the more it jams:

Durability RangeJam Chance Per Shot
80-100%0%
60-80%2%
40-60%5%
20-40%10%
0-20%20%

Flat mode (when Config.Durability.enabled = false) — every shot uses the same flat percentage from Config.Jam.flatChance (default 5).

Durability Display

When durability tracking is on, the weapon's inventory tooltip shows both numbers:

3D Printed - Quality (72%) | Durability: 64%

When durability is off, the tooltip shows only the quality grade.

Progression

The progression system tracks each character's XP and level, which gate weapons, upgrades, and assembly recipes. Progress is saved on the character, not the printer.

Levels and XP

LevelTotal XP NeededUnlocks
10Basic Pistols & Placement
2200SMGs & Shotguns
3600Mk II Upgrades
41,400Standard Rifles
52,800Military Weapons
65,000Mk III Upgrades
78,500Sniper Rifles
814,000Heavy Weapons & MGs
922,000Exotic Weapons
1035,000Master Printer

XP Rewards

XP from printing and assembling scales with the size of the job — bigger weapons give more XP:

ActionXP Earned
Loading a USB into a printer (successful load)5
Collecting a finished print15 × the part's filament cost (15–75)
Assembling a weapon30 × the weapon's average part filament cost (30–150)

So collecting a starter pistol part (1 filament) gives 15 XP, while a heavy sniper part (5 filament) gives 75 XP.

Progress Data

Progression is stored on the character's metadata under the weaponprinting key (via o-link), and includes:

  • level — Current level
  • xp — Current XP total
  • totalPrints — Lifetime prints collected
  • totalAssembled — Lifetime weapons assembled

Placeable Equipment

3D Printer

  • Item: 3d_printer
  • Model: Custom prop_3d_printer (included in the resource)
  • Max per player: 3 (configurable)
  • Interaction: "Use Printer" prompt within 1.5m
  • Persistence: Saved to database with position, rotation, owner, upgrades, and stored blueprints

Weapon Bench

  • Item: weaponbench
  • Model: gr_prop_gr_bench_04b
  • Max per player: 2 (configurable)
  • Interaction: "Use Workbench" prompt within 1.5m
  • Persistence: Saved to database with position, rotation, and owner

Placeable Table

  • Item: placeable_table
  • Model: bkr_prop_weed_table_01b
  • Max per player: 5 (configurable)
  • Interaction: None (decoration only)
  • Persistence: Saved to database with position, rotation, and owner

Ownership

When Config.RequireOwnership is true (the default), placed equipment belongs to the character who placed it. Only the owner can:

  • Pick the equipment up (it goes back into their inventory)
  • Load USBs into a printer, eject blueprints, or start prints
  • Start an assembly at a bench

Anyone can still open a printer or bench to look at it. With the setting off, anyone can use and pick up anything.

Picking up a printer

A printer can't be picked up while it's printing. If it has blueprints stored, the player is warned and asked to confirm — force-removing destroys the stored blueprints (eject them first to keep them). Upgrades are never lost; they stay on the printer item.

Ghost Gunner's Handbook

The Ghost Gunner's Handbook (printer_manual) is a usable item that opens an in-game book players can read. It teaches the whole system, so your players don't need any out-of-game explanation.

Contents

The handbook is 8 two-page spreads (16 pages):

SpreadLeft PageRight Page
1ForewordGetting Started
2Blueprints & USBsPrinting Parts
3Weapon PartsShared Components
4The Weapon BenchQuality & Grades
5Printer UpgradesThe PSU Problem
6Durability & JamsYour Reputation
7Weapon CategoriesMore Weapons
8Tips & TricksFinal Notes

Usage

  • Use the printer_manual item from inventory to open it
  • Turn pages with A/D or the arrow keys
  • Press ESC to close
  • Item pictures for parts, upgrades, and equipment appear inside the book

The handbook reads the printer, bench, table, USB, and filament item names from your config, so it stays accurate if you rename any of them.

Obtaining

The handbook is a normal item — sell it in a shop, add it to a starter kit, or hand it out however you like. The /printer_kit admin command includes one.

Floating Labels

Players can press H (configurable) while near a placed printer to toggle floating status labels above all nearby printers — showing the printer's name, status, print progress, and upgrades at a glance. Labels only appear within 5 meters and the data refreshes every 2 seconds.

SettingDefaultDescription
Config.Labels.toggleKey74 (H)Control ID for the toggle key
Config.Labels.maxDist5.0Maximum distance to see labels
Config.Labels.heightOffset1.2Height above the printer
Config.Labels.dataRefreshMs2000How often label data refreshes

Safe Zones

Safe zones are map areas where players cannot place printers, benches, or tables — useful for blocking spawn points, government buildings, or city centers. You outline each area with corner points in Config.SafeZones; any placement attempt inside is rejected by the server.

Config.SafeZones = {
    {
        points = {
            vec2(x1, y1),
            vec2(x2, y2),
            vec2(x3, y3),
            vec2(x4, y4),
        },
    },
}

Each vec2(x, y) is a map coordinate — stand at each corner of the area and note your X and Y position to build the list.

Next Steps