Skip to content

Finding Players

The Universe class provides global player access across all worlds.

Package: com.hypixel.hytale.server.core.universe.Universe

Universe universe = Universe.get();
// get all connected players
List<PlayerRef> players = universe.getPlayers();
// get player count
int count = universe.getPlayerCount();
// get by UUID
PlayerRef player = universe.getPlayer(uuid);
// get by username
PlayerRef player = universe.getPlayerByUsername("Steve", NameMatching.EXACT);
PlayerRef player = universe.getPlayerByUsername("Ste", NameMatching.STARTS_WITH_IGNORE_CASE);
ModeBehavior
EXACTExact case-sensitive match
EXACT_IGNORE_CASEExact case-insensitive match
STARTS_WITHPrefix match, case-sensitive
STARTS_WITH_IGNORE_CASEPrefix match, case-insensitive (default)

The World class provides per-world player access.

Package: com.hypixel.hytale.server.core.universe.world.World

// get PlayerRef collection (thread-safe, unmodifiable)
Collection<PlayerRef> players = world.getPlayerRefs();
// get player count in this world
int count = world.getPlayerCount();

Static utilities for iterating players with specific conditions.

Package: com.hypixel.hytale.server.core.universe.world.PlayerUtil

// execute action for each player that can see an entity
PlayerUtil.forEachPlayerThatCanSeeEntity(entityRef, (viewerRef, viewerPlayerRef, accessor) -> {
// viewerRef - the viewing player's entity reference
// viewerPlayerRef - the viewing player's PlayerRef component
// accessor - ComponentAccessor for further operations
}, componentAccessor);
// same but exclude a specific entity (e.g., the source player)
PlayerUtil.forEachPlayerThatCanSeeEntity(entityRef, (viewerRef, viewerPlayerRef, accessor) -> {
// ...
}, ignoredEntityRef, componentAccessor); // ignoredEntityRef is Ref<EntityStore>, nullable