Line Types
MasuHolograms supports six types of hologram lines. Each type is identified by a prefix in the line content.
Text Lines
The default line type. Any content without a special prefix becomes a text line.
/mh line add myHolo 1 &6Hello World
/mh line add myHolo 1 Welcome to the server
/mh line add myHolo 1 <RAINBOW>Rainbow Text</RAINBOW>
Default height: 0.3
Text lines support all color codes, placeholders, and animations.
Special Text Features
- Empty text line (invisible spacer): set content to just a space or blank
- Use
{player}to show the viewer's name - Use animations for dynamic effects:
{#ANIM:typewriter}text{/#ANIM}
Icon Lines
Display a floating item. Prefix with #ICON:.
/mh line add myHolo 1 #ICON:DIAMOND
/mh line add myHolo 1 #ICON:minecraft:diamond_sword
/mh line add myHolo 1 #ICON:GOLDEN_SWORD !ENCHANTED
Default height: 0.6
Item Formats
| Format | Example | Description |
|---|---|---|
| Material name | #ICON:DIAMOND |
Simple material lookup |
| Namespaced ID | #ICON:minecraft:diamond_sword |
Full resource location |
| With enchant glint | #ICON:DIAMOND_SWORD !ENCHANTED |
Adds enchantment shimmer |
The item floats and rotates naturally (vanilla dropped item behavior).
Head Lines
Display a player head (skull). Prefix with #HEAD:.
Default height: 0.75
Head Formats
| Format | Example | Description |
|---|---|---|
| Player name | #HEAD:Steve |
Fetches skin from Mojang API |
| Base64 texture | #HEAD:eyJ0ZXh0dXJ... |
Direct texture value (from sites like minecraft-heads.com) |
The mod automatically detects the format: - Short strings (32 characters or less) are treated as player names - Long strings (more than 32 characters) are treated as base64 texture values
Small Head Lines
Same as Head lines but rendered smaller. Prefix with #SMALLHEAD:.
Default height: 0.6
Uses a small armor stand, making the head about half the size of a normal head line.
Entity Lines
Display any Minecraft entity. Prefix with #ENTITY:.
/mh line add myHolo 1 #ENTITY:minecraft:pig
/mh line add myHolo 1 #ENTITY:ARMOR_STAND
/mh line add myHolo 1 #ENTITY:minecraft:zombie
Default height: 1.0
Entity Formats
| Format | Example | Description |
|---|---|---|
| Namespaced (lowercase) | #ENTITY:minecraft:pig |
Standard format |
| Short name (uppercase) | #ENTITY:PIG |
Auto-prefixed with minecraft: |
Entity Facing
Entities face the direction set by the hologram or line facing:
0= South,90= West,180= North,270= East- Line facing of
-1inherits the hologram facing
Entity Scaling
If entityScaleAttribute is configured in config.json, entity lines can be scaled:
This requires a mod that provides a size attribute (e.g., Vault Hunters provides the_vault:generic.size_scale).
Player Lines
Display a real NPC with a player skin. Prefix with #PLAYER:. Requires the Taterzens mod to be installed.
Default height: 2.0
The player name supports static values and server-wide placeholders such as leaderboard names. Good examples:
| Content | Result |
|---|---|
#PLAYER:Notch |
Notch's skin for everyone |
#PLAYER:{vh_top_level_name:1} |
The current #1 Vault Hunters player |
Do not use {player} in PLAYER lines
{player} resolves to a different name for each viewer. Because the NPC is a single global entity, this causes it to thrash — destroyed and respawned on every update tick as each viewer's update call tries to set it to their own name. Use {player} in text lines for per-viewer names instead.
Requires Taterzens
#PLAYER: lines delegate to the Taterzens mod for NPC creation and skin fetching. If Taterzens is not installed, PLAYER lines are silently invisible — all other line types continue to work normally.
Global NPC
Unlike other line types, a PLAYER line creates a real server-side NPC entity rather than per-player packets. This means:
- All nearby players see the same NPC — one skin, one entity, visible to everyone nearby
- The NPC is visible within Minecraft's entity tracking range (roughly 64 blocks) regardless of the hologram's
displayRangesetting - Skin is fetched automatically and asynchronously by Taterzens via Mojang's API
- Per-viewer personalisation (e.g. showing each player their own skin) is not supported
Forced Look
When enabled, the NPC continuously rotates to face the nearest player.
This uses Taterzens' built-in FORCED_LOOK movement mode. When disabled, the NPC stands still facing its spawn direction.
NPC Scaling
Player lines support the same scaling as entity lines when entityScaleAttribute is configured:
The scale is applied directly to the NPC as a server-side entity attribute (not a packet trick), so it affects all players who can see the NPC.
Line Type Summary
| Prefix | Type | Height | Rendering |
|---|---|---|---|
| (none) | Text | 0.3 | Invisible armor stand with custom name |
#ICON: |
Icon | 0.6 | Armor stand + item entity (passenger) |
#HEAD: |
Head | 0.75 | Armor stand with helmet equipment |
#SMALLHEAD: |
Small Head | 0.6 | Small armor stand with helmet |
#ENTITY: |
Entity | 1.0 | Fake entity of specified type |
#PLAYER: |
Player | 2.0 | Taterzens NPC with player skin (requires Taterzens) |
Changing Line Types
You can change a line's type at any time by setting new content with a different prefix:
The line height automatically adjusts to the new type's default unless you've manually set it.