Better NPC Passengers (LVS, Glide, Simfphys Supported)

If you liked this item, please rate it up on Steam Workshop page.

Authors: Nai, axell

Last revision: 18 May at 08:19 UTC (1)

File size: 1.23 MB

On Steam Workshop

Description:
Better NPC Passengers

Board NPCs into vehicles with full animation, emotional state tracking, multi-vehicle framework support, and full VJ Base SNPC compatibility.

Please, see https://github.com/Nai64/BetterNPCPassengers/releases for the complete changelogs and to download specific versions of the addon.

In the recent updates, I added VJ Base SNPC Support, please if you find any bugs or have features to request, write in the comments. New feature is still on BETA version, everything might not be smoothly as intended.


Supported Vehicle Frameworks

Framework
Passenger
NPC Driver
NPC Gunner
Simfphys (LUA Vehicles)
LVS Framework
Glide Vehicles
SligWolf Vehicles
Standard HL2 (Jeep, Jalopy, APC…)
prop_vehicle_prisoner_pod


Supported NPC Frameworks

  • Standard HL2 NPCs — Combine, Citizens, Zombies, Antlions, etc.
  • VJ Base SNPCs — Full compatibility via a dedicated module that properly suspends VJ’s AI loop while seated and restores all state on exit.
  • Custom NPCs — Anything that uses GMod’s standard NPC base.


Core Features

Animation & Physical Response
  • Body Sway: NPCs physically lean with the vehicle through turns, acceleration, and braking. Intensity is adjustable.
  • Crash Flinch: A high-speed deceleration event triggers a flinch and bracing animation. Threshold is configurable.
  • Head Tracking: NPCs track the driver, nearby threats, and points of interest. Movement smoothing is tunable.
  • Eye Movement: Micro-glances independent of the head for natural-looking gaze behavior.
  • Blinking: Automatic eyelid animation with randomized interval timing.
  • Breathing: Subtle idle breathing cycle animation.
  • Talking Gestures: Random hand and body gesture animations play during idle conversation periods.

Emotional State System
  • NPCs transition between CALM, ALERT, SCARED, DROWSY, and DEAD states based on conditions in the environment.
  • Threat Awareness: Detects enemies within a configurable range and shifts NPCs to ALERT state. Head tracks the threat direction.
  • Fear Reactions: High speed or erratic driving transitions NPCs toward SCARED.
  • Drowsiness: After an extended period of calm travel, NPCs gradually become drowsy with appropriate head nod behavior.
  • Crash Damage: High-speed impacts deal health damage to passengers. Severity scales with deceleration force.

Vehicle Damage & Destruction
  • Crash Damage: Speed-based health damage to passengers on heavy impacts.
  • Vehicle Explosion Death: When a vehicle is destroyed by blast, fire, or lethal damage, all passengers die. No more NPCs walking out of a flaming wreck unharmed. Kill credit is preserved for the attacker.
  • Toggleable per-server via nai_npc_die_with_vehicle.

NPC Speech & Audio
  • Boarding Lines: NPCs speak context-aware lines when entering or exiting the vehicle.
  • Idle Chatter: Occasional conversation during travel with configurable frequency and chance.
  • Passenger Interaction: Multiple passengers will look at and talk to one another.
  • Crash Reactions: Pain sounds and verbal responses on impact events.
  • Ambient Sounds: Low-frequency ambient sounds such as coughs, sighs, and hums with configurable interval.
  • Pitch Variation: Random pitch offset per NPC for natural vocal differentiation.

Auto-Join System
  • Nearby friendly NPCs automatically board available seats when the player enters a vehicle.
  • Configurable search range and maximum count per vehicle.
  • Optional squad-only mode: only NPCs in the player’s active squad will board.
  • Can be toggled at any time via keybind or settings panel.

Multi-Passenger & Boarding Logic
  • Supports up to 8 passengers per vehicle (configurable hard cap).
  • Manual queuing via right-click context menu allows targeting specific NPCs before boarding.
  • Seat discovery is framework-aware and never assigns the driver seat or an already-occupied seat.
  • Dead passengers do not count toward seat occupancy.
  • Retry system with configurable attempt limit and cooldown on repeated boarding failures.
Vehicle Filtering
  • Server-side allow and deny lists for vehicle classes and models using comma-separated patterns with wildcard (*) support.
  • Deny lists are evaluated before allow lists. An empty allow list permits all non-denied vehicles.

NPC Driver & Gunner (LVS / Simfphys / Glide)
  • Assign an NPC as the driver of a supported vehicle. The NPC will navigate toward a target using pathfinding.
  • Air vehicle support for LVS helicopters and planes.
  • Assign an NPC to an LVS turret seat for autonomous fire support — with faction-aware friendly-fire prevention, target leading, and a hold-fire toggle.
Settings & Customization
  • Full settings panel accessible via F7 or Spawnmenu ➜ Utilities ➜ Better NPC Passengers.
  • Modern UI with fluid panel animations, hover sounds, and click sounds — all individually toggleable.
  • Live search across every setting in the panel.
  • Tooltip system with descriptions for every option.
  • Configurable panel dimensions.
  • All settings are archived per client or server as appropriate.
  • Debug mode for administrators: exposes internal state and test commands without affecting normal play.


Quick Start

Auto-Join (recommended):
Press F7 → navigate to the Auto-Join tab → enable Auto-Join → enter a vehicle. Nearby friendly NPCs will board automatically.

Manual:
Hold C → right-click an NPC → Make Passenger → enter a vehicle. The NPC will walk to and board the nearest available seat.

Remove a passenger:
Right-click the passenger and select Detach Passenger, or use the F7 panel.

Remove a dead body:
Approach the vehicle and hold R.


Common Issues

NPC is floating above the seat: Use the Position Offset controls in the settings panel (F7) to correct the seating alignment for that vehicle model.
NPC keeps dying in crashes: Increase the crash damage threshold in the settings, or reduce crash damage scaling.
Dead body cannot be removed: Move closer to the vehicle and hold R for the full duration.
Auto-Join is not triggering: Verify the search range and maximum passenger count in the Auto-Join settings tab. Ensure the NPCs are in a f

Download
Revisions:

Old revisions of this mod are available below. Click the link to download.