Language

CustomEyesLib

CustomEyesLib

Modrinth

Add eyes that point to any structure in the game, just like how ender eyes point to strongholds. Supports vanilla and modded structures.

23 downloads 2 followers updated 1mo ago
latest v1.0.0 Modrinth
Forge 1.20.1 – 1.20.1 AdventureGame-mechanicsUtility

A mod that adds custom eye items that locate and point toward ANY structure made for modpack developers. Define as many eyes as you want in a highly configurable toml file, inputting the structure, item texture, search radius, and the particle color.

Planned features

  • Custom textured eyes using resource packs instead of kubejs allow for more flexibility and easier configuration.

Configuration

Eyes are defined in .minecraft/config/structureeye-eyes.toml. The file is created automatically on first launch just add [[eye]] blocks to it.
Fields:

  • name — registry name for the item, no spaces. This is what shows up in /give commands.
  • displayName — what the item is called in-game. Defaults to name if omitted.
  • textureItem — any item's texture to use for the eye. Works with modded items too.
  • targetStructure — the structure's registry key. Use /locate or to find IDs for modded structures.
  • searchRadius — how many chunks out to search. Defaults to 128, max 256. Higher values are slower.
  • glowColor — ARGB hex color for the particle trail (e.g. #FFFF0000 for red).
  • showCoordinates — set to true to print Found "Name" at X, Y, Z in chat when a structure is found.
    -skipVisited — once you've visited a structure, the eye won't lead you there again. It will always find the next nearest one instead.

Example:

[[eye]]
  name            = "fortress_eye"
  displayName     = "Eye of the Fortress"
  textureItem     = "minecraft:blaze_powder"
  targetStructure = "minecraft:fortress"
  searchRadius    = 128
  glowColor       = "#FFFF6600"
  showCoordinates = true
  skipVisited     = true

[[eye]]
  name            = "temple_eye"
  displayName     = "Eye of the Desert Temple"
  textureItem     = "minecraft:gold_nugget"
  targetStructure = "minecraft:desert_pyramid"
  searchRadius    = 96
  glowColor       = "#FFFFFF00"
  showCoordinates = false
  skipVisited     = false

###Custom Textures
There are two ways to give an eye a custom texture.
Option 1: Resource Pack (recommended)
Create a zip file with this structure:

MyResourcePack.zip
  pack.mcmeta
  assets/structureeye/textures/item/
    your_eye_name.png

The pack.mcmeta should look like this:

{
  "pack": {
    "pack_format": 15,
    "description": "My custom eye textures"
  }
}

Drop the zip into .minecraft/resourcepacks/ and enable it in-game. Then in your config, use texturePath instead of textureItem:

[[eye]]
  name            = "my_eye"
  displayName     = "My Custom Eye"
  texturePath     = "structureeye:item/your_eye_name"
  targetStructure = "minecraft:stronghold"
  searchRadius    = 128
  glowColor       = "#FF00FFFF"
  showCoordinates = false
  skipVisited     = true

Custom Textures with KubeJS

For custom eye textures, KubeJS can be used as a replacement for texture packs. Register an item with the texture you want for your eye and set the "textureItem" in the config to your KubeJS item.

How to create a kubejs item:

// kubejs/startup_scripts/items.js
StartupEvents.registry('item', event => {
    event.create('ItemId')
        .displayName('ItemName')
        .texture('kubejs:item/ItemId') // this isnt required, if the file name is the same then it would automatically register it
})

Put your texture at kubejs/assets/kubejs/textures/item/ItemId and set textureItem = "kubejs:ItemId" in the config.

Versions

Release
1.0.0
forge · 1.20.1 · 1mo ago
1. Made bug fixes for not showing the display name not showing up 2. Added features - Now in config, there's an option to disable eyes pointing towards…
11
Beta
1.0.0
forge · 1.20.1 · 1mo ago
9

Comments 0

No comments yet. Be the first to share your thoughts.

Download CustomEyesLib

Files are served directly from the original source. Modgrid does not host or modify them.