Skip to content

Mapacheee/ExtendedHorizons

Repository files navigation

eh_main(1)(1)
eh_main(1)(1)
eh_main(2)(2)

Dependencies


Installation

  1. Download ExtendedHorizons.jar
  2. Download dependencies
  3. Put all of them inside your /plugins folder
  4. Start your server — done

Messages

  • All texts are in messages.yml, with MiniMessage support.
  • The welcome message is controlled by messages.welcome-message.enabled in config.yml, and its text is in messages.yml.

Commands

Alias base: /eh (also: extendedhorizons, horizons, viewdistance, vd)

Command Description Permission
/eh help General help extendedhorizons.use
/eh info Plugin information and your current distance extendedhorizons.use
/eh view Shows your current distance extendedhorizons.use
/eh setme <distance> Sets your distance extendedhorizons.use
/eh reset Resets your distance to default extendedhorizons.use
/eh check <player> Checks another player's distance extendedhorizons.admin
/eh setplayer <player> <distance> Sets another player's distance extendedhorizons.admin
/eh resetplayer <player> Resets another player's distance extendedhorizons.admin
/eh reload Reloads settings extendedhorizons.admin
/eh stats Displays statistics extendedhorizons.admin

Permissions

  • extendedhorizons.use — player commands
  • extendedhorizons.admin — admin commands
  • extendedhorizons.bypass.limits — ignores boundaries when setting distances
  • extendedhorizons.max.<distance> — set max distance for a player

LuckPerms Integration

If integrations.luckperms.enabled is true, the plugin will check limits per group/player.
You can combine it with use-group-permissions and your group policies.


Placeholders (PlaceholderAPI)

  • %extendedhorizons_view_distance% — current effective distance

API for Developers

ExtendedHorizons provides a comprehensive API for other plugins to interact with fake chunks.

Documentation

Quick Example

// Access the API
ExtendedHorizonsAPI api = ExtendedHorizonsPlugin.getService(ExtendedHorizonsAPI.class);

// Check if player is looking at a fake chunk
int chunkX = player.getLocation().getBlockX() >> 4;
int chunkZ = player.getLocation().getBlockZ() >> 4;
if (api.isFakeChunk(player, chunkX, chunkZ)) {
    player.sendMessage("You're in a fake chunk!");
}

// Get all fake chunks for a player
Set<ChunkCoordinate> chunks = api.getFakeChunksForPlayer(player);
player.sendMessage("Loaded: " + chunks.size() + " fake chunks");

Available Events

  • FakeChunkLoadEvent - When a fake chunk is loaded (cancellable)
  • FakeChunkUnloadEvent - When a fake chunk is unloaded
  • FakeChunkBatchLoadEvent - When multiple chunks are loaded at once

See API-USAGE.md for complete documentation.


Support

  • Report issues and suggestions in the repository’s Issues section.
  • Join our Discord: discord.gg/yA3vD2S8Zj

photo-collage png(1)(1)

About

The best high-performance per-player view distance via Packets!

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages