Limited Mob Spawner - ProjectZulu/Project-Zulu GitHub Wiki

A Custom Mob Spawner functionally identical to the vanilla spawner with the obvious exception of having a GUI to control key properties. It can only be accessed when in Creative mode. By default, it only activates (spawns mobs) when a non-creative player is nearby.

The spawner can be setup to cycle through several different creatures by inputting the creatures full name and an associated weighted chance. By clicking the New Entry button a new creature slot will be created.

Spawner Settings

The spawner has a few global options:

  • Spawn Delay Min/Max: minimum and maximum which controls how long after a mob spawns that another mob will be spawned.
  • Activation Range: controls how close a non-creative player must get to activate the mob spawner.
  • Max Nearby: controls the maximum, of the current entity it is trying to spawn, can be nearby before it will try to spawn another one.
  • Max Spawn: Sets the maximum number of all creatures that will be spawned from the spawner before it will remove itself. Note that a value of 0 will spawn indefinitely. Spawner GUI Main PageSpawner GUI Main Page
  • Spawn Offset: An offset used when spawning and counting entities. Specified in X/Y/Z coordinates. Not used for activation range.
  • Spawner Range: Two settings. One controls the XZ plane distance while the other set the Y range. Creates a Spheroid centered at Spawn Offset.

Creature Settings

The creature page has a few unique properties: name, sound, weight, and an NBT.

  • Name: The fully qualified name of the entity this slot corresponds to
  • Sounds: The sounds that should be played when this creature is spawned
  • Wieght: The weighted chance this creature is selected to spawn
  • NBT: The custom NBT that will be assigned to this creature before position and rotation are set by the spawner.
  • Spawner Tags: Spawn tags inherited from Just Another Spawner. Allow overriding the CanSpawnHere check per entity.

NBT Editing

Editing the NBT is a quasi-straightforward affair. For values tags (ints, double, float, etc.), simply click the tag you want to edit and edit the string representation in the bow below the viewer. Once your changes are complete you can save it or click abort to abandom your changes.

Spawner GUI Creature Page with SelectorSpawner GUI Creature Page with Selector

Container tags are edited similarly but are instead represented by a series of :, segments for each tag contained within. is the string name of the tag, such as "Equipment" while is a integer representing the type of type (int, double, float, etc). See Minecraft Wiki article on NBT for the appropriate IDs.

*Limited Spawner Tags

Spawner Tag Editing

JAS style tags per entity entry are now supported. This allows the user to override the default spawn condition. For details on how tags work please see the JAS wiki on tags (https://github.com/Crudedragos/JustAnotherSpawner/wiki/Tags) . Only the spawn tag is supported. Format spawn:propTag1,valuesSeperatebyCommas:propTag2,moreValues. Valid tags are limited to spawn, light, block, blockRange, blockFoot, spawnRange, sky, minSpawnHeight, maxSpawnHeight, liquid, opaque, normal, solidSide, difficulty, torchLight, ground, top, fill, modspawn, origin, players, entities, random, writenbt.

Debug Mode

Debug mode purpose is to allow map makers the ability to test the spawner before letting others trigger it. This is accomplished in a few ways:

  • Creative-Players cause it to activate and spawn creatures
  • Spawning creatures does not count towards the cap
  • Current State is stored and can be reset to if changes do not performa as expected The second feature is most important for editing NBT tags which, if not handled correctly, may cause undersired results. Usually if an NBT would cause a crash when writing to entity it will simply not write to NBT. This is not gauranteed behaviour. If debug mode is enabled when the error is detected the Spawner will be reset to the saved state.

Adding Custom Sounds

Valid sounds are .ogg files. Custom sounds can be added by placing them inside the config/Project Zulu/CustomResources directory. They are loaded ingame as sounds.<filename>.
Streaming sounds can be added by placing them in config/Project Zulu/CustomResources/Streaming or by prefixing the filename with streaming i.e. streaming.armadilloSound.ogg.

Screenshots

⚠️ **GitHub.com Fallback** ⚠️