Installation Guide
Current setup instructions for oxide-meth using ox_lib, oxmysql, and o-link.
Setup guide for the current oxide-meth resource.
Prerequisites
Required resources
| Resource | Purpose |
|---|---|
ox_lib | Locale, callbacks, and UI helpers |
oxmysql | Database access |
o-link | Framework abstraction used for lifecycle, character identity, inventory, notifications, targeting, and usable items |
o-link expectations
This resource depends on your o-link setup for:
- player-ready and player-unload lifecycle events
- character identifier lookup
- usable item registration
- inventory reads, writes, and image-path lookup
- notifications
- local entity targeting
- callback transport through
olink.callback
Installation Steps
1. Place the resource
Place oxide-meth inside your server's resources folder.
2. Add startup order
Start dependencies before the resource:
ensure ox_lib
ensure oxmysql
ensure o-link
ensure oxide-meth
If your framework or inventory is consumed by o-link, ensure those resources start before o-link.
3. Install the SQL tables
Run sql/install.sql against your database.
The install creates:
| Table | Purpose |
|---|---|
drugs_progression | Shared drug progression rows; oxide-meth stores drug = 'meth' |
drug_equipment | Shared placed-equipment state for meth tables and crystallizers |
meth_drying_slots | Persistent crystallizer slot state and tray metadata |
4. Register items
Register these item names in the inventory system behind your o-link.inventory adapter.
Equipment
| Item | Label |
|---|---|
meth_table | Meth Table |
meth_crystallizer | Meth Crystallizer |
gas_mask | Gas Mask |
meth_manual | Cooking Manual |
Base ingredients
| Item | Label |
|---|---|
hydrogen_peroxide | Hydrogen Peroxide |
ammonia | Ammonia |
hydrochloric_acid | Hydrochloric Acid |
sodium_benzoate | Sodium Benzoate |
Additives
| Item | Label |
|---|---|
magnesium_oxide | Magnesium Oxide |
pain_killer | Pain Killer |
hazardous_waste | Hazardous Waste |
vanilla_unicorn_pills | Vanilla Unicorn Pills |
lax_to_the_max | Lax to the Max |
cannabis_leaf | Cannabis Leaf |
cough_syrup | Cough Syrup |
adrenaline | Adrenaline |
toluene | Toluene |
acetone | Acetone |
Production chain
| Item | Label |
|---|---|
liquid_meth_tray | Liquid Meth Tray |
crystallized_meth_tray | Crystallized Meth Tray |
baggy | Baggy |
crystal_meth | Crystal Meth |
meth_baggy | Meth Baggy |
Variant shards
| Item | Label |
|---|---|
crystal_meth_glass | Crystal Meth (Glass) |
crystal_meth_blue_sky | Crystal Meth (Blue Sky) |
crystal_meth_purple_haze | Crystal Meth (Purple Haze) |
crystal_meth_lean_crystal | Crystal Meth (Lean Crystal) |
crystal_meth_green_rush | Crystal Meth (Green Rush) |
crystal_meth_dirty_sprite | Crystal Meth (Dirty Sprite) |
crystal_meth_street_mix | Crystal Meth (Street Mix) |
crystal_meth_rocket_fuel | Crystal Meth (Rocket Fuel) |
crystal_meth_club_special | Crystal Meth (Club Special) |
crystal_meth_ice | Crystal Meth (Ice) |
Variant baggies
| Item | Label |
|---|---|
meth_baggy_glass | Meth Baggy (Glass) |
meth_baggy_blue_sky | Meth Baggy (Blue Sky) |
meth_baggy_purple_haze | Meth Baggy (Purple Haze) |
meth_baggy_lean_crystal | Meth Baggy (Lean Crystal) |
meth_baggy_green_rush | Meth Baggy (Green Rush) |
meth_baggy_dirty_sprite | Meth Baggy (Dirty Sprite) |
meth_baggy_street_mix | Meth Baggy (Street Mix) |
meth_baggy_rocket_fuel | Meth Baggy (Rocket Fuel) |
meth_baggy_club_special | Meth Baggy (Club Special) |
meth_baggy_ice | Meth Baggy (Ice) |
5. Add item definitions in your inventory
Add the item names above using the format required by the inventory resource that your o-link.inventory integration points to.
Minimum examples:
['meth_table'] = {
label = 'Meth Table',
weight = 7000,
},
['meth_crystallizer'] = {
label = 'Meth Crystallizer',
weight = 5000,
},
['crystal_meth'] = {
label = 'Crystal Meth',
weight = 100,
},
Notes:
baggyandcannabis_leafmay already exist if you also runoxide-weed.- Keep image filenames aligned with the files copied from the packaged
items/folder. - All variant shard and bag items must be registered exactly or later pipeline stages will fail.
6. Copy item images
Copy the .png files from the packaged items/ folder into the image directory used by the inventory resource behind o-link.inventory.
Common locations:
qb-inventory/html/images/ox_inventory/web/images/
7. Review configuration
Adjust these files to fit your server:
shared/config.luashared/config/items.luashared/config/additives.luashared/config/equipment.luashared/config/progression.luashared/config/usage.lua
Verification
- Start the server and confirm
ox_lib,oxmysql,o-link, andoxide-methload without dependency errors. - Use
/methkitto get a quick local test setup. - Place a meth table and a crystallizer.
- Confirm cooking, tray placement, breaking, and bagging open the expected UIs.
- Confirm bagged meth can be used and triggers its effects flow.
- Confirm
/methstatsshows progression data.
Notes
- Variant outputs are generated from the current additive and variant config, so keep item names exact.
oxide-methdoes not talk directly to framework or inventory resources. Those integrations are expected to be handled byo-link.- The packaged
web/distbuild is already included. Rebuild the UI only if you edit files underweb/src.