For a darker smoke change [[0.2, 0.2, 0.2, 0.5], [0.7, 0.7, 0.7, 0.5], [0.5, 0.5, 0.5, 0]]
This is the color array, it is an array of arrays [R, G, B, A], the particle will start using the first color component and will change through the rest of the components along its life-time set in _particle_life_time. If you want the particle to be black all the time just use [[0,0,0,0.5]].
Same happens with _smoke_sizes, these are the sizes for the particle along its life-time, the particle will change from the first to the last smoothly along _particle_life_time seconds. You may play also with weight and volume parameters to make the particle lighter or heavier so the particle ascends faster or slower. You may speedup the particles going up also with the MoveVelocity vector, for example using [0,0,50] (the particles will go up initially at 50m/s), then the relation weight/volume and the Rubbing (which determines the friction) might make the particle stop and going down again.
The COMREF has a good explanation of every member of the particle array