Spawner

Creeper Spawner 2

This plugin allows you to set mob spawner types and optionally gather mob spawners with a Silk Touch enchanted tool.


Features

  • You can change the type of spawner you are looking at or holding by using /spawner <EntityType>. For example /spawner creeper will change the spawner to a creeper spawner.
  • It will tell you what kind of spawner you interact with or type /spawner while looking at it.
  • Command to give yourself or another player a spawner of a given type.
  • /spawner list and /spawner help commands that display the contents of text files so you can customize them to your liking.
  • Command to remove entities in a given radius with /spawner remove <EntityType> [radius]
  • This plugin may be able to replace other plugins that store mob spawner types as the item durability. It will also attempt to remove the Silk Touch enchant from the spawner that some plugins add otherwise players can use them as a Silk Touch enchanted tool.
  • Config option to prevent players from making spawners of bad entities.
  • Config option to prevent explosions from destroying spawners.
  • Config file to change the language.

This plugin may use various bits of code I found on the Bukkit forums.


Installation

  • Drop the plugin into your plugins folder like any other plugin.
  • Restart the server.
  • If you are updating from an older version you must either delete your language.yml file or update it with the new entries or you will get errors.
  • Make sure to configure it to your liking by editing the config.yml.
  • Type /spawner reload to reload any changes you make to the language.yml or config.yml files.
  • If you want players to be able to break spawners add permission for spawner.break.<entity>
  • If you want players to be able to mine spawners with a silk touch enchanted tool add permission for spawner.mine.<entity>
  • If you want players to be able to place spawners add permission for spawner.place.<entity>
  • <entity> in the above points can be any entity type (all lowercase) or * to indicate all entities. For example spawner.place.* will allow players to place any spawner type.


Spawner


Entity Types

You can make spawners any of the entity names listed here. Generally you would use the name that appears inside the quotes in the brackets. For example PigZombie will work while PIG_ZOMBIE will not.

The config.yml file has a section for valid_entities where you can list entities you want players to be able to use.


Commands

/spawner <entity>
Switch the spawner you're looking at or holding to the given mob entity type.

/spawner give <entity> [player]
Give a spawner to yourself or another player.

/spawner list
Display the contents of the spawner/list.txt file.

/spawner help
Display the contents of the spawner/help.txt file.

/spawner remove <entity> [radius]
Removes entities of the specified type within a given radius.

/spawner reload
Reload the plugin. Useful if you make changes to any of the files.


Permissions

spawner.*
Gives all Spawner permissions.
Default: op

spawner.reload
Gives access to use /spawner reload to reload the plugin.
Default: op

spawner.set.<entity>
Gives access to use /spawner <entity>
Use spawner.set.* to allow all spawner entity types.
Default: op

spawner.get
Gives access to right-click a spawner or use /spawner to get the spawner entity type.
Default: op

spawner.break.<entity>
Allows players to break spawners as normal.
Use spawner.break.* to allow all spawner entity types.
Default: op

spawner.mine.<entity>
Allows players to mine spawners with a silk touch enchanted tool.
Use spawner.mine.* to allow all spawner entity types.
Default: op

spawner.place.<entity>
Allows players to place spawners.
Use spawner.place.* to allow all spawner entity types.
Default: op

spawner.give.<entity>
Gives access to use /spawner give <entity>
Use spawner.give.* to allow all spawner entity types.
Default: op

spawner.give.others.<entity>
Gives access to use /spawner give <entity> <player>
Use spawner.give.others.* to allow all spawner entity types.
This can also be run from console.
Default: op

spawner.help
Gives access to use /spawner help
Default: op

spawner.list
Gives access to use /spawner list
Default: op

spawner.remove
Gives access to use /spawner remove <entity> [radius]
Default: op


Tips

  • Edit your config.yml and do /spawner reload to reload the changes.
  • Make sure you aren't looking at a spawner when you're trying to change the spawner you're holding.
  • It can also change an entire stack of spawners you're holding.
  • If you try to update the plugin with a plugin manager without restarting the server you may run into issues (such as duplicate spawner drops).


TODO

If they are crossed out it means they are finished or being worked on and may be in the next release.

  • Add ability to limit the max creatures spawned by spawners.
  • Add config option to change spawn frequency of all spawners.
  • Add amount parameter.
  • Add ability to limit the number of spawners a player can give/change.
  • Add baby spawners.
  • Armor possible?
  • Compatibility with Vault so that you can make it cost money to get/change a spawner.


Metrics

This plugin collects anonymous statistics about your server so that I can better understand how people are using the plugin.

It sends these stats to MCStats.org where it's publicly available. These statistics include your Java version, operating system, authentication mode, system architecture, number of system cores, server location, game version, server software, and which version of this plugin you are using.

If you would like to opt out of this anonymous statistics collection process then you can disable it by editing the file /plugins/PluginMetrics/config.yml and changing opt-out to true.

Spawner


Entity Types

Creating a Spawner From Another Plugin

Spawner config.yml

Source

Donations

If you like this plugin please consider donating towards its development. This will encourage me to work on it more. Your donation is very much appreciated!

PayPal: You can find a donate link on the top-right of the page.
Bitcoin: 13Ypntcsv33jb9voWpkAUFZAAMzWAgEjqT

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of ryvix ryvix May 16, 2014 at 02:32 UTC - 0 likes

    @Weboss16: Go

    Are you in creative mode?

  • Avatar of Weboss16 Weboss16 May 16, 2014 at 02:28 UTC - 0 likes

    @Weboss16: Go

    I added permission spawner.break.* and still no, the config also doesn't have an option for not dropping spawned spawners, do idk.

  • Avatar of Weboss16 Weboss16 May 16, 2014 at 02:27 UTC - 0 likes

    I am an Operator on my server with the permissions spawner.* and spawner.mine but spawned spawners that I mine do not drop. I don't know about legit spawners though.

  • Avatar of ryvix ryvix May 14, 2014 at 04:54 UTC - 0 likes

    @NinjaKingRo: Go

    Hmm, this sounds more like a custom thing. Maybe I could add another version with extra features which may bloat it that people can toggle, or even add some sort of addon/plugin type system but I fear that might also bloat it.

    I have experimented with limiting the number of mobs spawned at one time but if the server is restarted it causes issues since meta data isn't persistent and therefore does not limit the mobs properly. Scanning all mobs in all chunks is also likely pretty resource intensive. Most ways I've experimented with so far seem to be somewhat laggy or bloated and I'm trying to keep things somewhat efficient.

    However, what you want isn't that difficult to accomplish. There are already enderdraggon plugins out there that will respawn an enderdragon when it dies, or even use the eggs to respawn it which can also be crafted. I think there was a plugin called Dragon Eggs but I haven't checked it in awhile and I'm not sure if it's updated.

  • Avatar of NinjaKingRo NinjaKingRo May 14, 2014 at 04:28 UTC - 0 likes

    Can you add a way to limit the amount of mobs a spawner can spawn with the mobs it has already spawned also have delay

    EXAMPLE:

    I place an enderdragon spawner in the end, it checks to make sure there are no already spawned enderdragons, then it waits 30 minutes, finally spawning the enderdragon.

  • Avatar of ryvix ryvix May 05, 2014 at 23:56 UTC - 0 likes

    @themanrules81: Go

    Quote from themanrules81:

    It be cool to have each spawner set to a player so only that player can pick it back up

    The ability to protect placed spawners is out of the scope of this plugin. There are plenty of plugins that protect blocks such as WorldGuard for example. The only way this plugin protects them is from explosions because we had a lot of peoples spawners accidentally getting blown up.

    Quote from themanrules81:

    if possible to be able to see how many a person has placed down

    I will think about limiting the number of spawners they can have placed at one time which should be able to provide a way to see how many they have placed.

    Quote from themanrules81:

    also be able to set to have the spawners mine or not mined with slick touch

    There are already permissions to prevent players from breaking and/or mining spawners. Sorry if you meant this as part of something else but your message is kind of clumped together and a bit hard to decipher.

    Quote from themanrules81:

    so they can't mine more than they should get

    I have it on the todo list to limit the number of spawners a player can give/change and I will think about your other idea of limiting the number they can have placed at any one time (because that might be useful to help prevent lag) but I'm not sure if I will add a way to prevent them from mining more than a set limit but we will see. I just don't want to bloat it with useless features.

    Thank you for your suggestions.

  • Avatar of themanrules81 themanrules81 May 05, 2014 at 23:30 UTC - 0 likes

    It be cool to have each spawner set to a player so only that player can pick it back up and if possible to be able to see how many a person has placed down I think this would be a great add on to this plugin if you could be added in and also be able to set to have the spawners mine or not mined with slick touch and only have players pick up say spawner they placed down so they can't mine more than they should get this in it be a big help.Thx

  • Avatar of ryvix ryvix Apr 24, 2014 at 20:22 UTC - 0 likes

    Spawner v1.8 - 24 April 2014

    • Built against Bukkit 1.7.9-R0.1-SNAPSHOT with Java 1.7. Note that this requires Java 1.7 or higher.
    • Added permission node to place spawners. You must add spawner.place.* if you want players to be able to place all spawners.
    • Added /spawner remove <entity> [radius] to remove entities.
    • Change config bad_entities to valid_entities. Update your config!
    • New language, remove/update your language.yml file for new changes or you will get errors!
    • Added language for entity names. Supports colour codes.
    • Update deprecated code.
    • Using our own SpawnerType instead of relying on EntityType for values.
    • Added MCStats Metrics.
  • Avatar of ryvix ryvix Apr 20, 2014 at 02:01 UTC - 0 likes

    @RAFA_GATO_FOFO: Go

    There isn't currently a permission node to place spawners. I could add one but if you dont give them permission to mine them then they can't mine them in the first place. So the solution should be to not give them spawners if you don't want them to use them. However I know there are certain plugins which give permissions to a selected area so it might be useful to have a place permission.

  • Avatar of RAFA_GATO_FOFO RAFA_GATO_FOFO Apr 20, 2014 at 01:34 UTC - 0 likes

    @ryvix: Go

    What's the permission node to PLACE spawners?

    BFAK:90939176,f791389e71eebed8d3158ea540f3084ac6a2c72ed07541957750c1599a6c65ac

What do you want added next?

  1. Choices:

  1. Results
  2. 4 comments

Facts

Date created
Dec 03, 2012
Categories
Last update
Apr 24, 2014
Development stage
Release
License
GNU General Public License version 3 (GPLv3)
Curse link
Spawner
Downloads
51,981
Recent files

Authors