diff options
author | Jesusaves <cpntb1@ymail.com> | 2019-05-28 22:53:26 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2019-05-28 22:53:26 -0300 |
commit | 58bd79e5404433c51f6ac5f6949b2dc33551d075 (patch) | |
tree | 4112a6adbd6b2e6809c66be6657ea2361799bc74 /npc/craft | |
parent | 8c99adcb54d0a13f63a6f93d771ca15f211fb4e3 (diff) | |
download | serverdata-58bd79e5404433c51f6ac5f6949b2dc33551d075.tar.gz serverdata-58bd79e5404433c51f6ac5f6949b2dc33551d075.tar.bz2 serverdata-58bd79e5404433c51f6ac5f6949b2dc33551d075.tar.xz serverdata-58bd79e5404433c51f6ac5f6949b2dc33551d075.zip |
Change item bonuses rules, so it gives half on base stats/drain/double.
Diffstat (limited to 'npc/craft')
-rw-r--r-- | npc/craft/options.txt | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/npc/craft/options.txt b/npc/craft/options.txt index 0fcb1e31f..cf1eeec4a 100644 --- a/npc/craft/options.txt +++ b/npc/craft/options.txt @@ -345,18 +345,28 @@ function script csys_Multiplier { switch (.@sk) { case IOPT_SPLASHDAMAGE: return 0; + case VAR_STRAMOUNT: + case VAR_AGIAMOUNT: + case VAR_VITAMOUNT: + case VAR_INTAMOUNT: + case VAR_DEXAMOUNT: + case VAR_LUKAMOUNT: + case HP_DRAIN: + case SP_DRAIN: + case IOPT_DOUBLEATTACK: + return 1; case IOPT_SCRESIST_POISON: case IOPT_SCRESIST_SILENCE: case IOPT_SCRESIST_CURSE: case IOPT_SCRESIST_BLIND: - return 2; + return 3; case VAR_MAXHPAMOUNT: case VAR_MAXSPAMOUNT: case VAR_ITEMDEFPOWER: case VAR_MDEFPOWER: - return 3; + return 5; default: - return 1; + return 2; } return 0; } @@ -393,7 +403,7 @@ function script csys_Apply { // Apply a bonus using array_pop (it was shuffled so we're fine) // A pity 1 str and 1 hp is so different. .@vartp=array_pop(@csys_attr); - .@bonus=rand(1, .@lv+.@lv2)*csys_Multiplier(.@vartp)+1; + .@bonus=rand(1, (.@lv+.@lv2)/2+1)*csys_Multiplier(.@vartp)+1; setitemoptionbyindex(.@id, .@slot, .@vartp, .@bonus); //debugmes "Bonus applied: %d at %d (slot: %d)", .@vartp, .@bonus, .@slot; .@slot+=1; @@ -410,7 +420,7 @@ function script csys_Apply { // Apply a bonus using array_pop (it was shuffled so we're fine) // A pity 1 str and 1 hp is so different. .@vartp=array_pop(@csys_penalty); - .@bonus=rand(1, .@lv+.@lv2)*csys_Multiplier(.@vartp)+1; + .@bonus=rand(1, (.@lv+.@lv2)/2+1)*csys_Multiplier(.@vartp)+1; setitemoptionbyindex(.@id, .@slot, .@vartp, .@bonus); .@slot+=1; .@slt+=1; |