Post
                    
                                        by waysoftheearth » Fri Jul 02, 2010 4:35 pm
                
                
                                
                
                
                verhaden wrote: 
Ruby script
#!/usr/bin/env ruby
class Roll
 attr_accessor :value
 def initialize(*args)
 @args = args
 @value = calculate_value
 end
 def calculate_value
 dict = {}
 1.upto(6) { |i| dict(i) = 0 }
 @args.each { |i| dict(i) += i }
 dict.values.max
 end
 def to_s
 "(#{@args.join ','}) = #{@value}"
 end
end
values = {}
count = 0
1.upto 6 do |x|
 1.upto 6 do |y|
 1.upto 6 do |z|
 roll = Roll.new x,y,z
 count += 1
 if values(roll.value).nil?
 values(roll.value) = 1
 else
 values(roll.value) += 1
 end
 end
 end
end
values.keys.sort.each do |k|
 printf("%2d: %2d (%5.2f%%)\n", k, values(k), (values(k).to_f / count.to_f) * 100.0)
end
Modifying the code, I generated these results:
2dd:
2: 18 ( 8.33%)
3: 24 (11.11%)
4: 42 (19.44%)
5: 48 (22.22%)
6: 66 (30.56%)
8: 6 ( 2.78%)
10: 6 ( 2.78%)
12: 6 ( 2.78%)
4dd:
 3: 20 ( 1.54%)
 4: 95 ( 7.33%)
 5: 172 (13.27%)
 6: 492 (37.96%)
 8: 139 (10.73%)
 9: 20 ( 1.54%)
10: 144 (11.11%)
12: 171 (13.19%)
15: 20 ( 1.54%)
16: 1 ( 0.08%)
18: 20 ( 1.54%)
20: 1 ( 0.08%)
24: 1 ( 0.08%)
5dd:
 3: 20 ( 0.26%)
 4: 245 ( 3.15%)
 5: 576 ( 7.41%)
 6: 2505 (32.21%)
 8: 1005 (12.92%)
 9: 230 ( 2.96%)
10: 1111 (14.29%)
12: 1505 (19.35%)
15: 251 ( 3.23%)
16: 25 ( 0.32%)
18: 250 ( 3.22%)
20: 26 ( 0.33%)
24: 25 ( 0.32%)
25: 1 ( 0.01%)
30: 1 ( 0.01%)
                
                                                
                                                [f=32]
Golgildir the Elf Medium (MV 12", AC 9, HD 1, hp 1/1, AL N) great cloak, 
lantern; spells: color spray; scrolls: sleep, sleep, charm person
Hirelings: Georges; 
torch[/f]
Help Get DD5 Done!  
https://buymeacoffee.com/wote