HomingArrows

Plugin description
Homing arrows is a lightweight plugin that makes arrows follow their targets! Can be implemented in minigames, used to enhance the survival experience or even simply as a unique feature to make your server stand out. Works with Bukkit and Paper Minecraft servers.
Features
- Highly customizable
- Toggleable aimlock mode
- Works with arrow variants
- Optional permissions system
- Support for custom items
-
Optional: Custom arrows
Commands
/arrowsreload - Reloads the plugin's configuration
/arrowsitem - Spawn a new bow and crossbow that shoots homing arrows, only if item checks are enabled in the config (Read bow.yml for more information)
Permissions
arrows.use - Lets a player use the plugin, only if enabled in settings.yml
arrows.admin - Grants access to all the commands
Configuration
The configuration is split into settings.yml, messages.yml, targets.yml and bow.yml and crossbow.yml for each weapon respectively.
settings.yml
Code (YAML):
# What a line in messages.yml will start with if you don't want to use messageformat
# For example "Plugin > some message" is the default message
# You can change it to "some message" if you replace the default with the following in messages.yml
# example: "--some message"
negateformat
:
"--"
# Toggles aimlock mode (arrows are sent directly to target instead of being guided)
# Will ignore strength setting if enabled
aimlock
: false
# Range in blocks which an arrow detects a target
detectionrange
: 50
# How much an arrow will change its course to the target. 0 means the arrow will not seek the target
# A percentage value between 0 and 1, however it is advised to use values lower than 0.05. See below if you really want to know more
strength
: 0.04
# Sets if mob arrows are affected
mob
: true
# Sets if player arrows are affected
player
: true
# Sets if players require permission "arrows.use" so that their arrows are homing
# Players have the permission by default if you hadn't set permissions for your server
# This setting is irrelevant if player is set to false. Make sure to keep that as true even if you want to use permissions!
permission
: false
# Sets if arrows will target other players
targetplayers
: true
# Sets if arrows will target mobs
targetmobs
: true
# Sets if only bows with specified characteristics (defined in bow.yml and crossbow.yml) will affect arrows
# The way it works is by checking the name and lore of the item that shot the arrow
# You can remove either checks by deleting the respective field in the aforementioned yml files.
item
: false
# Sets if arrows from crossbows will be affected
crossbow
: true
# The percentage which an arrow will change its direction towards the target is given by (20 * strength value) per second
# This means that with a strength value of 0.01, the arrow will change its direction by 20% (0.20)
# If you want to have strong aim assist, it is better to turn aimlock to true instead.
# Confused? Ask the developer any question here: https://www.spigotmc.org/threads/homingarrows.561862/
messages.yml
Code (YAML):
# The format that all messages will follow unless negated with prefix stated in settings.yml
messageformat
:
"&eHomingArrows &8> &f{message}"
nopermissions
:
"You can't use that command!"
usage
:
"Usage: {usage}"
bow.yml & crossbow.yml
Code (YAML):
# This file decides what a bow that shoots homing arrows will look like
# If item is set to false in settings.yml, ignore this file
# Use /arrowsitem in game to spawn an example of the item defined here (Make sure to reload the plugin first if you made changes!)
# Whether bows can shoot homing arrows
# Set to false to disable
enabled
: true
# Name of an bow that shoots homing arrows
# Do disable name checks, uncomment the line below and delete the original line
#name: "-"
name
:
"&6Tracker Bow"
# Lore content a bow that shoots homing arrows
# You can set 1 or more lines
# Set to the following to disable lore checks
#lore:
# - null
lore
:
-
"&bThey can hide but"
-
"&bthey cannot run"
# Still confused? Ask the developer any question here: https://www.spigotmc.org/threads/homingarrows.561862/
targets.yml
Code (YAML):
# This file does nothing unless targetmobs is set to true in settings.yml
# Sets if the settings below are applied
uselist
: false
# If true, only those mobs listed blow are potential arrow targets
# If false, the mobs listed below will be ignored
whitelist
: false
# For valid elements, visit https://hub.spigotmc.org/javadocs/spigot/org/bukkit/entity/EntityType.html as a guide
# Use only for reference if you're not sure what a mob's type is
# e.g. mooshroom's type is mushroom_cow
# Note things like "minecart" are pointless to put here as the plugin ignores them anyway
list
:
- zombie
- creeper
Support
If you found a bug or have a suggestion,
add a comment
Satisfied? Leave a review!
Looking for hitscan mechanics instead? Check this out!