Loader (Industria)
What it is
An uncommon-rarity Industria hull built around the family-largest sprite scale (1.6× — the highest of any Industria hull) and the family-lowest drag value (0.18) layered on top of the family-signature back-loaded drag curve. Two weapon slots and the mortar starting weapon shared with Bigbot and Drillbot. Among the slowest hulls in the family — 81 speed and 131 acceleration both sit near or at the family floor, well below Milita (121 / 236) and Eel (110 / 190) — and a stat block centered on a 130 / 100 HP/shield pool that lerps to 163 / 125 at ★5. Heat curve is fully disabled (0 buildup / 0 cooldown), so the overheat-boost loop never engages and all damage comes from raw fire-rate and weapon-damage percentage.
Identity
| Field | Value |
|---|---|
| Hull key | Industria_Loader |
| Faction (data field) | solaris (baseline fallback) |
| Hull faction prefix | Industria |
| Rarity | uncommon |
| Display grade | B |
| Outline color | 50ff78 |
| Accent color | 38cc58 |
| Ship class | medium |
| Starting weapon | mortar L1 |
| Passive ID | jack_of_all |
Loader’s faction data field reads solaris because every hull inherits the BASELINE_STATS.faction value and no per-hull override changes it; the Industria prefix on the hull key is the sprite/family grouping used by the rarity table and sprite folder. The uncommon tier maps to the green outline (#50ff78) baked into the v5 sprite asset and is shared with three other Industria hulls (Caravan, Drillbot, and Loader itself — Digbot and Towncar are common, Bigbot and Milita are rare, Eel is epic).
Star-1 stats
| Stat | Value |
|---|---|
| HP | 130 |
| Shield | 100 |
| Armor | 3 |
| Speed | 81 |
| Acceleration | 131 |
| Drag | 0.18 |
| Turn rate | 0.14 |
| Weapon slots | 2 |
| Upgrade slots | 3 |
| Weapon damage % | 10 |
| Fire rate % | 5 |
| Heat buildup | 0 |
| Heat cooldown | 0 |
| Heat curve | linear |
| Burnout severity | 0.35 |
| Shield regen rate | 6 |
| Shield regen delay | 4 |
| HP regen | 0 |
| Melee mult | 1.0 |
| Luck | 8 |
| Magnet range | 130 |
| Currency bonus | 6 |
| Ship scale | 1.6 |
Star deltas
| Stat | ★1 | ★5 |
|---|---|---|
| HP | 130 | 163 |
| Shield | 100 | 125 |
| Weapon damage % | 10 | 12.5 |
The ★5 override entry pins roughly 30 numerics (hp, shield, weaponDamagePct, heatCooldown, weaponSlots, hpRegen, shieldRegenRate, shieldRegenDelay, armor, acceleration, speed, drag, turnRate, heatBuildup, burnoutSeverity, fireRatePct, meleeMult, luck, magnetRange, currencyBonus, ramSpeedBleed, contactSpeedBleed, terrainRestitution, terrainFriction, ramThreshold, ramDamageLo, ramDamageHi, pushRatio, enemySolidity, contactDecel, contactCooldown, shipScale, spriteHue, spriteSaturation, spriteContrast, spriteBrightness, stopShakeIntensity, heatShakeIntensity, heatShakeThreshold, stopSpringAmt, heatCurve), but every field other than hp, shield, and weaponDamagePct is pinned to its ★1 value — so only three numerics actually change across stars. The phantom-pin pattern includes heatCooldown (0 → 0) and the three ★4 pin fields (see below). All redundant fields are mechanically inert because the s5Val ?? s1Val defaulting rule in getShipDef would produce the same result if those fields were omitted.
A ★4 pin entry exists with acceleration: 131, speed: 81, drag: 0.18 — every one of those values matches both the ★1 and ★5 endpoints, so the entire ★4 entry is mechanically inert. No ★2 or ★3 pins exist for Loader, so ★2 and ★3 values lerp linearly between the ★1 and ★5 endpoints with no breakpoints.
Lerped per-star values for the three endpoints that actually differ (lerp factor t = (star − 1) / 4):
| Star | HP | Shield | Weapon damage % |
|---|---|---|---|
| ★1 | 130 | 100 | 10 |
| ★2 | 138.25 | 106.25 | 10.625 |
| ★3 | 146.5 | 112.5 | 11.25 |
| ★4 | 154.75 | 118.75 | 11.875 |
| ★5 | 163 | 125 | 12.5 |
Star tier never changes the starting weapon (always mortar L1), faction, rarity, hitbox, drive feel, ship scale, weapon-slot count (2), speed, acceleration, drag, turn rate, armor, heat fields, or any meta stat — only the three lerped numerics above and the mod backpack grid size.
| Star | XP required (cumulative dupes) | Mod backpack grid | Grid cells |
|---|---|---|---|
| ★1 | 0 | 3 × 3 | 9 |
| ★2 | 1 | 4 × 3 | 12 |
| ★3 | 3 | 4 × 4 | 16 |
| ★4 | 7 | 5 × 4 | 20 |
| ★5 | 17 | 5 × 5 | 25 |
Drive feel
| Field | Value |
|---|---|
| Rotates | true |
| Fixed angle (deg) | 0 |
| Accel curve | linear |
| Drag curve | back_loaded |
| Stop shake intensity | 0 |
| Heat shake intensity | 0 |
| Heat shake threshold | 0.85 |
| Stop spring amount | 0 |
Free-rotating spaceship with linear thrust ramp and the Industria-signature back-loaded drag profile — when thrust is released, the brake is weak at first and gets stronger as speed bleeds off, producing the characteristic “heavy cargo ship” feel where the hull keeps gliding at high speeds and then plants firmly at low speeds. Loader’s 0.18 drag is the lowest in the family by a wide margin — Bigbot is the next-lowest at 0.28, the rest of the family clusters at 0.32. Combined with the family-low 81 speed and 131 acceleration, this produces an unusually drift-heavy feel: Loader is slow to wind up and slow to stop, with a long glide window between thrust release and full halt. Heat curve is fully disabled (0 buildup / 0 cooldown), so the overheat-boost loop never engages — Loader is one of the six Industria hulls with disabled heat, alongside Caravan, Drillbot, Eel, Milita, and Towncar; only Bigbot and Digbot have active heat in the family.
Hitbox
No custom polygon — the Industria_Loader hull is absent from the auto-generated HULL_HITBOXES table, so physics applies the shared 8-vertex octagon fallback. This is coarser than a sprite-traced silhouette but keeps the Rapier body alive (without one, the loop force-resets ship position and velocity to zero each frame). The octagon fallback is logged once per hull to the diag channel with a hull_hitbox_missing event.
| Property | Value |
|---|---|
| Source | FALLBACK_HULL_OCTAGON |
| Vertex count | 8 |
| X range | -0.90 to 0.90 |
| Y range | -0.90 to 0.90 |
Fallback octagon vertices (x, y):
| # | X | Y |
|---|---|---|
| 1 | -0.90 | 0.37 |
| 2 | -0.90 | -0.37 |
| 3 | -0.37 | -0.90 |
| 4 | 0.37 | -0.90 |
| 5 | 0.90 | -0.37 |
| 6 | 0.90 | 0.37 |
| 7 | 0.37 | 0.90 |
| 8 | -0.37 | 0.90 |
Regenerating the hitbox file with npx tsx scripts/generate-hull-hitboxes.ts would replace the octagon with a sprite-traced polygon. The Loader sprite scale of 1.6× is applied on top of whichever hitbox is in use, so the fallback octagon currently presents a substantially larger physics body than a tight silhouette would. Loader has the largest scale-vs-hitbox mismatch of any current Industria hull on the octagon fallback (Eel at 1.35× is the next-largest in the same situation).
Passive
| Field | Value |
|---|---|
| Passive ID | jack_of_all |
| Passive name | Jack of All Trades |
| Effect | +{value}% to all stats |
| Stat target | all |
| Is percent | true |
| Values per rank (1–5) | 3, 6, 10, 15, 22 |
The default baseline passive (no per-hull override). Applies a percent buff to all stats at run start, scaling with passive rank.
EXTRACT-CANDIDATE
- Family-low drag (0.18) and family-high ship scale (1.6) on the same hull. Loader is the outlier on both the drag axis (0.18, well below the family-standard 0.32 and the next-lowest Bigbot at 0.28) and the sprite-scale axis (1.6×, above the next-largest Towncar at 1.4 and Eel/Milita at 1.35). Combined with the family-low speed (81) and acceleration (131), Loader is the family’s clear “heavy cargo glider” pick — long drift window, biggest silhouette, slowest wind-up. Worth a per-family “stat-leader matrix” reference table on
ships.mdshowing which hull leads or floors each axis in each family. Same shape as the Bigbot family-floor outlier flag and the Eel family-ceiling outlier flag. - Phantom override entries — ★5 pin produces three real deltas; ★4 pin produces zero. Loader’s ★5 entry pins ~30 fields, but every field other than hp, shield, and weaponDamagePct is pinned to its ★1 value, so only three numerics actually change across stars. Loader also has a ★4 entry pinning
acceleration: 131, speed: 81, drag: 0.18— every one of those values matches both ★1 and ★5, so the entire ★4 entry is mechanically inert. Same shape as the Caravan ~40-field phantom pin and the Eel “phantom fourth field” flag, but with an additional fully-inert ★4 entry stacked on top. Strong candidate for mechanical pruning during a future ships.ts cleanup pass. - Missing hitbox — uncommon-tier hull on the octagon fallback with the largest scale-vs-hitbox mismatch in the family.
Industria_Loaderis inSHIPS_V4_RARITYbut absent fromHULL_HITBOXES. Combined with the 1.6× sprite scale, Loader currently presents the largest scaled-up octagon physics body of any Industria hull missing a custom polygon — Eel is the only other current Industria hull on the octagon fallback, and its 1.35× scale produces a smaller mismatch. Worth a one-shot regenerate and aships.mdreference table of “which current-roster hulls currently use the octagon fallback” with mismatch magnitude. Same shape as the Eel hitbox flag taken to a worse case. - Mortar starting weapon — shared with two other Industria hulls. Loader, Bigbot, and Drillbot are the three Industria hulls that start with mortar L1; the other Industria starting weapons span rifle (Caravan, Digbot), lightning (Eel), missile (Milita), and revolver (Towncar). Worth a “starting weapon → hulls” cross-reference table on
ships.mdorweapons.mdsince the Industria family concentrates mortar on three hulls (more than any other starting weapon in the family). Same shape as the rifle pairing flag on Caravan. - Industria back-loaded drag is the family signature. All eight Industria hulls share
dragCurve: 'back_loaded'(the only family to do so consistently). The back-loaded curve shape itself is not yet documented onships.mdorphysics.md— only the values are tabled. Worth a canonical “Drag curve shapes” paragraph explaining the front_loaded / linear / back_loaded / exponential / overshoot differences. Same flag as the Bigbot, Caravan, and Eel pages. - Heat active on only two Industria hulls. Loader is one of six Industria hulls with heat fully disabled (0/0); only Bigbot and Digbot have active heat in the family. Worth a
ships.mdreference table or per-family heat summary so designers can see at a glance which hulls have a working overheat-boost loop and which don’t. Same flag as the Bigbot, Caravan, and Eel pages. - Faction field vs. hull-key prefix. Repeats the Cargo / Bomber / Killer Croc / Bigbot / Eel / Caravan flag: the
factiondata field issolarisfor every hull including this Industria uncommon, and the actual faction grouping is the prefix on the hull key. Canonical paragraph onships.mdis now overdue. jack_of_allbaseline passive on every Industria hull documented. Loader inherits the baseline +3/6/10/15/22% all-stats passive with no hull-specific override — matching the pattern on Bigbot, Caravan, Eel, and all other documented Industria hulls. Worth a design-question flag at the family level: are any Industria hulls supposed to roll their own faction-flavored passive, or isjack_of_allthe intended placeholder for the entire family until per-faction passives ship?