I've been working with Splinterz (yet again) for some tiny itsy bitsy changes to the way traits are calculated in the overall %. Certain traits (stress, urge, honesty) do not have a center mean of 50, but rather either 45 or 55.
Using a lot of memory dumps of dwarve's and running analysis on them, I came up with concrete % to use for normal, negative, and positive trait %. Initially (the %'s used in v10.2) I never really liked the negative and positive trait results, as some "bins (i.e. range of values)" had too small of a % to accurately say that's indeed the range it covered.
However, I more recently found a rather symmetrical breakdown of how the numbers were laid out.
Can see my wiki contribution here
http://dwarffortresswiki.org/index.php/DF2012:Personality_trait#Trait_bins_as_found_examining_16000_dwarvesUnfortunately. The non symmetrical ones (the means of 45 and 55 respectively) did not appear to have a symmetrical breakdown. However, there were patterns emerging from within the matrix. I noticed that there were always 7 bins, center was always ~78.5%, the ones just adjacent to center always added up to ~17%, and the next set added to ~4%, and the last ~1% (using a histogram to breakdown the data, it was possible to find the height occurrences that were the same, which helped identify the jumps in %). Symmetrical, or non...
So I tried a simple formula that skewed the non symmetrical ones to symmetrical, and voila, the numbers then matched the symmetrical breakdown.
example excel formula:
=IF(Value<=55,(Value/55)*50,(((Value-55)/45)*50)+50)
I actually abandoned my requests for scriptable arrays in the script editor to test my results (which I would still love to have access to) and delved into the code and made the changes myself!
I think Splinterz has found it to his liking and will be implementing it soon.