Features
Complete overview of all Oxide 3D Weapon Printing features including printing, blueprints, upgrades, assembly, quality, durability, and progression.
3D Printing
The 3D printer is the core manufacturing station. Players place a printer in the world, load blueprint USBs, feed it filament, and print individual weapon parts over time. Each printer persists across server restarts and tracks its own upgrade state and loaded blueprints.
Printing Process
- Use a 3D Printer item from your inventory to enter placement mode
- Position the ghost prop and confirm placement
- Interact with the placed printer via ox_target
- Load a Printer USB containing a weapon blueprint
- Select a part from the blueprint to print
- The printer consumes filament and begins printing with a real-time countdown
- Collect the finished part when the print completes
Print Parameters
Each part in a blueprint has two key parameters:
- Filament Cost - How many filament items are consumed (1-5 per part depending on weapon tier)
- Print Time - Base duration in seconds (600s-4500s depending on weapon tier), reduced by nozzle upgrades
DUI Status Screen
The printer displays a live DUI screen showing:
- Currently loaded blueprint name
- Active print progress with countdown timer
- Printer status (idle, printing, complete)
USB Malfunction
When loading a USB into a printer, there is a chance the USB fails and is destroyed. The base malfunction chance is 25%, reduced by:
- Player level - Each level reduces the chance by 1.5%
- Cooling Fan upgrades - Mk I: -10%, Mk II: -20%, Mk III: -30%
- Minimum chance is 5% regardless of level and upgrades
Blueprint Storage
Printers have an internal storage drive that holds loaded blueprints. The base capacity is 1 slot, upgradeable to 8 with Storage Drive upgrades. Multiple blueprints can be stored simultaneously, and you can switch between them without needing to reload USBs.
Blueprints
Blueprints define which parts can be printed for each weapon. Each blueprint is stored on a Printer USB item with metadata identifying the weapon. Blueprints are organized by weapon category and gated behind progression levels.
Weapon Categories
| Category | Weapons | Level Range |
|---|---|---|
| Pistols (Basic) | SNS Pistol, Vintage Pistol, Flare Gun, Pistol, SNS Mk II, Ceramic Pistol, Double-Action Revolver, Marksman Pistol, Machine Pistol | 1 |
| SMGs | Micro SMG, Mini SMG, SMG, SMG Mk II, Combat PDW, Assault SMG | 2 |
| Shotguns (Basic) | Pump Shotgun, Sawed-Off Shotgun, Double Barrel Shotgun, Sweeper Shotgun | 2 |
| Pistols (Advanced) | Combat Pistol, AP Pistol, Pistol Mk II, Heavy Pistol | 3 |
| Rifles (Standard) | Assault Rifle, Carbine Rifle, Special Carbine, Compact Rifle, Bullpup Rifle | 4 |
| Shotguns (Advanced) | Pump Shotgun Mk II, Bullpup Shotgun, Assault Shotgun | 4 |
| Rifles (Military) | Assault Rifle Mk II, Carbine Mk II, Special Carbine Mk II, Bullpup Mk II, Advanced Rifle, Military Rifle, Heavy Rifle | 5 |
| Shotguns (Heavy) | Heavy Shotgun | 5 |
| Pistols (Heavy) | Pistol .50, Heavy Revolver, Heavy Revolver Mk II, Navy Revolver | 6 |
| Snipers | Sniper Rifle, Marksman Rifle, Marksman Rifle Mk II | 7 |
| Machine Guns | MG, Combat MG, Combat MG Mk II | 8 |
| Snipers (Heavy) | Heavy Sniper, Heavy Sniper Mk II | 8 |
| Exotic | Perico Pistol | 9 |
Part Types
Parts vary by weapon category. Common part types include:
| Part | Used By |
|---|---|
| Pistol Slide | Pistols |
| Pistol Grip | Pistols |
| Pistol Magazine | Pistols |
| Compact Frame | Ceramic Pistol, Perico Pistol |
| Revolver Frame | Revolvers |
| Revolver Receiver | Revolvers |
| Trigger Group | Various (revolvers, shotguns, rifles, SMGs) |
| SMG Receiver | SMGs |
| SMG Barrel | SMGs |
| SMG Magazine | SMGs |
| Compact Barrel | Mini SMG, Machine Pistol, Compact Rifle |
| Folding Stock | Assault SMG |
| Rifle Upper | Rifles, Machine Guns |
| Rifle Lower | Rifles, Machine Guns |
| Rifle Barrel | Rifles, Machine Guns, Marksman Rifles |
| Rifle Handguard | Select Rifles |
| Rifle Magazine | Rifles |
| Rifle Stock | Rifles, Machine Guns, Marksman Rifles |
| Bullpup Chassis | Bullpup Rifle, Bullpup Shotgun |
| Shotgun Receiver | Shotguns |
| Shotgun Barrel | Shotguns |
| Shotgun Stock | Shotguns |
| Pump Handle | Pump Shotguns |
| Double Barrel Set | Sawed-Off, Double Barrel Shotgun |
| Sniper Receiver | Sniper Rifles |
| Sniper Barrel | Sniper Rifles |
| Sniper Magazine | Select Snipers, Marksman Rifles |
| Sniper Stock | Sniper Rifles |
| Long Scope | Heavy Snipers, Marksman Rifle Mk II |
| Drum Magazine | Machine Guns |
Item Printing
Added in v1.0.1 — this is a preview feature. Full item printing support with metadata, categories, and dedicated UI is planned for a future release.
The printer can produce non-weapon items directly, with no bench assembly required. Item prints are configured in shared/config/items.lua under Config.ItemPrints.
How It Works
Item blueprints behave like weapon blueprints and use the same printer workflow, with two key differences:
- Items are single-output — one print job produces one finished item
- Items are collected directly from the printer — the weapon bench is not involved
All standard printer mechanics apply: filament consumption, print time countdown, USB malfunction chance, level gating, XP rewards, and nozzle upgrade speed bonuses.
Collecting Items
When a print completes, the finished item is added directly to the player's inventory with no additional metadata. Items produced by the printer carry no quality grade, durability, or serial number.
NUI Behavior
The printer NUI distinguishes item blueprints from weapon blueprints visually:
- Item blueprints display a cube icon in the blueprint grid and USB picker
- Weapon blueprints display a scroll icon
When an item blueprint is selected, the NUI shows a single print button rather than a multi-part selection list.
Ghost Prop Preview
If the item entry in Config.ItemPrints includes a model value, a ghost prop preview is displayed on the printer during printing. If model is nil, the preview is silently skipped.
Level Gating and XP
Item blueprint keys can be added to Config.Progression.blueprintLevels in shared/config/progression.lua to gate access behind player level. XP is awarded on print completion using the same reward system as weapon parts.
Limitations (Preview)
- Items are single-output only — one print produces one item, no multi-part recipes
- No quality grades, durability, or custom metadata on collected items
/givewepblueprintsupports item blueprint keys for testingConfig.ItemPrintskeys must not collide withConfig.Blueprintskeys — weapon blueprints take priority if duplicated
For configuration of item entries, see Config File: shared/config/items.lua.
Printer Upgrades
Each 3D printer can be upgraded independently with five upgrade categories. Upgrades are installed by having the upgrade item in your inventory and using the upgrade interface while interacting with the printer.
Upgrade Categories
Nozzle
Reduces print time by increasing extrusion speed.
| Tier | Item | Speed Multiplier | PSU Required | Level Required |
|---|---|---|---|---|
| 0 (Stock) | - | 1.0x | - | - |
| Mk I | printer_nozzle_mk1 | 0.85x (15% faster) | None | 1 |
| Mk II | printer_nozzle_mk2 | 0.7x (30% faster) | PSU Mk I | 3 |
| Mk III | printer_nozzle_mk3 | 0.55x (45% faster) | PSU Mk II | 6 |
Storage Drive
Increases the number of blueprints a printer can hold simultaneously.
| Tier | Item | Blueprint Slots | PSU Required | Level Required |
|---|---|---|---|---|
| 0 (Stock) | - | 1 | - | - |
| Mk I | printer_storage_mk1 | 3 | None | 1 |
| Mk II | printer_storage_mk2 | 5 | PSU Mk I | 3 |
| Mk III | printer_storage_mk3 | 8 | PSU Mk II | 6 |
Cooling Fan
Reduces the chance of USB malfunction when loading blueprints.
| Tier | Item | Malfunction Reduction | PSU Required | Level Required |
|---|---|---|---|---|
| 0 (Stock) | - | 0% | - | - |
| Mk I | printer_cooling_mk1 | -10% | None | 1 |
| Mk II | printer_cooling_mk2 | -20% | None | 3 |
| Mk III | printer_cooling_mk3 | -30% | PSU Mk I | 6 |
Build Plate
Adds a quality bonus to weapons the printer's owner assembles at a bench (see Quality System).
| Tier | Item | Quality Bonus | PSU Required | Level Required |
|---|---|---|---|---|
| 0 (Stock) | - | +0% | - | - |
| Mk I | printer_buildplate_mk1 | +3% | None | 2 |
| Mk II | printer_buildplate_mk2 | +6% | PSU Mk I | 4 |
| Mk III | printer_buildplate_mk3 | +10% | PSU Mk II | 7 |
Power Supply (PSU)
Required to support higher-tier upgrades. The PSU has no direct gameplay effect but gates other upgrades.
| Tier | Item | Level Required |
|---|---|---|
| Mk I | printer_psu_mk1 | 2 |
| Mk II | printer_psu_mk2 | 5 |
PSU Dependency Chain
Higher-tier upgrades require a sufficient PSU installed first. Without the required PSU, the upgrade will fail with an error message. Plan your upgrade path:
- Install PSU Mk I (level 2) to unlock Mk II upgrades for Nozzle, Storage, and Build Plate, and Mk III for Cooling
- 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 are combined into finished weapons. Each weapon has a defined recipe specifying which parts and quantities are needed.
Assembly Process
- Use a Weapon Bench item from inventory to enter placement mode
- Place the bench and interact via ox_target
- Select a weapon recipe from the assembly menu
- The bench verifies you have all required parts in your inventory
- Parts are consumed and a crafting animation plays
- The finished weapon is added to your inventory with quality metadata
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
Weapons require different combinations of printed parts. Examples:
| Weapon | Parts Required | Craft Time |
|---|---|---|
| SNS Pistol | Slide + Grip + Magazine | 20s |
| Pistol | Slide + Grip + Magazine | 30s |
| AP Pistol | Slide + Grip + Magazine + Trigger Group | 45s |
| Assault Rifle | Upper + Lower + Barrel + Magazine + Stock | 60s |
| Heavy Sniper | Receiver + Barrel + Magazine + Stock + Long Scope | 90s |
| Combat MG | Upper + Lower + Barrel + Drum Mag + Stock + Trigger Group | 90s |
Assembly recipes are gated behind the same level requirements as blueprints — see the Progression section for the full unlock table.
Weapon Preview
During the assembly interface, a 3D model of the selected weapon is displayed on the bench with a configurable offset, giving players a preview of what they are building.
Quality System
Assembled weapons receive a quality grade that affects their durability and displayed metadata. Quality is determined by a combination of player level and build plate upgrades.
Quality Grades
| Grade | Quality Range | Level Gap |
|---|---|---|
| Poor | 20-30% | Level matches recipe requirement |
| Decent | 35-45% | 1 level above requirement |
| Standard | 50-60% | 2 levels above requirement |
| Quality | 65-75% | 3 levels above requirement |
| Superior | 80-90% | 4+ levels above requirement |
The "level gap" is the difference between your current level and the minimum level required for that weapon's assembly recipe. Building weapons well below your level produces higher quality results.
Quality Bonuses
Two bonuses are added on top of the base roll (total quality is capped at 95%):
Experience bonus — accumulated prints and assemblies grant progressive bonuses:
| Metric | Threshold | Bonus |
|---|---|---|
| Total prints | Every 50 prints | +2% quality per milestone |
| Total assemblies | Every 25 assemblies | +3% quality per milestone |
| Maximum bonus | - | +20% (capped) |
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 does not need to be near the printer.
Weapon Durability
3D-printed weapons can degrade with use and eventually break. Both degradation and the jam mechanic are independently toggleable via Config.Durability.enabled and Config.Jam.enabled.
Compatibility With Other Inventory Decay Systems
Some inventory resources (ak47_qb_inventory, qs-inventory, codem-inventory, etc.) ship their own weapon decay. Running both at once causes double-decay or nil-quality crashes. Set Config.Durability.enabled = false to hand decay over to the host inventory while keeping the jam mechanic active.
Degradation
When Config.Durability.enabled = true, each shot fired reduces durability by 0.15% (configurable via Config.Durability.degradePerShot). At 0% durability, the weapon is destroyed and removed from inventory if Config.Durability.breakAtZero is enabled.
When Config.Durability.enabled = false, no durability field is written to the printed weapon's metadata and no shot-sync events fire. The weapon never breaks from this resource.
Weapon Jams
When Config.Jam.enabled = true, the jam roll runs every shot. Two modes:
Durability mode (when Config.Durability.enabled = true) — jam chance scales with the current durability tier:
| Durability Range | Jam Chance |
|---|---|
| 80-100% | 0% |
| 60-80% | 2% |
| 40-60% | 5% |
| 20-40% | 10% |
| 0-20% | 20% |
Flat mode (when Config.Durability.enabled = false) — there is no durability to derive a tier from, so every shot rolls against Config.Jam.flatChance (default 5).
When a jam occurs, the player must perform an unjam animation lasting 3 seconds (configurable via Config.Jam.unjamTime) before the weapon can fire again.
Durability Display
When durability tracking is enabled, the weapon's inventory tooltip shows the current durability and quality grade via a display metadata table:
3D Printed - Quality (72%) | Durability: 85%When durability is disabled, the tooltip shows only the quality/grade portion since no durability number is tracked.
Progression
The progression system tracks player XP and level, gating access to weapons, upgrades, and assembly recipes.
Levels and XP
| Level | Total XP Needed | Unlocks |
|---|---|---|
| 1 | 0 | Basic Pistols & Placement |
| 2 | 200 | SMGs & Shotguns |
| 3 | 600 | Mk II Upgrades |
| 4 | 1,400 | Standard Rifles |
| 5 | 2,800 | Military Weapons |
| 6 | 5,000 | Mk III Upgrades |
| 7 | 8,500 | Sniper Rifles |
| 8 | 14,000 | Heavy Weapons & MGs |
| 9 | 22,000 | Exotic Weapons |
| 10 | 35,000 | Master Printer |
XP Rewards
XP from printing and assembling scales with the size of the job — bigger weapons give more XP:
| Action | XP Earned |
|---|---|
| Loading a USB into a printer (successful load) | 5 |
| Collecting a finished print | 15 × the part's filament cost (15–75) |
| Assembling a weapon | 30 × 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.
Bad Luck Protection
There is a 10% chance for a "bad luck" event during weapon assembly, which reduces the assembled weapon's quality by 15 percentage points (minimum 5%). Both the chance and penalty are configurable via Config.Progression.badLuckChance and Config.Progression.badLuckPenalty.
Metadata Storage
Progression data is stored in player metadata under the weaponprinting key via o-link. The data includes:
level- Current levelxp- Current XP totaltotalPrints- Lifetime print counttotalAssembled- Lifetime assembly count
Placeable Equipment
3D Printer
- Item:
3d_printer - Model: Custom
prop_3d_printer - Max per player: 3 (configurable)
- Interaction: ox_target with 1.5m distance
- Persistence: Saved to database with coordinates, rotation, routing bucket, owner, name, and metadata
Weapon Bench
- Item:
weaponbench - Model:
gr_prop_gr_bench_04b - Max per player: 2 (configurable)
- Interaction: ox_target with 1.5m distance
- Persistence: Saved to database with coordinates, rotation, routing bucket, owner, name, and metadata
Placeable Table
- Item:
placeable_table - Model:
bkr_prop_weed_table_01b - Max per player: 5 (configurable)
- Interaction: None (decoration/organization only)
- Persistence: Saved to database with coordinates, rotation, routing bucket, and owner
Ownership
When Config.RequireOwnership is true (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 in-game guide item that opens an interactive book-style NUI. It provides players with a complete reference for the weapon printing system without needing to check external documentation.
Contents
The handbook is organized into 8 two-page spreads (16 pages total):
| Spread | Left Page | Right Page |
|---|---|---|
| 1 | Foreword | Getting Started |
| 2 | Blueprints & USBs | Printing Parts |
| 3 | Weapon Parts | Shared Components |
| 4 | The Weapon Bench | Quality & Grades |
| 5 | Printer Upgrades | The PSU Problem |
| 6 | Durability & Jams | Your Reputation |
| 7 | Weapon Categories | More Weapons |
| 8 | Tips & Tricks | Final Notes |
Usage
- Use the
printer_manualitem from your inventory to open the handbook - Navigate between pages using A/D or the arrow keys
- Press ESC to close
- Item images for all parts, upgrades, and equipment are displayed inline
- The handbook is included in the
/printer_kitadmin command
Obtaining
Players can obtain the handbook through:
- The
/printer_kitadmin command (includes 1x handbook) - Direct inventory addition via admin tools
- Custom shop/vendor configuration (add
printer_manualto any shop)
Floating Labels
Players can press H (configurable, control ID 74) 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.
| Setting | Default | Description |
|---|---|---|
Config.Labels.toggleKey | 74 (H) | Key to toggle label visibility |
Config.Labels.maxDist | 5.0 | Maximum distance to see labels |
Config.Labels.heightOffset | 1.2 | Height above equipment |
Config.Labels.dataRefreshMs | 2000 | How often label data refreshes |
Safe Zones
Safe zones are configurable polygon areas where equipment placement is blocked. Define zones in Config.SafeZones as arrays of 2D points. Any attempt to place a printer, bench, or table inside a safe zone is rejected server-side.
Config.SafeZones = {
{
points = {
vec2(x1, y1),
vec2(x2, y2),
vec2(x3, y3),
vec2(x4, y4),
},
},
}