# Ketchup Kraken

> Ketchup Kraken, Terror of the Bog, is boss 12 of 21 in tibo.dog. A kraken of ketchup. Its tentacles slam down in a pattern.

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

Breadcrumb: [Main page](/) › [Bosses](/bosses)

| Ketchup Kraken | |
|---|---|
| Title | Terror of the Bog |
| Order | 12 of 21 |
| Arrives | 18:00 ([schedule](/bosses#wave-schedule)) |
| Base HP | 11000 |
| Contact damage | 34 |
| Speed | 22 |
| Main attack | `slam` every 3 s |
| Telegraph | 1.1 s |
| Bullet patterns | 1, every 2.8 s |
| XP | 230 |

**Ketchup Kraken**, *Terror of the Bog*, is a boss in tibo.dog. In-game description: “A kraken of ketchup. Its tentacles slam down in a pattern.”

## Overview

Ketchup Kraken is the twelfth boss in the boss order and the 18:00 boss on the [wave schedule](/bosses#wave-schedule), the last one before [The Harvester](/bosses/harvester) at 20:00. It comes back in the overtime cycle after 20:00, first at 26:00 and then every seven minutes (see [After 20:00](/bosses#after-20-00)). A [Boss Lair](/points-of-interest#boss-lair) can also wake it; it is the latest boss a lair can pick.

It arrives just as the ×4 boss HP step starts at 18:00, so its 11000 base HP becomes 44000 before the difficulty multiplier and 28600 on Normal (boss HP ×0.65, see [Modes](/modes)), more with [curse](/curse). Contact damage is 34 before time scaling. At speed 22 it is the slowest boss, at about a third of Tibo's base speed of 62.

It drops a [chest](/chests), an XP gem worth 230 XP and a 25-gold coin (both multiplied by the biome's XP and gold multipliers).

**Measured** (headless `tools/play.mjs`, build `main-B2gf34bA`, seed `wiki`, standard mode, `--god`; the clock warped to 2 s before each minute and stepped across it; level-up offers taken first-in-order except Rotten Spud, so curse stays at the difficulty's start value): it spawned at exactly 18:00 on all four difficulties, with 22,000 HP on Easy, 28,600 on Normal, 30,800 on Hard and 45,980 on Nightmare. The Nightmare figure is 10% above base HP × the difficulty multiplier because Nightmare starts every run with one curse, and boss HP is multiplied by 1 + curse. [sim-BkfBhQfw.js: `startCurses:1,tierLag:2,wallPests:.6`] [sim-BkfBhQfw.js: `n.maxHp[r]=i.hp*t.hpMult*(1+e.loadout.stats.curse)`] Seeds `s1` to `s4` gave the same Normal times and HP. The Nightmare value comes from a run where each earlier boss was removed on arrival, because a stationary god-mode Tibo was killed by stacked boss hits at 17:59 otherwise.

## Fight

The Kraken crawls towards Tibo, throws fans of ketchup that turn into puddles, and every 3 s of walking stops for a round of tentacle slams. A full cycle takes 4.1 s, and its first slams start about 1.8 s after it spawns. It is the same on every difficulty: it has no Nightmare variants.

### Tentacle slams

Five circles of radius 32 are marked around Tibo's position: the first centred on him, the other four at random spots up to 80 units away. They strike in turn, 0.12 s apart, at 1.1 s, 1.22 s, 1.34 s, 1.46 s and 1.58 s. Each deals the Kraken's contact damage. [sim-BkfBhQfw.js: `u=rp(e,bo(e,a+D(l)*c,o+j(l)*c,i.radius,n.telegraph+.12*s,e.bosses.damage[t]),t)`]

### Ketchup fan

Every 2.8 s of walking, after a 0.8 s warning, it throws a fan of 5 blobs spread over 1.2 radians (about 69°), aimed at Tibo. Each blob deals 14 damage before scaling. The blobs slow to a crawl and, 0.95 s after launch, turn into short-lived puddles about 74 units from where they were thrown. Blobs that hit Tibo don't leave a puddle. The puddle size, lifetime and damage on each difficulty are under [Ketchup blobs](/bosses/ketchup-kraken#ketchup-blobs).

Bullet count, fire rate and speed grow with run time (see [Enemy bullets](/enemy-scaling#enemy-bullets)). At its 18:00 arrival the fan has 9 blobs at about speed 121, landing about 94 units out, and comes every 1.8 s of walking. Puddles last about 3 s on Normal, so one or two sets are on the ground most of the time.

**Measured** (headless `tools/play.mjs`, build `main-B2gf34bA`, seed `wiki`, standard mode, `--god`, Normal; the clock warped to just before 18:00; every other boss and every pest removed each tick, so the sim's hostile-shot counter only counts this boss): 9-blob fans 2.15 s, 5.08 s, 8.00 s, 9.82 s and 12.73 s after it spawned.

## Tips

- **Leave the first circle first.** It is always centred on Tibo and strikes first, so moving about 38 units (its radius plus Tibo's size) during the 1.1 s warning avoids it. Check where the other four were marked before picking a direction: one of them may cover the spot Tibo is heading for, and the last one strikes almost half a second later.
- **A dash can't help with puddles.** Puddle damage is ground-hazard damage: dashing and dodge sources such as [Thick Skin](/passives/thick-skin) don't stop it, though [armor](/stats#armor) does. Save the dash for the slams and blobs, and walk around the puddles.
- **Mind the puddle line.** Puddles form in an arc a fixed distance from where the Kraken threw them, in Tibo's direction. Standing close to the Kraken keeps that arc behind Tibo; standing at that distance puts him in it.
- **Run it down with damage bonuses.** At 28600 HP on Normal, with the Harvester due two minutes later, boss-damage bonuses such as [Bacon Bits](/passives/bacon-bits) and [Boss Buster](/items/boss-buster), or [Inferno Basket](/weapons/inferno-basket)'s double damage to bosses, pay off. Its low speed makes close-range weapons safer here than against most late bosses.

## Main attack

| Parameter | Value |
|---|---|
| `kind` | slam |
| `radius` | 32 |
| `count` | 5 |
| `spread` | 80 |

## Nightmare ground attack

**Verified**: Nightmare adds the `gapRing` ground layout; other difficulties keep the ordinary attack. Its anchor captures Tibo's position when placed, rather than following him. A radius-22 core strikes first. A ring extending to radius 68 follows 0.5 seconds later, with a 60° opening that rotates 90° during its warning. The ordinary five-circle slam is replaced. Distances above are raw values: multiply them by Nightmare's `areaScale` of 1.45, but not counts, angles, ratios or times. This does not enlarge every enemy attack. [sim-BkfBhQfw.js: `return e.level.sharpAttacks&&n!==void 0?n:t.attack`] [run-extras-l2haGSVw.js: `kind:`gapRing`,core:22,radius:68,gap:2*Math.PI/6,slide:2*Math.PI/4,wave:.5`] [run-extras-l2haGSVw.js: `j.cx=e.player.x[e.me],j.cy=e.player.y[e.me],j.scale=e.cfg.level.areaScale`]

## Bullet patterns

| Pattern | Count | Bursts | Bullet damage | Speed | Telegraph (s) | Extra |
|---|---|---|---|---|---|---|
| `fan` | 5 | 1 | 14 | 95 | 0.8 | motion: `{"speed":[{"at":0.55,"to":1},{"at":0.95,"to":0.15}],"puddle":{"at":0.95,"radius":9,"sec":1.8,"dpsShare":2.8}}`; arc 1.2 |

## Ketchup blobs

**Verified**: the fan fires 5 shots in 1 burst across 1.2 radians. Shots travel straight at speed 95 through 0.55 s, then slow linearly towards ×0.15 speed at 0.95 s. At the first tick reaching 0.95 s, each surviving, in-range shot disappears and leaves a hostile puddle at its new position, before checking that tick's direct hit. Shots that already hit Tibo, expired or were culled do not leave puddles. [sim-BkfBhQfw.js: `let S=p?.puddle;if(S!==void 0&&o-b>=S.at){yp(e,S,d);continue}`]

Each puddle has base radius 9 units and base lifetime 1.8 s, multiplied by the difficulty's shot-puddle settings below. Its damage rate is 2.8 times the shot's already-scaled damage per second, applied every 0.5 s while Tibo overlaps it; this is ground-hazard damage, not another bullet hit. The multiplier does not enlarge or extend other kinds of ground attack. If the zone pool is full, the shot still disappears but no puddle is created. [sim-BkfBhQfw.js: `i.radius[a]=t.radius*o.shotPuddleRadius,i.life[a]=s,i.maxLife[a]=s,i.damage[a]=r.damage[n]*t.dpsShare`] [sim-BkfBhQfw.js: `s=t.sec*o.shotPuddleSec`] [sim-BkfBhQfw.js: `this.tickEvery[e]=.5,this.tickTimer[e]=0`] [sim-BkfBhQfw.js: `n.kind[t]===je.hazardPool)return void(gg(e,t)&&ls(e,n.damage[t]*i,Nr(e,n.src[t]),!0,n.level[t]))`]

| Mode | Radius | Lifetime (s) |
|---|---|---|
| Story | 9 | 1.8 |
| Easy | 11.7 | 2.7 |
| Normal | 13.05 | 2.97 |
| Hard | 13.5 | 2.97 |
| Nightmare | 14.4 | 2.97 |

## HP scaling

Boss HP is multiplied by a step factor depending on the run time (`bosses.hpSteps`), and by the difficulty's boss HP multiplier (see [Modes](/modes)).

| From minute | HP × | Ketchup Kraken HP (Normal) |
|---|---|---|
| 0 | 1 | 7150 |
| 16 | 3 | 21450 |
| 18 | 4 | 28600 |
| 20 | 6 | 42900 |

The Normal column includes Normal's boss HP ×0.65, without curse. Other time scaling may also apply; 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.boss.ketchup-kraken.name":["ケチャップクラーケン"]`] See [Languages](/controls#languages).

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

| Language | Code | Name | Title |
|---|---|---|---|
| 简体中文 · Simplified Chinese | `zh-CN` | 番茄酱海怪 | 沼泽之恐 |
| 繁體中文 · Traditional Chinese (Taiwan) | `zh-TW` | 番茄醬海怪 | 沼澤之懼 |
| 日本語 · Japanese | `ja` | ケチャップクラーケン | 沼の恐怖 |
| 한국어 · Korean | `ko` | 케첩 크라켄 | 늪의 공포 |
| Español · Spanish | `es` | Kraken de kétchup | Terror del pantano |
| हिन्दी · Hindi | `hi` | केचप क्रैकन | दलदल का आतंक |
| Deutsch · German | `de` | Ketchup-Krake | Schrecken des Sumpfs |
| Français · French | `fr` | Kraken de ketchup | Terreur du marais |
| Português (Brasil) · Brazilian Portuguese | `pt` | Kraken de ketchup | Terror do pântano |
| Türkçe · Turkish | `tr` | Ketçap Krakeni | Bataklığın Dehşeti |
| Bahasa Indonesia · Indonesian | `id` | Kraken Saus Tomat | Teror Rawa |
| Русский · Russian | `ru` | Кетчупный кракен | Ужас болот |
| Bahasa Melayu · Malay | `ms` | Kraken Sos Tomato | Momok Paya |
| Filipino | `fil` | Kraken ng Ketchup | Lagim ng Latian |
| मराठी · Marathi | `mr` | केचप क्रॅकन | दलदलीची दहशत |
| Tiếng Việt · Vietnamese | `vi` | Kraken Tương Cà | Hung Thần Đầm Lầy |
| తెలుగు · Telugu | `te` | కెచప్ క్రాకెన్ | చిత్తడి భయంకరుడు |
| தமிழ் · Tamil | `ta` | கெட்சப் கிராக்கன் | சதுப்பின் பயங்கரம் |
| বাংলা · Bengali | `bn` | কেচাপ ক্র্যাকেন | জলার বিভীষিকা |
| ไทย · Thai | `th` | คราเคนซอสมะเขือเทศ | ความสยองแห่งบึง |
| Hausa | `ha` | Dodon Tumatir | Firgicin Fadama |
| Naijá · Nigerian Pidgin | `pcm` | Ketchup Kraken | Terror of di Swamp |
| <bdi>العربية</bdi> · Arabic | `ar` | <bdi>كراكن الكاتشب</bdi> | <bdi>رعب الوحل</bdi> |
| <bdi>فارسی</bdi> · Persian | `fa` | <bdi>کراکن کچاپی</bdi> | <bdi>وحشت مرداب</bdi> |
| <bdi>עברית</bdi> · Hebrew | `he` | <bdi>קראקן הקטשופ</bdi> | <bdi>אימת הביצה</bdi> |
| <bdi>اردو</bdi> · Urdu | `ur` | <bdi>کیچپ کریکن</bdi> | <bdi>دلدل کی دہشت</bdi> |

</details>

## Data

```json
{
  "id": "ketchup-kraken",
  "hp": 11000,
  "speed": 22,
  "damage": 34,
  "radius": 20,
  "attackEvery": 3,
  "telegraph": 1.1,
  "attack": {
    "kind": "slam",
    "radius": 32,
    "count": 5,
    "spread": 80
  },
  "sharpAttack": {
    "kind": "slam",
    "radius": 32,
    "count": 5,
    "spread": 80,
    "layout": "gapRing"
  },
  "patternEvery": 2.8,
  "patterns": [
    {
      "kind": "fan",
      "count": 5,
      "arc": 1.2,
      "speed": 95,
      "radius": 3,
      "damage": 14,
      "bursts": 1,
      "interval": 0.4,
      "telegraph": 0.8,
      "motion": {
        "speed": [
          {
            "at": 0.55,
            "to": 1
          },
          {
            "at": 0.95,
            "to": 0.15
          }
        ],
        "puddle": {
          "at": 0.95,
          "radius": 9,
          "sec": 1.8,
          "dpsShare": 2.8
        }
      }
    }
  ],
  "xp": 230
}
```

## 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`
- Game config `bosses.hpSteps` and `win.finalBoss` from `sim-BkfBhQfw.js`
- Names in other languages from the 26 `i18n-<code>-content` files of `main-CSuyb4iv.js` (`data/i18n-names.json`)
