From 58bd79e5404433c51f6ac5f6949b2dc33551d075 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Tue, 28 May 2019 22:53:26 -0300 Subject: Change item bonuses rules, so it gives half on base stats/drain/double. --- npc/craft/options.txt | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) (limited to 'npc/craft') 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; -- cgit v1.2.3-60-g2f50