Installation Guide

Step-by-step setup for oxide-pizzajob.

Step-by-step setup for oxide-pizzajob.

Prerequisites

Required resources

ResourcePurpose
ox_libLocale, callbacks, timers, UI helpers
oxmysqlDatabase driver
o-linkFramework and system abstraction used by this resource

This resource depends on your server's o-link setup for:

  • player identity and character lookup
  • notifications
  • phone messaging for shift emails
  • money handling
  • clothing and uniform management
  • fuel level setting
  • vehicle keys
  • targeting for NPC and vehicle interactions
  • menu support when Config.menuStyle = 'menu'
  • progress bars and help text

Installation

Place the resource

Place oxide-pizzajob inside your server's resources folder.

Add startup order

Start dependencies before the job resource:

server.cfg
ensure ox_lib
ensure oxmysql
ensure o-link
ensure oxide-pizzajob

Install the SQL table

Run sql/install.sql against your database.

This creates the unified progression table used by current Oxide jobs:

sql/install.sql
CREATE TABLE IF NOT EXISTS `job_progression` (
    `char_id`            VARCHAR(60)      NOT NULL,
    `job`                VARCHAR(40)      NOT NULL,
    `level`              TINYINT          NOT NULL DEFAULT 1,
    `total_count`        INT              NOT NULL DEFAULT 0,
    `daily_streak`       INT              NOT NULL DEFAULT 0,
    `last_activity_date` DATE             NULL,
    `complaints`         TINYINT UNSIGNED NOT NULL DEFAULT 0,
    `timeout_until`      DATETIME         NULL,
    PRIMARY KEY (`char_id`, `job`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

oxide-pizzajob stores progression rows with job = 'pizza'.

Migrate old data if needed

If your server is migrating from an older Oxide pizza job install, run sql/migrate_unified_progression.sql once before moving to the unified progression table.

Review configuration

Adjust:

  • shared/config.lua
  • shared/config/job.lua
  • shared/config/levels.lua
  • shared/config/locations.lua
  • shared/config/outfits.lua
  • shared/config/tutorials.lua
  • shared/config/vehicles.lua
  • shared/config/visuals.lua

See the Configuration Reference for the full reference.

Verification

Start the server and confirm ox_lib, oxmysql, o-link, and oxide-pizzajob all load without dependency errors.
Join the server and verify the pizza shop blips appear on the map.
Walk to the counter NPC at any shop and confirm the third-eye target appears.
Clock in, confirm the delivery vehicle spawns, and pick up a batch.
Complete a test delivery and verify the timer, delivery target, and payout work.

Optional Setup

Phone messaging

The resource attempts to send service emails through o-link.phone for shift start, vehicle destruction, death or hospitalization, and the detailed clock-out summary. Make sure your o-link phone module is configured for the phone resource your server uses.

Config.shiftSummary still controls the immediate on-screen clock-out summary:

Config.shiftSummary = 'nui'   -- popup summary
Config.shiftSummary = 'text'  -- notification summary

Admin permission for builder

The pizza builder commands (/pizzacreate, /pizzavehicle, /pizzadeliv, /pizzaexport, and /pizzacancel) are admin-only and use the standard admin check.

If you run QBCore, QBX, or ESX, your existing framework admins pass automatically — no extra setup is needed.

To make someone an admin manually, add them to the admin group and grant that group the admin ace in your server.cfg:

server.cfg
add_principal identifier.license:<their-license> group.admin
add_ace group.admin admin allow

Replace <their-license> with the player's license identifier.

Uniform customization

The default outfit values in shared/config/outfits.lua are placeholders. Replace the drawable and texture values with your server's actual pizza uniform component IDs for both male and female characters before enabling uniforms.

Notes for UI developers

The packaged web/dist build is already included and referenced by the manifest. Rebuilding the UI is only necessary if you edit files under web/src.

Next Steps