The Problem
Suppose we have a character using Animate Objects (D&D 5e) to animate 10 Tiny objects, and is attacking the same enemy with all of them. According to RAW, you'd make a separate attack roll for each of the objects - so 10 attack rolls, and a damage roll for each that hits. That's a lot, and it would be nice if there were a way to reduce it.
Trivial strategy
Roll once for all of them together. Only one roll: great! But then we have either all or none of the objects hitting, which together are literally the least likely possible outcomes. So not very representative of what we'd expect to get from rolling each attack individually.
Grouping strategy
Split the objects into groups and roll attack for each group. This is simply a middle ground between individual rolls and the one-roll-for-all, and a tradeoff between speed and accurate representation. Fewer groups = more speed and worse representation; more groups = better representation & less speed.
Map a d20 to a number of hits?
My intuition is telling me that there ought to be a way to roll a single d20 and, based on the outcome (and factoring in +to hit and AC), determine a number of the 10 objects that hit, which is properly representative of how lucky the roll is. My question is, how can we do this?
(I'm aware that there are many other good and creative ways to deal with this problem, but for this question, I'm interested specifically in trying to create the described mapping!)
Requirements
For me to be happy with using this method in a game, the most important requirement is that the character using it is neither advantaged nor disadvantaged by its use. More specifically, if all possible outcomes of rolling attacks individually were enumerated and compared against all possible outcomes of using this method, the number of hits, misses, and crits should match between them.
As implied by the first condition, this method must preserve the number of outcomes that represent critical hits. "Critical misses" must also be similarly accounted for inasmuch as they represent a miss against any armor class.
The method should avoid generating remarkable outcomes with higher frequency than rolling individual attacks would. ("Remarkable" = players' eyebrows raised all around the table; if it happened twice there would be joking (or serious) accusations of weighted dice, etc.)
The method should preserve the intuitive paradigm that rolling higher is better. Rolling 20 would represent the most hits; rolling 1 would represent the least; and no roll X could be considered better than Y if X is less than Y.
Finally, the method should, as much as possible while respecting the other constraints, properly represent the distribution of hits one would expect to see when rolling attacks individually.
Work in Progress
I am currently attempting to work this out myself, and will (hopefully soon) post my best shot at it as an answer here. I believe the solution will involve setting up a sort of generic table of # of hits and # of crits for each of the outcomes of a d20 against an arbitrary base AC, coupled with a formula that modifies these results according to the + to hit of the attack and the actual AC of the target.
But I'm not especially practiced at crunching dice probabilities, and my planned solution is based in part on intuitive leaps that I'm not sure I can justify. So I'm hoping some experienced players here may have attempted something similar or just know how to manipulate these kinds of dice probabilities. And anyway, I'm finding this problem a super interesting challenge, and why should I have all the fun? Thanks for any help/insight!