You can use lattice fairly easily. Just animate one berry/ball and change the IPO channels to delta channels (LocX to dLocX etc). You can now duplicate the berry and move it to a new start position. Delta IPOs are relative so the two berries will have an identical bounce pattern but won’t occupy the same space (as they would with normal shared IPOs).
Next, select the duplicate berry/ball and make the IPO single user. Now you can tweak the IPO curves so the bounces differ. Push the curves to the right to offset the start times. Do this for a number of berries/balls and you have chaos. Depending on the desired result, you could probably duplicate these again and just have them sharing IPOs but with different start positions.
Admittedly it’s a bit of effort but less than you might think at first (unless you’re already well aware of it of course ). It might not be a lot of fun to animate thousands of berries this way but I’m just afraid of automated solutions like physics The main difficulty with the IPO method is that you have to be careful berries aren’t crossing through each other.
Here’s an animation I made a year ago. The tears and magic balls were done using the above offset IPO method. (Ignore the animation, I was learning Ignore the image quality too - I’ve compressed the hell out of it). MP4/H264 Format. 2MB. It’s not the greatest example but gives an idea. Here’s another one using the Lattice method explained in my tutorial (below) with IPOs changed as mentioned above (600Kb AVI).