- 4,022 views, 3 today
- 86 downloads, 0 today
131
This supports Donkeys, Mules, Skeleton and Zombie Horses as well. You can also create more than one of these stat checkers without causing conflicts!
*1.14 updates*
wall_sign changed to oak_wall_sign
removed the slashes in the sign command
You can skip Step 1 by Downloading the World Save and copying the horsestats folder in datapacks (you will still need to do Step 2)
Step 1 - Create Datapack
To navigate to your minecraft saves folder, open file explorer and type %appdata%\.minecraft\saves
Open the folder with the name of your world. There will be a datapacks folder, open this. It is probably empty.
Create a folder, named whatever you want, I will use horsestats
inside this folder, create a file named pack.mcmeta Open with notepad and paste the following:
Also inside the horsestats folder, create a folder named data
in data, create another folder named horsestats
in horsestats, create a folder named functions
The full file path will look something like C:\Users\NitroxNova\AppData\Roaming\.minecraft\saves\horseblock\datapacks\horsestats\data\horsestats\functions
Inside the functions folder, create a file named checkstats.mcfunction Open with notepad and paste the following
Step 2 - World Setup
Open the world, or type /reload command if it was already open
Run the following commands:
/scoreboard objectives add HorseHealth dummy
/scoreboard objectives add HorseSpeed dummy
/scoreboard objectives add HorseJump dummy
Give yourself a command block /give @p command_block
Place command block level with the ground, and right click it.
Type the following in the console command box of the command block
function horsestats:checkstats
Place a pressure plate on top of the command block. Stepping on the pressure plate will generate three signs. If there are no horses around, they will say zero. If you ride, lead or push an equine within 2 blocks of the command block (marked with glass in the picture) and trigger the pressure plate, its respective stats will show up on the signs. This works on babies, untamed and untamable equines as well.
*1.14 updates*
wall_sign changed to oak_wall_sign
removed the slashes in the sign command
You can skip Step 1 by Downloading the World Save and copying the horsestats folder in datapacks (you will still need to do Step 2)
Step 1 - Create Datapack
To navigate to your minecraft saves folder, open file explorer and type %appdata%\.minecraft\saves
Open the folder with the name of your world. There will be a datapacks folder, open this. It is probably empty.
Create a folder, named whatever you want, I will use horsestats
inside this folder, create a file named pack.mcmeta Open with notepad and paste the following:
Click to reveal
{
"pack": {
"pack_format": 2,
"description": "Nitrox Nova's Equine Stat Checker"
}
}
"pack": {
"pack_format": 2,
"description": "Nitrox Nova's Equine Stat Checker"
}
}
Also inside the horsestats folder, create a folder named data
in data, create another folder named horsestats
in horsestats, create a folder named functions
The full file path will look something like C:\Users\NitroxNova\AppData\Roaming\.minecraft\saves\horseblock\datapacks\horsestats\data\horsestats\functions
Inside the functions folder, create a file named checkstats.mcfunction Open with notepad and paste the following
Click to reveal
fill ~-1 ~3 ~-1 ~1 ~3 ~-1 minecraft:air replace
execute store result score @p HorseHealth run data get entity @e[type=minecraft:horse,distance=..2,limit=1] Attributes[{Name:"generic.maxHealth"}].Base
execute store result score @p HorseSpeed run data get entity @e[type=minecraft:horse,distance=..2,limit=1] Attributes[{Name:"generic.movementSpeed"}].Base 100
execute store result score @p HorseJump run data get entity @e[type=minecraft:horse,distance=..2,limit=1] Attributes[{Name:"horse.jumpStrength"}].Base 100
execute if score @p HorseHealth matches 0 run execute store result score @p HorseHealth run data get entity @e[type=minecraft:donkey,distance=..2,limit=1] Attributes[{Name:"generic.maxHealth"}].Base
execute if score @p HorseSpeed matches 0 run execute store result score @p HorseSpeed run data get entity @e[type=minecraft:donkey,distance=..2,limit=1] Attributes[{Name:"generic.movementSpeed"}].Base 100
execute if score @p HorseJump matches 0 run execute store result score @p HorseJump run data get entity @e[type=minecraft:donkey,distance=..2,limit=1] Attributes[{Name:"horse.jumpStrength"}].Base 100
execute if score @p HorseHealth matches 0 run execute store result score @p HorseHealth run data get entity @e[type=minecraft:mule,distance=..2,limit=1] Attributes[{Name:"generic.maxHealth"}].Base
execute if score @p HorseSpeed matches 0 run execute store result score @p HorseSpeed run data get entity @e[type=minecraft:mule,distance=..2,limit=1] Attributes[{Name:"generic.movementSpeed"}].Base 100
execute if score @p HorseJump matches 0 run execute store result score @p HorseJump run data get entity @e[type=minecraft:mule,distance=..2,limit=1] Attributes[{Name:"horse.jumpStrength"}].Base 100
execute if score @p HorseHealth matches 0 run execute store result score @p HorseHealth run data get entity @e[type=minecraft:skeleton_horse,distance=..2,limit=1] Attributes[{Name:"generic.maxHealth"}].Base
execute if score @p HorseSpeed matches 0 run execute store result score @p HorseSpeed run data get entity @e[type=minecraft:skeleton_horse,distance=..2,limit=1] Attributes[{Name:"generic.movementSpeed"}].Base 100
execute if score @p HorseJump matches 0 run execute store result score @p HorseJump run data get entity @e[type=minecraft:skeleton_horse,distance=..2,limit=1] Attributes[{Name:"horse.jumpStrength"}].Base 100
execute if score @p HorseHealth matches 0 run execute store result score @p HorseHealth run data get entity @e[type=minecraft:zombie_horse,distance=..2,limit=1] Attributes[{Name:"generic.maxHealth"}].Base
execute if score @p HorseSpeed matches 0 run execute store result score @p HorseSpeed run data get entity @e[type=minecraft:zombie_horse,distance=..2,limit=1] Attributes[{Name:"generic.movementSpeed"}].Base 100
execute if score @p HorseJump matches 0 run execute store result score @p HorseJump run data get entity @e[type=minecraft:zombie_horse,distance=..2,limit=1] Attributes[{Name:"horse.jumpStrength"}].Base 100
setblock ~-1 ~3 ~-1 minecraft:oak_wall_sign[facing=south]{Text1:'{"text":""}',Text2:'{"text":"Health:"}',Text3:'{"score":{"name":"@p","objective":"HorseHealth"}}'}
setblock ~ ~3 ~-1 minecraft:oak_wall_sign[facing=south]{Text1:'{"text":""}',Text2:'{"text":"Speed:"}',Text3:'{"score":{"name":"@p","objective":"HorseSpeed"}}'}
setblock ~1 ~3 ~-1 minecraft:oak_wall_sign[facing=south]{Text1:'{"text":""}',Text2:'{"text":"Jump:"}',Text3:'{"score":{"name":"@p","objective":"HorseJump"}}'}
execute store result score @p HorseHealth run data get entity @e[type=minecraft:horse,distance=..2,limit=1] Attributes[{Name:"generic.maxHealth"}].Base
execute store result score @p HorseSpeed run data get entity @e[type=minecraft:horse,distance=..2,limit=1] Attributes[{Name:"generic.movementSpeed"}].Base 100
execute store result score @p HorseJump run data get entity @e[type=minecraft:horse,distance=..2,limit=1] Attributes[{Name:"horse.jumpStrength"}].Base 100
execute if score @p HorseHealth matches 0 run execute store result score @p HorseHealth run data get entity @e[type=minecraft:donkey,distance=..2,limit=1] Attributes[{Name:"generic.maxHealth"}].Base
execute if score @p HorseSpeed matches 0 run execute store result score @p HorseSpeed run data get entity @e[type=minecraft:donkey,distance=..2,limit=1] Attributes[{Name:"generic.movementSpeed"}].Base 100
execute if score @p HorseJump matches 0 run execute store result score @p HorseJump run data get entity @e[type=minecraft:donkey,distance=..2,limit=1] Attributes[{Name:"horse.jumpStrength"}].Base 100
execute if score @p HorseHealth matches 0 run execute store result score @p HorseHealth run data get entity @e[type=minecraft:mule,distance=..2,limit=1] Attributes[{Name:"generic.maxHealth"}].Base
execute if score @p HorseSpeed matches 0 run execute store result score @p HorseSpeed run data get entity @e[type=minecraft:mule,distance=..2,limit=1] Attributes[{Name:"generic.movementSpeed"}].Base 100
execute if score @p HorseJump matches 0 run execute store result score @p HorseJump run data get entity @e[type=minecraft:mule,distance=..2,limit=1] Attributes[{Name:"horse.jumpStrength"}].Base 100
execute if score @p HorseHealth matches 0 run execute store result score @p HorseHealth run data get entity @e[type=minecraft:skeleton_horse,distance=..2,limit=1] Attributes[{Name:"generic.maxHealth"}].Base
execute if score @p HorseSpeed matches 0 run execute store result score @p HorseSpeed run data get entity @e[type=minecraft:skeleton_horse,distance=..2,limit=1] Attributes[{Name:"generic.movementSpeed"}].Base 100
execute if score @p HorseJump matches 0 run execute store result score @p HorseJump run data get entity @e[type=minecraft:skeleton_horse,distance=..2,limit=1] Attributes[{Name:"horse.jumpStrength"}].Base 100
execute if score @p HorseHealth matches 0 run execute store result score @p HorseHealth run data get entity @e[type=minecraft:zombie_horse,distance=..2,limit=1] Attributes[{Name:"generic.maxHealth"}].Base
execute if score @p HorseSpeed matches 0 run execute store result score @p HorseSpeed run data get entity @e[type=minecraft:zombie_horse,distance=..2,limit=1] Attributes[{Name:"generic.movementSpeed"}].Base 100
execute if score @p HorseJump matches 0 run execute store result score @p HorseJump run data get entity @e[type=minecraft:zombie_horse,distance=..2,limit=1] Attributes[{Name:"horse.jumpStrength"}].Base 100
setblock ~-1 ~3 ~-1 minecraft:oak_wall_sign[facing=south]{Text1:'{"text":""}',Text2:'{"text":"Health:"}',Text3:'{"score":{"name":"@p","objective":"HorseHealth"}}'}
setblock ~ ~3 ~-1 minecraft:oak_wall_sign[facing=south]{Text1:'{"text":""}',Text2:'{"text":"Speed:"}',Text3:'{"score":{"name":"@p","objective":"HorseSpeed"}}'}
setblock ~1 ~3 ~-1 minecraft:oak_wall_sign[facing=south]{Text1:'{"text":""}',Text2:'{"text":"Jump:"}',Text3:'{"score":{"name":"@p","objective":"HorseJump"}}'}
Step 2 - World Setup
Open the world, or type /reload command if it was already open
Run the following commands:
/scoreboard objectives add HorseHealth dummy
/scoreboard objectives add HorseSpeed dummy
/scoreboard objectives add HorseJump dummy
Give yourself a command block /give @p command_block
Place command block level with the ground, and right click it.
Type the following in the console command box of the command block
function horsestats:checkstats
Place a pressure plate on top of the command block. Stepping on the pressure plate will generate three signs. If there are no horses around, they will say zero. If you ride, lead or push an equine within 2 blocks of the command block (marked with glass in the picture) and trigger the pressure plate, its respective stats will show up on the signs. This works on babies, untamed and untamable equines as well.
Progress | 100% complete |
Tags |
1 Update Logs
Update #1 : by Nitrox Nova 06/30/2020 12:24:38 pmJun 30th, 2020
due to changes in the array order, stats are found by name instead of index number.
Health = Attributes[{Name:"generic.maxHealth"}].Base
Speed = Attributes[{Name:"generic.movementSpeed"}].Base 100
Jump = Attributes[{Name:"horse.jumpStrength"}].Base 100
Health = Attributes[{Name:"generic.maxHealth"}].Base
Speed = Attributes[{Name:"generic.movementSpeed"}].Base 100
Jump = Attributes[{Name:"horse.jumpStrength"}].Base 100
tools/tracking
4311175
2
how-to-check-equine-stats-mcfunction-1-14
Create an account or sign in to comment.
/data get entity @e[type=minecraft:llama, limit=1] Strength
I wish the command for horses was so simple..
Great work Nitrox!