Nonvanilla mechanics

This page is intended as a reference on the nonvanilla game mechanics that are present on Purity Vanilla, usually necessary to optimize server performance, or to prevent server rule-breaking exploits such as duping. The hope is that this page can server as a useful and technically accurate reference for players building automatic farms, mob farms, and any other builds for which it would be useful to know ahead of time how known designs may deviate in behavior because of various important mechanics like the maximum server view distance, altered spawning rates, various introduced mob caps etc.

## Reduced maximum view distance

The current setting for maximum view distance on the server is currently 5. This is one of the most important settings for optimizing server performance, as a large area of loaded chunks surrounding each of the logged in players can quickly add up to a huge area for the server to process. Note that it is important to understand that the furthest loaded chunks from a player are not "entity-processing" chunks, but will only process block updates such as redstone signals, moving pistons etc. (these chunks are known as lazy loaded chunks). For a chunk to process mobs or any other type of entity, it needs to be closer to the player than lazy chunks.

## Smaller world size

As of 3rd Jan 2022, world borders in Overworld sit at 1 million from spawn (world size 2m by 2m), while in vanilla minecraft it should be 30 million (world size 60m by 60m). However, at least 95% of all chunks on the map are still not generated; world this big is by all means large enough to build a safe base that will be very unlikely to find by random basehunters.

## Altered mob spawning / despawning

There are various caps that affect spawning rates of mobs, as well as rules for despawning them if too many accumulate in a small area due to breeding or spawning. One example of this is a newly introduced cap on villagers which will cause villagers to despawn if more than 20 are found in a single chunk. Exact numbers and other details can be found in Purity Tech Archive discord.

## Disabled nether roof

In order to reduce the strain on the server, the nether roof has been "disabled". Players or any entities that try to enter the nether roof will start to take void damage and quickly die **(no armor, enchantments, resistance effect or totems of undying can protect you from void damage!)** This renders nether farms such as ghast and piglin farms significantly more difficult to create, but it also means that players won't just go flying in all possible directions in the nether, loading millions of chunks.

## Suppressed remote chunk loading

In vanilla Minecraft it is possible to remotely load chunks using various methods that usually involve causing block updates on the borders of already loaded chunks. A simple example of this would be a hopper with an item, on the border of an already loaded chunk, facing into an unloaded chunk: the game would load the neighboring chunk to check whether there is a container for the hopper to deposit the item into. On Purity Vanilla, this could potentially cause performance issues as players could keep an arbitrary number of chunks loaded at all times, so this type of remote chunk loading based on block updates is suppressed; loaded chunks are limited to those directly loaded by players, chunk loaders using nether portals, and permanently loaded chunks in the spawn area.

## Disabled AI for certain mobs

Mobs that spawn from spawners have their AI disabled to improve performance. They will be passive and won't track or attack players even in retaliation. This may affect some mob farm designs that depend on the mobs tracking the player to reach a killing spot, so water streams or pistons may need to be used instead. The scourge of the dreaded cave spider has ended, and on Purity Vanilla they are like docile lambs that sit there ready to be slaughtered for their string and eyes; we will fortunately also be spared from seeing amateurish cave spider xp farms where the players can't seem to hit the spiders without being poisoned.

Villager's AI is also affected by Purity plugins. How exactly, no one knows. Do not take these words as facts, but from personal experience, it seems like:

* When TPS is below 18, villagers will not breed, claim beds or stations;
* When the villager is locked in 1x1 space, it will also not breed, claim beds or stations;
* If too many villagers are in one chunk, their AI also turns off;
* Even if conditions are good (high TPS, lots of space to walk around, 2 villagers in one chunk), these fuckers can **still** refuse to gain IQ points. In such circumstances, an AI-reset might be needed, which can be caused by putting villagers in and out of boats, or pouring water on their feet.

## Seed changes

Due to the three resets of the world seed, players will come upon many strange borders between terrain generated using different seeds. Most players find this adds flair and character to the world because of the interesting history.

Some other things the seed changes may affect include:

* strange end portal dynamics; many strongholds with portals in them may have and likely were generated before the world seed changes, due to proximity to spawn, but if players use eyes of ender to try to find a stronghold, the eyes will point them in the direction of portal coordinates calculated using the newest seed, where no portals are very likely to be found: if terrain was already generated using the older seeds in locations where the new seed would like to generate portals, no portal or stronghold will be found there, even though the eye of ender is pointing to that location. Most often players are told to use the three widely known portals in close proximity to spawn. This also means that the vanilla rule about there being only 128 strongholds does not apply: at least 133 end portals were found so far.
* disabling of explorer maps: all three types of explorer maps (buried treasure, ocean explorer, woodland explorer) that would be created nowadays are disabled. This means that cartographers will not sell ocean explorer or woodland explorer maps, and chests in shipwrecks/ruins will not contain buried treasure maps. However, any maps created *before* the first seed reset still work, and these items can be seen as semi-valuable in modern world of Purity.
* even stranger behavior of chunk generation, structure generation and mob spawning can be sometimes observed, such as: structures cut in half on a normal terrain, structures generated in a totally wrong biome, floating structures, mob spawning inside of blocks or dozens of blocks in the air, glitched liquid mechanics, etc. All of this is the effect of three things combined: 1) seed changes, 2) structure generation being separated from terrain generation in newer seeds, 3) the transition from minecraft 1.17 to 1.18. Some examples of these insane behaviors are shown below.

## Item snapping

Items dropped as entities within a distance of 6-7 blocks snap into single stacks. This does happen in vanilla minecraft, but on a much shorter distance. In principle this reduces lag because there are less entities - single stack counts as a single entity. Especially matters when players are instamining giant amounts of blocks, e.g. for perimeters.

## Player heads

Player drop their head upon being killed by another player. More info here.

## Reduced hopper speed

Hoppers seem to pass items more slowly on Purity Vanilla, probably as a way to prevent lag. This has the potential to affect many redstone designs that depend on exact timing using hoppers. Some examples include:

* Hopper Minecart Collection Systems: many and some of the simplest designs for hopper minecart collection systems use a hopper with a comparator underneath the first rail to detect when the hopper minecart needs to stop to unload its items. Because of the slower hopper speed (this refers to the hopper below taking items out of the minecart, not the hopper minecart itself), the system may activate slower by which time the minecart is already halfway off the first rail of the track, and too far from the solid block at the start of the track to start again when the power rail is reactivated. There are various solutions to this problem, one of which is to make the second rail in the collection system downwards sloping, so that the minecart can use gravity to restart itself when the system is reactivated. Either way, some collection systems used by farms built using Youtube videos will need to be adjusted.
* Hopper Timers: a commonly used and very versatile component of many redstone circuits. If a hopper timer needs to measure a very precise amount of time, the number of items it will need to use will vary widely from Vanilla Minecraft and will need to be figured out for the server.
* Hopper Loops: in a hopper loop, an item is passed between a circle of 8 hoppers facing into each other, and various circuits can be activated based on which of the 8 hoppers the item is in at any given time. The hoppers are locked most of the time so the item doesn't circulate freely, but is moved 1 hopper at a time by occasional brief redstone pulses unlocking the hoppers. Because of the slower hopper speed, some redstone pulse circuits will not allow the hoppers to pass the items all the time, in a seemingly block update \ location-dependent pattern (some hoppers will pass the items, and some won't, even though they are right next to each other and are both being unpowered \ powered using the same circuit). What seems to work is to use a pulse circuit that itself uses a hopper, giving power for the exact duration it takes a hopper to pass a single item.

*Melwin's note: I have no idea if this is still accurate. Ask guys in Purity Tech Archive to be sure, they have bigger tech brains than me.*

## Farm-relevant 1.16 data

Unfortunately, much of the above was written during the 1.13.2 patch. As the server is now on 1.16, and many optimization tweaks have happened, changes important to people building farms as of March 2021 are as follows:

* shorter render distance
* mobs despawn past 48 spherical instead of 128 (measured empirically by RobertD in summer 2020; please measure it yourself and update wiki with confirmation or additional data points)
* mob caps are quite stark
* mob AI activation range is very short, and mob AI is non-existent for spawner-generated mobs (leading to bias towards forced-movement instead of AI-based farms)
* villager AI activation range is very short (important for iron farms and raid farms) (again, you measure distance yourself and update this article)
* certain things cause pistons to vanish (important for flying-machine based farms)
* non-vanilla hopper speed.

*Melwin's note: this section basically just sums up the article above, is it really needed?*