v1.0.9

Fixes & Improvements

  • Hunting coop sync overhaul (kill broadcast to all, owner reconciliation thread, wild-kill reconstruction, race-safe carcass interaction)

  • Tiretechnician helper flow + jack desync fixes (sticky phase merge, ghost collision on lift/lower, authoritative jack delete)

  • Cardetailer customer cars now networked (visible to passers-by) + cross-lobby location reservation

  • Cardetailer "Cars Detailed" no longer double-counts wash+polish on the same car

  • StartPolish recovers from stale break-session flags (death/disconnect/leave mid-polish)

  • Polish points randomized per-car with per-model excludes (no more identical stain layouts)

  • Diving anti-dupe: items + per-player totals locked at boat-arrival (drop-then-repickup exploit closed)

  • Diving/Treasurehunter scuba leak fixed (re-attach thread guard, hard-cleanup on resource stop, oxygen pinned during interactions)

  • Treasurehunter boat-full guard on dig / open / pickup

  • Server-side networked vehicle spawn race fixed (3× retry with growing waits — affects all 24 jobs)

  • Carry component: SafeDeleteCarriedEntity (network control wait + last-resort hide), networked carry props

  • Continue/round-restart cleanup: stale ticks no longer linger on the progress panel after Continue

  • Lumberjack/Miner/Scrapyard onContinue preserves uncut entities (no more silent "no prompt" after continue)

  • PayoutAccumulatedPay pays BEFORE zeroing the ledger (no lost money on race)

  • Quality system: global defaults now apply when a job omits its own override

  • Job vehicle freeze leak on finish-cam fixed (warehouse/trucker permanent-frozen bug)

  • Lobby invite: clear "player data not loaded" notification instead of silent fail

  • GetName (QB) nil-safe against missing PlayerData/charinfo

  • Dogwalking distance race fixed (rate-limit bypass on completing flush, instant gap close)

New

  • Universal continue guidance hint on every job ("Head to the next task on your map")

  • Step-by-step progress panel for miner/lumberjack/scrapyard/hunting/farmer/fruitpicker (live next-step hint, 750ms refresh)

  • Hunting owner-driven kill reconciliation thread (catches kills missed by local detection)

  • Tiretechnician NPC drive-away after final repair (with road-node target + 250m/90s despawn watchdog)

  • Newspaper random delivery pickerlocationPool + totalTasks{min,max} per area; optional timeWindow gate

  • Cardetailer polish point pool (10 shared points, server picks N per car) + per-model excludes

  • Diving sellMode default flipped to "auto" + manual-mode "sell at NPC" reminder

  • Diving/Treasurehunter surface refill notifications + refill time 5s → 12s

  • Hunting blip toggles (showAliveAnimals / showCarcasses) + 6 vehicle spawn locations

  • Polish placer dev tool

Changed Files

  • Client: components/{carry, collect_interaction, decal_job, harvest_job, job_lifecycle, job_progress, processing_system, repair_job}.lua, all 24 job files, main.lua, utility.lua

  • Server: components/{collectable_callbacks, harvest_job_server, job_utils, vehicle_manager}.lua, jobs/{cardetailer, diving, dogwalking, hunting, newspaper, tiretechnician, treasurehunter}.lua, lobby.lua, utility.lua

  • Shared: config.lua, jobs/{cardetailer, diving, hunting, landscaping, lumberjack, newspaper, treasurehunter}.lua

  • Locales: 11 languages, html/js/app.js, fxmanifest.lua

Last updated