Configuration
Everything in config.yml explained. The file lives at /plugins/VehiclesPlus/config.yml and is created automatically on first start.
Never change config-version by hand — the plugin uses it to migrate your config when you update. New options are added automatically on update.
Locale
locale: en
Which language file to use. There must be a matching /plugins/VehiclesPlus/locale/lang_<code>.yml. Bundled languages include en, nl, de, fr, it, pl and fa. You can freely edit these files to change any message; only edit the values, not the keys.
Data storage
data:
type: SQLITE # SQLITE or MYSQL
interval: 120 # seconds between automatic saves
verbose: false # log every save to console
database: 'data' # SQLITE: file name (no extension) — MYSQL: database name
host: localhost # MySQL only
port: 3306 # MySQL only
username: 'username' # MySQL only
password: 'password' # MySQL only
- type —
SQLITE(default, zero-setup, stored in a local file) orMYSQL(recommended for networks / multiple servers sharing data). - interval — how often vehicle/garage data is written to the database.
- When using
MYSQL, settype: MYSQLand fill inhost,port,username,passwordanddatabase.
Collision & damage
collision:
damageLevel: NORMAL # REALISTIC, NORMAL, REDUCED, MINIMAL, NONE
despawnOnZeroHealth: true # despawn the vehicle when it's destroyed in a crash
dropTrunkItems: true # drop trunk contents when destroyed (needs despawnOnZeroHealth)
behavior:
slabDriving: true # can drive up onto slabs
blockDriving: true # can drive up single blocks (step-up)
stopAtVehicle: true # stop when hitting another vehicle
stopAtEntity: true # stop when hitting an entity
stopAtBlock: true # stop when hitting a solid block
- damageLevel — how much damage a crash deals to the vehicle.
NONEdisables crash damage entirely;REALISTICis the harshest. - behavior — toggles for how vehicles interact with the world while driving.
Economy & costs
repairCostDivision: 100.0 # repair cost = vehicle price / this value
renameCost: 1000.0 # cost to rename a vehicle
- repairCostDivision — a vehicle worth
100,000with a division of100.0costs1,000to fully repair. - renameCost — flat fee charged when a player renames a vehicle.
These (and all shop/fuel/upgrade prices) require Vault plus an economy plugin. Without one, money features are disabled.
Gameplay
actionBar: true # show the speed/fuel action bar while driving
spawnLocked: false # vehicles spawn locked to their owner
limits:
have: 10 # max vehicles a garage may hold (-1 = unlimited)
spawn: 5 # max vehicles a player may have spawned at once (-1 = unlimited)
defaultRimDesignId: default # rim design used by default vehicles
Fuel
fuel:
- 5
- 10
- 15
- 25
- 50
The liter amounts offered in the fuel shop (/fuel shop). Add or remove entries to change the buy options.
Permissions
permissions:
buy: 'vp.buy.*'
adjust: 'vp.adjust.*'
spawn: 'vp.spawn.*'
ride: 'vp.ride.*'
The wildcard permission nodes checked for buying, adjusting, spawning and riding vehicles. See Permissions → per-vehicle for how to restrict access to individual models.
Update checker
updateChecker:
enabled: true
downloadOnUpdate: true
- enabled — check for new versions on startup.
- downloadOnUpdate — automatically download the update when one is found.
Resource pack URL
resourcePackUrl: 'https://git.sbdevelopment.tech/VehiclesPlus/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.21.7-1.21.8.zip'
On startup the plugin downloads this resource pack once to measure the length of each engine sound, so every engine sound loops for exactly its own duration without overlapping — you no longer have to set a duration per sound manually.
- Point this at your own resource pack (the one your players actually use) so custom engine sounds are measured correctly.
- Leave it blank to fall back to the default VehiclesPlus example pack.
This is only used to read sound lengths. It does not force the pack onto your players — that's still done via server.properties or a pack plugin (see Setup).