Just Another Spawner v0.11.0: Analytics

 
Twilight forest structure support was readded. This also marks comparability support being a seperate module (still unified download). It appears in the modlist as JASCompatability.

This update continues the trend of quality of life improvements in the last few updates. This time in the form of analytics commands for debugging. They allow users to directly query JAS about specfific behaviours. For example, the canSpawnHere command would be used to check if a particular entity can spawn at a specfic coordinates. It will also display the individual component (entity type, entity, spawnlistentry) that is responsible for the failure which should make it easier to test tags. Another example would be the composition command which displays the amounts of various entities in the world, as well as the number that can despawn. listspawns will list the spawnlist of the biome or structure the player is in.

See JAS wiki: https://github.com/Crudedragos/JustAnotherSpawner/wiki/Commands

All JAS commands are triggered via a single command: /jas. Each individual command is called by providing the command name as the second argument /jas ; i.e. /jas killall. In almost all scenarios valid entries are case sensitive (player names, entity names, entity types, etc.) and as such using tab completion to get the correct-case is recommended.

Analytical Commands
These commands are used to enquire about how JAS is currently functioning. Primarily intended for diagnosing perceived problems.


countcap: Sends chat message to player with count relative to entity cap of EntityType requested.
Typical Form: '/jas countcap '
* Target player is the name in String form of a player in the world. Used to fetch local dimension ID. Alternatively, the dimensionID may be provided directly. Either may ommited and the command sender will be used as target player.
* EntityType in String. i.e. AMBIENT, MONSTER, OPENSKY, etc. Character * indicates to print all types. Entity Types are valid for tab compleion.
listspawns: Sends chat message to player with spawnlists of EntityType requested.
Typical Form: '/jas listspawns '
* Target player is the name in String form of a player in the world. Used to fetch local biome or structure. Alternatively, the package biome or structure name may be provided directly. Either may ommited and the command sender will be used as target player.
* EntityType in String. i.e. AMBIENT, MONSTER, OPENSKY, etc. Character * indicates to print all types. Entity Types are valid for tab compleion.
canspawnhere: Sends chat messege to player with whether chosen entity could spawn at players location (neglecting players collision box).
Typical Form: '/jas canspawnhere '
* Target player is the name in String form of a player in the world. Used to get biome or structure. May be ommited and the command sender will be used as target player.
* Entity is the registered name of the entity. Indepedent of internal mob names; i.e. naming tamed animals.
composition: Sends chat messege to player number of loaded entities of specified type as well as percentage that will despawn.
Typical Form: '/jas composition '
* Target player is the name in String form of a player in the world. Used to fetch local world instance. May be ommited and the command sender will be used as target player.
* EntityType in String. i.e. AMBIENT, MONSTER, OPENSKY, etc. Character * indicates to print all types. Entity Types are valid for tab compleion.
locate: Sends message to player stating location of entities with the provided name or in the provided group. Displayed name is green if it can despawn, red if it cannot in its current state / location.
Typical Form: '/jas locate '
* Target player is the name in String form of a player in the world. Used to fetch local world instance. May be ommited and the command sender will be used as target player.
* EntityType in String. i.e. AMBIENT, MONSTER, OPENSKY, etc. Character * indicates to print all types. Entity Types are valid for tab compleion.
entitypackage: Sends message to player stating the package name of the class registered to the provided entity name.
Typical Form: '/jas entitypackage '

Some more general use commands were also added which should improve quality of life.
'saveconfig': Saves the currently loaded world settings to the configuration files overwriting any data present. If the files were deleted, they will be created.
'loadconfig': Loads the world settigns from the configuration files disregarding the currently loaded world settings.
'killall': Kills all entities that match the criteria. See wiki for details. Beware, it is possible to kill boss entities that may not respawn such as the enderdragon.
Finally, but not completely least, what would a JAS update be without a new tag or two. Well heres three:
* isTamed and isTameable: Both chainable and invertible. Compatible with entities that extend the vanilla class hierarchy. Other entities may implement the jas.api.ITameable interface. Project Zulu Foxs, for example, are not yet compatible.
* location: chainable and invertible. Format :location,targetX,targetY,targetZ,varX,varY,varZ. Note that the range in along a coordinate specifiecd by a target and variance is from (targetX - varX -> targetX + varX)

Read more ...