How to give a variable rotation, scale or location offset to dupligroups objects? I would like to bring a natural look to my dupligroups by giving every instance a different scale and/or rotation.


Predictable: All locations, rotations and scales fields in blender can be computed (give 3*2 and it will compute 6). But is it possible to give a rotation like RotX = "a factor" * LocX instead of having a fixed value ? Then moving the object would rotate it and duplicating it with dupligroups would give predictable rotations to the instances.
Random: Is there a special symbol as well for random ? (for example like writing "r" in a field to make it random ?)


I know a particle system can give such result, however, this method misses some of my goals : 


easy real-time preview while editing : Unlike Blender 2.49, newer versions still don't offer any 3D preview in particle painting mode, you have to constantly switch back and forth to/from object mode to see what your changes look like.
I didn't find any way to take the area of an Ngon to define the scale of the emitted instance. Dupligroups allow it as allowing to only have 1 instance per Ngon and not per triangle.


If I'm just bad and there are options to have this 2 goals reached with a particle system, I'm ok for such a solution.
Yes, this is called a driver.
You can evaluate a python expressions by pre-pending your input with a #. There are a number of modules pre imported for convenience, use noise.random() to get a random floating-point number, e.g. #noise.random() * 5