promotional bannermobile promotional banner

Elite Holograms

Floating, fully customizable text for your server or single-player world. Create multi-line holograms, wall-mounted signs, item displays, animated lines, leaderboards, and glowing backlights. Server-side only. Forge, Fabric & NeoForge.
Back to Files

EliteHolograms-NeoForge-26.2-1.3.0.jar

File nameEliteHolograms-NeoForge-26.2-1.3.0.jar
Uploader
EliteScouterEliteScouter
Uploaded
Sep 29, 2026
Downloads
10
Size
1.0 MB
Mod Loaders
NeoForge
File ID
9014161
Type
R
Release
Supported game versions
  • 26.3

Curse Maven Snippet

NeoForge

implementation "curse.maven:elite-holograms-1245528:9014161"

Learn more about Curse Maven

What's new

All Editions 1.3.0: Clickable holograms, scale, brightness and billboards (2026-09-29)

Added

  • Clickable holograms. /eh click <id> set <command...> makes a hologram run a command when a player right-clicks it, console <command...> runs it elevated, and none turns it off. %player% in the command is replaced with the clicking player's name. Use it for warp signs, shop buttons, quest turn-ins, or anything that was previously a sign and a pressure plate. Clicking is backed by a real, invisible minecraft:interaction hitbox placed over the text, which is why it works on every loader without a client mod
  • /eh display <id> scale <0.1-10> resizes a fixed hologram's text. Line spacing widens with the scale, so a scaled-up hologram does not overlap its own lines, and the top line stays anchored where the hologram is
  • /eh display <id> brightness <0-15|auto> lights the text regardless of the surrounding light level. 15 makes a hologram readable at night without placing a single block in the world, which for most people is what /eh backlight was being used for. auto restores world lighting
  • /eh display <id> billboard <fixed|vertical|horizontal|center> controls how a fixed hologram turns towards the viewer. vertical is worth knowing about: the text turns to follow the player horizontally but never tilts, so it stays readable from any direction without lying on its back when someone flies overhead. fixed remains the default
  • /eh display <id> reset restores all three at once

Changed

  • The three display settings are grouped under one /eh display command rather than three top-level ones, to keep the /eh tab-completion list readable
  • Each save now keeps the previous version of the file alongside it as holograms.json.bak / scoreboard_holograms.json.bak, which is restored automatically if the main file is ever found damaged. An unreadable file is kept as .corrupt-<timestamp> rather than overwritten, so nothing in it is lost

Fixed

  • Scoreboard holograms did not keep their background settings. Boards persist to their own scoreboard_holograms.json rather than to holograms.json, and the Forge 1.20.1 and Fabric editions never wrote the background colour and opacity there, so a restyled board reverted to 25% black on restart. All editions now persist the full set (background, scale, brightness, billboard and click command) for scoreboard holograms as well as regular ones
  • /eh movevertical could be run by any player on Forge 1.20.1 and Fabric. Every other subcommand declares the permission node it needs when its brigadier literal is built, but movevertical was registered and given arguments without ever being added to that chain, and its handler class carried no check of its own. The only gate left was the one on the base /eh literal, which is eliteholograms.list. Every user of the mod needs that node, so anyone who could run /eh at all could move any hologram vertically. It now requires eliteholograms.edit like the rest of the editing commands, which is what the documentation already described. The Forge 1.19.2 and all three NeoForge editions build their commands differently and were never affected
  • A hologram or scoreboard in a world that was not loaded was deleted from disk. On Forge 1.19.2, Forge 1.20.1 and Fabric, a hologram whose world could not be found at startup (a modded dimension whose mod was removed, or one that registers late) was skipped, and the next save, written from memory, erased it from the file for good. It is now kept in the file exactly as it was, written back on every save, and loads again once its world is available. The log names each one and why
  • A hologram in a world that was not loaded placed real blocks and entities in the overworld (NeoForge). Its world fell back to the overworld, so its backlight's light blocks and its click hitbox were created there at its coordinates. They were invisible but real, and the hitbox was clickable. It is now left unspawned until its world is back, and its world is saved unchanged
  • One hologram that failed to load took every hologram after it with it (NeoForge). A single bad entry aborted the whole load, so everything later in the file was skipped and then erased by the next save. Each hologram now loads on its own, and one that cannot be read is kept in the file untouched
  • A half-built hologram or board could overwrite the good copy on disk. Holograms register themselves as they are constructed, so one that failed part way through loading was left in memory with default settings and saved over the original. It is now removed and the original kept
  • Saves were not crash-safe. holograms.json was deleted before its replacement was moved into place, and scoreboard_holograms.json (and holograms.json on NeoForge) was truncated and rewritten in place, so a crash, kill or power cut at the wrong moment left a missing or half-written file. Every save now writes a complete temporary file, flushes it to disk, and swaps it in with a single atomic move, so an interrupted save leaves either the old version or the new one. The previous version is kept as a backup either way
  • A damaged file was loaded as empty and then overwritten. If either file could not be parsed, the mod started with no holograms and the next save wrote that emptiness over the recoverable file. A damaged file is now copied aside as .corrupt-<timestamp> and the previous good version is restored from .bak, which every save now keeps
  • A typo in scoreboard_themes.json wiped out every custom theme. A themes file that existed but could not be parsed was treated the same as a missing one, so the next startup replaced it with the starter themes. It is now left untouched: the built-in themes are used until it is fixed, and /eh reload picks up the repaired file
  • Deleting the last scoreboard hologram did not stick. An empty list of boards was never written, so the last board deleted came back on the next restart
  • A second edit to a scoreboard within five seconds was not saved (Forge 1.19.2, Forge 1.20.1, Fabric). A cooldown on scoreboard saves dropped it until shutdown, so a crash lost it. The cooldown only existed to absorb the next bug, and is gone
  • Every score change saved every hologram, once per line (Forge 1.19.2, Forge 1.20.1, Fabric). A board re-rendering its rows queued a full save for each one, so a top-10 board wrote the file eleven times whenever a score moved. Rendering a board no longer saves at all; its settings are saved when they change
  • /eh reload overwrote hand edits instead of loading them. It saved what was in memory before reading the files, so an edit made to either JSON file was replaced by the command meant to load it. It now loads the edited file, and only saves first when nothing was edited outside the game
  • /eh reload left the old holograms on screen (Forge 1.19.2, Forge 1.20.1, Fabric). Reading the file replaced each hologram before the old one was despawned, so the old copies stayed drawn for players, kept their backlight blocks, and kept their click hitboxes in the world. The holograms actually on screen are now the ones despawned
  • Holograms loaded twice on every startup (NeoForge), the first time without the protection that stops saves running mid-load. Each hologram it built queued a save that could capture a half-loaded registry. They now load once
  • The console and command blocks could not run most editing commands (Forge 1.19.2, Forge 1.20.1, Fabric). /eh addline, setline, insertline, removeline, delete and info (and animateline on 1.19.2) required a player, even though they only used one to reply. They now reply to whoever ran them, so they work from the console, command blocks and RCON as documented
  • Hologram IDs were case-sensitive on NeoForge, unlike every other edition and unlike the documentation, so /eh delete Shop missed a hologram created as shop and both could exist side by side. Lookups now ignore case. Two IDs that an older build saved differing only in case both stay reachable
  • Forge 1.19.2: the second world opened in a single-player session showed no holograms. The background thread that shows holograms to players kept the previous world's shutdown flag and exited immediately
  • Hologram line lists and viewer lists were plain lists shared between the server thread, the visibility thread and the saver (Forge 1.20.1, Fabric), so an edit at the wrong moment could abort a save or a visibility pass. They are now safe to read while being edited
  • The player listener was registered again every time a single-player world was opened (Forge 1.19.2, Forge 1.20.1), and the click cooldown kept an entry for every player who ever clicked

Notes

  • Scale, brightness and billboard do not apply to a player-facing hologram, although clicking does. Its text is an armor stand nameplate, which the client sizes, turns and lights itself, so the server has no say in any of it. The values are stored either way and take effect the moment the hologram is converted with /eh convert <id> fixed
  • /eh click <id> console ... requires the admin permission, not the edit permission that covers the rest of the command. Running a click command elevated would otherwise let anyone who can edit holograms hand themselves operator commands through a sign
  • Click hitboxes are real entities, but they are never saved with the chunk. Each one is rebuilt when its hologram comes into range, so they cannot accumulate in the world. A stray one left by an earlier build is removed the first time it is clicked
  • Forge 1.19.2 has none of the display or click features because it has no text displays, so there is nothing to scale, light, turn or click. It does receive every storage, reload and console fix above
  • For contributors: runServer now works in development on Forge 1.19.2, Forge 1.20.1 and all three NeoForge editions. Their dev runs could not see the bundled Adventure and api libraries and failed at startup; release jars were never affected
  • The Forge 1.20.1 and Fabric command builders now fail closed: a subcommand that reaches the end of the permission chain without naming a node defaults to requiring eliteholograms.admin rather than inheriting only the base /eh check. That is the bug class movevertical fell into, and this makes it impossible to reintroduce by omission

This mod has no additional files