Fixes issue with power skills (#4751)
* Fixes #4743. * Resolves an issue with power skills and default data defined in the skill's array. * Adds back linear determination and documentation for it. * Adds a check in the converter to not print out values of 0 for levels 6 and higher for skill unit layout and skill unit range. * Removes these values from the skill database. Thanks to @Surefirer and @teededung!
This commit is contained in:
parent
c94bae7359
commit
af8dd8b28d
@ -1249,10 +1249,6 @@ Body:
|
|||||||
Size: 2
|
Size: 2
|
||||||
- Level: 11
|
- Level: 11
|
||||||
Size: 3
|
Size: 3
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 1000
|
Interval: 1000
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -3321,10 +3317,6 @@ Body:
|
|||||||
Size: 5
|
Size: 5
|
||||||
- Level: 11
|
- Level: 11
|
||||||
Size: 7
|
Size: 7
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Range: 1
|
Range: 1
|
||||||
Interval: 1250
|
Interval: 1250
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
@ -3416,12 +3408,6 @@ Body:
|
|||||||
Size: 2
|
Size: 2
|
||||||
- Level: 10
|
- Level: 10
|
||||||
Size: 2
|
Size: 2
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: -1
|
Interval: -1
|
||||||
Flag:
|
Flag:
|
||||||
PathCheck: true
|
PathCheck: true
|
||||||
@ -7852,22 +7838,6 @@ Body:
|
|||||||
Size: 4
|
Size: 4
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 5
|
Size: 5
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: -1
|
Interval: -1
|
||||||
Flag:
|
Flag:
|
||||||
PathCheck: true
|
PathCheck: true
|
||||||
@ -14944,12 +14914,6 @@ Body:
|
|||||||
Size: 3
|
Size: 3
|
||||||
- Level: 10
|
- Level: 10
|
||||||
Size: 4
|
Size: 4
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: -1
|
Interval: -1
|
||||||
Flag:
|
Flag:
|
||||||
PathCheck: true
|
PathCheck: true
|
||||||
@ -15138,22 +15102,6 @@ Body:
|
|||||||
Size: 3
|
Size: 3
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 4
|
Size: 4
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 1000
|
Interval: 1000
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -15764,12 +15712,6 @@ Body:
|
|||||||
Size: 5
|
Size: 5
|
||||||
- Level: 10
|
- Level: 10
|
||||||
Size: 13
|
Size: 13
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 1000
|
Interval: 1000
|
||||||
Flag:
|
Flag:
|
||||||
NoOverlap: true
|
NoOverlap: true
|
||||||
@ -25536,22 +25478,6 @@ Body:
|
|||||||
Size: 4
|
Size: 4
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 4
|
Size: 4
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 1000
|
Interval: 1000
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -25621,22 +25547,6 @@ Body:
|
|||||||
Size: 4
|
Size: 4
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 4
|
Size: 4
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 1000
|
Interval: 1000
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -25756,22 +25666,6 @@ Body:
|
|||||||
Size: 4
|
Size: 4
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 5
|
Size: 5
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 500
|
Interval: 500
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -26007,22 +25901,6 @@ Body:
|
|||||||
Size: 2
|
Size: 2
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 3
|
Size: 3
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 500
|
Interval: 500
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -27687,22 +27565,6 @@ Body:
|
|||||||
Size: 3
|
Size: 3
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 3
|
Size: 3
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 500
|
Interval: 500
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -28710,12 +28572,6 @@ Body:
|
|||||||
Size: 1
|
Size: 1
|
||||||
- Level: 10
|
- Level: 10
|
||||||
Size: 2
|
Size: 2
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 1000
|
Interval: 1000
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -30986,22 +30842,6 @@ Body:
|
|||||||
Size: 3
|
Size: 3
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 4
|
Size: 4
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 1000
|
Interval: 1000
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -31602,22 +31442,6 @@ Body:
|
|||||||
Size: 2
|
Size: 2
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 3
|
Size: 3
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 2000
|
Interval: 2000
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
|
@ -1260,10 +1260,6 @@ Body:
|
|||||||
Size: 2
|
Size: 2
|
||||||
- Level: 11
|
- Level: 11
|
||||||
Size: 3
|
Size: 3
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 1000
|
Interval: 1000
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -3466,10 +3462,6 @@ Body:
|
|||||||
Size: 6
|
Size: 6
|
||||||
- Level: 11
|
- Level: 11
|
||||||
Size: 7
|
Size: 7
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Range: 1
|
Range: 1
|
||||||
Interval: 1250
|
Interval: 1250
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
@ -3562,12 +3554,6 @@ Body:
|
|||||||
Size: 2
|
Size: 2
|
||||||
- Level: 10
|
- Level: 10
|
||||||
Size: 2
|
Size: 2
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: -1
|
Interval: -1
|
||||||
Flag:
|
Flag:
|
||||||
PathCheck: true
|
PathCheck: true
|
||||||
@ -8255,22 +8241,6 @@ Body:
|
|||||||
Size: 4
|
Size: 4
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 5
|
Size: 5
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: -1
|
Interval: -1
|
||||||
Flag:
|
Flag:
|
||||||
PathCheck: true
|
PathCheck: true
|
||||||
@ -15368,12 +15338,6 @@ Body:
|
|||||||
Size: 3
|
Size: 3
|
||||||
- Level: 10
|
- Level: 10
|
||||||
Size: 4
|
Size: 4
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: -1
|
Interval: -1
|
||||||
Flag:
|
Flag:
|
||||||
PathCheck: true
|
PathCheck: true
|
||||||
@ -15586,22 +15550,6 @@ Body:
|
|||||||
Size: 2
|
Size: 2
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 3
|
Size: 3
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 1000
|
Interval: 1000
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -16233,12 +16181,6 @@ Body:
|
|||||||
Size: 5
|
Size: 5
|
||||||
- Level: 10
|
- Level: 10
|
||||||
Size: 13
|
Size: 13
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 1000
|
Interval: 1000
|
||||||
Flag:
|
Flag:
|
||||||
NoOverlap: true
|
NoOverlap: true
|
||||||
@ -26494,22 +26436,6 @@ Body:
|
|||||||
Size: 4
|
Size: 4
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 4
|
Size: 4
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 1000
|
Interval: 1000
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -26590,22 +26516,6 @@ Body:
|
|||||||
Size: 4
|
Size: 4
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 4
|
Size: 4
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 1000
|
Interval: 1000
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -26747,22 +26657,6 @@ Body:
|
|||||||
Size: 4
|
Size: 4
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 5
|
Size: 5
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 500
|
Interval: 500
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -27022,22 +26916,6 @@ Body:
|
|||||||
Size: 2
|
Size: 2
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 3
|
Size: 3
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 500
|
Interval: 500
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -28767,22 +28645,6 @@ Body:
|
|||||||
Size: 3
|
Size: 3
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 3
|
Size: 3
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 500
|
Interval: 500
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -30811,12 +30673,6 @@ Body:
|
|||||||
Size: 1
|
Size: 1
|
||||||
- Level: 10
|
- Level: 10
|
||||||
Size: 2
|
Size: 2
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: 1000
|
Interval: 1000
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -32393,22 +32249,6 @@ Body:
|
|||||||
Size: 2
|
Size: 2
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 3
|
Size: 3
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: -1
|
Interval: -1
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
@ -33077,22 +32917,6 @@ Body:
|
|||||||
Size: 3
|
Size: 3
|
||||||
- Level: 5
|
- Level: 5
|
||||||
Size: 4
|
Size: 4
|
||||||
- Level: 6
|
|
||||||
Size: 0
|
|
||||||
- Level: 7
|
|
||||||
Size: 0
|
|
||||||
- Level: 8
|
|
||||||
Size: 0
|
|
||||||
- Level: 9
|
|
||||||
Size: 0
|
|
||||||
- Level: 10
|
|
||||||
Size: 0
|
|
||||||
- Level: 11
|
|
||||||
Size: 0
|
|
||||||
- Level: 12
|
|
||||||
Size: 0
|
|
||||||
- Level: 13
|
|
||||||
Size: 0
|
|
||||||
Interval: -1
|
Interval: -1
|
||||||
Target: Enemy
|
Target: Enemy
|
||||||
Flag:
|
Flag:
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
//===== By: ==================================================
|
//===== By: ==================================================
|
||||||
//= rAthena Dev Team
|
//= rAthena Dev Team
|
||||||
//===== Last Updated: ========================================
|
//===== Last Updated: ========================================
|
||||||
//= 20160213
|
//= 20200104
|
||||||
//===== Description: =========================================
|
//===== Description: =========================================
|
||||||
//= Reference for monster level 10 skills.
|
//= Reference for monster level 10 skills.
|
||||||
//============================================================
|
//============================================================
|
||||||
@ -12,7 +12,12 @@ When a monster uses a level 10 skill on Aegis, it will be much stronger than the
|
|||||||
normal player version. On rAthena we reflect this by giving the monster a skill
|
normal player version. On rAthena we reflect this by giving the monster a skill
|
||||||
level above the maximum player level.
|
level above the maximum player level.
|
||||||
The following lists explains the skill specialities and the corresponding level
|
The following lists explains the skill specialities and the corresponding level
|
||||||
you need to put for these skills in the mob_skill_db.
|
which needs to be put for these skills in the mob_skill_db.
|
||||||
|
|
||||||
|
Note: The "SkillDatabase::parseNode" template has a linear determination feature
|
||||||
|
where it will attempt to fill the values from the last level defined to MAX_SKILL_LEVEL.
|
||||||
|
If it can't determine a trend it will fill with the last level defined.
|
||||||
|
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
Skill | rAthena Lv | Explanation
|
Skill | rAthena Lv | Explanation
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
|
@ -21707,6 +21707,8 @@ template<typename T, size_t S> bool SkillDatabase::parseNode(std::string nodeNam
|
|||||||
for (size_t i = 0; i < S; i++)
|
for (size_t i = 0; i < S; i++)
|
||||||
arr[i] = value;
|
arr[i] = value;
|
||||||
} else {
|
} else {
|
||||||
|
uint16 max_level = 0;
|
||||||
|
|
||||||
for (const YAML::Node &it : node[nodeName]) {
|
for (const YAML::Node &it : node[nodeName]) {
|
||||||
uint16 skill_lv;
|
uint16 skill_lv;
|
||||||
|
|
||||||
@ -21722,7 +21724,39 @@ template<typename T, size_t S> bool SkillDatabase::parseNode(std::string nodeNam
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
arr[skill_lv - 1] = value;
|
arr[skill_lv - 1] = value;
|
||||||
|
max_level = max(max_level, skill_lv);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
size_t i = max_level, j;
|
||||||
|
|
||||||
|
// Check for linear change with increasing steps until we reach half of the data acquired.
|
||||||
|
for (size_t step = 1; step <= i / 2; step++) {
|
||||||
|
int diff = arr[i - 1] - arr[i - step - 1];
|
||||||
|
|
||||||
|
for (j = i - 1; j >= step; j--) {
|
||||||
|
if ((arr[j] - arr[j - step]) != diff)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (j >= step) // No match, try next step.
|
||||||
|
continue;
|
||||||
|
|
||||||
|
for (; i < MAX_SKILL_LEVEL; i++) { // Apply linear increase
|
||||||
|
arr[i] = arr[i - step] + diff;
|
||||||
|
|
||||||
|
if (arr[i] < 1 && arr[i - 1] >= 0) { // Check if we have switched from + to -, cap the decrease to 0 in said cases.
|
||||||
|
arr[i] = 1;
|
||||||
|
diff = 0;
|
||||||
|
step = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Unable to determine linear trend, fill remaining array values with last value
|
||||||
|
for (; i < S; i++)
|
||||||
|
arr[i] = arr[max_level - 1];
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
@ -2297,6 +2297,8 @@ static bool skill_parse_row_skilldb(char* split[], int columns, int current) {
|
|||||||
body << YAML::BeginSeq;
|
body << YAML::BeginSeq;
|
||||||
|
|
||||||
for (size_t i = 0; i < ARRAYLENGTH(it_unit->second.unit_layout_type); i++) {
|
for (size_t i = 0; i < ARRAYLENGTH(it_unit->second.unit_layout_type); i++) {
|
||||||
|
if (it_unit->second.unit_layout_type[i] == 0 && i + 1 > 5)
|
||||||
|
continue;
|
||||||
body << YAML::BeginMap;
|
body << YAML::BeginMap;
|
||||||
body << YAML::Key << "Level" << YAML::Value << i + 1;
|
body << YAML::Key << "Level" << YAML::Value << i + 1;
|
||||||
body << YAML::Key << "Size" << YAML::Value << it_unit->second.unit_layout_type[i];
|
body << YAML::Key << "Size" << YAML::Value << it_unit->second.unit_layout_type[i];
|
||||||
@ -2314,6 +2316,8 @@ static bool skill_parse_row_skilldb(char* split[], int columns, int current) {
|
|||||||
body << YAML::BeginSeq;
|
body << YAML::BeginSeq;
|
||||||
|
|
||||||
for (size_t i = 0; i < ARRAYLENGTH(it_unit->second.unit_range); i++) {
|
for (size_t i = 0; i < ARRAYLENGTH(it_unit->second.unit_range); i++) {
|
||||||
|
if (it_unit->second.unit_range[i] == 0 && i + 1 > 5)
|
||||||
|
continue;
|
||||||
body << YAML::BeginMap;
|
body << YAML::BeginMap;
|
||||||
body << YAML::Key << "Level" << YAML::Value << i + 1;
|
body << YAML::Key << "Level" << YAML::Value << i + 1;
|
||||||
body << YAML::Key << "Size" << YAML::Value << it_unit->second.unit_range[i];
|
body << YAML::Key << "Size" << YAML::Value << it_unit->second.unit_range[i];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user