# Bottomless Sack

> Bottomless Sack is an evolution in tibo.dog. Pulls two snacks at a time, and they come out evolved.

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

Breadcrumb: [Main page](/) › [Weapons](/weapons)

| Bottomless Sack | |
|---|---|
| Type | Evolution |
| Trigger | Automatic (cooldown) |
| Attack | Shoots at a targeted enemy (`targetShot`) |
| Damage | 20 |
| Cooldown (s) | 1.6 |
| Amount | 2 |
| Area | 1.2 |
| Speed | 200 |
| Duration (s) | 2 |
| Pierce | 2 |
| Knockback | 1 |
| Interval (s) | 0.25 |
| Evolves from | [Grab Bag](/weapons/grab-bag) (level 8) + [Sprouting Eyes](/passives/sprouting-eyes) |

**Bottomless Sack** is an evolution in tibo.dog. In-game description: “Pulls two snacks at a time, and they come out evolved.”

## Overview

Bottomless Sack is the evolution of [Grab Bag](/weapons/grab-bag). You get it by opening a [chest](/chests) with a max-level Grab Bag and [Sprouting Eyes](/passives/sprouting-eyes) at any level. Like Grab Bag, it fires other weapons' attacks with its own stats. It makes two picks per shot instead of one, and it copies the **evolved** form of each weapon. For example, it copies [Gravy Flood](/weapons/gravy-flood) instead of [Gravy Boat](/weapons/gravy-boat), and [Hashnado](/weapons/hashnado) instead of [Hash Boomerang](/weapons/hash-boomerang). A weapon with no evolution is copied as it is.[sim-BkfBhQfw.js: `qm=Wm(Gm.map(e=>T.evolutionOf(e.id)??e))`]

## How it works

- The copy pool is the same 28 base weapons as Grab Bag (see [Grab Bag](/weapons/grab-bag#how-it-works)), each swapped for its evolution. Each pick is uniformly random.
- Each volley fires Amount shots, 0.25 s apart, and each shot makes 2 picks. With the Sack's own Amount of 2 plus Tibo's built-in +1 (see [Stats](/stats#stat-conversion)), that is 3 shots and 6 random evolved attacks every 1.6 s before cooldown bonuses.
- Every copied attack uses the Sack's damage (20), area (1.2), speed (200), duration (2 s), pierce (2) and knockback. The evolved weapon supplies only the attack shape and its special parameters, such as Gravy Flood's growing, drifting pools.

## Tips

- Every pick counts as one more attack, so amount bonuses scale the Sack quickly: each extra Amount adds another two random attacks per volley.

## Stats

Values are the raw numbers from the game's definitions, before Tibo's global stat multipliers, difficulty and time scaling. In play, Tibo's base stats add **+1 amount** to every weapon except aura, cone, nuke and ring weapons, and make every duration **×1.25** (see [Stats](/stats)). Field names in `code` are the game's internal names. Attack descriptions such as “Melee slash” are this wiki's summary of the internal attack `kind`.

Evolutions have no level-ups in the game data; they use these fixed raw values.

| Stat | Value |
|---|---|
| Damage | 20 |
| Cooldown (s) | 1.6 |
| Amount | 2 |
| Area | 1.2 |
| Speed | 200 |
| Duration (s) | 2 |
| Pierce | 2 |
| Knockback | 1 |
| Interval (s) | 0.25 |

### Behaviour parameters

Raw parameters of the attack (`behavior`), copied from the game definition. What they do in play is explained under [How it works](#how-it-works) above.

| Parameter | Value |
|---|---|
| `kind` | targetShot |
| `size` | 4 |
| `mimic.count` | 2 |
| `mimic.evolved` | true |

## Obtaining

- Get [Grab Bag](/weapons/grab-bag) to level 8 while owning [Sprouting Eyes](/passives/sprouting-eyes) (any level), then open a [chest](/chests). See [Evolutions](/evolutions).

## 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.weapon.bottomless-sack.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` | Costal sin fondo |
| हिन्दी · Hindi | `hi` | अथाह थैला |
| Deutsch · German | `de` | Bodenloser Sack |
| Français · French | `fr` | Sac sans fond |
| Português (Brasil) · Brazilian Portuguese | `pt` | Saco sem fundo |
| Türkçe · Turkish | `tr` | Dipsiz Çuval |
| Bahasa Indonesia · Indonesian | `id` | Karung Tanpa Dasar |
| Русский · Russian | `ru` | Бездонный мешок |
| Bahasa Melayu · Malay | `ms` | Guni Tanpa Dasar |
| Filipino | `fil` | Sakong Walang Ilalim |
| मराठी · Marathi | `mr` | अक्षय पोते |
| Tiếng Việt · Vietnamese | `vi` | Túi Không Đáy |
| తెలుగు · Telugu | `te` | అడుగులేని బస్తా |
| தமிழ் · Tamil | `ta` | அடியில்லா பை |
| বাংলা · Bengali | `bn` | অতল বস্তা |
| ไทย · Thai | `th` | กระสอบไร้ก้น |
| Hausa | `ha` | Buhu Marar Ƙasa |
| Naijá · Nigerian Pidgin | `pcm` | Bag Wey No Get Bottom |
| <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": "bottomless-sack",
  "tier": "evolved",
  "base": {
    "damage": 20,
    "cooldown": 1.6,
    "amount": 2,
    "area": 1.2,
    "speed": 200,
    "duration": 2,
    "pierce": 2,
    "knockback": 1,
    "interval": 0.25
  },
  "behavior": {
    "kind": "targetShot",
    "size": 4,
    "mimic": {
      "count": 2,
      "evolved": true
    }
  },
  "from": "grab-bag",
  "catalyst": "sprouting-eyes"
}
```

## 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`)
