# Pet (SLASH'EM)
Pets in SLASH'EM are much like pets in vanilla NetHack: They fight on your side, eat (or starve), bring objects to you, and respond to whistles. SLASH'EM provides more domestic animals to tame and makes such monsters more frequent in the dungeon - there are also more varieties of food to tame monsters with. The normal methods of obtaining a pet in NetHack (e.g., starting pets, the spell of create familiar, and feeding) are also applicable in SLASH'EM.
The basic features of pets are also generally the same: they will attack other non-tame monsters in melee and generally avoid attacking stronger monsters;[1] monsters not killed by the attack that have not moved that turn may retaliate with a 3⁄4 chance.[2] Pets will also seek nearby objects to either eat them if applicable or bring them to you, and if not inediate can be fed to increase apport for a while.[3].[4][5]

Contents

1 Pets and items
2 Treachery

2.1 Messages

3 Diet

3.1 List of monsters tamed by feeding
3.2 List of monsters tamed by specific food

4 Strategy

4.1 Solar
4.2 Giant shoggoth
4.3 Crystal golem

5 Good steeds

5.1 Ki-rin
5.2 Vorpal jabberwock

6 See also
7 External links
8 References

Pets and items
As far as pet behavior and cursed objects, SLASH'EM is mostly the same as NetHack: pets will avoid squares with cursed objects and only enter them "reluctantly" if they block the pet's path at that moment, unless that square contains food and the pet is hungry, or else has a food item that it considers a treat.[6][7][8][9] Pets will also never pick up cursed items even if they move onto a square with one in the above circumstances.[10]
The primary difference in this behavior is that demon or undead pets, such as the tame ghoul that a Necromancer starts with, will instead avoid blessed objects in the same way that other pets avoid cursed ones. In addition, SLASH'EM provides two other types of tame monsters: the tame minions dispatched to you by your god from a successful prayer or sacrifice, and the spell beings created by the spells of flame sphere and freeze sphere. To be consistent with Eva Myers' spoiler, this article applies the term "pet" to the exclusion of tame minions and spell beings. In the source code, pets have an attached struct edog (identical to that of vanilla NetHack, defined at edog.h).
There exists a port of the pet ranged patch (by D. Shaligram, ported by Jean-Yves Moyen) that would allow pets to also attack with ranged attacks.

Treachery
SLASH'EM also adds the M3_TRAITOR flag to denote monsters that have a chance of spontaneously rebelling against the player while tame, turning them hostile as well; this has no effect on peaceful monsters. You will receive a message if a monster turns traitor, and such monsters are denoted as "traitor" when examined with a stethoscope or wand of probing. 
The check for betrayal occurs with a 1⁄850 chance on every move, as well as whenever you abuse the pet.[11] This check will always fail if the pet is a spell being, is further than 3 squares away, is mindless, or if you have more hit points than the pet. If those checks pass, then there is a  chance that the pet will turn traitor.[12] Outside of maintaining more HP than your pets, increasing tameness and avoiding abuse is the best way to decrease the odds of a pet rebelling.

Messages

<foo> turns on you!
A tamed monster turned traitor.
You feel uneasy about <foo>.
As above, but you did not see the monster became hostile.
Diet
As in vanilla NetHack, each tame monster in SLASH'EM has a varied set of foods that fall into four categories: treats that can raise apport, "good" food that it will normally eat whether or not it is hungry, "acceptable" food that it will eat only when hungry, and all other foods that it will only consider while nearly starved. While these base mechanics are unchanged, there are more monsters that can be tamed or made peaceful with food, and certain monsters can only be tamed by specific treat items.
Sandwiches, tortillas, cheeses, and holy wafers are the new food items introduced in SLASH'EM - these are considered "people food" and thus "acceptable" to carnivores, while herbivores will only eat them when starving.

List of monsters tamed by feeding
Below is a table of domestic animals (defined by the M2_DOMESTIC flag) that can be tamed by throwing acceptable food at them; other food will instead turn them peaceful. The table also contains the monster level and monster frequency (in the L:F column), and some basic stats about each monster.[13]

Monster

L:F

Speed [AC] Attacks

Diet

c chicken

2:1
15 [8] bite 1d3
herbivore

c cockatoo

3:1
15 [6] bite 1d4
herbivore

c parrot

7:1
15 [6] bite 2d6
herbivore

d little dog

2:7
18 [6] bite 1d6
carnivore

d dog

4:7
16 [5] bite 1d6
carnivore

d large dog

6:7
15 [4] bite 2d4
carnivore

d pit bull

11:1
15 [4] bite 4d4
carnivore

f kitten

2:7
18 [6] bite 1d6
carnivore

f housecat

4:7
16 [5] bite 1d6
carnivore

f large cat

6:7
15 [4] bite 2d4
carnivore

q lamb

1:2
12 [10] butt 1d2, kick 1d2
herbivore

q sheep

3:2
12 [8] butt 1d4, kick 1d3
herbivore

q goat

4:1
12 [6] butt 2d4, kick 1d4, kick 1d4
herbivore

q cow

7:2
9 [7] butt 1d8, kick 2d4
herbivore

q bull

10:1
15 [5] butt 2d8, kick 2d4
herbivore

u pony

3:2
16 [6] kick 1d6, bite 1d2
herbivore

u horse

5:2
20 [5] kick 1d8, bite 1d3
herbivore

u warhorse

7:2
24 [4] kick 1d10, bite 1d4
herbivore

z koala

7:2
4 [9] touch (calm) 0d0
eucalyptus leaf

z wombat

5:1
12 [5] kick 1d6, bite 1d6
herbivore

List of monsters tamed by specific food
These monsters only interact with specific food items, and other food will not render them peaceful.[14] Once a monster of this type is tamed, it reverts to a normal carnivorous or herbivorous diet, with the specific food counting as a treat for them. This specific food is: cheese for rats, a carrot for rabbits or a banana for primates - only the listed monsters of those types can be tamed with those foods.

Monster

L:F

Speed [AC] Attacks

Diet

r sewer rat

0:1
12 [7] bite 1d3

carnivore, wants cheese

r black rat

0:0
15 [7] bite 1d3

carnivore, wants cheese

r giant rat

1:2
10 [7] bite 1d3

carnivore, wants cheese

r pack rat

0:0
12 [7] bite 1d3, touch (steals item) 1d1

carnivore, wants cheese

r rabbit

0:2
15 [7] bite 1d3

herbivore, wants carrot

r rabid rabbit

3:1
18 [7] bite 2d4

herbivore, wants carrot

Y monkey

2:1
12 [6] claw (steals item) 0d0, bite 1d3

omnivore, wants banana

Y ape

4:2
12 [6] claw 1d3, claw 1d3, bite 1d6

omnivore, wants banana

Y yeti

5:2
15 [6] claw 1d6, claw 1d6, bite 1d4

carnivore, wants banana

Y carnivorous ape

6:1
12 [6] claw 1d4, claw 1d4, crushing bearhug 1d8

carnivore, wants banana

Y sasquatch

7:1
15 [6] claw 1d6, claw 1d6, kick 1d8

omnivore, wants banana

Y zruty

9:2
8 [3] claw 3d4, claw 3d4, bite 3d6

carnivore, wants banana

Strategy
Given the preponderance of stronger monsters in SLASH'EM, it is not surprising that the best pets are almost a completely different set.  In terms of sheer strength, there are three monsters which stand out: the giant shoggoth, the Solar, and the crystal golem.

Solar
Probably the best choice for a pet, these are essentially stronger Archons.  They do immense amounts of damage, wield weapons, can heal themselves, resist almost every type of elemental damage, and are guaranteed a shield of reflection.  Also, the game will always attempt to convert a Solar's long sword into Demonbane or Sunsword.  In acquiring them as pets, lawfuls have a significant advantage, for they can receive them as minions from sacrifice and possibly prayer.  Note that a minion will not pick up items at all; in particular, this means that disarming it will leave it permanently weaponless.    Note that Solars are not resistant to level drain, and thus can be hurt by wands of draining.  Fortunately, monsters will not aim for them, but may hit them when aiming for you.

Giant shoggoth
Giant shoggoths are capable of doing somewhat more damage than Solars, and are also slightly faster.  In addition, they are also resistant to stoning.  Also, they are the only one of the three pets to eat anything, meaning that it is easier to keep their tameness high.  Unfortunately, they are capable of treachery, meaning they can spontaneously rebel, even if their tameness is not reduced to zero.  Note that they enjoy hiding, so you may need to apply a magic whistle to keep them fighting.

Crystal golem
Crystal golems are the slowest of the above monsters, and also only have one weapon attack.  It is admittedly very strong, doing 8d12 damage, but it does make their damage somewhat more variable than the above two.  However, they are guaranteed to have 300 hit points, which is more than either a Solar or a giant shoggoth starts with.  Also, their bodies have innate reflection and magic resistance.  The latter property is quite useful, as it prevents them from being turned into a weak monster by a polymorph trap.  This is a significant advantage, although somewhat less so than in vanilla, as polymorphed monsters in SLASH'EM eventually revert to their original form.

Good steeds
Ki-rin
As in vanilla, the ki-rin is a formidable flying, intelligent steed capable of wearing amulets and (some) armor, but since it does not eat it may be harder to keep tame (especially since non-Knights riding decreases tameness).

Vorpal jabberwock
In contrast to the ki-rin, the vorpal jabberwock eats and so its tameness can be increased, but its speed is slower than that of the ki-rin.

See also
Minion
Spell being
External links
How To Acquire Pets In NetHack 3.4.3 And Slash'EM 7E6F3 ("by Eva Myers, with helpful contributions from J. Ali Harlow")
References

↑ dogmove.c in SLASH'EM 0.0.7E7F3, line 859

↑ dogmove.c in SLASH'EM 0.0.7E7F3, line 891

↑ dogmove.c in SLASH'EM 0.0.7E7F3, line 470

↑ dogmove.c in SLASH'EM 0.0.7E7F3, line 200

↑ dogmove.c in SLASH'EM 0.0.7E7F3, line 346

↑ dogmove.c in SLASH'EM 0.0.7E7F3, line 72

↑ dogmove.c in SLASH'EM 0.0.7E7F3, line 492

↑ dogmove.c in SLASH'EM 0.0.7E7F3, line 923

↑ dogmove.c in SLASH'EM 0.0.7E7F3, line 1006

↑ dogmove.c in SLASH'EM 0.0.7E7F3, line 367

↑ dogmove.c in SLASH'EM 0.0.7E7F3, line 716

↑ dogmove.c in SLASH'EM 0.0.7E7F3, line 637

↑ monst.c in SLASH'EM 0.0.7E7F2, line 106: Monster data taken from this file

↑ mondata.h in SLASH'EM 0.0.7E7F3, line 238

</foo></foo>