BowsPlus v0.1.3 - Shoot with any Entity!

BowsPlus allows you to turn any bow into an entity shooting machine. That means you can shoot everything, from creepers over fish to primed TNTs :slight_smile:

The banner is commissioned for me by the skilled EglesArt

Download - v0.1.3

I am still working on an automated solution, until then, I have manually uploaded it here:

Source: GitHub


Grab any bow and use the commands listed below, your bow will then fire the entity you defined - given that the entity is recognized, but, the command will tell you if that was not the case.

Config: example


(aliases: bow, bp)

`/bowsplus reload - reload the configs
/bowsplus [type] [subvalue] - set your bow to spawn

  • valid types:
    1. entity [entityID] [subvalue] - spawn an entity, e.g. ‘minecraft:creeper’
    1. material [itemID] [subvalue] - spawn an item, subvalue is the minecraft name, e.g. ‘minecraft:cobblestone’
      /bowsplus reset - reset it :)`

Entity IDs and Item IDs have to be the names as defined by minecraft / any mods you have, the plugin allows for tab complete! Thanks to pie_flavor for pointing out the catalogType hook :slight_smile:

Subvalues are optional at the moment, they are being implemented and will include subtypes like horse variants, wood variants etc.


bowsplus.cmd.reload - Allows user to reload the configs bowsplus.type.entity - Allows user to spawn an entity bowsplus.type.entity.entity-enum - Allows user to spawn the specific entity if required because of the config setting bowsplus.type.item - Allows user to spawn an item bowsplus.type.item.item-id - Allows user th spawn the specific material if required because of the config setting

Phoning home

Yes, BowsPlus phones home. The plugin calls my server, and saves the following to the database:

  • the plugin name
  • the plugin version
  • the server IP
  • the port The IP and port are never shown, they just are used to differentiate servers from each other.

I would like you to keep the plugin doing this, so I have an idea how many servers are using which version, that’s basically it. To turn it off, change callhome to false

Issues? Suggestions? Create an issue: click


Tip: You can use GenericArguments.catalogType and skip the EntityType and ItemType parsing.

Thanks, you are right! I will experiment with that :slight_smile:

First update:

v0.1.1 - fix subcommands not working logically, add proper item type and entity type parsing with tab completion - add reset subcommand

Nice :smile:

I would suggest you use the server ip and port to generate a hash or something in the plugin and then send that to the server and use it to identify which server it is. That seems a bit more… private.

1 Like

Mhhh noted. I will have to think about this, this affects all my plugins, and also the server side of it, I have to do this right :smiley:

v0.1.2 - addresses issue #1 - allow for proper spawning of Projectiles (they are special :wink: )

If you don’t mind me asking, why is it that you use your own system instead of Hidendra’s system?

I think one of the main reasons was that I felt like everyone added this to their plugins and thus many people deactivated this [globally] because with 30+ plugins this can get intense :wink:

And nowadays the metrics system has become way too unreliable, it is more down or lagging than it is operational :confused:

Personally I find it is a good thing to have one method to disable the stat tracking though instead of a separate toggle for every plugin as it gives the server owner easy and quick control to disable metrics. Generally if they want metrics or other server communication off, they want it off for every plugin.

While mcstats may not be supported(or even up 99% of the time) anymore, I highly recommend you check out bStats instead as it has official support for Sponge, custom charts, and has a very high up-time. It is open source as well which is good so server owners and plugin developers can understand with a guarantee what is being communicated, processed, and stored. As a whole I’ve had great experience with it and using the “lite” version of its metrics has allowed it to barely impact my jar sizes. The full featured, custom chart, version does not have too large of an effect either. If you do consider switching to it, make sure to keep a disclosure about it on your post and how to disable it.

Their website:
Website Github:
Metrics Github:


Alright, I will look into this next week :slight_smile:

In the meantime, another update:

v0.1.3 - display warnings for unfinished and messages for not working entity types

1 Like