ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/maps/perl/bonus.ext
(Generate patch)

Comparing deliantra/maps/perl/bonus.ext (file contents):
Revision 1.2 by root, Mon Dec 11 18:16:02 2006 UTC vs.
Revision 1.3 by elmex, Tue Dec 12 23:42:45 2006 UTC

1#!perl 1#!perl
2use List::Util qw/min/;
2 3
3$cf::CFG{ext_bonus} 4$cf::CFG{ext_bonus}
4 or return; 5 or return;
5 6
6my $WC_BASE_VALUE = 15 * 5000; # 15r 7my $WC_BASE_VALUE = 15 * 5000; # 15r
7my $AC_BASE_VALUE = 40 * 5000; # 40r 8my $AC_BASE_VALUE = 40 * 5000; # 40r
8my $DAM_BASE_VALUE = 100; # 20p 9my $DAM_BASE_VALUE = 5000; # 1r
9my $MAGIC_BASE_VALUE = 100 * 5000; # 100r 10my $MAGIC_BASE_VALUE = 100 * 5000; # 100r
10 11
11# TODO: should be queryable from perl 12# TODO: should be queryable from perl
12my $MAX_LEVEL = 115; 13my $MAX_LEVEL = 115;
13# maximum values of additions at $MAX_LEVEL difficulty 14# maximum values of additions at $MAX_LEVEL difficulty
33 34
34 my $magic_diff = $weapon->magic - $clone->magic; 35 my $magic_diff = $weapon->magic - $clone->magic;
35 36
36 if ($wc_diff > 0) { $value += $WC_BASE_VALUE * 1.5 * $wc_diff * rand_range .5, 1 } 37 if ($wc_diff > 0) { $value += $WC_BASE_VALUE * 1.5 * $wc_diff * rand_range .5, 1 }
37 if ($ac_diff > 0) { $value += $AC_BASE_VALUE * 1.5 * $ac_diff * rand_range .5, 1 } 38 if ($ac_diff > 0) { $value += $AC_BASE_VALUE * 1.5 * $ac_diff * rand_range .5, 1 }
38 if ($dam_diff > 0) { $value += $DAM_BASE_VALUE * 1.5 * $dam_diff * rand_range .5, 1 } 39 if ($dam_diff > 0) { $value += $DAM_BASE_VALUE * 1.5 * ($dam_diff ** 1.55) * rand_range .5, 1 }
39 if ($magic_diff > 0) { $value += $MAGIC_BASE_VALUE * 1.5 * $magic_diff * rand_range .5, 1 } 40 if ($magic_diff > 0) { $value += $MAGIC_BASE_VALUE * 1.5 * $magic_diff * rand_range .5, 1 }
40 41
41 warn sprintf "WC DIFF: %3d, %3d, %3d, %3d | %10d = %10.3f r\n", 42 warn sprintf "WC DIFF: %3d, %3d, %3d, %3d | %10d = %10.3f r\n",
42 $dam_diff, $wc_diff, $ac_diff, $magic_diff, $value, $value / 5000 43 $dam_diff, $wc_diff, $ac_diff, $magic_diff, $value, $value / 5000
43 if $cf::CFG{ext_bonus_debug}; 44 if $cf::CFG{ext_bonus_debug};

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines