Enemy Memory Usage

From Pikmin Technical Knowledge Base
Revision as of 08:46, 30 April 2023 by PikHacker (talk | contribs) (New page to help keep track of enemy memory usage)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

To do: If someone with better formatting skills and patience wants to improve this page, please do.

Each enemy in Pikmin 2 uses a different amount of memory, with this chart, you can theoretically know exactly what your limits are on what can be present at once. The size of the enemy heap is constant, so your available space will never change, regardless of anything else about the level. Note that in story mode, the enemy heap is a total of 2099.2 kilobytes, for both caves and above ground. In Challenge mode, the enemy heap is smaller, at 1536.0 kilobytes. In Versus mode, the enemy heap is 1843.2 kilobytes.

Having one of a single enemy means its model and animations need to be loaded, so it will use far more memory compared to any subsequent instances of that enemy. Both the first and additional enemy sizes will be used here. To calculate what your level needs, use the formula

Size = x + (y * (s-1))

Where x is the single instance size, y is the subsequent instance size, and s is the number of the enemy in your level.

Note that for some enemies, their existence will automatically allocate another enemy. The size here should include these enemies, although there are some odd cases involved, I will try to clarify in notes when I can, although some specific enemies may be inconsistent and depend heavily on what else is in the level.

Some enemies, such as the pellet posy and Titan Dweevil, spawn objects such as pellets with their existence, these objects aren't put in the enemy heap, and aren't accounted for in this chart, since they wouldn't affect the limit on enemies.

Naturally, all of these sizes reflect the vanilla game, but they are subject to be different in mods, a general way to get an idea of a custom enemies size is to look at the combined size of its model and animation archives when not compressed. These sizes were gotten with loading an empty cave set to spawn one of the given enemy, or two for the subsequent size.

Certain enemy types can share assets, meaning if one is loaded, the other can be loaded without needing to add its initial size, and instead going right to its subsequent size, these cases will be noted where possible.

Contents


Files[edit]

Enemy Name Usage For Initial Instance Usage for Subsequent Instances Notes
Fire Geyser 14.8 kb 2.8 kb
Gas Pipe 15.1 kb 2.8 kb
Paper (Chiyogami) 21.2 kb 2.9 kb
Electric Wire 22.1 kb 5.7 kb
Clover 23.4 kb 2.9 kb
Small Shoot 24.3 kb 2.8 kb
Small Dead Figwort 25.5 kb 2.8 kb
Breadbug House 26.4 kb 1.9 kb
Iridescent Flint Beetle 27.5 kb 4.0 kb If a single Flint/Glint/Doodlebug exists, any others will count as subsequent
Iridescent Glint Beetle 27.5 kb 4.0 kb If a single Flint/Glint/Doodlebug exists, any others will count as subsequent
Doodlebug 27.5 kb 4.0 kb If a single Flint/Glint/Doodlebug exists, any others will count as subsequent
Horsetail 28.6 kb 2.9 kb
Fiddlehead 29.0 kb 2.8 kb
Glowstem (Red) 30.0 kb 3.3 kb
Glowstem (Green) 30.0 kb 3.3 kb The two glowstems have fully seperate models/animations
Small Figwort 31.0 kb 2.8 kb
Bomb Rock 31.1 kb 3.2 kb
Wogpole 31.8 kb 3.4 kb
Dandelion 37.0 kb 3.1 kb
Common Glowcap 38.0 kb 3.1 kb
Large Dead Figwort 38.5 kb 3.2 kb
Seeding Dandelion 40.4 kb 3.3 kb The plants are all excluding any potential Spectralids
Female Sheargrub 47.0 kb 3.6 kb
Male Sheargrub 47.5 kb 3.8 kb Both Sheargrubs share animations, but not model. So using both will save some memory, but not the full amount of the single instance.
Margaret 47.8 kb 3.0 kb
Foxtail 48.5 kb 3.0 kb
Ravenous Whiskerpillar 48.6 kb 3.4 kb
Bulborb Larva 49.1 kb 3.6 kb
Large Shoot 49.5 kb 2.8 kb
Pellet Posy 50.7 kb 4.4 kb All sizes of pellet are the same amount of memory
Large Figwort 51.7 kb 3.2 kb
Skitterleaf 52.8 kb 3.7 kb
Anode Beetle 53.4 kb 3.9 kb
Waterwraith Tires 53.9 kb 5.3 kb
Falling Rock 56.4 kb 4.3 kb Also the rock shot by cannon beetle larva
Any Candypop Bud 58.3 kb 5.1 kb All Candypop Buds are the same internally, one being loaded will make all others use subsequent size.
Cloaking Burrownit 63.8 kb 4.2 kb
Water Dumple 64.4 kb 4.3 kb
Shearwig 66.3 kb 4.0 kb
All Four Elemental Dweevils 71.9 kb 4.9 kb All four main dweevils share the same model/anims. Having one counts as the initial for all 4.
Swooping Snitchbug 78.3 kb 4.7 kb
Antenna Beetle 81.9 kb 5.1 kb
Fiery Blowhog 84.1 kb 6.0 kb
Watery Blowhog 84.1 kb 6.0 kb Fiery/Watery share the model/animations, so either being present counts as the first instance.
Yellow Wollywog 91.8 kb 4.7 kb
Mamuta 92.4 kb 5.7 kb
Bumbling Snitchbug 94.4 kb 4.8 kb
Dwarf Bulbear 95.2 kb 4.5 kb Animations are are shared with other dwarves, but not model. So only partly paired with them.
Dwarf Red Bulborb 96.0 kb 5.3 kb If a single dwarf red/orange/snow Bulborb exists, any others will count as subsequent
Dwarf Orange Bulborb 96.0 kb 5.3 kb If a single dwarf red/orange/snow Bulborb exists, any others will count as subsequent
Snow Bulborb 96.0 kb 5.3 kb If a single dwarf red/orange/snow Bulborb exists, any others will count as subsequent
Gatling Groink 99.9 kb 6.9 kb Both walking and stationary
Volatile Dweevil 103.0 kb 8.1 kb This dweevil is bigger than the other 4 due to the Bomb Rock.
Wollywog 105.7 kb 4.9 kb The two Wollywogs are fully separate internally.
Bulbmin 110.2 kb 6.4 kb The babies do not count toward the enemy heap
Puffy Blowhog 110.9 kb 6.1 kb
Lesser Spotted Jellyfloat 113.8 kb 4.9 kb
Greater Spotted Jellyfloat 114.0 kb 5.3 kb
Group of Unmarked Spectralids 116.1 kb ??? kb Same issue as with Mitites, hard to test an individual entity
Spotty Bulbear 119.8 kb 6.1 kb
Red Bulborb 126.4 kb 7.4 kb If a single red/orange/hairy Bulborb exists, any others will count as subsequent
Orange Bulborb 126.4 kb 7.4 kb If a single red/orange/hairy Bulborb exists, any others will count as subsequent
Hairy Bulborb 127.1 kb 7.5 kb Hairy Bulborb is a tad bigger than the other two because of the hair effects.
Fiery Bulblax 127.4 kb 9.1 kb
Burrowing Snagret 128.8 kb 9.3 kb
Withering Blowhog 129.5 kb 6.5 kb
Hermit Crawmad 131.7 kb 7.3 kb Includes its nest
Breadbug 136.1 kb 5.7 kb Including its house
Giant Breadbug 141.8 kb 6.9 kb Including its house
Creeping Chrysanthemum 145.6 kb 5.9 kb
Set of 10 Mitites 145.6 kb ??? kb Mitite allocation is very strange and doesn't follow normal rules, so I cant say what an individual ones size is yet.
Pileated Snagret 148.1 kb 9.8 kb
Beady Long Legs 154.6 kb 15.3 kb This is without any Spectralids, as Beady is in vanilla.
Egg 163.4 kb 2.8 kb Including the 10 Mitites, they make eggs deceptively huge on memory.
Ranging/Toady Bloyster 176.2 kb 8.5 kb Both bloysters are basically the same thing internally, and count as the same initial use
Man-at-Legs 180.5 kb 13.9 kb
Careening Dirigibug 192.2 kb 11.6 kb Including the 3 bomb rocks it allocates per bug!
Honeywisp 206.6 kb 6.7 kb Including the egg and the eggs Mitites!
Waterwraith 207.6 kb 15.1 kb Including its tires
Armored Cannon Beetle Larva 222.8 kb 28.0 kb Including 5 of the rock object per beetle! Also note that models/anims are shared for the 3 beetle larva enemies.
Buried Cannon Beetle Larva 222.8 kb 28.0 kb Note above
Decorated Cannon Beetle 222.8 kb 28.0 kb Note above
Raging Long Legs 330.4 kb 18.3 kb This is with the 30 Mitites.
Emperor Bulblax 446.2 kb 11.8 kb
Empress Bulblax 541.3 kb 192.7 kb Including 50 bulborb larva per-empress
Titan Dweevil 595.7 kb 53.6 kb
Segmented Crawbster 664.0 kb 8.1 kb The biggest size award of all award
Credits: PikHacker