Converted all v3 docs made for now

This commit is contained in:
Stijn Bannink 2025-01-09 21:20:47 +01:00
parent 991f915665
commit 630dcbe7d3
Signed by: SBDeveloper
GPG key ID: B730712F2C3A9D7A
14 changed files with 701 additions and 110 deletions

View file

@ -3,7 +3,9 @@
Welcome to the SBDevelopment wiki! You can find all the information you need on this site to use our plugins.
## Who are we?
SBDevelopment is a small development group (of 2 developers) who makes plugins for Minecraft servers. We mainly focus on themeparks, but we also make plugins for other servers.
SBDevelopment is a small development group (of 2 developers) who makes plugins for Minecraft servers. We mainly focus on
themeparks, but we also make plugins for other servers.
## Our plugins

24
vehiclesplus-v3/about.md Normal file
View file

@ -0,0 +1,24 @@
---
sidebar_position: 1
sidebar_label: About
---
# VehiclesPlus
*Realistic custom vehicles for your Minecraft server!*
[![Version](https://img.shields.io/spiget/version/70523?label=version)](https://www.spigotmc.org/resources/vehiclesplus-1-12-1-20-4.70523/) [![Downloads](https://img.shields.io/spiget/downloads/70523)](https://www.spigotmc.org/resources/vehiclesplus-1-12-1-20-4.70523/) [![Rating](https://img.shields.io/spiget/stars/70523?color=orange)](https://www.spigotmc.org/resources/vehiclesplus-1-12-1-20-4.70523/)
## About
VehiclesPlus is a plugin adding realistic vehicles to your Minecraft server. It support Cars, Planes, Bikes,
Hovercrafts, Boats, Tanks and Helicopters. It's also possible to add your own types!
## Installation
Follow [the installation instructions on the Setup page](setup).
## Support
Can't find the correct answer on our wiki or need more help? You can contact us
in [our Discord server](https://discord.gg/z26ZGrrFWB).

View file

@ -0,0 +1,4 @@
{
"position": 5,
"label": "API"
}

View file

@ -0,0 +1,148 @@
---
sidebar_label: Examples
sidebar_position: 2
---
# API Examples
In this section, you'll find additional examples of how to use the VehiclesPlus API (v3) for various tasks.
## Example 1: Adding a Car to Someone's Garage
```java
// Give car to garage
public void giveCar(Garage garage, String vehicleType) {
// Attempt to create a vehicle
StorageVehicle vehicle = VehiclesPlusAPI.createVehicle(vehicleType);
if (vehicle == null) {
System.err.println("Failed to create vehicle of type: " + vehicleType);
return; // Exit if the vehicle could not be created
}
// Add the vehicle's UUID to the garage
garage.addVehicle(vehicle.getUuid());
System.out.println("Vehicle created and added to the garage successfully.");
}
```
## Example 2: Adding a Vehicle to the Player's Default Garage
```java
// Give car to player's default garage
public void giveCar(Player player, String vehicleType) {
// Attempt to create a vehicle
StorageVehicle vehicle = VehiclesPlusAPI.createVehicle(vehicleType);
// Retrieve the player's default garage
Optional<Garage> optionalGarage = VehiclesPlusAPI.getGarage(player.getName());
if (vehicle == null) {
System.err.println("Failed to create vehicle of type: " + vehicleType);
return; // Exit if the vehicle could not be created
}
if (optionalGarage.isPresent()) {
Garage garage = optionalGarage.get();
garage.addVehicle(vehicle.getUuid());
System.out.println("Vehicle created and added to the garage successfully.");
} else {
System.err.println("Garage not found for player: " + player.getName());
// Optionally, you could create a new garage for the player here if the API allows it.
}
}
```
## Example 3: Despawning the First Vehicle of a Player
```java
public void despawnFirstVehicle(Player player) {
// Retrieve the first spawned vehicle of the player
Optional<SpawnedVehicle> firstSpawnedVehicleOptional = VehiclesPlusAPI.getVehicle(player);
// Check if a vehicle is present to despawn
if (firstSpawnedVehicleOptional.isPresent()) {
// Despawn the vehicle using the API's despawn reason
firstSpawnedVehicleOptional.get().despawn(VehicleDespawnEvent.DespawnReason.API);
System.out.println("Vehicle despawned successfully.");
} else {
// Handle the case where the player doesn't have a spawned vehicle
System.err.println("Player does not have a spawned vehicle.");
}
}
```
## Example 4: Despawning the Closest Vehicle to a Player
```java
public void despawnClosestVehicle(Player executor, Player targetPlayer) {
// Retrieve a list of all spawned vehicles belonging to the target player
@NotNull List<Vehicle> vehiclesOfTargetPlayer = VehiclesPlusAPI.getVehicles(targetPlayer);
// Find the closest spawned vehicle to the executor player
Optional<SpawnedVehicle> closestVehicleOptional = vehiclesOfTargetPlayer.stream()
.filter(vehicle -> vehicle instanceof SpawnedVehicle) // Only consider spawned vehicles
.map(vehicle -> (SpawnedVehicle) vehicle)
.min(Comparator.comparingDouble(vehicle -> vehicle.getHolder().getLocation().distance(executor.getLocation())));
// Check if the closest vehicle was found
if (closestVehicleOptional.isPresent()) {
// Despawn the closest vehicle using the API's despawn reason
closestVehicleOptional.get().despawn(VehicleDespawnEvent.DespawnReason.API);
System.out.println("Closest vehicle despawned successfully.");
} else {
// Handle the case where no spawned vehicles are found for the target player
System.err.println("Target player does not have any spawned vehicles.");
}
}
```
## Example 5: Removing a Vehicle from the Police Garage
```java
public void removeVehicleFromPoliceGarage(String vehicleModelName) {
// Retrieve the "police" garage using its name
Optional<Garage> policeGarageOptional = VehiclesPlusAPI.getGarage("police");
// Check if the police garage exists, and if not, print an error message and exit
if (policeGarageOptional.isEmpty()) {
System.err.println("Error: The 'police' garage does not exist.");
return;
}
// Get the actual garage object
Garage policeGarage = policeGarageOptional.get();
// Search for the vehicle with the given model name within the "police" garage
Optional<Vehicle> vehicleToRemoveOptional = policeGarage.getVehicles().stream()
// Convert the vehicle UUID to an actual StorageVehicle object
.map(VehiclesPlusAPI::getVehicle)
// Filter vehicles to match the given model name
.filter(vehicle -> vehicle != null && vehicle.getVehicleModel().getId().equals(vehicleModelName))
// Select the first match
.findFirst();
// If a matching vehicle is found, attempt to remove it
if (vehicleToRemoveOptional.isPresent()) {
Vehicle vehicleToRemove = vehicleToRemoveOptional.get();
try {
// Remove the vehicle from the garage
vehicleToRemove.remove();
System.out.println("Vehicle with model '" + vehicleModelName + "' has been successfully removed from the police garage.");
} catch (DataStorageException e) {
// Handle any errors that occur during the removal process
System.err.println("Error: Failed to remove vehicle with model '" + vehicleModelName + "' from the garage.");
throw new RuntimeException("Error while removing vehicle", e);
}
} else {
// If no matching vehicle was found, print an error message
System.err.println("Error: No vehicle with model '" + vehicleModelName + "' found in the police garage.");
}
}
```
## More Examples
For additional usage examples, please visit
the [VehiclesPlus API Examples on GitHub](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus-v3-API-example).

View file

@ -0,0 +1,67 @@
---
sidebar_label: Usage
sidebar_position: 1
---
# API Usage
This guide explains how to integrate the new and improved VehiclesPlus API (v3) into your project.
## Adding VehiclesPlus to Your Project
To use the VehiclesPlus API in your plugin, follow these steps:
### Step 1: Add VehiclesPlus to Your Dependencies
Ensure VehiclesPlus is added as a dependency in your project. To always use the latest version, update your dependency
configuration as shown below:
Maven (`pom.xml`):
```xml
<!-- Append to the <repositories> section -->
<repositories>
<repository>
<id>sbdevelopment-repo</id>
<url>https://repo.sbdevelopment.tech/releases</url>
</repository>
</repositories>
<!-- Append to the <dependencies> section -->
<dependencies>
<dependency>
<groupId>tech.sbdevelopment</groupId>
<artifactId>vehiclesplus</artifactId>
<version>latest</version>
</dependency>
</dependencies>
```
Gradle (`build.gradle`):
```gradle
repositories {
maven {
url 'https://repo.sbdevelopment.tech/releases'
}
}
dependencies {
implementation 'tech.sbdevelopment:vehiclesplus:latest'
}
```
:::info
**Note**: Using `latest` ensures that your project always fetches the most recent release, but it might cause issues if
breaking changes are introduced. For more stability, consider specifying a specific version (e.g., `3.0.2`).
:::
## Examples
For usage examples, please visit
the [VehiclesPlus Examples Page](https://docs.sbdevelopment.tech/en/vehiclesplus-v3/api/examples).
## API Documentation
For additional details and advanced usage refer to the
official [VehiclesPlus Javadoc](https://sbdevelopment.tech/javadoc/vehiclesplus-v3/index.html).

87
vehiclesplus-v3/setup.md Normal file
View file

@ -0,0 +1,87 @@
---
sidebar_position: 2
sidebar_label: Setup
---
# Getting Started with VehiclesPlus
Welcome to VehiclesPlus! This guide will walk you through installing the plugin, setting up the resource pack, and
getting started with your first vehicle.
---
## Step 1: Plugin Installation
To use VehiclesPlus, follow these steps to install the plugin:
1. If you want to use the plugin's economy features, make sure you have
installed [Vault](https://dev.bukkit.org/projects/vault) and an economy manager
like [EssentialsX](https://essentialsx.net/downloads.html).
2. Download the plugin on [Spigot](https://www.spigotmc.org/resources/vehiclesplus-1-13-1-21.70523/)
or [Polymart](https://polymart.org/resource/vehiclesplus-1-12-1-20-2.633)
3. Put the JAR file into your `/plugins` folder.
4. Restart your server.
To verify the installation:
- Run `/plugins` in your server console or in-game to confirm that VehiclesPlus is loaded (it must be green).
---
## Step 2: Resourcepack Download
VehiclesPlus requires a resource pack for vehicles to display properly. We provide an **example resource pack** for your
convenience, but we recommend creating your own to support custom vehicles and models.
| Version | Download | SHA1 Hash |
|:---------------:|:--------------------------------------------------------------------------------------------------------------------------------------------------:|--------------------------------------------|
| 1.13.2 - 1.14.4 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.13.2-1.14.4.zip) | `b61d1c370b3768cf966b80c6bfb66f905cb37b8a` |
| 1.15.2 - 1.16.1 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.15.2-1.16.1.zip) | `6f25bca11dfb736310fd408a901fc763f87c0b95` |
| 1.16.2 - 1.16.5 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.16.2-1.16.5.zip) | `1f0914aa530f5b8de4c64e0d771d1bf4f1694718` |
| 1.17 - 1.17.1 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.17-1.17.1.zip) | `c294db880a9ebc197e56586f1fe4192fcea56f43` |
| 1.18 - 1.18.2 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.18-1.18.2.zip) | `8e4d4ce39335f762853f7c72e538fbf380c491d8` |
| 1.19 - 1.19.2 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.19-1.19.2.zip) | `7aec2e0c56633627f8f1e1d18f01afddf7879388` |
| 1.19.3 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.19.3.zip) | `dc8450aae3e75854103c61387f7c56c2ead010e1` |
| 1.19.4 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.19.4.zip) | `fe044f3bb4bff8af8fc6f73963acd7d734adf8a8` |
| 1.20 - 1.20.1 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.20-1.20.1.zip) | `8c75d9fa52c1ed1ca12cd70b051432625c807dc1` |
| 1.20.2 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.20.2.zip) | `da570a8a150a25706c0a885ac34fe4effa64f268` |
| 1.20.3 - 1.20.4 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.20.3-1.20.4.zip) | `af9afb8611106d0688033ce018bbad16cf6d92f9` |
| 1.20.5 - 1.20.6 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.20.5-1.20.6.zip) | `e137d76255f05773be8fae962836b8ac24814121` |
| 1.21 - 1.21.1 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.21-1.21.1.zip) | `b08e6268d89c765df3403f2f1b34e0a724422f6c` |
| 1.21.2 - 1.21.3 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.21.2-1.21.3.zip) | `d415719b803bb35dd12e35389fb44f85c51df4f9` |
| 1.21.4 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.21.4.zip) | `14e92415fc14dd56cd209a486c555efe8d0529a3` |
### Using the Example Pack as a Server Resource Pack:
It's also possible to use our example pack as your server resourcepack.
**You can configure your server to use our example resource pack automatically:**
1. Open your `server.properties` file.
2. Copy the resource pack link for your version from the table above and paste it after `resource-pack=` in the file.
3. Copy the SHA1 hash for your version and paste it after `resource-pack-sha1=`.
Example:
```properties
resource-pack=https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v3/VPExample-v3-1.20.2.zip
resource-pack-sha1=da570a8a150a25706c0a885ac34fe4effa64f268
```
Save the file and restart your server.
## Step 3: Spawning Your First Vehicle
Once the plugin and resource pack are installed, you're ready to spawn your first vehicle:
1. **Give yourself a vehicle**
Use the `/v give <player> <vehicle> [red] [green] [blue]` command to obtain a vehicle.
Example: `/v give SBDevelopment ExampleCar`
2. **Place the Vehicle**
Open the garage using `/vgarage` and left-click the vehicle in the garage menu to spawn it.
3. **Drive the Vehicle**
- Enter the vehicle by right-clicking on a seat.
- Use shift right-click to open the vehicle menu.
- Use your movement keys (WASD) when in a driver seat to drive.

View file

@ -0,0 +1,4 @@
{
"position": 4,
"label": "Types"
}

View file

@ -0,0 +1,146 @@
---
sidebar_label: Cars
---
# Cars
Cars are the most common and versatile vehicles in VehiclesPlus. They are ideal for quick transportation, racing events,
and roleplay scenarios. This page will guide you through how cars work, the parts they use, and how to add custom cars
to your server.
---
## 🛠️ How Cars Work
Cars in VehiclesPlus are powered by a fuel system (if enabled) and are controlled through simple mechanics:
1. **Driving:** Use the movement keys (WASD by default) to drive.
2. **Fuel System:** Cars require fuel to run if the fuel system is enabled. See the [Fuel](../fuel/basics.md) page for
details.
3. **Passenger Seats:** Depending on the car's model, you can allow additional players to ride as passengers.
---
## 🔩 Available Parts for Cars
Cars can be customized with several parts to change their appearance and functionality:
### 1. **Skins**
- Skins represent the body of your vehicle.
They determine how your vehicle looks and are applied to the armor stand representing the vehicle.
You can fully customize the skin of your vehicle, including its appearance, position, rotation, and more.
**Here is an example of a Skin configuration with explanation:**
```json
{
# The type of part (should always be "skin" for vehicle bodies)
type: skin
# Position offsets relative to the vehicle's spawn point (steps of 0.1 allowed)
xoffset: 0 # Horizontal offset
yoffset: 0 # Vertical offset
zoffset: 0 # Forward/backward offset
# Rotation of the item on the armor stand, relative to North (0 = North, 90 = East, etc.)
rotationOffset: 0
# The item used as the vehicle's skin (on the armor stand)
item: {
material: LEATHER_BOOTS # Material used for the vehicle's body (e.g., LEATHER_BOOTS)
custommodeldata: 1 # Optional: Custom model data if you use a custom model from your resource pack
color: { # Color of the item (if relevant, e.g., for colored leather items)
red: 255
green: 125
blue: 0
}
}
# Position of the item on the armor stand (HEAD, LEFT_HAND or RIGHT_HAND)
position: HEAD
}
```
### 2. **Seats**
- Seats are parts of the vehicle where players can sit.
The seat configuration controls where the seat is placed and whether it allows steering.
**Here is an example of a Seat configuration with explanation:**
```json
{
# The type of part (should always be "seat" for vehicle seats)
type: seat
# Position offsets relative to the vehicle's spawn point (steps of 0.1 allowed)
xoffset: 0 # Horizontal offset
yoffset: 0 # Vertical offset
zoffset: 0 # Forward/backward offset
# Rotation of the seat relative to the vehicle's orientation (in degrees)
rotationOffset: 0
# Whether this seat allows driving (true = player can drive from this seat)
steer: true
# The GUI item used to represent the seat part in the configuration GUI
guiitem: {
damage: 1 # The items damage value (used for durability, if applicable)
material: DIAMOND_HOE # The material of the item (e.g., DIAMOND_HOE)
unbreakable: true # Unbreakable will be true most of the time if damage is used
flags: [ # Flags to apply to the item (can be used to hide item tooltips)
HIDE_UNBREAKABLE
HIDE_ADDITIONAL_TOOLTIP
]
}
}
```
### 3. **Wheels**
- Wheels are parts of the vehicle that determine its movement and appearance.
The wheel configuration controls where the wheel is placed, what design to use, and whether it has steering
capabilities.
**Here is an example of a Wheel configuration with explanation:**
```json
{
# The type of part (should always be "wheel" for vehicle wheels)
type: wheel
# Position offsets relative to the vehicle's spawn point (steps of 0.1 allowed)
xoffset: 0 # Horizontal offset
yoffset: 0 # Vertical offset
zoffset: 0 # Forward/backward offset
# Rotation of the wheel relative to the vehicle's orientation (in degrees)
rotationOffset: 0
# Rim design used for this wheel
rimDesignId: default
# Whether this wheel is used for steering (true = wheel is used for steering)
steering: true
}
```
---
## 🎨 Adding New Cars
Want to add custom cars to your server? VehiclesPlus makes it easy to integrate new models and designs.
1. **Model Creation:**
Create a custom car model using a 3D modeling tool like Blockbench.
2. **Resource Pack Setup:**
Add your model to the servers resource pack. See the [Models](../models/adding.md) page for detailed instructions.
3. **Configuration:**
Define the new car in the plugins configuration file. Specify properties like speed, fuel capacity, and parts
compatibility.
For a detailed guide, visit the [Adding New Vehicles](../vehicles/models/adding.md) page.

View file

@ -0,0 +1,35 @@
---
sidebar_position: 3
sidebar_label: Vehicles
---
# Vehicles
Explore the various features and customization options for vehicles in VehiclesPlus.
---
## 🚗 **Vehicles & Parts**
Discover how to set up a vehicle per type available in VehiclesPlus.
- [Cars](types/cars): Learn about cars and their features.
- [Bikes](types/bikes): Get details on how to use bikes.
- [Helicopters](types/helicopters): Understand helicopters and their mechanics.
- [Boats](types/boats): A guide to boats and water travel.
---
## ⛽ **Fuel**
Configure and manage the fuel system for vehicles.
- [Adding Fuel Types](fuel/adding): Add or modify fuel types available.
---
## 🚘 **Rims**
Customize the appearance of rims for your vehicles.
- [Adding New Rims](rims/adding): Instructions for adding custom rim styles.

View file

@ -1,9 +1,18 @@
---
sidebar_label: Plugin & Locale
---
# Plugin Configuration
This page explains the `config.yml` file, which contains generic configuration.
:::warning
**This is a configuration page for the __legacy__ VehiclesPlus v2.** If you are looking for the setup page for the new
VehiclesPlus v3, click [here](/vehiclesplus-v3/setup).
:::
*Per setting will be explained what it means as a comment (`#`).*
```yaml
# DO NOT CHANGE
config-version: 1.0.4
@ -50,11 +59,13 @@ vehiclesSpawnLocked: true
```
# Changing the locale
:::warning
Do not change the locale setting inside the settings file, instead follow these steps!
:::
1. Stop the server
2. Inside the plugin folder go to the directory 'locale'
3. Change the name of the desired language file to 'lang_en.yml' (Note: The old lang_en.yml should be renamed to something like lang_en_old.yml)
3. Change the name of the desired language file to 'lang_en.yml' (Note: The old lang_en.yml should be renamed to
something like lang_en_old.yml)
4. Start the server

View file

@ -1,11 +1,20 @@
---
sidebar_label: Sounds
---
# Sounds Configuration
This page explains the `sounds.yml` file.
:::warning
**This is a configuration page for the __legacy__ VehiclesPlus v2.** If you are looking for the setup page for the new
VehiclesPlus v3, click [here](/vehiclesplus-v3/setup).
:::
## Example file
*Per setting will be explained what it means as a comment (`#`).*
```yaml
# Below are all the available sounds, applied on the base vehicle 'examplecar'.
sounds:
@ -29,23 +38,25 @@ sounds:
```
## Adding new sounds
To add the sounds for another base vehicle, just copy the default list and change all the settings.
*Do NOT copy the `[...]`, instead copy the part below it and paste at the end of the file.*
```yaml
[...]
newbasevehicle-engine-idle:
sound: car.idle
duration: 6
newbasevehicle-engine-start:
sound: car.start
duration: 2
newbasevehicle-engine-accelerate:
sound: car.accelerate
duration: 2
newbasevehicle-engine-driving:
sound: car.driving
duration: 2
newbasevehicle-engine-slowingdown:
sound: car.slowingdown
duration: 2
[ ... ]
newbasevehicle-engine-idle:
sound: car.idle
duration: 6
newbasevehicle-engine-start:
sound: car.start
duration: 2
newbasevehicle-engine-accelerate:
sound: car.accelerate
duration: 2
newbasevehicle-engine-driving:
sound: car.driving
duration: 2
newbasevehicle-engine-slowingdown:
sound: car.slowingdown
duration: 2
```

View file

@ -1,13 +1,22 @@
---
sidebar_label: Vehicles
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Vehicle Configuration
By default, VehiclesPlus gets shipped with some example vehicles. These are made for testing the plugin and to stimulate your inspiration. You can find the correct resourcepack on the Setup page.
If you want to proceed with VehiclesPlus, it's possible to make or buy your own vehicles, and set them up in the plugin. This creates endless possibilities!
By default, VehiclesPlus gets shipped with some example vehicles. These are made for testing the plugin and to stimulate
your inspiration. You can find the correct resourcepack on the Setup page.
If you want to proceed with VehiclesPlus, it's possible to make or buy your own vehicles, and set them up in the plugin.
This creates endless possibilities!
:::warning
**This is a configuration page for the __legacy__ VehiclesPlus v2.** If you are looking for the setup page for the new
VehiclesPlus v3, click [here](/vehiclesplus-v3/setup).
:::
## Creating a new vehicle
@ -15,33 +24,44 @@ If you want to proceed with VehiclesPlus, it's possible to make or buy your own
<TabItem value="text-tutorial" label="Text tutorial (EN)">
##### Step 1: Purchase your models
The first step is to achieve the models you want to use. Make sure the models are delivered in a Minecraft-compatible `.json` file. This makes it super easy to install!
The first step is to achieve the models you want to use. Make sure the models are delivered in a
Minecraft-compatible `.json` file. This makes it super easy to install!
:::info
You can easily find VehiclesPlus-compatible models [on Polymart](https://vehicles.polymart.org/).
:::
##### Step 2: Generate the resourcepack
**Generate the resourcepack for your server using the [VehiclesPlus Resourcepack Generator tool](https://vprpgenerator.sbdevelopment.tech/).**
Just fill in your Minecraft version, choose a Namespace (leave it at `vp` to be safe) and select an Item you want to insert the models on.
**Generate the resourcepack for your server using
the [VehiclesPlus Resourcepack Generator tool](https://vprpgenerator.sbdevelopment.tech/).**
Just fill in your Minecraft version, choose a Namespace (leave it at `vp` to be safe) and select an Item you want to
insert the models on.
Then easily upload all the models you want to add to your resourcepack and click on the **Generate** button.
:::warning
**NOTE:** The tool overwrites the item configuration for the selected item. Please select an item that you currently do not use in the case you upload your own resourcepack.
**NOTE:** The tool overwrites the item configuration for the selected item. Please select an item that you currently do
not use in the case you upload your own resourcepack.
:::
###### Step 3: Create a configuration file
Now go to your Minecraft server's files.
Copy the example configuration file from the VehiclesPlus plugin folder for the type of vehicle you want to add **(for example `cars/ExampleCar.yml`)**. If you don't have the original example files in your plugin folder anymore, you can [find them here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/src/branch/master/Vehicle%20Models).
Copy the example configuration file from the VehiclesPlus plugin folder for the type of vehicle you want to add **(for
example `cars/ExampleCar.yml`)**. If you don't have the original example files in your plugin folder anymore, you
can [find them here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/src/branch/master/Vehicle%20Models).
Rename the copied file to the name of your vehicle (for example from `ExampleCar.yml` to `MyCoolCar.yml`). Also make sure to change the name inside the file, like `name: MyCoolCar`
Rename the copied file to the name of your vehicle (for example from `ExampleCar.yml` to `MyCoolCar.yml`). Also make
sure to change the name inside the file, like `name: MyCoolCar`
Now go to the skin section, and change the values to the once given by the generator.
**Example:** If your model is called MyCoolCar and has been bound to `custom_model_data: 2` change the value under `meta` to `2`.
**Example:** If your model is called MyCoolCar and has been bound to `custom_model_data: 2` change the value
under `meta` to `2`.
```yaml
list0:
@ -57,14 +77,18 @@ list0:
```
:::danger
**NOTE:** Do *NOT* copy/paste this configuration part! Only change the `type` and `meta` sections according to your situation.
**NOTE:** Do *NOT* copy/paste this configuration part! Only change the `type` and `meta` sections according to your
situation.
:::
###### Step 4: Change other settings
Now it's time to change the other settings to match your vehicle. Check the "Settings per vehicle" section below to see what each section means.
Now it's time to change the other settings to match your vehicle. Check the "Settings per vehicle" section below to see
what each section means.
:::info
This step might take some time. You need to change the settings, restart your server and see if everything is working as expected. You might need to tinker some settings multiple times.
This step might take some time. You need to change the settings, restart your server and see if everything is working as
expected. You might need to tinker some settings multiple times.
**NOTE: You have to give yourself a new vehicle to see the changes you made!**
:::
@ -72,15 +96,18 @@ This step might take some time. You need to change the settings, restart your se
</TabItem>
<TabItem value="youtube-tutorial" label="YouTube tutorial (NL/BE)">
You can find a step-by-step tutorial on YouTube by The BelgiumGames. He explains how to add the models to the resourepack and how to setup the vehicles in the config file.
You can find a step-by-step tutorial on YouTube by The BelgiumGames. He explains how to add the models to the
resourepack and how to setup the vehicles in the config file.
https://www.youtube.com/watch?v=5CbPg7ld7hw
</TabItem>
</Tabs>
## Settings per vehicle
This section explains which settings are available per vehicle.
*Per setting will be explained what it means as a comment (`#`).*
```yaml
# DO NOT CHANGE!
className: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.BaseVehicle
@ -90,7 +117,7 @@ name: ExampleCar
vehicleType: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.types.CarType
# The permissions for this vehicle
permissions:
# DO NOT CHANGE!
# DO NOT CHANGE!
className: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.VehiclePermissions
# The permission to buy this vehicle.
buyPermission: vp.buy.car
@ -134,10 +161,10 @@ baseColorList:
# The list of parts for this vehicle. The full list will be explained further below.
partList:
list0:
[...]
[ ... ]
# The max speed settings.
speedSettings:
# DO NOT CHANGE
# DO NOT CHANGE
className: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.base.storage.StorageUpgradeable
# The base max speed value (given when bought).
base: 100
@ -149,7 +176,7 @@ speedSettings:
upgradeCost: 1000
# The fuel tank settings.
fuelTankSettings:
# DO NOT CHANGE
# DO NOT CHANGE
className: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.base.storage.StorageUpgradeable
# The base fuel tank value (Liters) (given when bought).
base: 50
@ -161,7 +188,7 @@ fuelTankSettings:
upgradeCost: 1000
# The turning radius settings.
turningRadiusSettings:
# DO NOT CHANGE
# DO NOT CHANGE
className: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.base.storage.StorageUpgradeable
# The base turning radius value (given when bought).
base: 7
@ -173,7 +200,7 @@ turningRadiusSettings:
upgradeCost: 1000
# The acceleration settings.
accelerationSettings:
# DO NOT CHANGE
# DO NOT CHANGE
className: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.base.storage.StorageUpgradeable
# The base acceleration value (given when bought).
base: 50
@ -185,20 +212,20 @@ accelerationSettings:
upgradeCost: 1000
# The horn settings (not compatible with drift).
hornSettings:
# DO NOT CHANGE
# DO NOT CHANGE
className: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.base.storage.StorageHorn
# If true, the horn sound will be played at space.
enabled: true
# The sound to play for the horn.
# Full list: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Sound.html#enum-constant-summary
sound: BASS
# The cooldown (seconds) before the horn can be pressed again.
# The cooldown (seconds) before the horn can be pressed again.
cooldown: 0
# If true, the vehicle can drift when pressing space (not compatible with the horn).
drift: true
# The exhaust settings.
exhaustSettings:
# DO NOT CHANGE
# DO NOT CHANGE
className: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.base.storage.StorageSmoke
# If true, the exhaust particle will be shown.
enabled: true
@ -218,7 +245,7 @@ canExitWhileMoving: true
price: 100000.0
# The fuel settings.
fuelSettings:
# DO NOT CHANGE
# DO NOT CHANGE
className: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.base.storage.StorageFuel
# The fuel usage (Liters) of this vehicle.
usage: 6.0
@ -232,7 +259,7 @@ health: 100
trunkSize: 27
# The hitbox settings.
hitbox:
# DO NOT CHANGE
# DO NOT CHANGE
className: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.base.storage.StorageHitbox
# The length of the hitbox (from to back).
length: 3.0
@ -248,12 +275,15 @@ handModel: false
```
### Parts
Parts can be added to the vehicle. Some parts are visible (using an item), some are not.
#### Skin
The skin part represents the chassic of the vehicle.
```yaml
[...]
[ ... ]
# DO NOT CHANGE
className: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.skins.Skin
# The skin item to show.
@ -287,12 +317,14 @@ The skin part represents the chassic of the vehicle.
```
#### Seat
![carseat.png](/carseat.png =10%x)
*Please note, this part is NOT visible. The visible seat MUST be included in the skin.*
The seat parts represents a seat in the vehicle. Players can sit on each seat.
```yaml
[...]
[ ... ]
# DO NOT CHANGE
className: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.seats.Seat
# If true, the player can drive the vehicle from this seat (will only work for ONE seat!).
@ -310,41 +342,43 @@ The seat parts represents a seat in the vehicle. Players can sit on each seat.
```
#### Wheel
The wheel parts represents the wheels of a vehicle. Wheels can rotate when steering.
```yaml
[...]
# DO NOT CHANGE
className: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.Wheel
# If true, the wheel moves when steering
steering: true
# The rotation offset at spawn, depends on the configuration in the model.
rotationOffset: 180
# The skin item to show.
# For all the available settings, check out: https://www.spigotmc.org/wiki/itemstack-serialization/
skin:
==: org.bukkit.inventory.ItemStack
v: 3337
type: LEATHER_CHESTPLATE
meta:
==: ItemMeta
meta-type: COLORABLE_ARMOR
Unbreakable: true
Damage: 2
# The color of the skin item (will only work for COLORABLE_ARMOR).
color:
==: Color
ALPHA: 255
RED: 20
BLUE: 20
GREEN: 20
# The X offset (from the base).
xOffset: 0.0
# The Y offset (from the base).
yOffset: 0.0
# The Z offset (from the base).
zOffset: 0.0
# DO NOT CHANGE
UID: 7b0b9d87-502b-46c7-8b50-9bc285e0a868
# DO NOT CHANGE
isCustomPlaced: false
[ ... ]
# DO NOT CHANGE
className: me.legofreak107.vehiclesplus.vehicles.vehicles.objects.addons.Wheel
# If true, the wheel moves when steering
steering: true
# The rotation offset at spawn, depends on the configuration in the model.
rotationOffset: 180
# The skin item to show.
# For all the available settings, check out: https://www.spigotmc.org/wiki/itemstack-serialization/
skin:
==: org.bukkit.inventory.ItemStack
v: 3337
type: LEATHER_CHESTPLATE
meta:
==: ItemMeta
meta-type: COLORABLE_ARMOR
Unbreakable: true
Damage: 2
# The color of the skin item (will only work for COLORABLE_ARMOR).
color:
==: Color
ALPHA: 255
RED: 20
BLUE: 20
GREEN: 20
# The X offset (from the base).
xOffset: 0.0
# The Y offset (from the base).
yOffset: 0.0
# The Z offset (from the base).
zOffset: 0.0
# DO NOT CHANGE
UID: 7b0b9d87-502b-46c7-8b50-9bc285e0a868
# DO NOT CHANGE
isCustomPlaced: false
```

View file

@ -2,18 +2,20 @@
sidebar_position: 1
sidebar_label: About
---
# VehiclesPlus
*Realistic custom vehicles for your Minecraft server!*
[![Version](https://img.shields.io/spiget/version/70523?label=version)](https://www.spigotmc.org/resources/vehiclesplus-1-12-1-20-4.70523/) [![Downloads](https://img.shields.io/spiget/downloads/70523)](https://www.spigotmc.org/resources/vehiclesplus-1-12-1-20-4.70523/) [![Rating](https://img.shields.io/spiget/stars/70523?color=orange)](https://www.spigotmc.org/resources/vehiclesplus-1-12-1-20-4.70523/)
# VehiclesPlus v2
## What is VehiclesPlus?
VehiclesPlus is a plugin adding realistic vehicles to your Minecraft server. It support Cars, Planes, Bikes, Hovercrafts, Boats, Tanks and Helicopters. It's also possible to add your own types!
## About
VehiclesPlus v2 is the legacy version of VehiclesPlus, a plugin adding realistic vehicles to your Minecraft server. It supports Cars, Planes, Bikes, Hovercrafts, Boats, Tanks, and Helicopters. It's also possible to add your own types!
**It is recommended to use the latest version ([VehiclesPlus v3](/vehiclesplus-v3/about)), for the best experience and support.**
## Installation
Follow [the installation instructions on the Setup page](https://docs.sbdevelopment.tech/en/vehiclesplus/setup).
Follow [the installation instructions on the Setup page](setup).
## Support
Can't find the correct answer on our wiki or need more help? You can contact us in [our Discord server](https://discord.gg/z26ZGrrFWB).
Can't find the correct answer on our wiki or need more help? You can contact us
in [our Discord server](https://discord.gg/z26ZGrrFWB).

View file

@ -1,54 +1,70 @@
---
sidebar_position: 2
---
# Setup
This plugin explains the steps to take to start using VehiclesPlus.
This page will guide you through the installation process of VehiclesPlus.
:::warning
**This is the setup page for the __legacy__ VehiclesPlus v2.** If you are looking for the setup page for the new
VehiclesPlus v3, click [here](/vehiclesplus-v3/setup).
:::
## Installation
:::warning
:::info
- The plugin works on all Spigot/Paper versions starting from 1.12.x, **except for 1.14.x**!
- The plugin requires **Java 11 or higher**. Make sure your server is compatible with Java 11 or higher.
- **Make sure you have installed [ProtocolLib](https://www.spigotmc.org/resources/protocollib.1997/), [Vault](https://www.spigotmc.org/resources/vault.34315/) and an economy plugin (like [EssentialsX](https://essentialsx.net/downloads.html)).**
- **Make sure you have
installed [ProtocolLib](https://www.spigotmc.org/resources/protocollib.1997/), [Vault](https://www.spigotmc.org/resources/vault.34315/)
and an economy plugin (like [EssentialsX](https://essentialsx.net/downloads.html)).**
Make sure to check these requirements before you proceed!
:::
1. Download the latest stable version from [SpigotMC](https://www.spigotmc.org/resources/vehiclesplus-1-12-1-20-4.70523/) or [Polymart](https://polymart.org/resource/vehiclesplus-1-12-1-20-4.633).
1. Download the latest stable version
from [SpigotMC](https://www.spigotmc.org/resources/vehiclesplus-1-12-1-20-4.70523/)
or [Polymart](https://polymart.org/resource/vehiclesplus-1-12-1-20-4.633).
2. Put the .jar file into the `/plugins` folder of your server.
3. Restart your server.
3. Download the correct resourcepack for your Minecraft version below and test it out in your Minecraft client.
4. If you are satisfied, you can install it into your Minecraft server:
1. Open the `server.properties` file.
2. Copy the link of the [Click here](#) button for your server version and paste it after `resource-pack=`.
3. Copy the SHA1 hash for your server version and paste it after `resource-pack-sha1=`.
1. Open the `server.properties` file.
2. Copy the link of the [Click here](#) button for your server version and paste it after `resource-pack=`.
3. Copy the SHA1 hash for your server version and paste it after `resource-pack-sha1=`.
| Version | Download | SHA1 Hash |
|:---:|:---:|---|
| 1.12.2 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.12.2.zip) | `76628bbca8999467b3b050b05abfffb1797e1311` |
| Version | Download | SHA1 Hash |
|:---------------:|:--------------------------------------------------------------------------------------------------------------------------------------------------:|--------------------------------------------|
| 1.12.2 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.12.2.zip) | `76628bbca8999467b3b050b05abfffb1797e1311` |
| 1.13.2 - 1.14.4 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.13.2-1.14.4.zip) | `17b5dc4b300bb447aa3cd20824b6b7011fd1c485` |
| 1.15.2 - 1.16.1 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.15.2-1.16.1.zip) | `d6e4065f8b7fa18b857542c8c6aab161cbf6ed9c` |
| 1.16.2 - 1.16.5 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.16.2-1.16.5.zip) | `67f8fcdce1fcf6b50d3024fa10980ca580b5423c` |
| 1.17 - 1.17.1 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.17-1.17.1.zip) | `06cea4fef9a50199ad3e5a251cab730acb42c496` |
| 1.18 - 1.18.2 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.18-1.18.2.zip) | `412f0f3210a7a36787575595a69606e5fb6af9b2` |
| 1.19 - 1.19.2 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.19-1.19.2.zip) | `8e7641544287a7ef68641f8343b841e2fea1f5ef` |
| 1.19.3 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.19.3.zip) | `baf2aef8258514765b5d2540879704f965287b59` |
| 1.19.4 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.19.4.zip) | `c19a6236bad4b263c60a48e72cef143daf861015` |
| 1.20 - 1.20.1 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.20-1.20.1.zip) | `ddda0a7df5fe698ebb060ed60acfa38283404093` |
| 1.20.2 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.20.2.zip) | `262313acf3658b73478b2572c990cbcdbd054fd7` |
| 1.17 - 1.17.1 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.17-1.17.1.zip) | `06cea4fef9a50199ad3e5a251cab730acb42c496` |
| 1.18 - 1.18.2 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.18-1.18.2.zip) | `412f0f3210a7a36787575595a69606e5fb6af9b2` |
| 1.19 - 1.19.2 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.19-1.19.2.zip) | `8e7641544287a7ef68641f8343b841e2fea1f5ef` |
| 1.19.3 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.19.3.zip) | `baf2aef8258514765b5d2540879704f965287b59` |
| 1.19.4 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.19.4.zip) | `c19a6236bad4b263c60a48e72cef143daf861015` |
| 1.20 - 1.20.1 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.20-1.20.1.zip) | `ddda0a7df5fe698ebb060ed60acfa38283404093` |
| 1.20.2 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.20.2.zip) | `262313acf3658b73478b2572c990cbcdbd054fd7` |
| 1.20.3 - 1.20.4 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.20.3-1.20.4.zip) | `1924cd9b7c425a794d024cb38829405c20c41722` |
| 1.20.5 - 1.20.6 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.20.5-1.20.6.zip) | `34db0f8e5abb84abe19a8a62a2260e4bf6026cfe` |
| 1.21 - 1.21.1 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.21-1.21.1.zip) | `ef80c827b251b845b42d3d0b912f8b681681c172` |
| 1.21 - 1.21.1 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.21-1.21.1.zip) | `ef80c827b251b845b42d3d0b912f8b681681c172` |
| 1.21.2 - 1.21.3 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.21.2-1.21.3.zip) | `48a72d353c16b7a6b6913cef0b01a20444c08662` |
| 1.21.4 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.21.4.zip) | `03184cc465c4d947fceef2137a1e8ed274a04e0a` |
| 1.21.4 | [Click here](https://git.sbdevelopment.tech/SBDevelopment/VehiclesPlus/raw/branch/master/ResourcePacks/Examples-v2/VPExample-v2-1.21.4.zip) | `03184cc465c4d947fceef2137a1e8ed274a04e0a` |
## Adding your own vehicles
- **Do you already have some vehicle models to use**, or do you want to design your own models? Check out [the usage page](/en/vehiclesplus/configuration/vehicles) for more information about that.
- **Do you already have some vehicle models to use**, or do you want to design your own models? Check
out [the usage page](/en/vehiclesplus/configuration/vehicles) for more information about that.
- **Do you want to buy pre-made vehicle models for your server**? Check out our recommended sellers below:
- [SBDevelopment official models](https://polymart.org/team/sbdevelopment.93): These models are made for VehiclesPlus and allow you to use all the functionalities the plugin has.
- [Saturn Studio](https://polymart.org/user/saturnstudio.235): Sells a lot of vehicles, like Tesla and Emergency Services. Also has configurations available on request.
- [MKModels](https://polymart.org/user/melchmwoan.2244): Has different types of cheap vehicles available. Configurations are not included.
- [PixelMine](https://polymart.org/user/pixelmine.728): Has a big collection of cars and other vehicles. Configurations are not included by default.
- [SBDevelopment official models](https://polymart.org/team/sbdevelopment.93): These models are made for
VehiclesPlus and allow you to use all the functionalities the plugin has.
- [Saturn Studio](https://polymart.org/user/saturnstudio.235): Sells a lot of vehicles, like Tesla and Emergency
Services. Also has configurations available on request.
- [MKModels](https://polymart.org/user/melchmwoan.2244): Has different types of cheap vehicles available.
Configurations are not included.
- [PixelMine](https://polymart.org/user/pixelmine.728): Has a big collection of cars and other vehicles.
Configurations are not included by default.