浏览代码

4th Improvement - Biolo (#7711)

munkrej 2 年之前
父节点
当前提交
287501d665
共有 3 个文件被更改,包括 39 次插入24 次删除
  1. 27 13
      db/re/skill_db.yml
  2. 9 8
      src/map/battle.cpp
  3. 3 3
      src/map/status.cpp

+ 27 - 13
db/re/skill_db.yml

@@ -39436,7 +39436,7 @@ Body:
       Splash: true
     Range: 7
     Hit: Multi_Hit
-    HitCount: -3
+    HitCount: 5
     Element: Water
     SplashArea:
       - Level: 1
@@ -39464,7 +39464,7 @@ Body:
     CastTime: 1000
     AfterCastActDelay: 500
     Duration1: 10000
-    Cooldown: 2000
+    Cooldown: 1000
     FixedCastTime: 500
     Requires:
       SpCost:
@@ -39498,7 +39498,7 @@ Body:
       Splash: true
     Range: 7
     Hit: Multi_Hit
-    HitCount: -3
+    HitCount: 5
     Element: Earth
     SplashArea:
       - Level: 1
@@ -39526,7 +39526,7 @@ Body:
     CastTime: 1000
     AfterCastActDelay: 500
     Duration1: 10000
-    Cooldown: 2000
+    Cooldown: 1000
     FixedCastTime: 500
     Requires:
       SpCost:
@@ -39560,7 +39560,7 @@ Body:
       Splash: true
     Range: 7
     Hit: Multi_Hit
-    HitCount: -3
+    HitCount: 5
     Element: Wind
     SplashArea:
       - Level: 1
@@ -39588,7 +39588,7 @@ Body:
     CastTime: 1000
     AfterCastActDelay: 500
     Duration1: 10000
-    Cooldown: 2000
+    Cooldown: 1000
     FixedCastTime: 500
     Requires:
       SpCost:
@@ -39622,7 +39622,7 @@ Body:
       Splash: true
     Range: 7
     Hit: Multi_Hit
-    HitCount: -3
+    HitCount: 5
     Element: Fire
     SplashArea:
       - Level: 1
@@ -39650,7 +39650,7 @@ Body:
     CastTime: 1000
     AfterCastActDelay: 500
     Duration1: 10000
-    Cooldown: 2000
+    Cooldown: 1000
     FixedCastTime: 500
     Requires:
       SpCost:
@@ -39686,6 +39686,7 @@ Body:
     ActiveInstance: 1
     GiveAp: 20
     CastCancel: true
+    CastTime: 1000
     AfterCastActDelay: 500
     Duration1:
       - Level: 1
@@ -39699,7 +39700,7 @@ Body:
       - Level: 5
         Time: 360000
     Cooldown: 30000
-    FixedCastTime: 4000
+    FixedCastTime: 1000
     Requires:
       SpCost:
         - Level: 1
@@ -39728,6 +39729,7 @@ Body:
     ActiveInstance: 1
     GiveAp: 20
     CastCancel: true
+    CastTime: 1000
     AfterCastActDelay: 500
     Duration1:
       - Level: 1
@@ -39741,7 +39743,7 @@ Body:
       - Level: 5
         Time: 360000
     Cooldown: 30000
-    FixedCastTime: 4000
+    FixedCastTime: 1000
     Requires:
       SpCost:
         - Level: 1
@@ -39770,6 +39772,7 @@ Body:
     ActiveInstance: 1
     GiveAp: 10
     CastCancel: true
+    CastTime: 1000
     AfterCastActDelay: 500
     Duration1:
       - Level: 1
@@ -39783,7 +39786,7 @@ Body:
       - Level: 5
         Time: 360000
     Cooldown: 30000
-    FixedCastTime: 4000
+    FixedCastTime: 1000
     Requires:
       SpCost:
         - Level: 1
@@ -39830,6 +39833,7 @@ Body:
     HitCount: 1
     ActiveInstance: 1
     CastCancel: true
+    CastTime: 1000
     AfterCastActDelay: 500
     Duration1:
       - Level: 1
@@ -39843,10 +39847,20 @@ Body:
       - Level: 5
         Time: 180000
     Cooldown: 60000
-    FixedCastTime: 4000
+    FixedCastTime: 1000
     Requires:
       SpCost: 100
-      ApCost: 100
+      ApCost:
+        - Level: 1
+          Amount: 100
+        - Level: 2
+          Amount: 90
+        - Level: 3
+          Amount: 80
+        - Level: 4
+          Amount: 70
+        - Level: 5
+          Amount: 60
       ItemCost:
         - Item: High_Plant_Bottle
           Amount: 3

+ 9 - 8
src/map/battle.cpp

@@ -2577,6 +2577,10 @@ static int battle_range_type(struct block_list *src, struct block_list *target,
 		// Renewal changes to ranged physical damage
 #endif
 		case SR_RAMPAGEBLASTER:
+		case BO_ACIDIFIED_ZONE_WATER_ATK:
+		case BO_ACIDIFIED_ZONE_FIRE_ATK:
+		case BO_ACIDIFIED_ZONE_GROUND_ATK:
+		case BO_ACIDIFIED_ZONE_WIND_ATK:
 			return BF_LONG;
 		case NJ_KIRIKAGE: // Cast range mimics NJ_SHADOWJUMP but damage is considered melee
 		case GC_CROSSIMPACT: // Cast range is 7 cells and player jumps to target but skill is considered melee
@@ -5582,19 +5586,16 @@ static int battle_calc_attack_skill_ratio(struct Damage* wd, struct block_list *
 		case BO_ACIDIFIED_ZONE_GROUND_ATK:
 		case BO_ACIDIFIED_ZONE_WIND_ATK:
 		case BO_ACIDIFIED_ZONE_FIRE_ATK:
-			skillratio += -100 + 250 * skill_lv + 5 * sstatus->pow;
-			RE_LVL_DMOD(100);
-			if (sc && sc->getSCE(SC_RESEARCHREPORT)) { // Does this also affect skills like acid demo? [Rytech]
+			skillratio += -100 + 400 * skill_lv + 5 * sstatus->pow;
+
+			if( sc != nullptr && sc->getSCE( SC_RESEARCHREPORT ) ){
 				skillratio += skillratio * 50 / 100;
 
 				if (tstatus->race == RC_FORMLESS || tstatus->race == RC_PLANT)
 					skillratio += skillratio * 50 / 100;
-
-				// Skill description is sounding a bit too crazy.
-				// I need more info on this before allowing this part to work to avoid overpowered issues. [Rytech]
-				//skillratio += 5 * sstatus->pow;
-				//RE_LVL_DMOD(100);
 			}
+
+			RE_LVL_DMOD(100);
 			break;
 		case TR_ROSEBLOSSOM:
 		case TR_ROSEBLOSSOM_ATK:// Same damage formula? [Rytech]

+ 3 - 3
src/map/status.cpp

@@ -2899,10 +2899,10 @@ int status_calc_mob_(struct mob_data* md, uint8 opt)
 						// Its unknown how the summoner's stats affects the bionic's stats.
 						// I decided to do something similar to elementals for now until I know.
 						// Also added hit increase from Bionic-Mastery for balance reasons. [Rytech]
-						status->max_hp = (5000 + 2000 * bionic_mastery) * mstatus->vit / 100;
+						status->max_hp = (5000 + 40000 * bionic_mastery) * mstatus->vit / 100;
 						//status->max_sp = (50 + 20 * bionic_mastery) * mstatus->int_ / 100;// Wait what??? Bionic Mastery increases MaxSP? They have SP???
-						status->rhw.atk = (2 * mstatus->batk + 200 * bionic_mastery) * 70 / 100;
-						status->rhw.atk2 = 2 * mstatus->batk + 200 * bionic_mastery;
+						status->rhw.atk = (2 * mstatus->batk + 600 * bionic_mastery) * 70 / 100;
+						status->rhw.atk2 = 2 * mstatus->batk + 600 * bionic_mastery;
 						status->def = mstatus->def + 20 * bionic_mastery;
 						status->mdef = mstatus->mdef + 4 * bionic_mastery;
 						status->hit = mstatus->hit + 5 * bionic_mastery / 2;