Skip to main content

Configuration

The configuration file for Nexal TPA. Located at plugins/Nexal TPA/config.yml.

config.yml
# Nexal TPA Configuration

# Request timeout in seconds
request-timeout: 60

# Warmup delay in seconds before teleport (0 = instant)
warmup-delay: 3

# Cooldown between sending requests in seconds
cooldown: 30

# Allow TPA while in combat
allow-in-combat: false

# Combat tag duration in seconds
combat-tag-duration: 10

# Particle aura during teleport warmup
warmup-particles:
enabled: true
# Particle type, e.g. PORTAL, END_ROD, FLAME, ENCHANT, DUST.
# The names from before 1.20.5 (ENCHANTMENT_TABLE, REDSTONE) work too.
type: PORTAL
# Number of particles per ring
count: 15
# Radius of the spiral around the player
radius: 0.8
# How fast the spiral rotates (ticks per update)
update-interval: 2

# Worlds where TPA is disabled
disabled-worlds: []

# Maximum pending incoming requests per player (0 = unlimited)
max-requests-per-player: 10

# Whether cross-world TPA is allowed
allow-cross-world: true

# Whether taking damage cancels teleport warmup
warmup-cancel-on-damage: true

# Clickable accept/deny buttons in chat when receiving a request
clickable-messages:
enabled: true

# Cross-server TPA on a BungeeCord or Velocity network (README: Cross-Server Support).
# Install the plugin on every backend server and give them all the same settings below.
# Velocity needs bungee-plugin-message-channel = true in velocity.toml (the default).
# Messages travel over a player's connection: a server with nobody online can neither send
# nor receive requests.
cross-server:
# Turn on cross-server TPA. Leave off on a single server.
enabled: false
# Shared secret that signs every message between the servers, so nobody can forge one.
# Use the same long random value (at least 16 characters) on every server, and keep it private.
# Cross-server TPA refuses to start while this is empty or still this default.
secret: "change-this-to-a-long-random-secret"
# Seconds a message stays valid. Older ones are refused, so a recorded message cannot be
# sent again later. Raise it only if the servers' clocks differ by more than this.
max-message-age: 30

# Economy settings (requires Vault)
economy:
# Enable TPA fees
enabled: false
# Cost per TPA request (charged to the sender on teleport)
tpa-fee: 100.0
# How fees are shown in messages, menus and history. %amount% is the number
price-format: "$%amount%"
# The number, as a Java DecimalFormat pattern: , groups thousands, .00 gives two decimals
number-format: "#,##0.00"
# Leave out the decimals of whole amounts: $1,000 rather than $1,000.00 (but $1,000.50)
hide-zero-decimals: true

# History settings
history:
# Maximum history entries stored per player
max-entries-per-player: 50

# Storage settings
storage:
# Storage type: json or sql. On a network, point every server at the same SQL database
# to share the TPA toggle, block list and history (JSON keeps them per server).
type: json

# SQL settings (used when type is "sql")
sql:
host: localhost
port: 3306
database: minecraft
username: root
password: ""

Configuration Options​

Below is a reference of the main configuration sections:

request-timeout​

Nexal TPA Configuration

Request timeout in seconds

warmup-delay​

Warmup delay in seconds before teleport (0 = instant)

cooldown​

Cooldown between sending requests in seconds

allow-in-combat​

Allow TPA while in combat

combat-tag-duration​

Combat tag duration in seconds

warmup-particles​

Particle aura during teleport warmup

disabled-worlds​

Worlds where TPA is disabled

max-requests-per-player​

Maximum pending incoming requests per player (0 = unlimited)

allow-cross-world​

Whether cross-world TPA is allowed

warmup-cancel-on-damage​

Whether taking damage cancels teleport warmup

clickable-messages​

Clickable accept/deny buttons in chat when receiving a request

cross-server​

Cross-server TPA on a BungeeCord or Velocity network (README: Cross-Server Support). Install the plugin on every backend server and give them all the same settings below. Velocity needs bungee-plugin-message-channel = true in velocity.toml (the default). Messages travel over a player's connection: a server with nobody online can neither send nor receive requests.

economy​

Economy settings (requires Vault)

history​

History settings

storage​

Storage settings