Skip to content

Community funded. No paid power. Never pay-to-win.

Our promise
AshRun
In-game model of Rockruff
← All Pokémon

National Pokédex #0744 · Generation 7

Rockruff

rock

When it rubs the rocks on its neck against you, that's proof of its love for you. However, the rocks are sharp, so the gesture is quite painful!

Natural spawnEvolution chain

Quick answer

How do you get Rockruff?

Rockruff can spawn in Badlands, Eroded Badlands, Wooded Badlands, and 36 other eligible biomes (Search: On land; Sky light: Bright; Ground: Natural). Check the complete conditions below; these routes reflect AshRun's installed ATMons files.

AshRun ATMons 1.3.0 · Checked · Sources & limitations

AshRun locations

How to obtain Rockruff

1 place to look

Where to look in the wild

Choose one location below and meet its conditions together. Separate cards are alternative routes. A rarity label describes a spawn pool, not the chance of finding one on each attempt.

Before you throw a ball

Catching Rockruff

If you encounter a wild Rockruff, an ordinary throw outside battle requires your first non-fainted party Pokémon to be at least its level.

  1. Party order matters: the game checks the first conscious Pokémon, not the highest level anywhere in your team.
  2. With no conscious party Pokémon, this outside-battle rule allows only targets up to level 15.
  3. A guaranteed-catch ball bypasses this ordinary level check. You can also battle a wild target and use a ball during your turn.

These rules describe wild encounters. Raids and scripted encounters may use their own capture flow. Read the catching guide and blocked-throw checklist · Checked .

Base catch-rate value: 190. This is a species value, not a percentage or a promise that a particular ball will work.

Battle profile

Base stats

280 total

Type weaknesses & resistances

Damage taken by Rockruff with Rock typing:

Immune to
None by typing alone

Unlisted move types deal normal (1×) damage. Both types are combined. Abilities, held items, moves, weather, Terastallization and form changes can alter the result.

Base stat values

Hp45
Attack65
Defence40
Special Attack30
Special Defence40
Speed60

Abilities

  • Keen Eye
  • Vital Spirit
  • Steadfast Hidden

Training

Base experience
56
Growth
Medium Fast
EV yield
Hp: 0 · Attack: 1 · Defence: 0 · Special Attack: 0 · Special Defence: 0 · Speed: 0
Friendship
50

Progression

Evolution & forms

Follow the requirements on each arrow, then open the next Pokémon to continue the chain. Regional and alternate forms can use different rules. Compare all evolution methods.

Forms

These are recorded forms, including transformations. A form appearing here does not by itself mean it spawns in the wild. Check the form labels on locations and evolution paths.

Dusk form — types, stats and evolutionrock

Damage taken by Rockruff (Dusk) with Rock typing:

Immune to
None by typing alone

Unlisted move types deal normal (1×) damage. Both types are combined. Abilities, held items, moves, weather, Terastallization and form changes can alter the result.

Abilities: Own Tempo, Own Tempo (hidden).

Hp
45
Attack
65
Defence
40
Special Attack
30
Special Defence
40
Speed
60
  • Lycanroc (Wolf Form: Dusk): level it up; reach level 25; during Dusk

Complete installed learnset

Moves

98 entries
Level moves (14)
Lv. 1 · TackleLv. 1 · LeerLv. 4 · Sand AttackLv. 8 · Double TeamLv. 12 · Rock ThrowLv. 16 · HowlLv. 20 · BiteLv. 24 · Rock TombLv. 28 · RoarLv. 32 · Rock SlideLv. 36 · CrunchLv. 40 · Scary FaceLv. 44 · Stealth RockLv. 48 · Stone Edge
Egg moves (6)
Crush ClawEndeavorLast ResortOdor SleuthSucker PunchThrash
Tm moves (46)
Body SlamBulldozeCharmCovetCrunchDigDouble-EdgeDouble TeamEarth PowerEchoed VoiceEndeavorEndureFacadeFire FangHelping HandHyper VoiceIron DefenseIron HeadIron TailLast ResortMud-SlapPlay RoughProtectPsychic FangsRestRoarRock ClimbRock PolishRock SlideRock TombSandstormScary FaceSleep TalkSnarlStealth RockStomping TantrumStone EdgeSubstituteSucker PunchSwords DanceTake DownTauntTera BlastThunder FangTrailblazeZen Headbutt
Tutor moves (23)
BulldozeCovetEarth PowerEndeavorFire FangHelping HandHyper VoiceIron DefenseIron HeadIron TailLast ResortMud-SlapPlay RoughRestRock SlideSleep TalkSnarlStealth RockStomping TantrumStone EdgeSucker PunchThunder FangZen Headbutt
Legacy moves (9)
AttractConfideFrustrationHidden PowerReturnRoundSnoreSwaggerToxic

Useful extras

Drops & breeding

Bone

Quantity 0-1

Rotten Flesh

Quantity 0-1

Hard Stone

2.5% chance

Babiri Berry

2.5% chance

Egg groups
Field
Egg cycles
15
Maximum drops
4
Technical server dataRaw records, internal IDs, source files, presets, and full JSON

Source summary

Base species: Cobblemon-neoforge-1.7.3+1.21.1.jar. Installed additions: complete-cobblemon-collection-myths-and-legends-compat-2.1.0.jar, mega_showdown-neoforge-1.9.9+1.7.3+1.21.1.jar.

Acquisition records

{
  "questGuides": [],
  "structureEncounters": [],
  "naturalSpawns": [
    {
      "id": "rockruff-1",
      "pokemon": "rockruff",
      "presets": [
        "natural"
      ],
      "type": "pokemon",
      "spawnablePositionType": "grounded",
      "bucket": "uncommon",
      "level": "2-27",
      "weight": 5.04,
      "condition": {
        "minSkyLight": 8,
        "maxSkyLight": 15,
        "biomes": [
          "#cobblemon:is_badlands",
          "#cobblemon:is_hills"
        ]
      },
      "source": "mega_showdown-neoforge-1.9.9+1.7.3+1.21.1.jar",
      "sourceFile": "data/cobblemon/spawn_pool_world/0744_rockruff.json",
      "formProperties": [],
      "presetConditions": [
        {
          "preset": "natural",
          "condition": {
            "neededBaseBlocks": [
              "#cobblemon:natural"
            ]
          }
        }
      ],
      "presetAntiConditions": [
        {
          "preset": "natural",
          "condition": {
            "neededBaseBlocks": [
              "minecraft:farmland"
            ]
          }
        }
      ],
      "presetProvenance": [
        {
          "preset": "natural",
          "source": "Cobblemon-neoforge-1.7.3+1.21.1.jar",
          "sourceFile": "data/cobblemon/spawn_detail_presets/natural.json"
        }
      ],
      "effectiveCondition": {
        "minSkyLight": 8,
        "maxSkyLight": 15,
        "biomes": [
          "#cobblemon:is_badlands",
          "#cobblemon:is_hills"
        ],
        "neededBaseBlocks": [
          "#cobblemon:natural"
        ]
      },
      "effectiveAnticonditions": [
        {
          "neededBaseBlocks": [
            "minecraft:farmland"
          ]
        }
      ],
      "resolvedBiomes": [
        "minecraft:badlands",
        "minecraft:eroded_badlands",
        "minecraft:wooded_badlands",
        "terralith:bryce_canyon",
        "terralith:painted_mountains",
        "terralith:red_oasis",
        "terralith:savanna_badlands",
        "terralith:white_mesa",
        "terralith:snowy_badlands",
        "terralith:ashen_savanna",
        "terralith:warped_mesa",
        "minecraft:windswept_hills",
        "minecraft:windswept_forest",
        "minecraft:windswept_gravelly_hills",
        "terralith:fractured_savanna",
        "terralith:haze_mountain",
        "terralith:stony_spires",
        "terralith:windswept_spires",
        "minecraft:meadow",
        "terralith:alpine_highlands",
        "terralith:arid_highlands",
        "terralith:blooming_plateau",
        "terralith:highlands",
        "terralith:alpine_grove",
        "terralith:caldera",
        "terralith:savanna_slopes",
        "terralith:siberian_grove",
        "terralith:snowy_maple_forest",
        "terralith:snowy_shield",
        "terralith:tropical_jungle",
        "terralith:volcanic_crater",
        "terralith:blooming_valley",
        "terralith:forested_highlands",
        "terralith:lavender_valley",
        "terralith:lush_valley",
        "terralith:moonlight_valley",
        "terralith:sakura_valley",
        "terralith:temperate_highlands",
        "terralith:yosemite_lowlands"
      ],
      "resolvedExcludedBiomes": []
    }
  ],
  "raids": [],
  "fossils": []
}

Evolution and forms

{
  "evolutions": [
    {
      "id": "rockruff_lycanroc",
      "variant": "level_up",
      "result": "lycanroc wolf_form=midday",
      "consumeHeldItem": false,
      "learnableMoves": [
        "accelerock",
        "suckerpunch"
      ],
      "requirements": [
        {
          "variant": "level",
          "minLevel": 25
        },
        {
          "variant": "time_range",
          "range": "day"
        }
      ]
    },
    {
      "id": "rockruff_lycanrocmidnight",
      "variant": "level_up",
      "result": "lycanroc wolf_form=midnight",
      "consumeHeldItem": false,
      "learnableMoves": [
        "counter"
      ],
      "requirements": [
        {
          "variant": "level",
          "minLevel": 25
        },
        {
          "variant": "time_range",
          "range": "night"
        }
      ]
    }
  ],
  "forms": [
    {
      "name": "Dusk",
      "aspects": [
        "dusk-form"
      ],
      "types": [
        "rock"
      ],
      "abilities": [
        "owntempo",
        "h:owntempo"
      ],
      "stats": {
        "hp": 45,
        "attack": 65,
        "defence": 40,
        "special_attack": 30,
        "special_defence": 40,
        "speed": 60
      },
      "moves": [
        {
          "method": "level",
          "move": "tackle",
          "level": 1
        },
        {
          "method": "level",
          "move": "leer",
          "level": 1
        },
        {
          "method": "level",
          "move": "sandattack",
          "level": 4
        },
        {
          "method": "level",
          "move": "doubleteam",
          "level": 8
        },
        {
          "method": "level",
          "move": "rockthrow",
          "level": 12
        },
        {
          "method": "level",
          "move": "howl",
          "level": 16
        },
        {
          "method": "level",
          "move": "bite",
          "level": 20
        },
        {
          "method": "level",
          "move": "rocktomb",
          "level": 24
        },
        {
          "method": "level",
          "move": "roar",
          "level": 28
        },
        {
          "method": "level",
          "move": "rockslide",
          "level": 32
        },
        {
          "method": "level",
          "move": "crunch",
          "level": 36
        },
        {
          "method": "level",
          "move": "scaryface",
          "level": 40
        },
        {
          "method": "level",
          "move": "stealthrock",
          "level": 44
        },
        {
          "method": "level",
          "move": "stoneedge",
          "level": 48
        },
        {
          "method": "egg",
          "move": "endeavor"
        },
        {
          "method": "egg",
          "move": "lastresort"
        },
        {
          "method": "egg",
          "move": "odorsleuth"
        },
        {
          "method": "egg",
          "move": "suckerpunch"
        },
        {
          "method": "egg",
          "move": "thrash"
        },
        {
          "method": "tm",
          "move": "bodyslam"
        },
        {
          "method": "tm",
          "move": "bulldoze"
        },
        {
          "method": "tm",
          "move": "charm"
        },
        {
          "method": "tm",
          "move": "covet"
        },
        {
          "method": "tm",
          "move": "crunch"
        },
        {
          "method": "tm",
          "move": "crushclaw"
        },
        {
          "method": "tm",
          "move": "dig"
        },
        {
          "method": "tm",
          "move": "doubleedge"
        },
        {
          "method": "tm",
          "move": "doubleteam"
        },
        {
          "method": "tm",
          "move": "earthpower"
        },
        {
          "method": "tm",
          "move": "echoedvoice"
        },
        {
          "method": "tm",
          "move": "endeavor"
        },
        {
          "method": "tm",
          "move": "endure"
        },
        {
          "method": "tm",
          "move": "facade"
        },
        {
          "method": "tm",
          "move": "firefang"
        },
        {
          "method": "tm",
          "move": "helpinghand"
        },
        {
          "method": "tm",
          "move": "hypervoice"
        },
        {
          "method": "tm",
          "move": "irondefense"
        },
        {
          "method": "tm",
          "move": "ironhead"
        },
        {
          "method": "tm",
          "move": "irontail"
        },
        {
          "method": "tm",
          "move": "lastresort"
        },
        {
          "method": "tm",
          "move": "mudslap"
        },
        {
          "method": "tm",
          "move": "playrough"
        },
        {
          "method": "tm",
          "move": "protect"
        },
        {
          "method": "tm",
          "move": "psychicfangs"
        },
        {
          "method": "tm",
          "move": "rest"
        },
        {
          "method": "tm",
          "move": "roar"
        },
        {
          "method": "tm",
          "move": "rockclimb"
        },
        {
          "method": "tm",
          "move": "rockpolish"
        },
        {
          "method": "tm",
          "move": "rockslide"
        },
        {
          "method": "tm",
          "move": "rocktomb"
        },
        {
          "method": "tm",
          "move": "sandstorm"
        },
        {
          "method": "tm",
          "move": "scaryface"
        },
        {
          "method": "tm",
          "move": "sleeptalk"
        },
        {
          "method": "tm",
          "move": "snarl"
        },
        {
          "method": "tm",
          "move": "stealthrock"
        },
        {
          "method": "tm",
          "move": "stompingtantrum"
        },
        {
          "method": "tm",
          "move": "stoneedge"
        },
        {
          "method": "tm",
          "move": "substitute"
        },
        {
          "method": "tm",
          "move": "suckerpunch"
        },
        {
          "method": "tm",
          "move": "swordsdance"
        },
        {
          "method": "tm",
          "move": "takedown"
        },
        {
          "method": "tm",
          "move": "taunt"
        },
        {
          "method": "tm",
          "move": "terablast"
        },
        {
          "method": "tm",
          "move": "thunderfang"
        },
        {
          "method": "tm",
          "move": "trailblaze"
        },
        {
          "method": "tm",
          "move": "zenheadbutt"
        },
        {
          "method": "tutor",
          "move": "bulldoze"
        },
        {
          "method": "tutor",
          "move": "covet"
        },
        {
          "method": "tutor",
          "move": "earthpower"
        },
        {
          "method": "tutor",
          "move": "endeavor"
        },
        {
          "method": "tutor",
          "move": "firefang"
        },
        {
          "method": "tutor",
          "move": "helpinghand"
        },
        {
          "method": "tutor",
          "move": "hypervoice"
        },
        {
          "method": "tutor",
          "move": "irondefense"
        },
        {
          "method": "tutor",
          "move": "ironhead"
        },
        {
          "method": "tutor",
          "move": "irontail"
        },
        {
          "method": "tutor",
          "move": "lastresort"
        },
        {
          "method": "tutor",
          "move": "mudslap"
        },
        {
          "method": "tutor",
          "move": "playrough"
        },
        {
          "method": "tutor",
          "move": "rest"
        },
        {
          "method": "tutor",
          "move": "rockslide"
        },
        {
          "method": "tutor",
          "move": "sleeptalk"
        },
        {
          "method": "tutor",
          "move": "snarl"
        },
        {
          "method": "tutor",
          "move": "stealthrock"
        },
        {
          "method": "tutor",
          "move": "stompingtantrum"
        },
        {
          "method": "tutor",
          "move": "stoneedge"
        },
        {
          "method": "tutor",
          "move": "suckerpunch"
        },
        {
          "method": "tutor",
          "move": "thunderfang"
        },
        {
          "method": "tutor",
          "move": "zenheadbutt"
        },
        {
          "method": "legacy",
          "move": "attract"
        },
        {
          "method": "legacy",
          "move": "confide"
        },
        {
          "method": "legacy",
          "move": "frustration"
        },
        {
          "method": "legacy",
          "move": "hiddenpower"
        },
        {
          "method": "legacy",
          "move": "return"
        },
        {
          "method": "legacy",
          "move": "round"
        },
        {
          "method": "legacy",
          "move": "snore"
        },
        {
          "method": "legacy",
          "move": "swagger"
        },
        {
          "method": "legacy",
          "move": "toxic"
        },
        {
          "method": "special",
          "move": "happyhour"
        }
      ],
      "evolutions": [
        {
          "id": "rockruff_lycanrocdusk",
          "variant": "level_up",
          "result": "lycanroc wolf_form=dusk",
          "consumeHeldItem": false,
          "learnableMoves": [
            "thrash",
            "crushclaw"
          ],
          "requirements": [
            {
              "variant": "level",
              "minLevel": 25
            },
            {
              "variant": "time_range",
              "range": "dusk"
            }
          ]
        }
      ],
      "description": [
        "This Pokémon can bond very strongly with its Trainer, but it also has a habit of biting. Raising a Rockruff for a long time can be challenging."
      ]
    }
  ]
}

Behavior and drops

{
  "behaviour": {
    "entityInteract": {
      "avoidedBySkeleton": true
    },
    "herd": {
      "maxSize": "6",
      "toleratedLeaders": [
        {
          "pokemon": "rockruff",
          "tier": 1
        },
        {
          "pokemon": "lycanroc midnight",
          "tier": 2
        },
        {
          "pokemon": "lycanroc wolf_form=midday",
          "tier": 3
        },
        {
          "pokemon": "lycanroc dusk",
          "tier": 4
        }
      ]
    },
    "resting": {
      "willSleepOnBed": true,
      "drowsyChance": 0.0333,
      "rouseChance": 0.0042
    },
    "moving": {
      "swim": {
        "avoidsWater": true
      }
    },
    "combat": {
      "willDefendOwner": true
    }
  },
  "drops": {
    "amount": 4,
    "entries": [
      {
        "item": "minecraft:bone",
        "quantityRange": "0-1"
      },
      {
        "item": "minecraft:rotten_flesh",
        "quantityRange": "0-1"
      },
      {
        "item": "cobblemon:hard_stone",
        "percentage": 2.5
      },
      {
        "item": "cobblemon:babiri_berry",
        "percentage": 2.5
      }
    ]
  },
  "labels": [
    "gen7"
  ]
}

Complete installed species record

{
  "nationalPokedexNumber": 744,
  "name": "Rockruff",
  "primaryType": "rock",
  "maleRatio": 0.5,
  "height": 5,
  "weight": 92,
  "pokedex": [
    "cobblemon.species.rockruff.desc"
  ],
  "labels": [
    "gen7"
  ],
  "aspects": [],
  "abilities": [
    "keeneye",
    "vitalspirit",
    "h:steadfast"
  ],
  "eggGroups": [
    "field"
  ],
  "baseStats": {
    "hp": 45,
    "attack": 65,
    "defence": 40,
    "special_attack": 30,
    "special_defence": 40,
    "speed": 60
  },
  "evYield": {
    "hp": 0,
    "attack": 1,
    "defence": 0,
    "special_attack": 0,
    "special_defence": 0,
    "speed": 0
  },
  "baseExperienceYield": 56,
  "experienceGroup": "medium_fast",
  "catchRate": 190,
  "eggCycles": 15,
  "baseFriendship": 50,
  "baseScale": 1,
  "hitbox": {
    "width": 1,
    "height": 1,
    "fixed": false
  },
  "behaviour": {
    "entityInteract": {
      "avoidedBySkeleton": true
    },
    "herd": {
      "maxSize": "6",
      "toleratedLeaders": [
        {
          "pokemon": "rockruff",
          "tier": 1
        },
        {
          "pokemon": "lycanroc midnight",
          "tier": 2
        },
        {
          "pokemon": "lycanroc wolf_form=midday",
          "tier": 3
        },
        {
          "pokemon": "lycanroc dusk",
          "tier": 4
        }
      ]
    },
    "resting": {
      "willSleepOnBed": true,
      "drowsyChance": 0.0333,
      "rouseChance": 0.0042
    },
    "moving": {
      "swim": {
        "avoidsWater": true
      }
    },
    "combat": {
      "willDefendOwner": true
    }
  },
  "drops": {
    "amount": 4,
    "entries": [
      {
        "item": "minecraft:bone",
        "quantityRange": "0-1"
      },
      {
        "item": "minecraft:rotten_flesh",
        "quantityRange": "0-1"
      },
      {
        "item": "cobblemon:hard_stone",
        "percentage": 2.5
      },
      {
        "item": "cobblemon:babiri_berry",
        "percentage": 2.5
      }
    ]
  },
  "moves": [
    "1:tackle",
    "1:leer",
    "4:sandattack",
    "8:doubleteam",
    "12:rockthrow",
    "16:howl",
    "20:bite",
    "24:rocktomb",
    "28:roar",
    "32:rockslide",
    "36:crunch",
    "40:scaryface",
    "44:stealthrock",
    "48:stoneedge",
    "egg:crushclaw",
    "egg:endeavor",
    "egg:lastresort",
    "egg:odorsleuth",
    "egg:suckerpunch",
    "egg:thrash",
    "tm:bodyslam",
    "tm:bulldoze",
    "tm:charm",
    "tm:covet",
    "tm:crunch",
    "tm:dig",
    "tm:doubleedge",
    "tm:doubleteam",
    "tm:earthpower",
    "tm:echoedvoice",
    "tm:endeavor",
    "tm:endure",
    "tm:facade",
    "tm:firefang",
    "tm:helpinghand",
    "tm:hypervoice",
    "tm:irondefense",
    "tm:ironhead",
    "tm:irontail",
    "tm:lastresort",
    "tm:mudslap",
    "tm:playrough",
    "tm:protect",
    "tm:psychicfangs",
    "tm:rest",
    "tm:roar",
    "tm:rockclimb",
    "tm:rockpolish",
    "tm:rockslide",
    "tm:rocktomb",
    "tm:sandstorm",
    "tm:scaryface",
    "tm:sleeptalk",
    "tm:snarl",
    "tm:stealthrock",
    "tm:stompingtantrum",
    "tm:stoneedge",
    "tm:substitute",
    "tm:suckerpunch",
    "tm:swordsdance",
    "tm:takedown",
    "tm:taunt",
    "tm:terablast",
    "tm:thunderfang",
    "tm:trailblaze",
    "tm:zenheadbutt",
    "tutor:bulldoze",
    "tutor:covet",
    "tutor:earthpower",
    "tutor:endeavor",
    "tutor:firefang",
    "tutor:helpinghand",
    "tutor:hypervoice",
    "tutor:irondefense",
    "tutor:ironhead",
    "tutor:irontail",
    "tutor:lastresort",
    "tutor:mudslap",
    "tutor:playrough",
    "tutor:rest",
    "tutor:rockslide",
    "tutor:sleeptalk",
    "tutor:snarl",
    "tutor:stealthrock",
    "tutor:stompingtantrum",
    "tutor:stoneedge",
    "tutor:suckerpunch",
    "tutor:thunderfang",
    "tutor:zenheadbutt",
    "legacy:attract",
    "legacy:confide",
    "legacy:frustration",
    "legacy:hiddenpower",
    "legacy:return",
    "legacy:round",
    "legacy:snore",
    "legacy:swagger",
    "legacy:toxic"
  ],
  "evolutions": [
    {
      "id": "rockruff_lycanroc",
      "variant": "level_up",
      "result": "lycanroc wolf_form=midday",
      "consumeHeldItem": false,
      "learnableMoves": [
        "accelerock",
        "suckerpunch"
      ],
      "requirements": [
        {
          "variant": "level",
          "minLevel": 25
        },
        {
          "variant": "time_range",
          "range": "day"
        }
      ]
    },
    {
      "id": "rockruff_lycanrocmidnight",
      "variant": "level_up",
      "result": "lycanroc wolf_form=midnight",
      "consumeHeldItem": false,
      "learnableMoves": [
        "counter"
      ],
      "requirements": [
        {
          "variant": "level",
          "minLevel": 25
        },
        {
          "variant": "time_range",
          "range": "night"
        }
      ]
    }
  ],
  "forms": [
    {
      "name": "Dusk",
      "primaryType": "rock",
      "maleRatio": 0.5,
      "height": 5,
      "weight": 92,
      "pokedex": [
        "cobblemon.species.rockruff-dusk.desc"
      ],
      "labels": [
        "gen7"
      ],
      "aspects": [
        "dusk-form"
      ],
      "abilities": [
        "owntempo",
        "h:owntempo"
      ],
      "moves": [
        "1:tackle",
        "1:leer",
        "4:sandattack",
        "8:doubleteam",
        "12:rockthrow",
        "16:howl",
        "20:bite",
        "24:rocktomb",
        "28:roar",
        "32:rockslide",
        "36:crunch",
        "40:scaryface",
        "44:stealthrock",
        "48:stoneedge",
        "egg:endeavor",
        "egg:lastresort",
        "egg:odorsleuth",
        "egg:suckerpunch",
        "egg:thrash",
        "tm:bodyslam",
        "tm:bulldoze",
        "tm:charm",
        "tm:covet",
        "tm:crunch",
        "tm:crushclaw",
        "tm:dig",
        "tm:doubleedge",
        "tm:doubleteam",
        "tm:earthpower",
        "tm:echoedvoice",
        "tm:endeavor",
        "tm:endure",
        "tm:facade",
        "tm:firefang",
        "tm:helpinghand",
        "tm:hypervoice",
        "tm:irondefense",
        "tm:ironhead",
        "tm:irontail",
        "tm:lastresort",
        "tm:mudslap",
        "tm:playrough",
        "tm:protect",
        "tm:psychicfangs",
        "tm:rest",
        "tm:roar",
        "tm:rockclimb",
        "tm:rockpolish",
        "tm:rockslide",
        "tm:rocktomb",
        "tm:sandstorm",
        "tm:scaryface",
        "tm:sleeptalk",
        "tm:snarl",
        "tm:stealthrock",
        "tm:stompingtantrum",
        "tm:stoneedge",
        "tm:substitute",
        "tm:suckerpunch",
        "tm:swordsdance",
        "tm:takedown",
        "tm:taunt",
        "tm:terablast",
        "tm:thunderfang",
        "tm:trailblaze",
        "tm:zenheadbutt",
        "tutor:bulldoze",
        "tutor:covet",
        "tutor:earthpower",
        "tutor:endeavor",
        "tutor:firefang",
        "tutor:helpinghand",
        "tutor:hypervoice",
        "tutor:irondefense",
        "tutor:ironhead",
        "tutor:irontail",
        "tutor:lastresort",
        "tutor:mudslap",
        "tutor:playrough",
        "tutor:rest",
        "tutor:rockslide",
        "tutor:sleeptalk",
        "tutor:snarl",
        "tutor:stealthrock",
        "tutor:stompingtantrum",
        "tutor:stoneedge",
        "tutor:suckerpunch",
        "tutor:thunderfang",
        "tutor:zenheadbutt",
        "legacy:attract",
        "legacy:confide",
        "legacy:frustration",
        "legacy:hiddenpower",
        "legacy:return",
        "legacy:round",
        "legacy:snore",
        "legacy:swagger",
        "legacy:toxic",
        "special:happyhour"
      ],
      "evolutions": [
        {
          "id": "rockruff_lycanrocdusk",
          "variant": "level_up",
          "result": "lycanroc wolf_form=dusk",
          "consumeHeldItem": false,
          "learnableMoves": [
            "thrash",
            "crushclaw"
          ],
          "requirements": [
            {
              "variant": "level",
              "minLevel": 25
            },
            {
              "variant": "time_range",
              "range": "dusk"
            }
          ]
        }
      ],
      "battleOnly": false
    }
  ],
  "implemented": true
}
PRIVACY CONTROLS

Analytics settings

Optional analytics use first-party cookies to recognize this browser for up to 180 days and group activity into 30-minute visits. Event-level data is deleted after 90 days.

Complete privacy and analytics notice