Paint Scatter Tool

Available in subobject mode "Object".
This tool allows you to paint an objects geometry onto another objects surface. For example, you could paint trees, rocks and bushes onto a landscape, or stubbles into a face. It's possible to use a scale and rotation variation, and normals are supported.

This tool is also available as a standalone modifier named "Paint Scatter".

The "Bend" Options
Paint scatter allows you bending while painting. This means, if you paint in local mode, the object is automatically bent, so that the bottom of the objects fit to the normal, and the top of the object points upwards - like mushrooms on a trunk, which come out of the trunk horizontally and grow vertically up to the cap.
If you use the bend, Paint Scatter will place an XForm and a Bend modifier onto the stack of each painted object. The XForm is needed to store the random transformation (it must be applied below the bend). The bend holds the bend settings and can be changed afterwards (if it is not attached).

This simple mushroom... automatically bent while painting, to let the mushrooms organically "grow" out of the trunk
Schematic view of applied bend

The "Existing Noise Modifier" Options
As scattering means painting many objects, you may probably want to look these objects slightly different. For this reason, Paint Scatter can automatically set the seed of a Noise modifier, if you place one on your source object before painting. (Paint scatter doesn't apply a Noise modifier itself, because I otherwise would have to integrate the complete Noise UI into Paint Scatter's UI, which would make it too big)