Category Archives: Paper Mario

’00s Mario RPGs’ Item Drops: Weights? Rates? Let me Elucidate…

Random enemy item drops have long been a focus of my Mario-RPG stat-gathering and what-not – there’s just something satisfying about getting extra items or missable equipment when it’s not guaranteed, and I always thought it’d be nice to know the odds.

Well, over time, I’ve gotten proficient enough in memory hacking and assembly to be able to interpret the routines and/or RNG calls responsible for item drops in the first three Mario & Luigi and Paper Mario games (since those are the ones that I’m the most experienced with, and whose systems have widely-accessible emulation), and the ways they represent the possible item drops in data form, and then use that data to determine what items to drop and when, vary wildly from game to game.  Hence, I’ll go into detail in how it works for each of these six games (links to the actual drop data will be at the end of the post).

Paper Mario (64)

This is the Mario RPG I’d been curious about drops for the longest, and somewhat ironically, it took me the longest of these six to find out anything concrete about how item drops are determined; these findings here are the first I’ve gathered on the matter.

Let’s take a look at Pleasant Path Koopa Troopas’ item drop list, since they’re one of the first to be able to drop multiple types of items:

Global Rate Item 1 Weight 1 Item 2 Weight 2
5 Mushroom 3 Koopa Leaf 7

This means that 5%* of battles against enemy sets led by a Koopa Troopa will drop an item, and of those items, Mushrooms and Koopa Leaves appear with frequency 3 and 7, respectively (30% and 70% of the time there is a drop, or 1.5% and 3.5% including the overall drop chance).

* Note: As alluded to in my Power Bounce article, Paper Mario 64’s RNG is weird in that it generates numbers from 0 to N inclusive (ergo, N+1 different values) when called with rand(N), meaning there are a lot of cases where there’s one extra value than intended. This is no exception, so the global drop rate is actually 5 out of 101, and though I haven’t checked, it’s possible that the weights between different items might get slightly messed up as well (probably giving the last item +1 weight, if so).

Also of note, both Paper Mario and Paper Mario: TTYD’s drop tables are assigned by encounter, not by enemy type, so it’s possible I missed a couple more battles where the drop tables are different the ones listed for the enemy type.

Paper Mario: The Thousand-Year Door

I’ve already gone over this at length in a previous article, but I might as well have it here too for completeness’s sake. While most enemies only have one or two possible drops in PM64 (aside from a few weird ones like Shy Guys that have up to five), a good number of enemies in TTYD have up to five items + three badges that can be dropped.

Here’s a sample drop table (take a guess what enemy’s, at this point):

Item Hold Weight Random-Drop Weight
None 200 300
Super Shroom 10 10
Maple Syrup 0 10
Thunder Bolt 10 10
Point Swap 0 15
Fright Mask 0 10
Happy Flower 0 2
Flower Saver 0 1
Flower Saver P 0 1

Notably, all enemies have the same “None” weights, normal items’ weights are either 5, 10, 15, or 20, and badges’ are 1 or 2.

The hold weights are used to determine whether an enemy will hold an item/badge in battle (or have Ms. Mowz steal an item/badge, if they are holding nothing).  For example, in this case, the enemy will hold a Super Shroom 10/(200+10+10) = 10/220 = 4.54% of the time.

For drops, there are three possible scenarios; the game will either try to drop a held item, a random drop item, or nothing.  The relative probabilities of these cases are as follows:

Held Drop Random Drop No Drop
Normal battle 1 1 2
Normal battle (N Item Hog badges equipped) 1+N 1+N 2
Pit of 100 Trials battle 1 1 3
Pit battle (N Item Hog badges equipped) 1+N 1+N 3

If the held drop case is selected, then one of the items the enemies were holding in battle is dropped at random (items used by enemies are considered, but not ones stolen by Ms. Mowz).  If no enemies were holding items, nothing will be dropped, unless Item Hog badges are equipped; then there is a 50% chance one of a set of items will be dropped:

item-hog-list

If the random drop case is selected, a random drop is selected from the front enemy’s random drop column, weighted accordingly.  For example, the chance of a Flower Saver being chosen is 1/(300+10+10+10+15+10+2+1+1) = 1/358.  Given there being such a high weight for no random item, in addition to having to have the random drop case selected in the first place (a 1/3 chance with an Item Hog, or 2/7 with an Item Hog in the Pit of 100 Trials), getting any random drop is pretty rare, especially badge drops.

Super Paper Mario

Compared to the wealth of complication in TTYD’s system, SPM’s is much more straightforward; essentially the same as the original Paper Mario’s.

Here’s the drop data for a normal Goomba:

Global Drop Rate 4%
Item Name Weight
Dried Shroom 100
Cake Mix 100
Big Egg 100
Honey Jar 100
Shroom Shake 200
Catch Card 50

Pretty straightforward.  Notably, poison-inducing enemies often have 100% global item drop rates (as might be pretty evident when playing the game).  Doesn’t mean you can’t get unlucky in a pinch and get a Catch Card, though.

Mario & Luigi: Superstar Saga

Unlike the Paper Mario series, M&L games have been pretty consistent about the pools of items enemies have to draw from from the very beginning – at most one standard drop, one rare drop, and every enemy in a battle can independently drop one of its items. Superstar Saga is a bit of an oddball in how it handles those two drops, though.

Here’s Bob-omb’s data, for an example:

Normal Item Weight Rare Item Weight
Nuts 6 Red Pepper 10

Uniquely to the series, only the “normal” item can drop under normal circumstances, and the chance of it dropping is just the normal item’s weight out of 31 (yes, 31; they only had five bits to spare, I guess).  So Bob-ombs drop Nuts about 19.3% of the time.

If you equip the Gameboy Horror SP accessory, then you always receive the Rare Item if the enemy has one, no matter what the weight is (even 0, which does happen; Troopeas in the US version have Super Nuts as a 0-weight Rare Drop).

Swing Bros. Advance is where it gets interesting; here, and only here, are both items treated as weighted item drops.  In Bob-ombs’ case, then, you’ll get Nuts 6/16 (37.5%) of the time, and Red Peppers 10/16 (62.5% of the time).  Note that Woo Beans cannot be stolen in this way, but their weight does contribute (so Tanoombas with their “Woo Bean, 20 / Green Pepper / 10” table only drop Green Peppers a third of the time, and nothing the other two-thirds), and there’s no way to get an item with a 0 weight.

Mario & Luigi: Partners in Time / Bowser’s Inside Story

Only recently did I discover how these rates are actually calculated, but it’s consistent between these two games (and possibly later games in the series as well, but I have no experience with their data).

Here’s Shroob Rex’s pair of items:

Normal Item Global Item Rate Rare Item Rare Item Rate
Mix Flower 15 100-Point Pants 15

Until recently I’d been interpreting these as each having a 15% chance, since nothing in Partners in Time had more than a 50 for either (although some enemies in Bowser’s Inside Story did, leading to confusion on my part about enemies whose “rates” summed to over 100, but no further research).

As it turns out, though, the numbers are misleadingly ordered in the data; it turns out this means that Shroob Rexes drop an item 15% of the time, and 15% of those items are 100-Point Pants (thus meaning 12.75% / 2.25% overall rates for the items, respectively).  Equipping the Treasure Badge skips the first check entirely when the enemy is defeated by a Bros. Item, meaning 85% of Rexes drop Mix Flowers, and 15% drop 100-Point Pants.

I don’t offhand know exactly how the Item Gloves work in BIS, but I imagine it might cap some enemies’ global drop rate so as not to get an item every attack from bosses (though notably, likely not Shroobs‘); might be worth looking into in the future.

Item Drop Data Resources:

Paper Mario (64)
Paper Mario: The Thousand-Year Door
Super Paper Mario (data reverse-engineered / extracted by aldelaro5)

Mario & Luigi: Superstar Saga
Mario & Luigi: Partners in Time
Mario & Luigi: Bowser’s Inside Story

That’s all for this post, stay tuned soon (hopefully) for an in-depth look at evasion badges in Paper Mario: TTYD.  In the meantime, join my Discord server if you have suggestions for other mechanics you’d like to see get a deeper dive, or just want to chat Paper Mario or what-have-you.

Advertisements

Power Bounce Caps: Not Quite Infinity+1

If like me, you were a casual fan of Paper Mario 64 back in the day, you might have wondered why you were able to get a ton of Power Bounces on enemies normally, but always crumbled under pressure when trying to use them against a boss. Well, this’ll probably come to no surprise if you’re into the speedrunning / TAS-ing scene now, but it turns out that in both Paper Mario 64 and TTYD, there are hard limits to how many times you can Power Bounce in a row, especially on bosses.  Let’s dive into how those are determined!

Also for completion, I’ll give the frame windows for how long you have to execute the Action Command each bounce, since they do get tighter on the later bounces.

Paper Mario 64

Though not that technically complex, the way the cap is determined in Paper Mario 64 is… well, rather indirect.  Where you end up getting capped also tends to have pretty heavy variance, with most of the caps being early on, but with an arbitrarily long tail.

Each enemy/boss has a single value that gets fed into the calculation, with a max of 100 (Goombas, Fuzzies, Shy Guy, et al.), and a minimum of 50 (Final Bowser, prior to the Twink battle), which I’ll call the Cap Multiplier, or Cap% for short.

A value in memory (I’ll call it the “bounce chance”, or BC) is set to 200 on the first bounce, and for every subsequent bounce, this value is multiplied by the Cap%, then divided by 100, and rounded down to the nearest integer. For example, if Cap% is 50, the BC will take on values of 200, 100, 50, 25, 12, 6, 3, 1, and then 0 for all subsequent jumps.  On each bounce, a random number from 0 to 100 (inclusive) is generated; if that number is higher than the current BC value, then no more jumps will be possible afterwards.

This will almost always be the limiting factor of a Power Bounce on anything with a Cap% < 100, since the timing windows are fairly lenient, giving you 7 frames at 30fps for the first bounce, and 1 frame fewer each subsequent bounce until it hits a minimum of 2 frames at 30fps (2/30 seconds) on the sixth bounce, totally reasonable compared to TTYD’s 3/60-second Superguards or SMRPG’s 2/60-second Super Jumps.

Curiously, not only does Dodge Master increase the timing windows for later bounces to a downright ridiculously forgiving minimum (5 frames, or 1/6 of a second; as generous as TTYD’s jump / normal guard commands with THREE Simplifier badges), it also makes your Power Bounces get capped later!  The badge adds 7 to the enemy’s Cap%, making the values take longer to get small. For instance, a 50-Cap% enemy’s BC goes from the above values to 200, 114, 64, 36, 20, 11, 6, 3, 1, 0.

What do all these values mean practically though? Well, here’s a chart of the chance of getting capped upon reaching each of the first 10 bounces (“Cap Likelihood”), as well as the number of expected attempts to get to that number of bounces (“Expected Attempts”), for an enemy with a Cap% of 70 (typical for chapter bosses; only Hallway / Final Bowsers have worse), with and without Dodge Master.

Jump # 1 2 3 4 5 6 7 8 9 10
w/o Dodge Master BC 200 140 98 68 47 32 22 15 10 7
Cap Likelihood 0% 0% 2.0% 31.7% 52.5% 67.3% 77.2% 84.2% 89.1% 92.1%
Expected Attempts 1 1 1 1.4 3.1 9.6 42.2 267 2447 30,903
Timing 7/30s 6/30s 5/30s 4/30s 3/30s 2/30s 2/30s 2/30s 2/30s 2/30s
With Dodge Master BC 200 154 118 90 69 53 40 30 23 17
Cap Likelihood 0% 0% 0% 9.9% 30.7% 46.5% 59.4% 69.3% 76.2% 82.2%
Expected Attempts 1 1 1 1.1 1.6 2.9 7.3 24 101 568
Timing 7/30s 7/30s 7/30s 7/30s 6/30s 5/30s 5/30s 5/30s 5/30s 5/30s

Interestingly, given that the bounces are only capped if the generated number is higher than the current BC, but not if it’s equal, it is technically possible to get arbitrarily many bounces (up to the global cap of 101) even for the worst Cap%, so long as the random number generated is always 0.  For example, getting a 13-cap without Dodge Master on Tutankoopa (or another 70-Cap% boss) is a 1/1,000,000,000 chance.  And yet, it’s possible. (Lua scripting FTW!)

Here’s a spreadsheet of the Cap Multipliers and “Expected Attempts” for the first 30 bounces for every enemy / boss in the game.

Paper Mario: TTYD

Compared to Paper Mario 64, TTYD’s approach is remarkably simple. Each enemy/boss has a “soft cap” N. For the first N-1 jumps, you can’t get capped. For the next N (bounces N through 2N-1) you have a 67% chance of getting capped each bounce (bounces N through 2N-1), and you will be forcibly capped on bounce 2N.  Practically all enemies have a soft cap of 9,999 (e.g. effectively infinite), and bosses’ soft caps range from 5-9, much better than Paper Mario 64’s potential (and on Bowser, likely) 3-caps.

Unlike PM64, Simplifier and Unsimplifier badges do not change the cap counts or likelihood of being capped; however, that does lead to the disadvantage of TTYD’s Power Bounce – no matter how which badges you’re wearing, eventually the timing window on the bounce gets down to a single frame at 60fps, which is basically impossible to keep up for more than a few bounces.

Here’s a table of the timing windows for any number of Simplifiers / Unsimplifiers, in 1/60-second frames:

Bounces 1 2 3 4 5 6 7 8 9 10 11+
3 Unsimplifiers 5 4 3 2 1 1 1 1 1 1 1
2 Unsimplifiers 6 5 4 3 2 1 1 1 1 1 1
1 Unsimplifier 7 6 5 4 3 2 1 1 1 1 1
Normal 8 7 6 5 4 3 2 1 1 1 1
1 Simplifier 9 8 7 6 5 4 3 2 1 1 1
2 Simplifiers 10 9 8 7 6 5 4 4 3 2 1
3 Simplifiers 10 10 10 10 10 9 8 7 6 5 1

You can find the soft-caps for each enemy in my recently-updated PM2 Stat Guide (listed as “PB Cap”).

That pretty much covers this little-known / understood balance feature! Really, I don’t think TTYD’s cap is accomplishing all that much when you’re forced to perform frame-perfect jumps from the eighth bounce onward, but ehh…

Badges, Part 1: An Introduction.

For my first official post on the Super Mario Files, I’ll once again revisit my favorite aspect of one of my favorite Mario games, badges in Paper Mario: The Thousand-Year Door.

Badges played a massive part in the original Paper Mario, allowing for amazing diversity in strategies, and if utilized correctly, completely mitigating the need for any other stat. Despite the large part badges played in PM64’s gameplay, the system was rather limited, with a set number of available badges and a horribly restrictive maximum BP of 30.  In the Thousand-Year Door, these limitations were all largely removed, with over triple the available BP, a larger number of badges available through normal means, a system for selling and re-buying badges easily, and most striking, a handful of ways that collectively allow one to collect practically infinite amounts of almost every badge in the game. This system is massively improved over the original’s; whereas there were at most three of any one badge in the original game, Thousand-Year Door provides you with the ability to hyper-focus your strategy on virtually any aspect of the battle system. A naïve player that doesn’t realize BP’s potential might reach the endgame with roughly 60 HP and FP; with all but 20 of that HP and FP being put into BP instead (totalling 51 BP), you can:

  • Restore an average of ~8 HP or FP every turn with 25 Happy Heart or Flower badges,
  • Get a straight extra 8 Attack or 10 Defense power for you or your partner with the respective numbers of Power/Defense Plus,
  • Increase ALL of your partners’ HP by 40 with HP Pluses P, giving you 300+ HP’s worth of meat-shields,
  • Gain back over three times the selling price of every item you use in-battle with Refunds,

and so on, and so on; you get the idea.  However, despite all these massive additions, the game makes little to no mention of how to get infinite copies of badges, or exactly how wearing multiple badges of the same type changes their effects. That’s where my research comes in; in the next couple of posts, I will pin down the effects of every badge in the game in single and multiple copies as accurately as they can be conceivably known, as well as detailing the exact methods for obtaining extra copies, whenever possible.  Stay posted for these updates in the near future!