tibo.dog Wiki Game v75 Play tibo.dog

GPU

GPU is a passive upgrade in tibo.dog. In-game description: “+1 projectile. Firing builds heat. At full heat, weapons fire at half speed for 3s. Each level adds fire rate and cooling.”

Overview

GPU gives +1 projectile at every level, plus 2% cooldown reduction per level (10% at level 5). The catch is heat: weapons build heat as they fire, and when it fills up they slow to half speed for 3 s. Higher levels raise the heat cap from 20 to 36 and cooling from 2.6 to 2.8 heat per second. The extra projectile does not grow with level; only the cooldown and heat values do.

It is the catalyst for Kettle Cyclone (from Chip Shuriken) and Spark Corral (from Spud Fence). GPU has the lowest offer weight of any passive (40), so it shows up on level-up cards less often than the others.

How it works

Heat gain. Each time a weapon starts an attack, heat rises by that weapon's current cooldown in seconds, at most 6. No heat is added while throttled.[1] Turret shots add heat too.

So a weapon that fires as soon as its cooldown is ready adds about 1 heat per second, whatever its cooldown: a 0.5 s weapon adds 0.5 heat twice a second. This also means cooldown reduction, from GPU itself or Chives, does not lower heat per second. Fire-rate boosts that are not cooldown, such as the Frenzy Fryer, do raise it. Weapons with no cooldown, such as Steam Vent, add no heat.

Cooling. Heat drops by 2.6–2.8 per second. If heat reaches the cap after cooling, GPU throttles.

Throttle. For 3 s, weapon timers run at half speed, and heat drains in a straight line from the cap to 0.[2] After the throttle, heat starts again from 0.

Measured (build 41 main-B2gf34bA.js, headless tools/play.mjs, standard mode, normal difficulty; GPU and weapons given with give, HP refilled every tick, Tibo standing still, later level-ups taking the first offer):

  • With GPU at level 1 or 5 and Peeler, Small Fry, Tot Toss, Chip Shuriken and Starch Chain given once each (seed s1, 240 s), the heat cap was 20 and 36, and heat fell by exactly 2.6 and 2.8 per second between attacks. Every throttle (23 and 13) started with heat at the cap and lasted exactly 3 s. Each heat jump was a weapon's base cooldown times the cooldown multiplier, such as 0.49 and 0.98 at ×0.98.
  • On seed s2, where Peeler is the starting weapon, a lone Peeler added 1.00 heat per second both without Chives (cooldown ×0.98, 1.02 attacks per second) and with Chives at level 5 (×0.63, 1.58 attacks per second), over 180 s.
  • With heat forced to the cap so that GPU stayed throttled, the same lone Peeler attacked 0.508 times per second instead of 1.017, exactly half (seed s2, 120 s each).

The +1 projectile goes through the normal amount stat, so it does not help aura, cone, nuke or ring weapons (see Sprouting Eyes).

Tips

  • Cooling of 2.6–2.8 per second keeps pace with two weapons that fire constantly, but not with three. Measured at GPU level 1 over 180 s with Peeler and Small Fry given once each: Peeler + Small Fry (seed s2) added 2.0 heat per second and never throttled. The starting Seeker Sprouts + Peeler + Small Fry (seed s3) added 2.9–3.0 heat per second and throttled 3 times, or 2 with Chives at level 5. A full set of fast-firing weapons overheats; weapons that only fire when a target is in range add less.
  • Each level raises the heat cap and the cooling rate, so levelling GPU makes throttles rarer. The throttle itself always lasts 3 s.
  • GPU's +1 projectile stacks with Sprouting Eyes and Extra Eye.

Levels

Level Projectiles (amount) (amount) total Cooldown total
1 1 0.02
2 1 0.04
3 1 0.06
4 1 0.08
5 1 0.1

Totals are added to Tibo's stat sum. How each stat turns into a multiplier (caps and diminishing returns) is on Stats.

Heat

GPU has a heat mechanic (thermal). Values by level:

Level Heat cap Cooling per second
1 20 2.6
2 24 2.65
3 28 2.7
4 32 2.75
5 36 2.8

Max heat per volley: 6. When heat is full, weapons fire at 0.5× rate for 3 s (matches the in-game text “weapons fire at half speed for 3s”).

Catalyst for

Result Also needs
Kettle Cyclone Chip Shuriken at max level
Spark Corral Spud Fence at max level

Names in other languages

Verified: the name the game shows when another language is selected in Settings, from its translation files.[3] See Languages.

Show names in 26 languages
Language Code Name
简体中文 · Simplified Chinese zh-CN GPU
繁體中文 · Traditional Chinese (Taiwan) zh-TW GPU
日本語 · Japanese ja GPU
한국어 · Korean ko GPU
Español · Spanish es GPU
हिन्दी · Hindi hi GPU
Deutsch · German de GPU
Français · French fr GPU
Português (Brasil) · Brazilian Portuguese pt GPU
Türkçe · Turkish tr GPU
Bahasa Indonesia · Indonesian id GPU
Русский · Russian ru GPU
Bahasa Melayu · Malay ms GPU
Filipino fil GPU
मराठी · Marathi mr GPU
Tiếng Việt · Vietnamese vi GPU
తెలుగు · Telugu te GPU
தமிழ் · Tamil ta GPU
বাংলা · Bengali bn GPU
ไทย · Thai th GPU
Hausa ha GPU
Naijá · Nigerian Pidgin pcm GPU
العربية · Arabic ar GPU
فارسی · Persian fa GPU
עברית · Hebrew he כרטיס מסך
اردو · Urdu ur GPU

Data

Show raw game data
{
  "id": "gpu",
  "stat": "amount",
  "perLevel": [
    1,
    1,
    1,
    1,
    1
  ],
  "extra": {
    "stat": "cooldown",
    "perLevel": 0.02
  },
  "thermal": {
    "cap": [
      20,
      24,
      28,
      32,
      36
    ],
    "coolPerSec": [
      2.6,
      2.65,
      2.7,
      2.75,
      2.8
    ],
    "maxVolleyHeat": 6,
    "throttleSec": 3,
    "throttleRate": 0.5
  },
  "maxLevel": 5,
  "weight": 40
}

Sources

Game version 75: main-CSuyb4iv.js / boot-CPW8VVmR.js / sim-BkfBhQfw.js from https://tibo.dog/, researched 2026-11-05. See Versions & updates.

  • 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)

Code references

  1. sim-BkfBhQfw.js function Pm(e,t){let n=e.loadout.thermal;!n.on||e.player.throttleTicks[e.me]>0||(e.player.heat[e.me]=e.player.heat[e.me]+Math.min(t,n.maxVolleyHeat))}
  2. sim-BkfBhQfw.js function Mm(e){return(e.player.throttleTicks[e.me]>0?e.loadout.thermal.throttleRate:1)*Nf(e)}
  3. i18n-ja-content-DO6GrqHt.js "content.passive.gpu.name":["GPU"]