Entity Positioning System - TheBaruch4/DataUtils GitHub Wiki

Entity Positioning System (referred to as eps henceforth) is (as of 0.1.0 [release]) a system to help data pack developers track entity's locations. It creates 9 scoreboard objectives that are updated every tick (if you enable it. See "enabling and disabling" below for more info). These scoreboard objectives are:

x_eps_entity y_eps_entity z_eps_entity

x_eps_player y_eps_player z_eps_player

x_eps_all y_eps_all z_eps_all

What a scoreboard objective does is fairly clear from its name.

x,y, and z all refer to which coordinate the objective tracks.

entity - All entities that are NOT a player

player - ONLY players

all - Every entity in the world, players and non-players

For example, the objective x_eps_entity contains the current x position for every entity that is not a player.

Enabling the feature

This is very important to read

By default, eps is not enabled in DataUtils and will not function. The scoreboard objectives will exist regardless, but they will not update unless the module is enabled. Luckily for you, enabling eps is very easy. All you have to do it run the command function eps:dev_cmds/enable to enable it. The command function eps:dev_cmds/disable will disable it. If your datapack relies on eps, I'd recommend running the function first thing in a function tagged #minecraft:load so it will always be enabled.

Why?

Eps is disabled by default so that, if someone is using a data pack that requires another module of DataUtils but NOT eps, they don't have eps running in the background, taking up processing power, and (potentially) creating some lag. Eps shouldn't be too laggy, but updating hundreds or even thousands of scores every single tick certainly won't get rid of lag.