You are viewing a potentially older version of this package. View all versions.
hdlmrell-OverTheCounter-2.0.9 icon

OverTheCounter

Build your dream dispensary empire with the OverTheCounter mod! Design fully custom storefronts, hire budtenders for autonomous checkouts, and watch live customer NPCs walk in to consult and buy. Manage it all seamlessly from an in-game phone app!

Date uploaded 3 months ago
Version 2.0.9
Download link hdlmrell-OverTheCounter-2.0.9.zip
Downloads 719
Dependency string hdlmrell-OverTheCounter-2.0.9

This mod requires the following mods to function

LavaGang-MelonLoader-0.7.2 icon
LavaGang-MelonLoader

The World's First Universal Mod Loader for Unity Games compatible with both Il2Cpp and Mono

Preferred version: 0.7.2
ifBars-S1API_Forked-3.0.3 icon
ifBars-S1API_Forked

S1API is an open source collaboration project to help standardize Schedule One modding processes.The goal is to provide a standard place for common functionalities so you can focus on making content versus reverse engineering the game.

Preferred version: 3.0.3
ifBars-SteamNetworkLib_Il2Cpp-1.2.4 icon
ifBars-SteamNetworkLib_Il2Cpp

A streamlined, object-oriented Steam networking library designed specifically for Schedule 1 mods.

Preferred version: 1.2.4
ifBars-SteamNetworkLib_Mono-1.2.4 icon
ifBars-SteamNetworkLib_Mono

A streamlined, object-oriented Steam networking library designed specifically for Schedule 1 mods.

Preferred version: 1.2.4
hdlmrell-OTCLoader-1.0.5 icon
hdlmrell-OTCLoader

MelonLoader plugin that auto-detects your game branch (IL2CPP or Mono) and disables incompatible mod DLLs before they crash. Works for all mods, not just OverTheCounter.

Preferred version: 1.0.5
k0Mods-ModsApp-1.2.1 icon
k0Mods-ModsApp

Manage your mods settings - from your phone!

Preferred version: 1.2.1
hdlmrell-MeshVault-1.0.9 icon
hdlmrell-MeshVault

Shared mesh database plugin for Schedule I mods. Provides a public API for loading, spawning, and managing mesh entries from a JSON database.

Preferred version: 1.0.9
ifBars-S1MAPI-2.0.0 icon
ifBars-S1MAPI

S1MAPI is a mapping and construction library for Schedule 1 mods. Create procedural meshes, build structures, and load GLTF assets without depending on game assemblies.

Preferred version: 2.0.0

README

OverTheCounter for Schedule I

OverTheCounter is now a dispensary simulation mod packed with other additions. Build and run your own storefronts where customer NPCs physically walk in, consult with a budtender, and buy product at the counter. Hire budtenders to handle checkout autonomously, customize your interiors, and manage everything from a phone app. Stack it with the existing Manager automation, Smart Fill logistics, and dynamic world events for a full empire.

DUAL BUILD: This mod ships both OverTheCounter.Il2Cpp.dll and OverTheCounter.Mono.dll. Install OTC Loader (optional, recommended) to automatically detect your game branch and load the correct DLL. If installing manually without the loader, only copy the DLL that matches your game branch. See instructions below.

Features

1. Dispensaries

Build your storefronts for customers.

Three new buildings you can purchase, furnish, and operate:

  • Westville Shack is a small, cheap starter dispensary that gets you in the game.
  • Big Dispensary is the next step up, with more floor space, more counters, and higher customer capacity.
  • Supplier Warehouse is a black market warehouse with supplier delivery bays and bulk storage.

Purchase properties through an encrypted messaging thread with Static, a completely rewritten quest system built on threaded conversations with unread tracking and property listing cards.

  • Walk-In Customers: Random customers visit your store throughout the day (3-24 per day, scaling with your rank). Vanilla deal NPCs are also redirected to your store when you have matching stock. NPCs physically enter through the front door, consult with a budtender, pick products based on their preferences, queue at checkout counters, and pay.
  • Preserve Vanilla Deals (opt-in): Prefer keeping the vanilla deal flow? Enable this setting and vanilla NPCs keep their normal behavior. A configurable percentage of those deals also spawn a random walk-in customer at your store.
  • Unit-Based Orders: Preferences factor in product type, quality, and effects. Purchase volume scales with your rank and relationship.
  • Region-Locked Traffic: Customer flow is gated by the regions you control, with daily caps to keep things balanced.
  • Dispensary Signage: Rename your dispensary and customize the sign color from the GreenTab app.
  • Interior Placement: Full placement grid system for furnishing your buildings with storage, shelves, and equipment.
  • Weather Protection: Rain visuals, audio, and NPC umbrellas are suppressed inside your buildings.
  • Guided Quests: Each building has its own progressive questline. See Storefront Quests below.

2. Budtenders

Hire employees. Automate checkout.

  • Autonomous Checkout: Budtenders consult with customers, fetch the products customers want, return to the counter, and complete the sale.
  • Per-Counter Staffing: Assign budtenders to specific checkout counters from the GreenTab POS app.
  • Store Alerts: Get notified when a customer is queued at a register without a cashier.
  • Daily Wages: Budtenders cost $200/day, visible in the GreenTab employees widget.

3. GreenTab POS App

Your dispensary management hub, right on your phone.

A dedicated phone app for running your storefronts:

  • Overview Dashboard: 7-day sales revenue and inventory charts, daily wage totals, property summary cards, and store diagnostic warnings.
  • Auto-Pricing: Set per-product pricing from the inventory tab. Prices sync in multiplayer and persist across saves.
  • Sales Log: Every transaction grouped by checkout, with customer name, products, subtotal, tip, and total. Filter by property.
  • Employees Tab: Monitor budtenders, view daily wages, and current status.
  • Customization: Swap desk styles, wall finishes, floor materials, and lighting setups. All furniture/building customizations loaded through the S1MAPI and the MeshVault system.
  • Per-Property Filter: Dropdown to view stats and customize any owned building.

4. Storefront Quests

A guided path from empty building to running business.

Each building has its own progressive questline that walks you through setup: acquire the property, stock your shelves with packaged product, install lighting, hire your first budtender, and complete your first sale. The dispensary expansion quest adds guided pricing stages and a tutorial customer to get you started.

5. The Manager Update (Endgame Automation)

Stop running errands. Start running an empire.

A complete, simulation-based automation system built on S1API for maximum compatibility (works seamlessly alongside k0Mods).

  • True Logistics: Hire physical Manager NPCs at your Laundromat, Post Office, Car Wash, or Taco Ticklers.
  • Supply Routes: Managers automatically physically visit stores to keep your shelves stocked with essential ingredients (fertilizer, chemicals, etc.).
  • Distribution Routes: Assign up to 3 custom logic routes per manager. They move product between storage containers or to and from dead drop locations, allowing you to chain logistics across the map.
  • Manager Upgrades: Purchase walk speed and carry capacity tiers from the manager detail page. Faster managers = more runs per day. Higher capacity = fewer trips per route.
  • The Cost of Business: Managers cost $350/day (paid from their locker's petty cash) and report their status via a daily summary text.
  • Cascading Pathfinding: Managers use a multi-stage walk fallback chain, reducing teleports when NavMesh pathfinding fails.
  • "Executive Privilege" Quest: A new endgame questline. Prove your worth to the Night Market Boss by crafting high-value Weed ($105+), Meth ($200+), and Cocaine ($400+) mixes. Success unlocks 24/7 Night Market access for your automation network.

6. Smart Logistics UI (Quality of Life)

No more mental math. No more clicking back and forth.

  • Recipe Pin Overlay: Pin any product from the Product Manager app to see its full mixing chain on screen, showing every ingredient and step at a glance while you work.
  • The Contract Aggregator: Merges all active orders into a single "Pending Deliveries" list, grouped by time window.
  • Smart Fill (Storage): Open any container to see a live manifest of what you need vs. what you have. One click pulls the exact product into your inventory, prioritizing jars over baggies. If Pack Rat (Nexus) is installed, backpack items count toward your totals and a Fill Backpack First toggle controls placement priority.
  • Smart Fill (Handover): During a contract handover, click once to fill the bare minimum (quality-aware, smallest packaging first). Click again to boost until acceptance hits 95%+. If Pack Rat is installed, the backpack is checked as a fallback source.
  • Stack Size Multiplier: Configurable scaling for item stacks, manager thresholds, and supply picker quantities.

7. Dynamic World Events

The city feels alive, and the market is volatile.

  • The "Desperation" System: Breaks the "wait for night" meta.
    • Daytime Rush: High-addiction "Fiends" trigger urgent orders between 08:00 and Curfew.
    • High Risk/High Reward: Strict 2-hour deadlines with a +45% payout bonus. Missing the deadline boosts the Cartel's reputation, not yours.
  • Drifter Encounters: Random NPCs spawn throughout the city offering one-time deals via text.
    • The Risks: Encounter Whales (bulk buyers), Robbers (ambushes), or Narcs (police stings).
    • Scaling: Spawn rates increase as you unlock more regions.
  • Graffiti Re-Edit: Re-edit placed graffiti while preserving your spray cans, with a config toggle to enable/disable.

8. HUD & Minimap

Information where you need it.

  • HUD Overlay: Health, Stamina, and XP bars displayed above the hotbar with floating +/- indicators for damage, healing, and XP gains. Configurable show/hide toggles.
  • Map Overlay: Custom building footprints rendered on both the phone map and the minimap.
  • Customizable Minimap (opt-in): Turned off by default. Choose circular or square, adjust size, free-form positioning with X/Y sliders, compass labels, off-screen POI arrows, icon filtering, and a zoom cycle hotkey (Default: N).

9. Progression & Economy

You have to earn your tools.

  • Rewritten Static Questline: The entire Static quest flow has been rebuilt around a threaded messaging system with encrypted conversations, property purchase cards, and a dead drop network.
  • "OverTheCounter" (OTC) App: A dedicated phone app for managing your operations, automation network, and customer intel, locked behind a paygate until Static sells you access.
    • Customers Tab: Your full customer searchable roster as a mugshot grid. Click any card for relationship health, addiction level, preferred effects, connections, and weekly purchase history. Regions unlock progressively.
    • Employees Tab: Monitor your workforce. View current status, daily wage, locker balance, and carried inventory. Filter by type or group by property. Click any employee for detail view with minimap tracking. If HireMe (Nexus) is installed, a Hire / Transfer button appears.
    • Managers Tab: Full visibility into your Manager NPC network. View active supply and distribution routes, read daily activity logs, and track each manager on the minimap.
    • SaaS Model: Purchase software tiers ($1.5k to $12k) to expand customer region access and unlock features like GPS customer tracking.
    • Subscription: Failure to pay the $1,000/week server fee disables the app until renewed with Static at the Casino.
  • Early Game Laundering:
    • Meet Vic: A corrupt associate who offers manual cash laundering once you hit the $10k weekly ATM limit.
    • Risk vs. Reward: Pay a 17-20% fee to clean dirty cash early, bridging the gap between street dealing and owning legitimate businesses.

Multiplayer Support

Built from the ground up for co-op.

  • Host-Authoritative: Quest progress, Manager routes, dispensary state, budtender staffing, and OTC subscriptions sync between host and clients.
  • P2P Networking: Direct Steam relay messaging for latency-sensitive operations like checkout locking.

Requirements & Installation

Dependency Checker: If any required mod is missing, OverTheCounter shows a popup on the main menu telling you exactly what's needed and where to install it.

IL2CPP vs. Mono: Schedule I runs on two different Unity backends. Most players are on IL2CPP (the Steam default). Mods built for one backend are incompatible with the other and will crash MelonLoader if loaded together. OTC Loader (optional, recommended) automatically detects which version you're running and disables any incompatible mod DLLs across your entire mod list.

Using a mod manager (recommended)

Install OverTheCounter from Thunderstore using r2modman, Vortex, or Gale. When prompted to install dependencies, click Yes. The mod manager will download and configure everything for you, including:

  • S1API for the modding API layer
  • S1MAPI Thunderstore/Nexus for building interior navigation and NavMesh construction
  • MeshVault Thunderstore/Nexus for the furniture and mesh loading system
  • OTC Loader (optional, recommended) to automatically detect your game branch (IL2CPP or Mono) and disable incompatible DLLs
  • SteamNetworkLib for multiplayer sync (single-player works fine without it, but there's no harm in having it installed)

Launch the game. That's it.

Manual installation

If you prefer not to use a mod manager, you'll need to install each dependency yourself.

  1. Install MelonLoader v0.7.0.
  2. Install S1API (ifBars fork) from Nexus or Thunderstore. This is the modding API layer. Make sure to pick the version matching your game branch (IL2CPP or Mono).
  3. Install S1MAPI from Nexus or Thunderstore for building interior navigation. Place the DLL matching your game branch in your UserLibs folder.
  4. Install MeshVault from Nexus or Thunderstore for the furniture mesh system. Place the DLL matching your game branch in your Mods folder.
  5. Multiplayer Only - Install SteamNetworkLib from Nexus or Thunderstore [il2cpp/mono] for multiplayer sync. Pick the version matching your game branch.
  6. Download the latest OverTheCounter release. It includes two files:
    • OverTheCounter.Il2Cpp.dll for the IL2CPP branch
    • OverTheCounter.Mono.dll for the Mono branch
  7. Copy only the DLL that matches your game branch into your Mods folder. Do not install both. Loading the wrong-branch DLL will crash MelonLoader.
  8. (Optional, recommended) Install OTC Loader separately. It automatically disables wrong-branch DLLs for all mods. See the dedicated section below.
  9. Launch the game. If anything is missing, the dependency checker popup will tell you what and where.

Bug Reports & Roadmap

Configuration

Settings are stored in MelonLoader's config file and organized into the following categories:

  • Desperation System: Enable/disable toggle, fiend addiction threshold, trigger chance per hour, max daily events, response/delivery deadlines, bonus multiplier, relationship penalty, cooldown, and active hours.
  • Vic Laundering: Tier costs, returns, trust unlock threshold, deposit trigger amount, and intro quest requirements.
  • Static Subscription: Weekly billing cost, cycle length, and tier upgrade costs/requirements.
  • Contract Notifications: Enable/disable toggle, consolidation threshold (minimum contracts before grouping kicks in).
  • Manager System: Daily wage, signing fee, and alternate hire mode toggle.
  • Bella Protocol: Minimum weed, meth, and cocaine mix value thresholds for the quest.
  • Drifter System: Enable/disable toggle, spawn chance per hour, max active drifters, active hours, offer window, delivery deadline, linger duration, and minimum deal value.
  • World: Stack size multiplier, graffiti re-edit toggle, recipe pin toggle, shack daily customer cap, preserve vanilla deals toggle, and mirror spawn rate.
  • HUD Overlay: Show/hide toggles for XP bar, health bar, stamina bar, and store checkout alerts.
  • Minimap: Enable/disable toggle (off by default), size, zoom level, toggle key (default: N), X/Y position offsets, circle/square shape, rotate-with-player, compass labels, edge indicators, border color/width, icon scale, time/day display, and 24-hour clock.
  • Minimap POIs: Per-category toggles for potential customers, unlocked customers (off by default), dealers, dead drops, contracts, quests, properties, and managers.
  • Debug: Per-system verbose logging toggles (Manager, Drifter, Desperation, NPC, Network, Quest, Notification, Patch) and a general verbose catch-all.

Every setting includes a full description visible in ModsApp by k0mods Thunderstore/Nexus (recommended, open-source, recently updated). Also compatible with other config editors. You can always edit the config file directly if you prefer.

In multiplayer, the host's settings are automatically synced to all clients (except local-only preferences like minimap and HUD settings).

Mod Compatibility

HireMe (built-in soft integration)

Thunderstore | Nexus

Provides a dedicated UI for hiring and transferring employees through Manny's network. Hire multiple at once, assign them across properties, transfer between locations, and fire with one click.

When HireMe is installed alongside OverTheCounter, a Hire / Transfer button appears in the OTC app's Employees tab for quick access. No configuration needed. The integration is detected automatically at runtime.

Pack Rat (built-in soft integration)

Thunderstore | Nexus

Adds a persistent, tiered backpack that grows alongside your criminal rank, giving you extra inventory slots beyond the hotbar.

When Pack Rat is installed alongside OverTheCounter, the backpack is treated as an inventory extension:

  • Delivery Manifest: "Have" counts include items in the backpack. A Fill Backpack First checkbox lets you choose whether Smart Fill routes product to the backpack or hotbar first (overflow always spills into the other).
  • Smart Fill (Handover): If matching product isn't found in the hotbar, the backpack is checked as a fallback source.

No configuration needed. The integration is detected automatically at runtime. If Pack Rat is removed or updated incompatibly, all backpack features silently degrade.

License

Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)

You are free to:

  • Share. Copy and redistribute the material in any medium or format.
  • Adapt. Remix, transform, and build upon the material.

Under the following terms:

  • Attribution. You must give appropriate credit to the original author (hdlmrell) and indicate if changes were made. You may not suggest the author endorses you or your use.
  • NonCommercial. You may not use the material for commercial purposes.
  • ShareAlike. If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original.

CHANGELOG

OverTheCounter Changelog

v2.0.10 — Bug Fixes

  • Overhauled dispensary customer pricing to closely simulate vanilla deals: flat per-product pricing paired with dynamic tipping based on customer enjoyment — with perfect skill checks, OTC sales can now match and even outperform vanilla curfew-bonus deals
  • Fixed OTC entities duplicating after dying and reloading
  • Fixed client players being unable to reliably ring up customers at the checkout counter in multiplayer
  • Fixed client GreenTab pricing buttons doing nothing in multiplayer
  • Fixed OTC quests not appearing for client players when they took ownership of a property

v2.0.9 — Bug Fixes

  • Customers no longer refuse to buy bricks when smaller package types aren't on the shelf — checkout now seamlessly repackages bricks, jars, baggies, and any other format mid-sale
  • Budtending consultation pricing now mirrors the vanilla deal formula — with matching Products App and GreenTab multipliers, an OTC sale on a single product lines up with the vanilla equivalent (OTC still offers variety in a single deal, which vanilla doesn't)
  • Fixed checkout remainder/return storage leaking between properties when you own more than one dispensary
  • Added a guard to prevent duplicate grid items from spawning on saves made with older versions of the mod

v2.0.8 — Bug Fixes

  • Added multiplayer sync for dispensary customization — desk style, display name, sign colors, and pricing now sync from clients to host with ownership checks and input sanitization
  • Widened S1API dependency range to accept 3.0.0–3.0.3 while rejecting the broken 3.0.2 release
  • Fixed customers getting stuck re-entering store after checkout
  • Fixed OTC app desync on property listings and thread order
  • Fixed quest RPCs not routing correctly between host and clients
  • Fixed ownership gate blocking dispensary light switch for clients

v2.0.7 — Bug Fixes

  • Fixed style customization persisting invalid style IDs when material lookup fails
  • Fixed stale HUD and coroutines leaking across scene transitions
  • Fixed counter deduplication using count instead of coordinates, breaking multi-counter buildings
  • Fixed dead drop cache crashing on null storage during early load
  • Fixed SteamNetworkLib version mismatch handling and shop injection hardening
  • Fixed RNG state not restoring when appearance generation throws
  • Fixed star sprite caching preventing retry after fallback

v2.0.6 — Bug Fixes

  • Fixed floor-fall bug caused by duplicate checkout counters and solid register colliders
  • Fixed quest double-registration crash in multiplayer by deferring creation to Tick()

v2.0.5

  • Added walk-in customer scheduling with configurable spawn intervals and mirror mode for OTC stores
  • Added budtending relationship and addiction effects with deal completion popups
  • Added Storefront Expansion quest for the dispensary with a tutorial NPC and guided pricing stages
  • Added dispensary signage system with rename and color customization UI
  • Added P2P sales log sync with auto-chunked messaging for multiplayer
  • Added store diagnostic warnings to the GreenTab overview dashboard
  • Added LightExposureNode to OTC tiles for grow light compatibility
  • Added nav-stuck recovery with retry escalation for customers
  • Added E-to-checkout prompt on queued customers
  • Customers now process deferred deals 30 min before store opens so NPCs arrive at opening
  • Register collection is now host-authoritative via P2P to prevent double withdrawal
  • Batched SyncVar publishes with dirty flags to reduce same-frame network churn
  • Fixed supplier meetup handoff, client sync, and delivery bay visibility
  • Fixed sales summary card showing tips instead of average transaction value
  • Fixed phone closing on right-click via ContactsApp exit listener
  • Fixed desperation deals being falsely redirected to OTC storefronts
  • Fixed OTC overlays not hiding when game HUD is hidden

v2.0.4 — Bug Fixes

  • Fixed memory leaks from checkout counter GameObjects and failed texture loads
  • Fixed duplicate networked object spawning
  • Fixed MeshVault registration flag firing before any registration succeeds
  • Added ownership check to store pre-open window logic

v2.0.3

  • Added auto-pricing system - set per-product pricing from the GreenTab inventory tab, with multiplayer sync and save persistence
  • Added floating sale notification at the register on completed transactions
  • Added multiplayer SteamNetworkLib dependency check on lobby join
  • DependencyChecker now detects wrong-branch and misplaced dependency DLLs
  • Fixed ContactsApp region tab buttons for multiplayer clients and double Start() crash
  • Fixed tip deposits for player-operated checkouts
  • Fixed ornate desk product display position

v2.0.2

  • DependencyChecker now validates mod versions, detects misplaced DLLs, and warns about wrong-folder installs
  • Fixed supplier patch audit issues and removed ActionListPatch

v2.0.1 — Bug Fixes

  • Fixed reliability issues on IL2CPP builds (crashes, hitching, and noisy MelonLoader output)
  • Fixed edge cases with suppliers, store alerts, and the HUD overlay
  • Cleaned up spurious MelonLoader warnings when optional mods are not installed

v2.0.0 — Storefronts

  • Added three purchasable buildings — Westville Shack, Big Dispensary, and Supplier Warehouse, purchased through an encrypted messaging thread with Static
  • Added walk-in customer system — NPCs enter through the front door, consult with a budtender, pick products based on preferences, queue at checkout, and pay with unit-based orders scaled by rank and relationship
  • Added interactive checkout — scan and place products at the register, handle partial orders, and process transactions with a redesigned POS terminal and real-time sales analytics
  • Added budtender system — autonomous checkout employees with per-counter staffing, store alerts, and daily wages
  • Added GreenTab POS app — overview dashboard with 7-day sales and inventory charts, sales log grouped by checkout, employees tab, and building customization (desk styles, wall finishes, floor materials, lighting)
  • Added storefront growth quest — a progressive questline: acquire the property, stock shelves with packaged product, install lighting, hire a budtender, and complete your first sale
  • Added HUD overlay — health, stamina, and XP bars above the hotbar with floating +/- indicators for damage, healing, and XP gains
  • Reworked Static's questline into the OTC app with threaded messages, encrypted conversations, property purchase cards, and a dead drop network
  • Added P2P networking bridge for targeted multiplayer messaging with FishNet door replication
  • Added map building overlay showing OTC building footprints on the phone map and minimap
  • Added dependency checker popup for missing S1API, S1MAPI, or MeshVault
  • Added rain suppression inside OTC buildings, region-locked customer traffic with daily caps, and notification badges

v1.5.7

  • Updated for game v0.4.4 compatibility
  • Decoupled OTC Loader into a standalone package
  • Fixed Customer NullRef crash on non-networked NPC components

v1.5.6

  • Added beta game version support with StackLimit and NPCEnteredBuilding compatibility fixes
  • Fixed minimap manager mugshots showing as white circles on IL2CPP first load

v1.5.5

  • Added minimap toggle for modded NPC POIs (police, cartel, etc.)

v1.5.4

  • Added PackRat backpack integration — Smart Fill and delivery manifest now include backpack inventory
  • Fixed Mono TryCast and unpackaged product bugs in Smart Fill and delivery manifest
  • Fixed minimap positioning on ultrawide monitors
  • Fixed manager upgrade slots not persisting across save/load on host

v1.5.3

  • Reworked Smart Fill with inline status, gram-based feedback, and slot-aware filling
  • Employees tab now shows specific activity labels, actionable issue highlighting, and dynamic manager end-of-day status
  • Minimap positioning now adapts to actual screen resolution instead of assuming 1080p
  • Fixed stale quests surviving save migration during reconciliation

v1.5.2 — Save Data Hardening

  • Hardened Vic, Static, and Bella quest reconciliation against corrupted and stale save data — progression flags now heal bidirectionally on load
  • Fixed completed quests lingering as active in the journal
  • Fixed quest creation racing with game persistence on load

v1.5.1 — Vic Quest Rework

  • Vic's intro quest now triggers from weekly ATM deposits (configurable threshold, default $10,000) instead of the Clean Cash quest
  • Fixed Vic dialogue getting stuck when quest instance was missing or save state was ahead of quest progress

v1.5.0 — Recipe Pins & Dead Drops

  • Added recipe pin overlay — pin any product from the Product Manager app to see its full mixing chain on screen
  • Added dead drop support for manager distribution routes — managers can now deliver to dead drop locations
  • Added graffiti re-edit — re-edit placed graffiti while preserving spray cans, with a config toggle
  • Upgraded all UI text to TextMeshPro for sharper rendering across all OTC screens
  • Minimap now supports free-form positioning via X/Y sliders, compass labels, and off-screen POI edge indicators
  • Managers now use a cascading walk fallback chain, reducing teleports when pathfinding fails
  • Standardized logging with auto-gated verbose output, per-system toggles, and deduplicated prefixes
  • Fixed save data leaking between loads by clearing registry cache on scene load
  • Fixed pickpocket NPC reference comparison on Mono builds
  • Fixed MelonLoader 0.7.2 compatibility warnings

v1.4.0 — Employees & Stack Scaling

  • Added Employees tab in the OTC phone app — type filtering, property grouping, detail pages with relationship bars, in-app map, and a tier-0 landing page
  • Added customer detail view — split-view layout with relationship stats, addiction level, and location tracking
  • Added stack size multiplier — configurable scaling for item stacks, manager thresholds, and supply picker quantities
  • Added OTC Loader — branch-aware DLL management plugin with restart prompts, replacing the SwapperPlugin dependency
  • Added rank/XP bar on the minimap — live rank and tier display with XP progress bar and floating +XP labels
  • Added HireMe mod integration — auto-detected Hire/Transfer button in the Employees tab
  • Minimap now tracks vehicle position/rotation and shows remote player facing direction
  • Config changes now apply instantly via native preference subscriptions
  • Fixed ContactsApp portrait rendering, connection lines, and click handling
  • Fixed manager clipboard detection with NPCInteract360, post-sleep NPC positioning, and Manny dialogue gating

v1.3.0 — Upgrades & Minimap

  • Added manager upgrades — walk speed and carry capacity tiers purchasable from the detail page, with tiered pricing and daily wage scaling
  • Added minimap overlay — configurable on-screen minimap with POI filtering, customer mugshot markers, time/day display, zoom levels, and hotkey toggle
  • Added handover Smart Fill — quality-aware auto-fill on the handover screen with a two-phase fill/boost button
  • Added alternate hire mode — hire managers directly from the OTC app per-business, for mod compatibility
  • Added Mono build support with dual IL2CPP/Mono packaging
  • Drifters now check vanilla pricing — overpriced products are skipped, and lingering drifters are cleaned up at day rollover
  • Fixed client mugshot misframing, inventory icon display, manager card layout, and Vic quest marker position

v1.2.2 — Manager App

  • Added Managers tab in the OTC phone app — list view with status cards, detail page with mugshot, live inventory, locker balance, and real-time minimap tracking
  • Added per-manager debug log — in-app console page with a ring buffer of recent manager activity
  • Added granular status display — managers now show sub-states like "Supply Run - Purchasing" and "Distribution Route 2 - Depositing", synced to clients in multiplayer
  • Rewrote mugshot generation — all NPCs now use runtime capture with content validation, fixing client mugshot bleed-through
  • Managers now deposit items before shopping for more, and only pick up what the destination can hold
  • Fixed NPC spawning crash when SteamNetworkLib is not installed
  • Fixed quest progress carrying over between save loads
  • Fixed wage payment interrupting managers mid-run

v1.2.1 — Manager Polish

  • Added job rotation, map markers, and a verbose logging toggle
  • Added pre-baked mugshots for Vic, Static, and Bella
  • Managers now rotate between supply runs and distribution routes, walk 1.8x faster, and freeze during inventory viewing
  • Managers now block new jobs at 4 AM and respect hardware store hours grace period
  • Fixed distribution infinite loop when destination storage is full
  • Fixed manager mugshots not loading on second save load
  • Renamed all log output to use OTC: prefix for easier filtering
  • Fixed dealer contracts appearing in the delivery manifest
  • Fixed IL2CPP dialogue crash on scene reload

v1.2.0 — Managers

  • Added Manager system — hire employees from the Fixer, assign lockers for wages and inventory, configure via clipboard panel, and send them on supply runs and distribution routes that persist across saves
  • Added Bella NPC and Executive Privilege quest — new quest line that unlocks 24/7 warehouse access with drug handover validation and multiplayer sync
  • Added Smart Fill per-contract packaging — Smart Stash now groups items by contract with a compact manifest toggle, and includes drifter deals
  • Added System toggle settings — individually enable or disable desperation deals, drifters, and managers from the config
  • Added single-player support without SteamNetworkLib dependency
  • Added filter-aware storage — managers respect storage rack filters when depositing and retrieving items
  • Fixed delivery window filtering for overnight contracts and desperation/drifter deals
  • Fixed multiplayer quest desync with state reconciliation
  • Fixed drifter inventory clone, spawn rate, journal cleanup, and phantom unread badge
  • Fixed dealer HUD leak, Static rotation, and Vic dialogue issues

v1.1.1 — Bug Fixes

  • Fixed drifter Customer component starving vanilla deal generation
  • Fixed stale dialogue data persisting across Vic and Static NPC conversations

v1.1.0 — Drifters

  • Added Drifter system — random one-time customers with unique appearances roam the streets and text you to buy, with robbers, narc stings, region-scaled spawning, and 35+ hotspot locations
  • Added multiplayer support for drifters — fully synced between host and clients
  • Fixed Vic intro text re-sending after reloading a save
  • Fixed a crash caused by null avatar settings list

v1.0.5 — Desperation Overhaul

  • Desperate NPCs now run to the deal location instead of walking
  • Fixed desperation deal event persisting after a successful delivery — added post-deal cooldown
  • Fixed desperation response buttons staying on screen after the offer timed out
  • Fixed desperation multiplayer sync for client handover, deal acceptance, and contract expiry
  • Fixed ContactsApp initialization race condition in multiplayer
  • Multiplayer config override improvements

v1.0.4 — Stability

  • Cleaned up excessive debug logging for a quieter MelonLoader console
  • Reduced stale quest cleanup log spam

v1.0.3 — Multiplayer Sync Fix

  • Fixed multiplayer client state sync regression where the second NPC to spawn would lose host state

v1.0.2 — Save State Fix

  • Fixed Static's subscription state persisting across different save files (loading a new save no longer carries over progress from a previous one)
  • Added dialogue refresh guards to prevent stale NPC dialogue
  • Fixed stale config sync data bleeding between save loads

v1.0.1 — Packaging & Polish

  • Added Thunderstore package support with auto-versioned build script
  • Updated in-game app icon
  • Added CC BY-NC-SA 4.0 license

v1.0.0 — Initial Release

  • Vic the bank teller — money laundering NPC behind the bank with a multi-stage quest line (Rinse Cycle journal quest, cash deposits, tier-2 trust progression, sleep-triggered intro)
  • Static the casino NPC — subscription service with tiered upgrades, weekly bank billing, sales pitch dialogue with fee traps and suspension terms
  • OTC phone app — tier-gated in-game phone app with paywall, region locks, GPS customer pins, and billing countdown
  • CustomersApp — phone app with map integration for tracking your customers
  • Desperation deal system — desperate NPCs send you deal offers with a location picker UI
  • Smart Stash overlay — delivery manifest and one-click Smart Fill for storage containers
  • Multiplayer support — client-host quest sync via Steam lobby data, host-authoritative config sync
  • Configurable settings — centralized MelonPreferences config exposed through Mods App