Tested Minecraft Versions:
- Variety of pre-made cars, planes, helicopters, and boats.
Allows user created vehicles to be added.
Terrain climbing system to handle small jumps
Sound system for engines.
Per-Vehicle whitelist for player-owned vehicles.
More vehicles and systems will be added in future updates
[!] I will not respond to bug fixes in the review section.[!]
If you are experiencing a problem with QAV, please report this issue in the Discussions tab or the Github page, including any errors you receive and whether you tried it on a clean server (with no other plugins installed). I will not respond to issues in the review section, so don't use it as a way to try to get faster responses.
/QAV give <vehicle> <player>: Gives a player a vehicle as an item
/QAV spawnVehicle <vehicle>: Spawns a vehicle instance at the player's location
/QAV removeNearbyVehicles <radius>: Removes all spawned vehicle instances within a radius of the player.
/QAV shop: Opens the shop GUI.
/QAV callback : Calls back all of the vehicles the player owns.
/QAV callbackAll: Calls back all vehicles on the server.
/QAV debug_removeAllBuggedVehicles : Use to remove all bugged vehicles near the player.
/QAV garage : Opens the garage (Only if "enable_UnlockableVehicles" is enable in the config.)
qualityarmoryvehicles.* : Gives access to all permissions.
qualityarmoryvehicles.admin : Gives access to all admin permissions,.
qualityarmoryvehicles.give : Allows player to use /qav give
qualityarmoryvehicles.spawn :Allows player to use /qav spawnVehicle
qualityarmoryvehicles.setaspassager :Allows player to use /qav setaspassager
qualityarmoryvehicles.removenearbyvehicles :Allows player to use /qav removenearbyvehicles
qualityarmoryvehicles.default: Gives access to all default commands. Added by default.
qualityarmoryvehicles.craft : (Planned) will allow players to craft vehicles. Added by default.
qualityarmoryvehicles.shop: Allows players to buy vehicles. Added by default.
qualityarmoryvehicles.use : Allows players to interact with vehicles. Added by default.
qualityarmoryvehicles.vehiclelimit.X : Limits the amount of vehicles a player can have spawned at one time (by default, all players are allowed 1)
qualityarmoryvehicles.unlimitedvehicles : Bypasses limit check
qualityarmoryvehicles.callback : Allowes players to call back all of their vehicles (either storing them in the player's garage or adding it back to the player's inventory)
qualityarmoryvehicles.callbackAll : Calls back all vehicles on the server.
qualityarmoryvehicles.candrive.XXX : If "enable_RequirePermsToDriveType" set to true, only players with that permission can drive the vehicle called "XXX" (Replace XXX with the vehicle's name).
qualityarmoryvehicles.overrideWhitelistCommand : Lets a user set the whitelist for a vehicle using commands.
qualityarmoryvehicles.usevehiclegui : Allows users to see a vehicle's GUI menu. Added by default.
qualityarmoryvehicles.overrideWhitelist : Lets a user ride a vehicle, even if they are not in the whitelist for that vehicle.
Quality Armory (Recommended/Not-required) for the models and textures, and system for storing and sorting these models Note however, if you do not want the guns from QA, QAV will still work without it.
ProtocolLib (Required) for handling the inputs for the player controls.
*NOTE* Since this plugin requires protocolLib, plugins and systems that do not support protocolLib (such as Subgr, or BungeeCord) will cause conflicts with this plugin. Do not buy this plugin if you have a required plugin or system that is incompatible with ProtocolLib.
Also note that for ViaVersion, 1.8 users will not be able to see the models, as resourcepacks did not have the ability to specify models for specific IDs in that update. All 1.9+ users, however, will be able to see it. You would just need to set "Auto-Detect-Resourcepack" to true in the /QualityArmory/config.yml file.
For PaperSpigot users.
If "armor-stands-tick" is set to false in the paper.yml file, then vehicles will not move.
Creating custom vehicles is as easy. You can learn how to create new vehicles HERE. (Note that this is for guns, but the steps are almost entirely the same. )
Also note that if you want to change any of the settings for any of the default vehicles, you will need to set "allowUserModifications" to true. This setting lets QAV know that it should not try to update these files if there are any changes.
Here is a list of all the methods/events added to QAV:
Spoiler: Methods and Events
QualityArmoryVehicles.getVehicleByName() returns the abstractvehicle instance with the name provided.
QualityArmoryVehicles.getAllVehicles() returns all of the vehicles on the server
QualityArmoryVehicles.registerAndLoadNewVehicle() creates a new vehicle type.
QualityArmoryVehicles.spawnVehicle() spawns a vehicle at a given location.
QualityArmoryVehicles.getVehicleEntity() returns the VehicleEntity, given an armorstand that is the "driver seat"
QualityArmoryVehicles.addPlayerToCar() adds a player either as a driver or a passager to a vehicle.
QualityArmoryVehicles.getOwnedVehicles() returns all of the vehicles a player owns.
QualityArmoryVehicles.teleportVehicle() telports a vehicle and all its passangers to a new location.
QualityArmoryVehicles.getVehiclePlayerIsLookingAt(); Returns the vehicle the player is looking at. Useful for detecting which vehicle a player is interacting with.
Called when a vehicle is created
Called when a vehicle was damaged.
Called when a vehicle is destroyed
Called when a vehicle turns left or right
Called when a vehicle changes speed by the players request (slowing down or speeding up)
Called when a player enters a seat, either being the driver seat or a passager seat
Called when a player exits a vehicle