Board Thread:Suggestions forum/@comment-31507215-20170710234637

Starting Notes:
 * I did not find any similar suggestions in the Overview Boards, but if this is unoriginal, I apologize.
 * Mevans and the mod team can change some things from the suggestion as they see fit.
 * This is not necessarily something that should be a high priority.
 * I will start the suggestion with a story that (I think) illustrates my point well, but I can remove it if necessary.

The Tale of Stupid the Horse
''Once upon a time, on a far away server, there lived a horse. In after days, he was called "Stupid", but at the time of this story, he had no name. He was a beautiful grayish color, and was very fast, but (as was soon to be realized) he was very lacking in the brain department. One fine, sunny day, his owner took him for a ride into the unexplored countryside. They traveled for many days, over mountains, through grasslands, and, at last, into a forest. After they had ridden through the forest for a few minutes, the horse's owner say a large, inviting cave. He rode the soon-to-be-called Stupid over for a closer look. As he dismounted and entered the cave, three tall, green, scaly creatures left the shadows, and stalked toward him. Turning to run, the owner did not see his horse, and, upon further inspection, he found that the horse had wandered into the cave in which dwelled the green monsters! In an attempt to save his horse, the owner charged at the first creature, only for it to explode in his face! Stupid, surprisingly unharmed by the blast, turned and headed towards the second cave-dweller, which then combusted in a large cloud of pixelated smoke. The horse, hurt by the explosion this time, ran wildly in circles as his owner tried to fend off the remaining monster. After regaining his "sanity", Stupid wandered slowly towards the exit of the cave, where the owner was fighting the last of them. To his owner's dismay, Stupid marched directly up to the monster, and in milliseconds was blown to smithereens. THE END.''

Purpose
As illustrated by the above story, Minecraft horses are fearless (and half-witted) animals that don't care (or pay attention to) what situation they are in, even to the point of wandering blindly to their demise. In real life (as far as I know) there are many brave horses, but most horses are scared of many things anyway. I don't think that horses need to have much smarter AIs than other mobs, but I think that it would be good if they could have some sense of fear, to add to the realism of the game a bit.

Proposal
Mod horses (and possibly other steeds, too, but I will focus on horses) should be given a new stat called "Bravery", that would decide whether a horse runs from something scary or not.

The Stat
Currently, Vanilla horses (and, I assume, Mod horses) have three stats: speed, jump height, and health. As far as I know, all of these stats are randomly determined upon the spawning of the horse. If the horse is bred from two other horses, then the stats are dependent on those of the parents. This new "Bravery" stat would act in the same way as the rest of them, when it comes to spawning, breeding, etc. The Bravery stat would probably have a similar number value to the rest of them as well. At least until Mearas are added, Rohan horses would get a boost to this stat as well.

In Action
Unlike jump height, speed, and health, Bravery would only come into play when a horse is near something "scary", such as a lightning storm, a troll, a glue factory, etc. I am not sure on the exact details, but here is basically how it would work: When a certain enemy, event, or situation comes within (or happens within) a horse's view range, the game will make a "morale test". (If you have played any miniature wargames, you probably know what I am talking about.) When it does, the horse's Bravery would be compared with the event/monster/whatever 's Fear level (or something like that). The computer would then make a random decision (influenced by the Bravery to Fear ratio) as to whether the horse would spook or stay. For instance, if you had a horse with, say, a Bravery of nine out of ten, and it went up against a basic Troll, the horse would probably stay, but if you had a horse with a Bravery of 4, and it went up against an Olog-hai, the horse would almost certainly spook. After the game tests the morale, it would wait 20(?) seconds, and then test again.

Spooking
When a horse fails a morale test, it spooks. When a horse spooks, it tries to run away from whatever is scaring it. In the case of a thunder storm, the horse would run to the nearest shelter. If you are riding a horse when it spooks, you can still control it to an extent, but it would be much harder, as the horse would be trying to go one way, and you would probably be trying to get it to go the other way. A spooked horse would not stop (on its own) until the 20(?) seconds are up, in which case it would test again (if it can still see the scary thing) or just stop (if it is far enough away).

Fear
Here is a chart of the Fear levels of certain things - the higher the level, the easier a horse spooks:

10    Balrogs

9    Ents, Wights, and Wraiths

8    Explosions and Ologs

6    Trolls and Huorns

4    Wargs, Scorpions, and Spiders

2    Thunder Storms

1    Wolves

This chart is just what pops to mind now, and can be added to or changed at any time.

Final Note: These mechanics should be toggleable in the mod config.

Thanks for reading! As always, I am open to improvements and thoughts!

 