# Ice Imp

> Ice Imp is an enemy in tibo.dog: 90 base HP, 14 damage, stops short of tibo, strafes and shoots.

Source page: https://www.tibodog.wiki/enemies/ice-imp · Wiki updated 6 Nov 2026, 03:55 UTC · Game version 75 (`main-CSuyb4iv.js`, data synced 5 Nov 2026, 21:45 UTC)

Breadcrumb: [Main page](/) › [Enemies](/enemies)

| Ice Imp | |
|---|---|
| Behaviour | Stops short of Tibo, strafes and shoots (`ranged`) |
| Base HP | 90 |
| Base damage | 14 |
| Speed | 34 |
| XP | 7 |
| Gold chance | 12% |
| Radius | 7 |
| Mass | 0.3 |

**Ice Imp** is an enemy (pest) in tibo.dog.

## Overview

The Ice Imp is the tier-4 shooter of [Frozen-Fries Tundra](/biomes/frozen-tundra), [Ketchup Bog](/biomes/ketchup-bog) and the [Coin Laundromat](/biomes/coin-laundromat) landmark, and the only tier-4 pest in each of them. Tier 4 is in the wave table from minute 7 to minute 18; with Normal's two-minute [tier lag](/modes) that puts Ice Imps on the field from about 9:00 to 20:59. [sim-BkfBhQfw.js: `{minute:7,minEnemies:145,maxEnemies:240,interval:.45,batch:6,tiers:[0,1,2,1,0]`]

It walks straight at Tibo until it is within 91 units (70% of its 130 range). From there it stops closing in and circles him sideways at 60% of its speed. Whenever Tibo is within 156 units (120% of range) and its reload is done, it fires a fan of ice shots. [sim-BkfBhQfw.js: `if(n>=.7*r)return;`] [sim-BkfBhQfw.js: `i.timer[t]<=0&&r<1.2*n.range`] Each shot does 10 base damage, and touching the imp costs 14. With 90 base HP it is nearly as tough as a [Mole](/enemies/mole) (110). It gives 7 XP and has a 12% chance to drop gold.

## How it works

- **Volley**: three shots spread over 0.5 radians (about 29°) at speed 85, fired after a 0.5 s wind-up. The fan is aimed at where Tibo was when the wind-up started and does not track him afterwards.
- **Reload**: 2.6 s, divided by the enemy-bullet fire-rate scaling, so volleys come faster as the run goes on (see [Enemy bullets](/enemy-scaling#enemy-bullets)).
- **Shot count grows**: the 3 is multiplied by the bullet-count scaling (+4% per minute) and rounded, so the fan has 4 shots from about 4:10 and 5 from 12:30. On Normal, the first Ice Imps already fire 4. [sim-BkfBhQfw.js: `a.count[o]=Math.max(1,Math.round(t.count*d.bulletCount))`]
- **Shot damage** follows the imp's own damage scaling: the 10 is multiplied by the imp's current damage divided by its base damage, so elite imps and late-run imps hit harder with their shots too.
- **Killing the imp cancels its volley.** A volley still in its wind-up is deleted when its owner is gone. [sim-BkfBhQfw.js: `if(!Du(e,i)){n.pool.kill(i);continue}`]
- **Shooter cap**: Ice Imps count toward the cap on shooting pests (2 before 3:00, 4 before 6:00, then 30; see [Crowd limits](/enemy-scaling#crowd-limits)). When the cap is full, a spawn that would have been an Ice Imp drops to the biome's tier 3, because no other tier-4 pest is available.
- **Nightmare**: the volley flies at speed 130 instead of 85. Shots left and right of the centre curve towards the middle for their first 0.6 s, so they cross the line Tibo was standing on. A centre shot, when the count is odd, flies straight. [sim-BkfBhQfw.js: `` case`inward`:return function(e,t,n){switch(e.kind){case`fan`:return Math.sign(n-1-2*t) ``]
- **Elites**: elites use tier 4 from 10:00 to 14:59, so an elite in these biomes can be an Ice Imp (see [Elites](/enemy-scaling#elites)).

## Tips

- The fan is locked in when the wind-up starts, so moving sideways during and after the wind-up usually takes Tibo out of it. Standing still or running straight towards or away from the imp keeps him in its line of fire.
- Because the imp stops approaching at about 91 units and circles, short-range auras and melee weapons rarely reach it. Targeted or long-range weapons are the better answer.
- Killing an imp during its 0.5 s wind-up removes that volley, so a sudden burst of damage on a nearby imp prevents a hit as well as killing it.

## Stats

Base values before [time scaling](/enemy-scaling) and [difficulty](/modes).

| Stat | Value |
|---|---|
| Behaviour | Stops short of Tibo, strafes and shoots (`ranged`) |
| Base HP | 90 |
| Base damage | 14 |
| Speed | 34 |
| XP | 7 |
| Gold chance | 12% |
| Radius | 7 |
| Mass | 0.3 |

## Behaviour parameters

| Parameter | Value |
|---|---|
| `kind` | ranged |
| `range` | 130 |
| `shotEvery` | 2.6 |
| `pattern.kind` | fan |
| `pattern.count` | 3 |
| `pattern.arc` | 0.5 |
| `pattern.speed` | 85 |
| `pattern.radius` | 2.5 |
| `pattern.damage` | 10 |
| `pattern.bursts` | 1 |
| `pattern.interval` | 0.3 |
| `pattern.telegraph` | 0.5 |
| `sharpPattern.kind` | fan |
| `sharpPattern.count` | 3 |
| `sharpPattern.arc` | 0.5 |
| `sharpPattern.speed` | 130 |
| `sharpPattern.radius` | 2.5 |
| `sharpPattern.damage` | 10 |
| `sharpPattern.bursts` | 1 |
| `sharpPattern.interval` | 0.3 |
| `sharpPattern.telegraph` | 0.5 |
| `sharpPattern.motion.turn.kind` | curve |
| `sharpPattern.motion.turn.rate` | 0.6 |
| `sharpPattern.motion.turn.until` | 0.6 |
| `sharpPattern.motion.mirror` | inward |

### Nightmare bullets

**Verified**: Nightmare uses `sharpPattern` instead of `pattern`; other levels use the ordinary pattern. [sim-BkfBhQfw.js: `return e.level.sharpPatterns&&n!==void 0?n:t.pattern`]

| Parameter | Nightmare value |
|---|---|
| `kind` | fan |
| `count` | 3 |
| `arc` | 0.5 |
| `speed` | 130 |
| `radius` | 2.5 |
| `damage` | 10 |
| `bursts` | 1 |
| `interval` | 0.3 |
| `telegraph` | 0.5 |
| `motion.turn.kind` | curve |
| `motion.turn.rate` | 0.6 |
| `motion.turn.until` | 0.6 |
| `motion.mirror` | inward |

## Where it appears

- [Coin Laundromat](/biomes/coin-laundromat), enemy tier 4
- [Frozen-Fries Tundra](/biomes/frozen-tundra), enemy tier 4
- [Ketchup Bog](/biomes/ketchup-bog), enemy tier 4

Biome tiers: each biome lists five enemy tiers; higher tiers appear as the run goes on (see [Enemy scaling](/enemy-scaling)).

## Names in other languages

**Verified**: the name the game shows when another language is selected in Settings, from its translation files. [i18n-ja-content-DO6GrqHt.js: `"content.enemy.ice-imp.name":["氷インプ"]`] See [Languages](/controls#languages).

<details class="raw"><summary>Show names in 26 languages</summary>

| Language | Code | Name |
|---|---|---|
| 简体中文 · Simplified Chinese | `zh-CN` | 冰小鬼 |
| 繁體中文 · Traditional Chinese (Taiwan) | `zh-TW` | 冰小鬼 |
| 日本語 · Japanese | `ja` | 氷インプ |
| 한국어 · Korean | `ko` | 얼음 임프 |
| Español · Spanish | `es` | Duende de hielo |
| हिन्दी · Hindi | `hi` | बर्फ इम्प |
| Deutsch · German | `de` | Eiskobold |
| Français · French | `fr` | Diablotin de glace |
| Português (Brasil) · Brazilian Portuguese | `pt` | Diabrete de gelo |
| Türkçe · Turkish | `tr` | Buz Cini |
| Bahasa Indonesia · Indonesian | `id` | Tuyul Es |
| Русский · Russian | `ru` | Ледяной бесёнок |
| Bahasa Melayu · Malay | `ms` | Toyol Ais |
| Filipino | `fil` | Duwende ng Yelo |
| मराठी · Marathi | `mr` | बर्फाचा भुतोबा |
| Tiếng Việt · Vietnamese | `vi` | Quỷ Băng |
| తెలుగు · Telugu | `te` | మంచు పిశాచి |
| தமிழ் · Tamil | `ta` | பனிப் பூதம் |
| বাংলা · Bengali | `bn` | বরফ-দানো |
| ไทย · Thai | `th` | ภูตน้ำแข็ง |
| Hausa | `ha` | Ɗan Dodon Ƙanƙara |
| Naijá · Nigerian Pidgin | `pcm` | Ice Imp |
| <bdi>العربية</bdi> · Arabic | `ar` | <bdi>عفريت ثلج</bdi> |
| <bdi>فارسی</bdi> · Persian | `fa` | <bdi>جن یخی</bdi> |
| <bdi>עברית</bdi> · Hebrew | `he` | <bdi>שדון קרח</bdi> |
| <bdi>اردو</bdi> · Urdu | `ur` | <bdi>برفانی بھتنا</bdi> |

</details>

## Data

```json
{
  "id": "ice-imp",
  "behavior": {
    "kind": "ranged",
    "range": 130,
    "shotEvery": 2.6,
    "pattern": {
      "kind": "fan",
      "count": 3,
      "arc": 0.5,
      "speed": 85,
      "radius": 2.5,
      "damage": 10,
      "bursts": 1,
      "interval": 0.3,
      "telegraph": 0.5
    },
    "sharpPattern": {
      "kind": "fan",
      "count": 3,
      "arc": 0.5,
      "speed": 130,
      "radius": 2.5,
      "damage": 10,
      "bursts": 1,
      "interval": 0.3,
      "telegraph": 0.5,
      "motion": {
        "turn": {
          "kind": "curve",
          "rate": 0.6,
          "until": 0.6
        },
        "mirror": "inward"
      }
    }
  },
  "hp": 90,
  "speed": 34,
  "damage": 14,
  "radius": 7,
  "xp": 7,
  "goldChance": 0.12,
  "mass": 0.3
}
```

## Sources

Game version 75: `main-CSuyb4iv.js` / `boot-CPW8VVmR.js` / `sim-BkfBhQfw.js` from https://tibo.dog/, researched 2026-11-05. See [Versions & updates](/versions).
- Content registry exported by `boot-CPW8VVmR.js`; boss definitions and order exported by `sim-BkfBhQfw.js`; lazy endgame definitions from `endgame-content-CyuS5vbP.js` and `catalog.generated-JnyrtBzy.js`
- English names and descriptions from `i18n-en-content--0ALgcKX.js`
- Names in other languages from the 26 `i18n-<code>-content` files of `main-CSuyb4iv.js` (`data/i18n-names.json`)
