Howrse Horse Links Updated

Previously I’d created a script that put links to the sire, dam and either the public or private page of the horse who’s page you’re visiting.  It went through a few minor and not so minor changes such as adding the sire and dam’s name, some minor bug fixes that came up due to mares being pregnant which threw the script off a bit etc, but stayed the same.  The latest change was to add an input box that added the BBCode for linking the horse on the forums.  BBCode is like HTML or Markup/down in that it’s a set of tags that format the text in the post including for posting images and links.  The Howrse forums only provides support to BBCode for posting links and images at the moment.Without Links:

Without Links

 

With Links:

 

With Links

Links to the script:

Greasy Fork: Howrse Sire/Dam/Other GreaseMonkey script

MonkeyGuts: Howrse Sire/Dam/Other GreaseMonkey script

 

And, yes, she has a hat.

Advertisements

Foal Games

If you’re looking for a working schedule for foal games on Howrse, you’ve come to the right spot.  These are geared specifically for horse breeds, but can work for pony breeds.  However you will lose a half hour here and there, but any time lost can be made up when the foal is 1 year, 4 months of age.

How much to feed the foal:

Says to feed Feed Instead
4.4lbs 8lbs
6.6lbs 10lbs
8.8lbs 12lbs
11lbs 12lb

Skill gain when not using a shower

Age Time SP gain
8m 9 hrs 10.8
10m 9.5 hrs 11.4
1y 10.5 hrs 12.6
1y 2m 11 hrs 13.2
1y 4m 10 hrs 12
Totals 50 hrs 60 SP

=-=-=-=-=-=-=-=-=
8 m
=-=-=-=-=-=-=-=-=
Drink
Box 2 hrs
Groom
Play .5 hr
Feed
Play 7.5 hrs
Stroke, Carrot, Turnip
Play 1 hr

=-=-=-=-=-=-=-=-=
10m
=-=-=-=-=-=-=-=-=
Drink
Box 1 hr
Groom
Play .5 hr
Feed
Play 8 hrs
Stroke, Carrot, Turnip
Play 1 hr

=-=-=-=-=-=-=-=-=
1y
=-=-=-=-=-=-=-=-=
Drink
Box 1 hr
Groom
Play .5 hr
Feed
Play 9 hrs
Stroke, Carrot, Turnip
Play 1 hr

=-=-=-=-=-=-=-=-=
1y 2m
=-=-=-=-=-=-=-=-=
Drink, Groom
Play .5 hr
Feed
Play 10 hrs
Stroke, Carrot, Turnip
Play 1 hr

=-=-=-=-=-=-=-=-=
1y 4m
=-=-=-=-=-=-=-=-=
Drink, Groom
Play .5 hr
Feed
Play 9.5 hrs
Stroke

For those interested I’ve also created a Grease Monkey script that will put the foal games for that day on the foal’s page so you don’t have to open a separate tab/window to display the foal games or rely on memorizing them.  Due to problems with uploading anything to userscripts.org I will be using MonkeyGuts for a primary script repository from now on.

MonkeyGuts link: Howrse Foal Games

Greasy Fork link: Howrse Foal Games

 

Re-visiting the swap all coats Grease Monkey script

Previously I wrote a Grease Monkey script that swapped all the coats back to the v3 default coats for all of the breeds in the game, and it’s on v11 now, I think.  At the same time I was working on other scripts to swap only a single breed archetypes default coat, but that is problematic in that if you use that method you create an unnecessary amount of overhead if you don’t want to swap all of the coats, but only a few as they all run when the page loads because they all run on the same pages.  To prevent this from happening and clean the mess up I created a variant of the swap all script and called it the swap select script.  What this does is set up a set of variables that are either set to 1 or 0.  If the variable is set to 1, the script will swap that breed archetype’s coat otherwise it won’t.

Due to certain restrictions on Grease Monkey and JavaScript the variables that determine which breeds to swap and which to not swap have to be manually edited by the user.  The default for the variables sets them to 1, and anytime the script gets updated, any changes to the variables will be reset from what the user set them to.  To prevent the script from being updated automatically, you can go to the Add-ons manager in Firefox >> User Scripts tab, and go to the script titled “Howrse_Swap_Select_v4_v3_Default_Coats”, right-click and select the “Automatically check for updates” option at the bottom if there is a check-mark next to it.

I mentioned the swap is based on breed archetypes not specific breeds.  A breed archetype is how Owlient has categorized each breed to determine what coat directory to use.  For example, the Arabian Horse breed archetype is arabe.  The two breeds that use this archetype are the Arabian Horse and the Shagya Arabian breeds.  Another example would be the iberique archetype which is used by the Lusitano, Canadian, Peruvian Paso, Purebred Spanish Horse and Barb breeds.  It’s why some breeds look the same.  When they updated the coats to v4 they gave Tennessee Walkers their own directory, so they no longer use the trotteur archetype.

In the script each breed archetype variable is followed by a comment that specifies what breeds fall under that archetype.  If the breed whose coat you want to change back to the v3 coats falls under a specific breed archetype, the associated variable needs to be a 1.  If the variable associated with a breed archetype is 0 then all breeds that use that coat will not be swapped.  The default for the script is to swap all coat files.  If you don’t want all of the coats to be swapped, the script should be edited so that the breeds you don’t want swapped are set to 0.

The following is the only part the user needs to modify if they don’t want all of the coats for all of the breeds to be swapped.  Changing something elsewhere is likely to break the script.

//	Breed coat archetypes
	akhalTeke = 1;	//	Akhal-Teke
	americain = 1;	//	Appaloosa, Argentinean Criollo, Paint Horse, Quarter Horse
	arabe = 1;	//	Arabian Horse, Shagya Arabian
	curly = 1;	//	Curly
	fjord = 1;	//	Fjord
	frison = 1;	//	Friesian
	highlandPony = 1;	//	Highland Pony
	iberique = 1;	//	Barb, Canadian horse, Lusitano, Peruvian Paso, Purebred Spanish Horse
	knabstrup = 1;	//	Knabstrupper
	marwari = 1;	//	Marwari
	mustang = 1;	//	Mustang
	nokota = 1;	//	Nokota
	poneyLeger = 1;	//	Connemara
	poneyLourd = 1;	//	Chincoteague Pony
	poneyPrimitif = 1;	//	Newfoundland Pony
	poneySport = 1;	//	Australian Pony, Welsh
	primitif = 1;	//	Brumby, Icelandic horse
	shetland = 1;	//	Shetland
	sportLeger = 1;	//	Quarter Pony, Trakehner
	sportMassif = 1;	//	Hanoverian, Holsteiner, Irish Hunter, KWPN, Russian Don Horse
	thoroughbred = 1;	//	Thoroughbred
	tinker = 1;	//	Gypsy Vanner
	trotteur = 1;	//	Hackney, Morgan, Standardbred
	tenWalker = 1;	//	Tennessee Walker

If the script gets updated, the values in the section above in the script will be set back to 1.

MonkeyGuts:  Howrse Default Coat Swap Select

Greasy Fork:  Howrse Default Coat Swap Select

Since I only use the script on Firefox I cannot guarantee it will work on any browser other than Firefox, but it might.

Default coat swap on Howrse

In April I created a Greasemonkey script to change the default coat for the Friesian breed to the v3 coat because I liked the v3 coat better.  At the time I thought the logic needed to change all of the default coats to the v3 default coats would take a lot more coding than it actually did, mostly because of how I initially wrote the script for the Friesian breed and how I wrote the script for this one.  Because the devs at Owlient kept the file names for the coat files the same and only changed the directory organization while leaving the v3 coats on the server it was a relatively simple task to create the code that would re-create the links so the page could display the v3 default coat for the breed and coat.

One of the problems I had with the Friesian script was it was unable to change the horse icons on pages like the breeding farm page.  The reason for this is due to the fact that the breeding farm is populated after the page is loaded and all GM scripts without delays are already run meaning there isn’t anything for the script to actually change at the time it runs.  To deal with this minor issue I put the part that swaps the horse icons into a function I can call using setTimeout to call the function after the breeding farm has been populated.  With the way the breeding farm page works when you switch to a different breeding farm, the page isn’t actually reloaded, the breeding farm grid is populated with horses from the selected breeding farm which means the script won’t be run again and the icons wouldn’t be switched.  This was fixed by using setInterval to have the function run every few seconds which shouldn’t cause any noticeable lag issues.  The rest of the pages that utilize horse icons won’t fire a setInterval call to the function, and will only run once when the page is initially loaded.

If you use the script you’ll notice that some of the default coats don’t swap and that is/should be some of the icons for foals.  The reason is that some aren’t tied to a specific breed but their species like “poney”.  Because of this it was easier to leave those with the v4 icons, but that should only be for the places the icons are displayed and not the horse’s page.  This is partly due to the differences in how the two parts of the script create the new image tag source.  The function that deals with icons disassembles the image tags source link while the part that deals with the default coat on the horse’s page ignores the style element that displays the horse and searches the page itself for clues to the horse’s breed and coat and uses those to put together the link to the v3 coat.

The pages that the script runs on are player presentations, EC presentations, horse pages both public and private, the player’s breeding farm page, horse description pages, safe haven, heaven and the horse sales.

Links to the script:

Userscripts:  Howrse Default Coat SwapAll

Greasy Fork:  Howrse Default Coat SwapAll

Since I only use the script on Firefox I cannot guarantee it will work on any browser other than Firefox, but it might.