Browse docs

Changelog

Full change history for Sky Mechanic Job.
Latest

Version 1.4.0

Requires sky_base 1.14.0 or newer andsky_jobs_base 1.15.0 or newer. The admin permission system has been replaced - sky_base must be updated and the three bootstrap ACEs must be added to your server.cfg before ensure sky_base, otherwise /admintuning, /migrate, /workshopcreator, /setboss, and every other admin command will deny everyone except the server console.

Highlights

  • Added an Applied Tuning section to Vehicle Diagnostics App so mechanics can see and set installed tuning back to stock and receive configured install items back.
  • Tuning removal now uses the same install workflows as tuning installs, including wheel, brake, suspension, and simple checklist flows.
  • Added optional workshop-location enforcement for tuning installs and removals through Config.TuningWorkshopRequirement.
  • Added synced stance state so stance changes are visible to nearby players without them entering the vehicle.

Notable Changes

  • Command permissions now use sky_base ACE auto-wiring through Config.CommandPermissions, including the Workshop Creator permission.
  • Parts theft configuration was consolidated into Config.PartsTheft, including lug wrench item settings, stolen wheel item settings, and stolen parts dealer settings.
  • Instant tuning points can now force marker interaction through Config.InstantTuning.forceMarkerInteraction.
  • Vehicle lookup now includes a fallback for police vehicles, fixing car jack, wheel, nitro, and catalytic converter interactions on some vehicle classes.
  • Saved vehicle properties no longer re-apply persisted dirt level when vehicles are entered or tuning data is loaded.
  • Nitro HUD, order item images, and stolen parts dealer images now use the configured NUI item image base from sky_jobs_base.

Other Changes

  • Added Swedish translations.
  • Improved applied tuning loading for diagnostics.
  • Improved stance sync performance.

Version 1.3.0

Before updating, make sure sky_base and sky_jobs_base is up to date.

Highlights

  • Refactored custom handling tuning so saved presets apply more reliably and no longer stack repeatedly on normal vehicle entry.
  • Persisted tuning is now applied when vehicles spawn, so vehicles can receive saved tuning before the player enters them.
  • Added lower-game-build electric vehicle support through Config.ElectricVehicleFallback.models.

Notable Changes

  • Added Config.CustomHandlingOptions.overwriteHandling for servers that use another handling editor which resets vehicle handling on every entry.
  • Custom handling now stores selected profiles instead of raw handling snapshots, making it safer with external handling resources.
  • Added support for fInitialDragCoeff and nInitialDriveGears in custom handling presets.
  • Instant tuning prices now use Config.InstantTuning.priceMultiplier.
  • Performance tuning menus now respect the configured maximum upgrade stage from Config.TuningCostProfile.
  • The tuning UI now receives explicit allowed values for limited upgrade stages instead of assuming every value between min and max is available.
  • Stance suspension height is now re-applied during stance runtime.

Other Changes

  • Fixed custom handling baseline capture before saved tuning is applied.
  • Fixed wheel damage and wheel theft detach handling so stolen wheels keep theft-specific brick behavior.

Version 1.2.0

Before updating, make sure sky_base and sky_jobs_base is up to date.

Highlights

  • Added Vehicle Part Theft as a new criminal gameplay loop where catalytic converters and wheels can be stolen, sold, and repaired.
  • Added the stolen parts dealer interaction and UI so stolen wheels and catalytic converters can be sold to configured NPC dealers.
  • Added realistic theft consequences: stolen catalytic converters change vehicle sound and create smoke, while stolen wheels leave vehicles sitting on bricks.

Notable Changes

  • Added lug wrench theft selection so players can choose whether to steal a wheel or catalytic converter.
  • Added realistic catalytic converter removal and installation minigames using a jack, bolt interaction, and guided checklist flow.
  • Added wheel theft support using the existing wheel workflow, synced missing-wheel state, and inventory rewards.
  • Mechanics can repair stolen parts through diagnostics by replacing catalytic converters or missing wheels.
  • Added electric vehicle wear support for traction batteries and power inverters, including diagnostics labels and repair flows.
  • Tuning options can now be disabled individually and can define their own required install items directly in Config.TuningCostProfile.
  • Added Config.TuningCostProfile.freeVehicles for vehicles that should create free tuning orders.
  • Vehicle purchase price lookup is now configurable through Config.Functions.GetVehiclePurchasePrice.

Other Changes

  • Fixed vehicle paint saving and engine health restoration after re-entering vehicles.
  • Disabled stance support for motorbikes.
  • Self service tuning now always uses a marker instead of target.
  • Added lug_wrench.png, catalytic_converter.png, traction_battery.png, inverter.png, antilag_kit.png, and nitro_kit.png inventory images.
  • Added English, German, and French locale keys for part theft, catalytic converter work, wheel theft, stolen parts dealer, and electric vehicle wear parts.

Version 1.1.0

Before updating, make sure sky_base and sky_jobs_base is up to date.

Highlights

  • Added configurable instant tuning locations that can apply tuning directly without creating a workshop order.
  • Added tuning order refund and completed-order delete actions in the mechanic tablet.
  • Added a fix_kit usable item workflow for repairing nearby vehicles, including realistic wheel damage repair support.

Notable Changes

  • Tuning prices can now use percentage-based or fixed money values through Config.TuningCostProfile.priceType.
  • Tuning cost config keys were standardized from percentage-specific names to generic cost fields.
  • The mechanic tablet now shows order status and payment method, and supports refunded order state.
  • Currency display is now configurable through locale files.
  • Custom handling tuning options now save correctly and show as applied in the tuning menu.
  • Fix kit repairs can reset realistic wheel damage when Config.VehicleCare.repair.fixRealisticWheelDamage is enabled.

Other Changes

  • Added fix_kit.png inventory image.
  • Added society_job, refunded_at, refunded_by_identifier, and refunded_by_name columns to sky_mechanic_tuning_orders.
  • Added English, German, and French locale keys for instant tuning, order refunds, order deletion, fix kit, and configurable currency symbols.
  • Updated French translations.
  • Fixed wheel damage repair behavior when using the fix kit.

Version 1.0.0

Before updating, make sure sky_base and sky_jobs_base is up to date.

Highlights

  • Added a realistic wheel damage system with synced wheel damage state, popped tyres, detached wheels, and handling penalties.
  • Added damaged-wheel repair support through the vehicle diagnostics repair flow.
  • Improved workshop car lift synchronization so raised vehicles and lift attachments stay consistent for other players.

Notable Changes

  • Wheel damage now reacts to collisions and hard landings, with configurable multipliers per vehicle class and off-road wheel type.
  • Wheel damage is synchronized through vehicle state bags and can be reset by mechanic repair actions.
  • Only one wheel can detach from a vehicle at a time to reduce vehicle physics issues.
  • Wheel damage runtime performance was improved and the default config was cleaned up.
  • Sponge and wax inventory item images were added for the vehicle care items introduced in the previous update.
  • Fixed lift vehicle sync and duplicate lift prop issues.

Other Changes

  • Added source/client/wheel_damage.lua and source/server/wheel_damage.lua.
  • Added source/server/lift.lua.
  • Added Config.WheelDamage.
  • Updated the diagnostics tablet flow for damaged wheel repairs.
  • Added wash_sponge.png and vehicle_wax.png inventory images.

Version 0.6.0

Before updating, make sure sky_base and sky_jobs_base is up to date.

Highlights

  • Added vehicle wash and vehicle wax usable-item workflows, including dedicated wash/wax items, animations, particle effects, and a vehicle-care minigame.
  • Added realistic wheel-based brake and suspension install flows so brake and suspension work now uses jack, wheel detach, component install, wheel attach, and jack removal steps.
  • Added a configurable install duration and an on-screen progress bar for non-minigame install actions.

Notable Changes

  • Vehicle wax now keeps a clean vehicle clean for a configurable mileage window through Config.VehicleCare.wax.cleanKilometers.
  • Wash and wax items are now available in the mechanic shop and Parts Shop delivery catalog.
  • Brake pad and suspension wear repairs now use the wheel workflow instead of a simple repair flow.
  • Improved mechanic animations for under-hood repairs, engine swaps, oil draining, oil pouring, and underbody installs.
  • Added storage, locker, and trunk background images for the mechanic UI.
  • Fuel level is no longer overwritten when saving or restoring mechanic vehicle properties.

Other Changes

  • Added source/client/vehicle_care.lua and source/server/vehicle_care.lua.
  • Added Config.OrderInstall.nonMinigameDurationMs.
  • Added Config.VehicleCare for wash and wax item configuration.
  • Added English, German, and French translation keys for vehicle care and the new wheel checklist steps.
  • Fixed repaint workflow particle effects.
  • Updated the wheel attach minigame so brake and suspension workflows can reattach the existing wheel.

Version 0.5.0

Before updating, make sure sky_base and sky_jobs_base is up to date.

Highlights

  • Added the Parts Shop tablet app for mechanic part orders, including catalog browsing, category filters, basket checkout, own-card and company-card payment, and order history.
  • Added Parts Delivery points for Workshop Creator so ordered parts arrive as physical delivery boxes at configured workshop locations.
  • Added tablet push notifications when part deliveries are ready to collect.

Notable Changes

  • Parts purchases can now be logged in the boss menu, including order UID, price, and ordered item summary.
  • Parts deliveries now support delivery ETA, pending/ready/claimed status tracking, claim history, and ready-delivery lookup by delivery point.
  • Delivery box props now scale by order size so larger orders use larger box piles.
  • Company-card checkout now uses the PURCHASE_SUPPLIES job permission and validates company balance before placing an order.
  • The Parts Shop app now reopens correctly after closing the tablet, and app permission routing was fixed.
  • Tuning freecam now blocks player controls while keeping camera look controls available.
  • Wheel lug nut indicators are easier to see in the wheel detach minigame.

Other Changes

  • Added the sky_mechanic_part_deliveries database table and automatic migration support.
  • Added English translation keys for Parts Shop, Parts Delivery, checkout errors, order history, and delivery notifications.
  • Fixed order history timestamps.
  • Improved delivery interaction logic.
  • Refined Parts Shop navbar, color theming, and overall design.

Version 0.4.0

Before updating, make sure sky_base and sky_jobs_base is up to date.

Highlights

  • Added synced custom xenon colors across players, including re-application when vehicles stream in or players join.
  • Added German and French translations.
  • Added a tuning menu reset button for stancing so vehicles can be restored to default stance values directly from the UI.

Notable Changes

  • Improved stancing persistence when leaving and re-entering vehicles, including wheel size, wheel width, camber, track width, suspension height, and wheel rotation values.
  • Improved performance for nitro, anti-lag, two-step, RGB effects, vehicle wear, and general in-vehicle idle loops.
  • Nitro now uses keymapping support through Config.Nitro.activationKey, with separate timing controls for active ticks, input checks, local effects, and remote effects.
  • Engine hoist props created through the Workshop Creator now spawn and sync more reliably from configured placement points.
  • Fixed unwanted neon installs during the order workflow.

Other Changes

  • Fixed stance reset behavior in the tuning menu.
  • Fixed engine hoist placement in the Workshop Creator flow.
  • Cleaned up stancing and nitro runtime logic for better maintainability.
  • Updated two-step default flame scale values.

Version 0.3.0

Before updating, make sure sky_base and sky_jobs_base is up to date.

Highlights

  • Added paid tuning revenue deposits into the mechanic society account through Config.TuningCostProfile.addRevenueToSociety.
  • Added a dedicated vehicle_lights item for light installations, including the item image and tablet/localization labels.
  • Neon, drivetrain, and suspension installs now use the workshop lift flow so mechanics must work below the raised vehicle.
  • Added client and server mileage exports via GetVehicleMileage.

Notable Changes

  • Default tuning install items are now consumed after use through Config.OrderRequiredItems.*.removeAfterUse = true.
  • Neon installation pricing is now included in the tuning cost profile.
  • Mileage HUD design has been refreshed for a more realistic in-vehicle look.
  • Vehicle plate labels now resolve correctly in mechanic state and interaction flows.
  • Shared tuning database helper logic was centralized to reduce duplicate server code.

Other Changes

  • Fixed a database migration primary-key error for vehicle profiles.
  • Fixed fxmanifest warnings.
  • Fixed a tablet navigation issue that could leave players stuck in the tablet.
  • Removed the unused NPC mechanic example from the default config.

Version 0.2.0

Before updating, make sure sky_base and sky_jobs_base is up to date.

Highlights

  • Added the Vehicles App to the mechanic tablet with searchable, paginated vehicle records, linked tuning orders, service history, tags, notes, and gallery image assignment.
  • Added automatic database migration support through Config.AutoExecuteQuery.
  • Added /migrate command for importing tuning data from previous mechanic scripts such as jg-mechanic.

Notable Changes

  • Vehicle history is now logged for order installs, nitro installs/refills, and wear repairs, including used items, mechanic details, duty state, and action metadata.
  • Tuning orders can now link back into the Vehicles App, and vehicle records only list vehicles that have mechanic orders.
  • Tablet apps now reopen and close more reliably, including direct order selection from linked vehicle records.
  • Self-service tuning now supports multiple placement points and requires the player to be the driver.
  • Added optional off-duty job configuration per mechanic job.
  • Xenon color changes now calculate order pricing correctly.

Other Changes

  • Added sky_mechanic_vehicle_profiles and sky_mechanic_vehicle_history database tables.
  • Added /migrate command permission.
  • Added Config.Interactions.self_service_tuning.unique.
  • Removed the example cardealer job from the default config.
  • Improved wear database readiness handling by moving schema setup into the shared mechanic migration flow.

Version 0.1.0

Highlights

  • Initial release of Sky Mechanic Job.
  • Added full workshop-based tuning flow with creator placement support through sky_jobs_base.
  • Added persistent tuning, tuning orders, mileage tracking, and vehicle wear.

Notable Changes

  • Added self-service tuning and mechanic workshop interactions.
  • Added engine swaps, repaint flow, wheel changes, workshop lifts, and engine hoists.
  • Added nitro, anti-lag, two-step, RGB controller support, and custom handling options.
  • Added persistent storage of tuning data in sky_mechanic_vehicle_tuning.
  • Added tuning order persistence in sky_mechanic_tuning_orders.

Other Changes

  • Added admin tools: /admintuning, /debugwearzero, /debugwearzeroall, and /workshopcreator.