forked from PathOfBuildingCommunity/PathOfBuilding
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsup_dex.lua
4491 lines (4490 loc) · 304 KB
/
sup_dex.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
-- This file is automatically generated, do not edit!
-- Path of Building
--
-- Dexterity support gems
-- Skill data (c) Grinding Gear Games
--
local skills, mod, flag, skill = ...
skills["SupportAddedColdDamage"] = {
name = "Added Cold Damage",
description = "Supports any skill that hits enemies.",
color = 2,
baseEffectiveness = 0.58050000667572,
incrementalEffectiveness = 0.035900000482798,
support = true,
requireSkillTypes = { SkillType.Attack, SkillType.Damage, },
addSkillTypes = { },
excludeSkillTypes = { },
statDescriptionScope = "gem_stat_descriptions",
qualityStats = {
Default = {
{ "cold_damage_+%", 0.5 },
},
},
stats = {
"global_minimum_added_cold_damage",
"global_maximum_added_cold_damage",
},
levels = {
[1] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 8, statInterpolation = { 3, 3, }, },
[2] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 10, statInterpolation = { 3, 3, }, },
[3] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 13, statInterpolation = { 3, 3, }, },
[4] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 17, statInterpolation = { 3, 3, }, },
[5] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 21, statInterpolation = { 3, 3, }, },
[6] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 25, statInterpolation = { 3, 3, }, },
[7] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 29, statInterpolation = { 3, 3, }, },
[8] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 33, statInterpolation = { 3, 3, }, },
[9] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 37, statInterpolation = { 3, 3, }, },
[10] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 40, statInterpolation = { 3, 3, }, },
[11] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 43, statInterpolation = { 3, 3, }, },
[12] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 46, statInterpolation = { 3, 3, }, },
[13] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 49, statInterpolation = { 3, 3, }, },
[14] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 52, statInterpolation = { 3, 3, }, },
[15] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 55, statInterpolation = { 3, 3, }, },
[16] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 58, statInterpolation = { 3, 3, }, },
[17] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 61, statInterpolation = { 3, 3, }, },
[18] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 64, statInterpolation = { 3, 3, }, },
[19] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 67, statInterpolation = { 3, 3, }, },
[20] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 70, statInterpolation = { 3, 3, }, },
[21] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 72, statInterpolation = { 3, 3, }, },
[22] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 74, statInterpolation = { 3, 3, }, },
[23] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 76, statInterpolation = { 3, 3, }, },
[24] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 78, statInterpolation = { 3, 3, }, },
[25] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 80, statInterpolation = { 3, 3, }, },
[26] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 82, statInterpolation = { 3, 3, }, },
[27] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 84, statInterpolation = { 3, 3, }, },
[28] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 86, statInterpolation = { 3, 3, }, },
[29] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 88, statInterpolation = { 3, 3, }, },
[30] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 90, statInterpolation = { 3, 3, }, },
[31] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 91, statInterpolation = { 3, 3, }, },
[32] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 92, statInterpolation = { 3, 3, }, },
[33] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 93, statInterpolation = { 3, 3, }, },
[34] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 94, statInterpolation = { 3, 3, }, },
[35] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 95, statInterpolation = { 3, 3, }, },
[36] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 96, statInterpolation = { 3, 3, }, },
[37] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 97, statInterpolation = { 3, 3, }, },
[38] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 98, statInterpolation = { 3, 3, }, },
[39] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 99, statInterpolation = { 3, 3, }, },
[40] = { 0.80000001192093, 1.2000000476837, manaMultiplier = 20, levelRequirement = 100, statInterpolation = { 3, 3, }, },
},
}
skills["SupportAwakenedAddedColdDamage"] = {
name = "Awakened Added Cold Damage",
description = "Supports any skill that hits enemies.",
color = 2,
baseEffectiveness = 5.1399998664856,
incrementalEffectiveness = 0.0043999999761581,
support = true,
requireSkillTypes = { SkillType.Attack, SkillType.Damage, },
addSkillTypes = { },
excludeSkillTypes = { },
plusVersionOf = "SupportAddedColdDamage",
statDescriptionScope = "gem_stat_descriptions",
qualityStats = {
Default = {
{ "cold_damage_+%", 0.5 },
},
},
stats = {
"global_minimum_added_cold_damage",
"global_maximum_added_cold_damage",
"supported_cold_skill_gem_level_+",
},
levels = {
[1] = { 0.80000001192093, 1.2000000476837, 0, manaMultiplier = 20, levelRequirement = 72, statInterpolation = { 3, 3, 1, }, },
[2] = { 0.80000001192093, 1.2000000476837, 0, manaMultiplier = 20, levelRequirement = 74, statInterpolation = { 3, 3, 1, }, },
[3] = { 0.80000001192093, 1.2000000476837, 0, manaMultiplier = 20, levelRequirement = 76, statInterpolation = { 3, 3, 1, }, },
[4] = { 0.80000001192093, 1.2000000476837, 0, manaMultiplier = 20, levelRequirement = 78, statInterpolation = { 3, 3, 1, }, },
[5] = { 0.80000001192093, 1.2000000476837, 1, manaMultiplier = 20, levelRequirement = 80, statInterpolation = { 3, 3, 1, }, },
[6] = { 0.80000001192093, 1.2000000476837, 1, manaMultiplier = 20, levelRequirement = 82, statInterpolation = { 3, 3, 1, }, },
[7] = { 0.80000001192093, 1.2000000476837, 1, manaMultiplier = 20, levelRequirement = 84, statInterpolation = { 3, 3, 1, }, },
[8] = { 0.80000001192093, 1.2000000476837, 1, manaMultiplier = 20, levelRequirement = 86, statInterpolation = { 3, 3, 1, }, },
[9] = { 0.80000001192093, 1.2000000476837, 1, manaMultiplier = 20, levelRequirement = 88, statInterpolation = { 3, 3, 1, }, },
[10] = { 0.80000001192093, 1.2000000476837, 2, manaMultiplier = 20, levelRequirement = 90, statInterpolation = { 3, 3, 1, }, },
[11] = { 0.80000001192093, 1.2000000476837, 2, manaMultiplier = 20, levelRequirement = 91, statInterpolation = { 3, 3, 1, }, },
[12] = { 0.80000001192093, 1.2000000476837, 2, manaMultiplier = 20, levelRequirement = 92, statInterpolation = { 3, 3, 1, }, },
[13] = { 0.80000001192093, 1.2000000476837, 2, manaMultiplier = 20, levelRequirement = 93, statInterpolation = { 3, 3, 1, }, },
[14] = { 0.80000001192093, 1.2000000476837, 2, manaMultiplier = 20, levelRequirement = 94, statInterpolation = { 3, 3, 1, }, },
[15] = { 0.80000001192093, 1.2000000476837, 3, manaMultiplier = 20, levelRequirement = 95, statInterpolation = { 3, 3, 1, }, },
[16] = { 0.80000001192093, 1.2000000476837, 3, manaMultiplier = 20, levelRequirement = 96, statInterpolation = { 3, 3, 1, }, },
[17] = { 0.80000001192093, 1.2000000476837, 3, manaMultiplier = 20, levelRequirement = 97, statInterpolation = { 3, 3, 1, }, },
[18] = { 0.80000001192093, 1.2000000476837, 3, manaMultiplier = 20, levelRequirement = 98, statInterpolation = { 3, 3, 1, }, },
[19] = { 0.80000001192093, 1.2000000476837, 3, manaMultiplier = 20, levelRequirement = 99, statInterpolation = { 3, 3, 1, }, },
[20] = { 0.80000001192093, 1.2000000476837, 4, manaMultiplier = 20, levelRequirement = 100, statInterpolation = { 3, 3, 1, }, },
},
}
skills["SupportAdditionalAccuracy"] = {
name = "Additional Accuracy",
description = "Supports attack skills.",
color = 2,
baseEffectiveness = 0,
support = true,
requireSkillTypes = { SkillType.Attack, SkillType.ThresholdJewelRangedAttack, },
addSkillTypes = { },
excludeSkillTypes = { },
statDescriptionScope = "gem_stat_descriptions",
qualityStats = {
Default = {
{ "accuracy_rating_+%", 1 },
},
},
stats = {
"accuracy_rating",
},
levels = {
[1] = { 74, manaMultiplier = 10, levelRequirement = 8, statInterpolation = { 1, }, },
[2] = { 100, manaMultiplier = 10, levelRequirement = 10, statInterpolation = { 1, }, },
[3] = { 127, manaMultiplier = 10, levelRequirement = 13, statInterpolation = { 1, }, },
[4] = { 157, manaMultiplier = 10, levelRequirement = 17, statInterpolation = { 1, }, },
[5] = { 190, manaMultiplier = 10, levelRequirement = 21, statInterpolation = { 1, }, },
[6] = { 230, manaMultiplier = 10, levelRequirement = 25, statInterpolation = { 1, }, },
[7] = { 290, manaMultiplier = 10, levelRequirement = 29, statInterpolation = { 1, }, },
[8] = { 350, manaMultiplier = 10, levelRequirement = 33, statInterpolation = { 1, }, },
[9] = { 400, manaMultiplier = 10, levelRequirement = 37, statInterpolation = { 1, }, },
[10] = { 453, manaMultiplier = 10, levelRequirement = 40, statInterpolation = { 1, }, },
[11] = { 528, manaMultiplier = 10, levelRequirement = 43, statInterpolation = { 1, }, },
[12] = { 586, manaMultiplier = 10, levelRequirement = 46, statInterpolation = { 1, }, },
[13] = { 645, manaMultiplier = 10, levelRequirement = 49, statInterpolation = { 1, }, },
[14] = { 707, manaMultiplier = 10, levelRequirement = 52, statInterpolation = { 1, }, },
[15] = { 772, manaMultiplier = 10, levelRequirement = 55, statInterpolation = { 1, }, },
[16] = { 840, manaMultiplier = 10, levelRequirement = 58, statInterpolation = { 1, }, },
[17] = { 887, manaMultiplier = 10, levelRequirement = 61, statInterpolation = { 1, }, },
[18] = { 934, manaMultiplier = 10, levelRequirement = 64, statInterpolation = { 1, }, },
[19] = { 983, manaMultiplier = 10, levelRequirement = 67, statInterpolation = { 1, }, },
[20] = { 1034, manaMultiplier = 10, levelRequirement = 70, statInterpolation = { 1, }, },
[21] = { 1085, manaMultiplier = 10, levelRequirement = 72, statInterpolation = { 1, }, },
[22] = { 1138, manaMultiplier = 10, levelRequirement = 74, statInterpolation = { 1, }, },
[23] = { 1191, manaMultiplier = 10, levelRequirement = 76, statInterpolation = { 1, }, },
[24] = { 1246, manaMultiplier = 10, levelRequirement = 78, statInterpolation = { 1, }, },
[25] = { 1301, manaMultiplier = 10, levelRequirement = 80, statInterpolation = { 1, }, },
[26] = { 1358, manaMultiplier = 10, levelRequirement = 82, statInterpolation = { 1, }, },
[27] = { 1415, manaMultiplier = 10, levelRequirement = 84, statInterpolation = { 1, }, },
[28] = { 1474, manaMultiplier = 10, levelRequirement = 86, statInterpolation = { 1, }, },
[29] = { 1533, manaMultiplier = 10, levelRequirement = 88, statInterpolation = { 1, }, },
[30] = { 1594, manaMultiplier = 10, levelRequirement = 90, statInterpolation = { 1, }, },
[31] = { 1625, manaMultiplier = 10, levelRequirement = 91, statInterpolation = { 1, }, },
[32] = { 1655, manaMultiplier = 10, levelRequirement = 92, statInterpolation = { 1, }, },
[33] = { 1687, manaMultiplier = 10, levelRequirement = 93, statInterpolation = { 1, }, },
[34] = { 1718, manaMultiplier = 10, levelRequirement = 94, statInterpolation = { 1, }, },
[35] = { 1750, manaMultiplier = 10, levelRequirement = 95, statInterpolation = { 1, }, },
[36] = { 1781, manaMultiplier = 10, levelRequirement = 96, statInterpolation = { 1, }, },
[37] = { 1814, manaMultiplier = 10, levelRequirement = 97, statInterpolation = { 1, }, },
[38] = { 1846, manaMultiplier = 10, levelRequirement = 98, statInterpolation = { 1, }, },
[39] = { 1879, manaMultiplier = 10, levelRequirement = 99, statInterpolation = { 1, }, },
[40] = { 1911, manaMultiplier = 10, levelRequirement = 100, statInterpolation = { 1, }, },
},
}
skills["SupportArrowNova"] = {
name = "Arrow Nova",
description = "Supports bow attack skills that fire arrows forwards as projectiles. These skills will instead fire a payload arrow into the air to land at a targeted location. The supported skills' arrows will then fire out in a circle from where it lands. Cannot support skills that already fire arrows into the air, channelled skills, or skills that create Minions.",
color = 2,
baseEffectiveness = 0,
support = true,
requireSkillTypes = { SkillType.Projectile, SkillType.ThresholdJewelProjectile, SkillType.OR, SkillType.RangedAttack, SkillType.ThresholdJewelRangedAttack, SkillType.OR, SkillType.AND, SkillType.ProjectilesFromUser, SkillType.AND, },
addSkillTypes = { SkillType.Rain, },
excludeSkillTypes = { SkillType.Channel, SkillType.CreatesMinion, SkillType.ProjectilesNotFromUser, SkillType.ProjectilesNotFired, },
ignoreMinionTypes = true,
weaponTypes = {
["Bow"] = true,
},
statDescriptionScope = "gem_stat_descriptions",
statMap = {
["support_rain_projectile_damage_+%_final"] = {
mod("Damage", "MORE", nil, ModFlag.Projectile),
},
},
qualityStats = {
Default = {
{ "projectile_damage_+%", 0.5 },
},
},
constantStats = {
{ "number_of_additional_projectiles", 4 },
},
stats = {
"support_rain_projectile_damage_+%_final",
"projectiles_nova",
"projectiles_rain",
"skill_can_only_use_bow",
"skill_is_rain_skill",
},
levels = {
[1] = { -30, PvPDamageMultiplier = -25, levelRequirement = 8, manaMultiplier = 50, statInterpolation = { 1, }, },
[2] = { -29, PvPDamageMultiplier = -25, levelRequirement = 10, manaMultiplier = 50, statInterpolation = { 1, }, },
[3] = { -29, PvPDamageMultiplier = -25, levelRequirement = 13, manaMultiplier = 50, statInterpolation = { 1, }, },
[4] = { -28, PvPDamageMultiplier = -25, levelRequirement = 17, manaMultiplier = 50, statInterpolation = { 1, }, },
[5] = { -27, PvPDamageMultiplier = -25, levelRequirement = 21, manaMultiplier = 50, statInterpolation = { 1, }, },
[6] = { -26, PvPDamageMultiplier = -25, levelRequirement = 25, manaMultiplier = 50, statInterpolation = { 1, }, },
[7] = { -26, PvPDamageMultiplier = -25, levelRequirement = 29, manaMultiplier = 50, statInterpolation = { 1, }, },
[8] = { -25, PvPDamageMultiplier = -25, levelRequirement = 33, manaMultiplier = 50, statInterpolation = { 1, }, },
[9] = { -24, PvPDamageMultiplier = -25, levelRequirement = 37, manaMultiplier = 50, statInterpolation = { 1, }, },
[10] = { -23, PvPDamageMultiplier = -25, levelRequirement = 40, manaMultiplier = 50, statInterpolation = { 1, }, },
[11] = { -23, PvPDamageMultiplier = -25, levelRequirement = 43, manaMultiplier = 50, statInterpolation = { 1, }, },
[12] = { -22, PvPDamageMultiplier = -25, levelRequirement = 46, manaMultiplier = 50, statInterpolation = { 1, }, },
[13] = { -21, PvPDamageMultiplier = -25, levelRequirement = 49, manaMultiplier = 50, statInterpolation = { 1, }, },
[14] = { -20, PvPDamageMultiplier = -25, levelRequirement = 52, manaMultiplier = 50, statInterpolation = { 1, }, },
[15] = { -20, PvPDamageMultiplier = -25, levelRequirement = 55, manaMultiplier = 50, statInterpolation = { 1, }, },
[16] = { -19, PvPDamageMultiplier = -25, levelRequirement = 58, manaMultiplier = 50, statInterpolation = { 1, }, },
[17] = { -18, PvPDamageMultiplier = -25, levelRequirement = 61, manaMultiplier = 50, statInterpolation = { 1, }, },
[18] = { -17, PvPDamageMultiplier = -25, levelRequirement = 64, manaMultiplier = 50, statInterpolation = { 1, }, },
[19] = { -17, PvPDamageMultiplier = -25, levelRequirement = 67, manaMultiplier = 50, statInterpolation = { 1, }, },
[20] = { -16, PvPDamageMultiplier = -25, levelRequirement = 70, manaMultiplier = 50, statInterpolation = { 1, }, },
[21] = { -15, PvPDamageMultiplier = -25, levelRequirement = 72, manaMultiplier = 50, statInterpolation = { 1, }, },
[22] = { -15, PvPDamageMultiplier = -25, levelRequirement = 74, manaMultiplier = 50, statInterpolation = { 1, }, },
[23] = { -14, PvPDamageMultiplier = -25, levelRequirement = 76, manaMultiplier = 50, statInterpolation = { 1, }, },
[24] = { -13, PvPDamageMultiplier = -25, levelRequirement = 78, manaMultiplier = 50, statInterpolation = { 1, }, },
[25] = { -12, PvPDamageMultiplier = -25, levelRequirement = 80, manaMultiplier = 50, statInterpolation = { 1, }, },
[26] = { -12, PvPDamageMultiplier = -25, levelRequirement = 82, manaMultiplier = 50, statInterpolation = { 1, }, },
[27] = { -11, PvPDamageMultiplier = -25, levelRequirement = 84, manaMultiplier = 50, statInterpolation = { 1, }, },
[28] = { -10, PvPDamageMultiplier = -25, levelRequirement = 86, manaMultiplier = 50, statInterpolation = { 1, }, },
[29] = { -9, PvPDamageMultiplier = -25, levelRequirement = 88, manaMultiplier = 50, statInterpolation = { 1, }, },
[30] = { -9, PvPDamageMultiplier = -25, levelRequirement = 90, manaMultiplier = 50, statInterpolation = { 1, }, },
[31] = { -8, PvPDamageMultiplier = -25, levelRequirement = 91, manaMultiplier = 50, statInterpolation = { 1, }, },
[32] = { -8, PvPDamageMultiplier = -25, levelRequirement = 92, manaMultiplier = 50, statInterpolation = { 1, }, },
[33] = { -8, PvPDamageMultiplier = -25, levelRequirement = 93, manaMultiplier = 50, statInterpolation = { 1, }, },
[34] = { -7, PvPDamageMultiplier = -25, levelRequirement = 94, manaMultiplier = 50, statInterpolation = { 1, }, },
[35] = { -7, PvPDamageMultiplier = -25, levelRequirement = 95, manaMultiplier = 50, statInterpolation = { 1, }, },
[36] = { -6, PvPDamageMultiplier = -25, levelRequirement = 96, manaMultiplier = 50, statInterpolation = { 1, }, },
[37] = { -6, PvPDamageMultiplier = -25, levelRequirement = 97, manaMultiplier = 50, statInterpolation = { 1, }, },
[38] = { -6, PvPDamageMultiplier = -25, levelRequirement = 98, manaMultiplier = 50, statInterpolation = { 1, }, },
[39] = { -5, PvPDamageMultiplier = -25, levelRequirement = 99, manaMultiplier = 50, statInterpolation = { 1, }, },
[40] = { -5, PvPDamageMultiplier = -25, levelRequirement = 100, manaMultiplier = 50, statInterpolation = { 1, }, },
},
}
skills["SupportAwakenedArrowNova"] = {
name = "Awakened Arrow Nova",
description = "Supports bow attack skills that fire arrows forwards as projectiles. These skills will instead fire a payload arrow into the air to land at a targeted location. The supported skills' arrows will then fire out in a circle from where it lands. Cannot support skills that already fire arrows into the air, channelled skills, or skills that create Minions.",
color = 2,
baseEffectiveness = 0,
support = true,
requireSkillTypes = { SkillType.Projectile, SkillType.ThresholdJewelProjectile, SkillType.OR, SkillType.RangedAttack, SkillType.ThresholdJewelRangedAttack, SkillType.OR, SkillType.AND, SkillType.ProjectilesFromUser, SkillType.AND, },
addSkillTypes = { SkillType.Rain, },
excludeSkillTypes = { SkillType.Channel, SkillType.CreatesMinion, SkillType.ProjectilesNotFromUser, SkillType.ProjectilesNotFired, },
ignoreMinionTypes = true,
plusVersionOf = "SupportArrowNova",
weaponTypes = {
["Bow"] = true,
},
statDescriptionScope = "gem_stat_descriptions",
statMap = {
["support_rain_projectile_damage_+%_final"] = {
mod("Damage", "MORE", nil, ModFlag.Projectile),
},
},
qualityStats = {
Default = {
{ "projectile_damage_+%", 0.5 },
},
},
constantStats = {
{ "number_of_additional_projectiles", 5 },
},
stats = {
"support_rain_projectile_damage_+%_final",
"projectiles_nova",
"projectiles_rain",
"skill_can_only_use_bow",
"skill_is_rain_skill",
},
levels = {
[1] = { -15, PvPDamageMultiplier = -25, levelRequirement = 72, manaMultiplier = 50, statInterpolation = { 1, }, },
[2] = { -14, PvPDamageMultiplier = -25, levelRequirement = 74, manaMultiplier = 50, statInterpolation = { 1, }, },
[3] = { -13, PvPDamageMultiplier = -25, levelRequirement = 76, manaMultiplier = 50, statInterpolation = { 1, }, },
[4] = { -12, PvPDamageMultiplier = -25, levelRequirement = 78, manaMultiplier = 50, statInterpolation = { 1, }, },
[5] = { -11, PvPDamageMultiplier = -25, levelRequirement = 80, manaMultiplier = 50, statInterpolation = { 1, }, },
[6] = { -10, PvPDamageMultiplier = -25, levelRequirement = 82, manaMultiplier = 50, statInterpolation = { 1, }, },
[7] = { -10, PvPDamageMultiplier = -25, levelRequirement = 84, manaMultiplier = 50, statInterpolation = { 1, }, },
[8] = { -9, PvPDamageMultiplier = -25, levelRequirement = 86, manaMultiplier = 50, statInterpolation = { 1, }, },
[9] = { -9, PvPDamageMultiplier = -25, levelRequirement = 88, manaMultiplier = 50, statInterpolation = { 1, }, },
[10] = { -8, PvPDamageMultiplier = -25, levelRequirement = 90, manaMultiplier = 50, statInterpolation = { 1, }, },
[11] = { -8, PvPDamageMultiplier = -25, levelRequirement = 91, manaMultiplier = 50, statInterpolation = { 1, }, },
[12] = { -7, PvPDamageMultiplier = -25, levelRequirement = 92, manaMultiplier = 50, statInterpolation = { 1, }, },
[13] = { -7, PvPDamageMultiplier = -25, levelRequirement = 93, manaMultiplier = 50, statInterpolation = { 1, }, },
[14] = { -6, PvPDamageMultiplier = -25, levelRequirement = 94, manaMultiplier = 50, statInterpolation = { 1, }, },
[15] = { -6, PvPDamageMultiplier = -25, levelRequirement = 95, manaMultiplier = 50, statInterpolation = { 1, }, },
[16] = { -5, PvPDamageMultiplier = -25, levelRequirement = 96, manaMultiplier = 50, statInterpolation = { 1, }, },
[17] = { -5, PvPDamageMultiplier = -25, levelRequirement = 97, manaMultiplier = 50, statInterpolation = { 1, }, },
[18] = { -4, PvPDamageMultiplier = -25, levelRequirement = 98, manaMultiplier = 50, statInterpolation = { 1, }, },
[19] = { -4, PvPDamageMultiplier = -25, levelRequirement = 99, manaMultiplier = 50, statInterpolation = { 1, }, },
[20] = { -3, PvPDamageMultiplier = -25, levelRequirement = 100, manaMultiplier = 50, statInterpolation = { 1, }, },
},
}
skills["SupportBarrage"] = {
name = "Barrage Support",
description = "Supports projectile attack skills that use bows or wands. Cannot support triggered skills, channelled skills, or skills that create Minions.",
color = 2,
baseEffectiveness = 0,
support = true,
requireSkillTypes = { SkillType.Projectile, SkillType.ThresholdJewelProjectile, SkillType.OR, SkillType.ProjectileNumber, SkillType.OR, SkillType.RangedAttack, SkillType.ThresholdJewelRangedAttack, SkillType.OR, SkillType.AND, },
addSkillTypes = { },
excludeSkillTypes = { SkillType.Channel, SkillType.CreatesMinion, SkillType.Triggered, SkillType.InbuiltTrigger, SkillType.SingleMainProjectile, },
ignoreMinionTypes = true,
weaponTypes = {
["Wand"] = true,
["Bow"] = true,
},
statDescriptionScope = "gem_stat_descriptions",
statMap = {
["support_barrage_damage_+%_final"] = {
mod("Damage", "MORE", nil, 0, 0, { type = "Condition", varList = { "UsingBow", "UsingWand" }}),
},
["projectiles_barrage"] = {
flag("SequentialProjectiles", { type = "Condition", varList = { "UsingBow", "UsingWand" }}),
},
["number_of_additional_projectiles"] = {
mod("ProjectileCount", "BASE", nil, 0, 0, { type = "Condition", varList = { "UsingBow", "UsingWand" }}),
},
["skill_can_only_use_non_melee_weapons"] = {
},
},
qualityStats = {
Default = {
{ "projectile_damage_+%", 0.5 },
},
},
constantStats = {
{ "number_of_additional_projectiles", 3 },
{ "support_barrage_attack_time_+%_per_projectile_fired", 5 },
{ "support_barrage_trap_and_mine_throwing_time_+%_final_per_projectile_fired", 5 },
},
stats = {
"support_barrage_damage_+%_final",
"projectiles_barrage",
"skill_can_only_use_non_melee_weapons",
},
levels = {
[1] = { -68, PvPDamageMultiplier = -20, levelRequirement = 38, manaMultiplier = 50, statInterpolation = { 1, }, },
[2] = { -68, PvPDamageMultiplier = -20, levelRequirement = 40, manaMultiplier = 50, statInterpolation = { 1, }, },
[3] = { -67, PvPDamageMultiplier = -20, levelRequirement = 42, manaMultiplier = 50, statInterpolation = { 1, }, },
[4] = { -67, PvPDamageMultiplier = -20, levelRequirement = 44, manaMultiplier = 50, statInterpolation = { 1, }, },
[5] = { -67, PvPDamageMultiplier = -20, levelRequirement = 46, manaMultiplier = 50, statInterpolation = { 1, }, },
[6] = { -66, PvPDamageMultiplier = -20, levelRequirement = 48, manaMultiplier = 50, statInterpolation = { 1, }, },
[7] = { -66, PvPDamageMultiplier = -20, levelRequirement = 50, manaMultiplier = 50, statInterpolation = { 1, }, },
[8] = { -66, PvPDamageMultiplier = -20, levelRequirement = 52, manaMultiplier = 50, statInterpolation = { 1, }, },
[9] = { -65, PvPDamageMultiplier = -20, levelRequirement = 54, manaMultiplier = 50, statInterpolation = { 1, }, },
[10] = { -65, PvPDamageMultiplier = -20, levelRequirement = 56, manaMultiplier = 50, statInterpolation = { 1, }, },
[11] = { -65, PvPDamageMultiplier = -20, levelRequirement = 58, manaMultiplier = 50, statInterpolation = { 1, }, },
[12] = { -65, PvPDamageMultiplier = -20, levelRequirement = 60, manaMultiplier = 50, statInterpolation = { 1, }, },
[13] = { -64, PvPDamageMultiplier = -20, levelRequirement = 62, manaMultiplier = 50, statInterpolation = { 1, }, },
[14] = { -64, PvPDamageMultiplier = -20, levelRequirement = 64, manaMultiplier = 50, statInterpolation = { 1, }, },
[15] = { -64, PvPDamageMultiplier = -20, levelRequirement = 65, manaMultiplier = 50, statInterpolation = { 1, }, },
[16] = { -63, PvPDamageMultiplier = -20, levelRequirement = 66, manaMultiplier = 50, statInterpolation = { 1, }, },
[17] = { -63, PvPDamageMultiplier = -20, levelRequirement = 67, manaMultiplier = 50, statInterpolation = { 1, }, },
[18] = { -63, PvPDamageMultiplier = -20, levelRequirement = 68, manaMultiplier = 50, statInterpolation = { 1, }, },
[19] = { -62, PvPDamageMultiplier = -20, levelRequirement = 69, manaMultiplier = 50, statInterpolation = { 1, }, },
[20] = { -62, PvPDamageMultiplier = -20, levelRequirement = 70, manaMultiplier = 50, statInterpolation = { 1, }, },
[21] = { -62, PvPDamageMultiplier = -20, levelRequirement = 72, manaMultiplier = 50, statInterpolation = { 1, }, },
[22] = { -61, PvPDamageMultiplier = -20, levelRequirement = 74, manaMultiplier = 50, statInterpolation = { 1, }, },
[23] = { -61, PvPDamageMultiplier = -20, levelRequirement = 76, manaMultiplier = 50, statInterpolation = { 1, }, },
[24] = { -61, PvPDamageMultiplier = -20, levelRequirement = 78, manaMultiplier = 50, statInterpolation = { 1, }, },
[25] = { -60, PvPDamageMultiplier = -20, levelRequirement = 80, manaMultiplier = 50, statInterpolation = { 1, }, },
[26] = { -60, PvPDamageMultiplier = -20, levelRequirement = 82, manaMultiplier = 50, statInterpolation = { 1, }, },
[27] = { -60, PvPDamageMultiplier = -20, levelRequirement = 84, manaMultiplier = 50, statInterpolation = { 1, }, },
[28] = { -59, PvPDamageMultiplier = -20, levelRequirement = 86, manaMultiplier = 50, statInterpolation = { 1, }, },
[29] = { -59, PvPDamageMultiplier = -20, levelRequirement = 88, manaMultiplier = 50, statInterpolation = { 1, }, },
[30] = { -59, PvPDamageMultiplier = -20, levelRequirement = 90, manaMultiplier = 50, statInterpolation = { 1, }, },
[31] = { -59, PvPDamageMultiplier = -20, levelRequirement = 91, manaMultiplier = 50, statInterpolation = { 1, }, },
[32] = { -58, PvPDamageMultiplier = -20, levelRequirement = 92, manaMultiplier = 50, statInterpolation = { 1, }, },
[33] = { -58, PvPDamageMultiplier = -20, levelRequirement = 93, manaMultiplier = 50, statInterpolation = { 1, }, },
[34] = { -58, PvPDamageMultiplier = -20, levelRequirement = 94, manaMultiplier = 50, statInterpolation = { 1, }, },
[35] = { -57, PvPDamageMultiplier = -20, levelRequirement = 95, manaMultiplier = 50, statInterpolation = { 1, }, },
[36] = { -57, PvPDamageMultiplier = -20, levelRequirement = 96, manaMultiplier = 50, statInterpolation = { 1, }, },
[37] = { -57, PvPDamageMultiplier = -20, levelRequirement = 97, manaMultiplier = 50, statInterpolation = { 1, }, },
[38] = { -56, PvPDamageMultiplier = -20, levelRequirement = 98, manaMultiplier = 50, statInterpolation = { 1, }, },
[39] = { -56, PvPDamageMultiplier = -20, levelRequirement = 99, manaMultiplier = 50, statInterpolation = { 1, }, },
[40] = { -56, PvPDamageMultiplier = -20, levelRequirement = 100, manaMultiplier = 50, statInterpolation = { 1, }, },
},
}
skills["SupportBlind"] = {
name = "Blind",
description = "Supports any skill that hits enemies.",
color = 2,
support = true,
requireSkillTypes = { SkillType.Damage, SkillType.Attack, },
addSkillTypes = { },
excludeSkillTypes = { },
statDescriptionScope = "gem_stat_descriptions",
qualityStats = {
Default = {
{ "blind_effect_+%", 0.5 },
},
},
constantStats = {
{ "global_chance_to_blind_on_hit_%", 10 },
},
stats = {
"blind_duration_+%",
},
levels = {
[1] = { 0, manaMultiplier = 10, levelRequirement = 8, statInterpolation = { 1, }, },
[2] = { 2, manaMultiplier = 10, levelRequirement = 10, statInterpolation = { 1, }, },
[3] = { 4, manaMultiplier = 10, levelRequirement = 13, statInterpolation = { 1, }, },
[4] = { 6, manaMultiplier = 10, levelRequirement = 17, statInterpolation = { 1, }, },
[5] = { 8, manaMultiplier = 10, levelRequirement = 21, statInterpolation = { 1, }, },
[6] = { 10, manaMultiplier = 10, levelRequirement = 25, statInterpolation = { 1, }, },
[7] = { 12, manaMultiplier = 10, levelRequirement = 29, statInterpolation = { 1, }, },
[8] = { 14, manaMultiplier = 10, levelRequirement = 33, statInterpolation = { 1, }, },
[9] = { 16, manaMultiplier = 10, levelRequirement = 37, statInterpolation = { 1, }, },
[10] = { 18, manaMultiplier = 10, levelRequirement = 40, statInterpolation = { 1, }, },
[11] = { 20, manaMultiplier = 10, levelRequirement = 43, statInterpolation = { 1, }, },
[12] = { 22, manaMultiplier = 10, levelRequirement = 46, statInterpolation = { 1, }, },
[13] = { 24, manaMultiplier = 10, levelRequirement = 49, statInterpolation = { 1, }, },
[14] = { 26, manaMultiplier = 10, levelRequirement = 52, statInterpolation = { 1, }, },
[15] = { 28, manaMultiplier = 10, levelRequirement = 55, statInterpolation = { 1, }, },
[16] = { 30, manaMultiplier = 10, levelRequirement = 58, statInterpolation = { 1, }, },
[17] = { 32, manaMultiplier = 10, levelRequirement = 61, statInterpolation = { 1, }, },
[18] = { 34, manaMultiplier = 10, levelRequirement = 64, statInterpolation = { 1, }, },
[19] = { 36, manaMultiplier = 10, levelRequirement = 67, statInterpolation = { 1, }, },
[20] = { 38, manaMultiplier = 10, levelRequirement = 70, statInterpolation = { 1, }, },
[21] = { 40, manaMultiplier = 10, levelRequirement = 72, statInterpolation = { 1, }, },
[22] = { 42, manaMultiplier = 10, levelRequirement = 74, statInterpolation = { 1, }, },
[23] = { 44, manaMultiplier = 10, levelRequirement = 76, statInterpolation = { 1, }, },
[24] = { 46, manaMultiplier = 10, levelRequirement = 78, statInterpolation = { 1, }, },
[25] = { 48, manaMultiplier = 10, levelRequirement = 80, statInterpolation = { 1, }, },
[26] = { 50, manaMultiplier = 10, levelRequirement = 82, statInterpolation = { 1, }, },
[27] = { 52, manaMultiplier = 10, levelRequirement = 84, statInterpolation = { 1, }, },
[28] = { 54, manaMultiplier = 10, levelRequirement = 86, statInterpolation = { 1, }, },
[29] = { 56, manaMultiplier = 10, levelRequirement = 88, statInterpolation = { 1, }, },
[30] = { 58, manaMultiplier = 10, levelRequirement = 90, statInterpolation = { 1, }, },
[31] = { 59, manaMultiplier = 10, levelRequirement = 91, statInterpolation = { 1, }, },
[32] = { 60, manaMultiplier = 10, levelRequirement = 92, statInterpolation = { 1, }, },
[33] = { 61, manaMultiplier = 10, levelRequirement = 93, statInterpolation = { 1, }, },
[34] = { 62, manaMultiplier = 10, levelRequirement = 94, statInterpolation = { 1, }, },
[35] = { 63, manaMultiplier = 10, levelRequirement = 95, statInterpolation = { 1, }, },
[36] = { 64, manaMultiplier = 10, levelRequirement = 96, statInterpolation = { 1, }, },
[37] = { 65, manaMultiplier = 10, levelRequirement = 97, statInterpolation = { 1, }, },
[38] = { 66, manaMultiplier = 10, levelRequirement = 98, statInterpolation = { 1, }, },
[39] = { 67, manaMultiplier = 10, levelRequirement = 99, statInterpolation = { 1, }, },
[40] = { 68, manaMultiplier = 10, levelRequirement = 100, statInterpolation = { 1, }, },
},
}
skills["SupportBlockChanceReduction"] = {
name = "Block Chance Reduction",
description = "Supports any skill that hits enemies.",
color = 2,
support = true,
requireSkillTypes = { SkillType.Damage, SkillType.Attack, },
addSkillTypes = { SkillType.Duration, },
excludeSkillTypes = { },
statDescriptionScope = "gem_stat_descriptions",
statMap = {
["global_reduce_enemy_block_%"] = {
mod("reduceEnemyBlock", "BASE", nil, 0, 0)
},
["support_reduce_enemy_block_and_spell_block_%"] = {
mod("reduceEnemyBlock", "BASE", nil, 0, 0)
},
},
qualityStats = {
Default = {
{ "global_reduce_enemy_block_%", 0.25 },
},
},
constantStats = {
{ "support_overpowered_base_duration_ms", 4000 },
{ "apply_overpowered_on_enemy_block_reduced_block_and_spell_block_%", 5 },
},
stats = {
"support_reduce_enemy_block_and_spell_block_%",
},
levels = {
[1] = { 10, levelRequirement = 18, statInterpolation = { 1, }, },
[2] = { 11, levelRequirement = 22, statInterpolation = { 1, }, },
[3] = { 11, levelRequirement = 26, statInterpolation = { 1, }, },
[4] = { 12, levelRequirement = 29, statInterpolation = { 1, }, },
[5] = { 12, levelRequirement = 32, statInterpolation = { 1, }, },
[6] = { 13, levelRequirement = 35, statInterpolation = { 1, }, },
[7] = { 13, levelRequirement = 38, statInterpolation = { 1, }, },
[8] = { 14, levelRequirement = 41, statInterpolation = { 1, }, },
[9] = { 14, levelRequirement = 44, statInterpolation = { 1, }, },
[10] = { 15, levelRequirement = 47, statInterpolation = { 1, }, },
[11] = { 15, levelRequirement = 50, statInterpolation = { 1, }, },
[12] = { 16, levelRequirement = 53, statInterpolation = { 1, }, },
[13] = { 16, levelRequirement = 56, statInterpolation = { 1, }, },
[14] = { 17, levelRequirement = 58, statInterpolation = { 1, }, },
[15] = { 17, levelRequirement = 60, statInterpolation = { 1, }, },
[16] = { 18, levelRequirement = 62, statInterpolation = { 1, }, },
[17] = { 18, levelRequirement = 64, statInterpolation = { 1, }, },
[18] = { 19, levelRequirement = 66, statInterpolation = { 1, }, },
[19] = { 19, levelRequirement = 68, statInterpolation = { 1, }, },
[20] = { 20, levelRequirement = 70, statInterpolation = { 1, }, },
[21] = { 20, levelRequirement = 72, statInterpolation = { 1, }, },
[22] = { 21, levelRequirement = 74, statInterpolation = { 1, }, },
[23] = { 21, levelRequirement = 76, statInterpolation = { 1, }, },
[24] = { 22, levelRequirement = 78, statInterpolation = { 1, }, },
[25] = { 22, levelRequirement = 80, statInterpolation = { 1, }, },
[26] = { 23, levelRequirement = 82, statInterpolation = { 1, }, },
[27] = { 23, levelRequirement = 84, statInterpolation = { 1, }, },
[28] = { 24, levelRequirement = 86, statInterpolation = { 1, }, },
[29] = { 24, levelRequirement = 88, statInterpolation = { 1, }, },
[30] = { 25, levelRequirement = 90, statInterpolation = { 1, }, },
[31] = { 25, levelRequirement = 91, statInterpolation = { 1, }, },
[32] = { 25, levelRequirement = 92, statInterpolation = { 1, }, },
[33] = { 26, levelRequirement = 93, statInterpolation = { 1, }, },
[34] = { 26, levelRequirement = 94, statInterpolation = { 1, }, },
[35] = { 26, levelRequirement = 95, statInterpolation = { 1, }, },
[36] = { 27, levelRequirement = 96, statInterpolation = { 1, }, },
[37] = { 27, levelRequirement = 97, statInterpolation = { 1, }, },
[38] = { 27, levelRequirement = 98, statInterpolation = { 1, }, },
[39] = { 28, levelRequirement = 99, statInterpolation = { 1, }, },
[40] = { 28, levelRequirement = 100, statInterpolation = { 1, }, },
},
}
skills["SupportCastOnCriticalStrike"] = {
name = "Cast On Critical Strike",
description = "Must support both an attack skill and a spell skill to work. The attack skill will trigger a spell when it critically strikes an enemy. Cannot support totems, traps, or mines. Vaal skills, channelling skills, and skills with a reservation cannot be triggered.",
color = 2,
support = true,
requireSkillTypes = { SkillType.Attack, },
addSkillTypes = { },
excludeSkillTypes = { SkillType.Trapped, SkillType.RemoteMined, SkillType.SummonsTotem, SkillType.HasReservation, },
ignoreMinionTypes = true,
statDescriptionScope = "gem_stat_descriptions",
statMap = {
["support_cast_on_crit_spell_damage_+%_final"] = {
},
},
qualityStats = {
Default = {
{ "attack_critical_strike_chance_+%", 1 },
},
},
constantStats = {
{ "cast_linked_spells_on_attack_crit_%", 100 },
},
stats = {
},
levels = {
[1] = { manaMultiplier = 20, levelRequirement = 38, },
[2] = { manaMultiplier = 20, levelRequirement = 40, },
[3] = { manaMultiplier = 20, levelRequirement = 42, },
[4] = { manaMultiplier = 20, levelRequirement = 44, },
[5] = { manaMultiplier = 20, levelRequirement = 46, },
[6] = { manaMultiplier = 20, levelRequirement = 48, },
[7] = { manaMultiplier = 20, levelRequirement = 50, },
[8] = { manaMultiplier = 20, levelRequirement = 52, },
[9] = { manaMultiplier = 20, levelRequirement = 54, },
[10] = { manaMultiplier = 20, levelRequirement = 56, },
[11] = { manaMultiplier = 20, levelRequirement = 58, },
[12] = { manaMultiplier = 20, levelRequirement = 60, },
[13] = { manaMultiplier = 20, levelRequirement = 62, },
[14] = { manaMultiplier = 20, levelRequirement = 64, },
[15] = { manaMultiplier = 20, levelRequirement = 65, },
[16] = { manaMultiplier = 20, levelRequirement = 66, },
[17] = { manaMultiplier = 20, levelRequirement = 67, },
[18] = { manaMultiplier = 20, levelRequirement = 68, },
[19] = { manaMultiplier = 20, levelRequirement = 69, },
[20] = { manaMultiplier = 20, levelRequirement = 70, },
[21] = { manaMultiplier = 20, levelRequirement = 72, },
[22] = { manaMultiplier = 20, levelRequirement = 74, },
[23] = { manaMultiplier = 20, levelRequirement = 76, },
[24] = { manaMultiplier = 20, levelRequirement = 78, },
[25] = { manaMultiplier = 20, levelRequirement = 80, },
[26] = { manaMultiplier = 20, levelRequirement = 82, },
[27] = { manaMultiplier = 20, levelRequirement = 84, },
[28] = { manaMultiplier = 20, levelRequirement = 86, },
[29] = { manaMultiplier = 20, levelRequirement = 88, },
[30] = { manaMultiplier = 20, levelRequirement = 90, },
[31] = { manaMultiplier = 20, levelRequirement = 91, },
[32] = { manaMultiplier = 20, levelRequirement = 92, },
[33] = { manaMultiplier = 20, levelRequirement = 93, },
[34] = { manaMultiplier = 20, levelRequirement = 94, },
[35] = { manaMultiplier = 20, levelRequirement = 95, },
[36] = { manaMultiplier = 20, levelRequirement = 96, },
[37] = { manaMultiplier = 20, levelRequirement = 97, },
[38] = { manaMultiplier = 20, levelRequirement = 98, },
[39] = { manaMultiplier = 20, levelRequirement = 99, },
[40] = { manaMultiplier = 20, levelRequirement = 100, },
},
}
skills["SupportCastOnCritTriggered"] = {
name = "Cast On Critical Strike",
description = "Must support both an attack skill and a spell skill to work. The attack skill will trigger a spell when it critically strikes an enemy. Cannot support totems, traps, or mines. Vaal skills, channelling skills, and skills with a reservation cannot be triggered.",
color = 2,
support = true,
requireSkillTypes = { SkillType.Spell, SkillType.Triggerable, SkillType.AND, },
addSkillTypes = { SkillType.Triggered, SkillType.Cooldown, },
excludeSkillTypes = { SkillType.Trapped, SkillType.RemoteMined, SkillType.SummonsTotem, SkillType.HasReservation, SkillType.InbuiltTrigger, },
isTrigger = true,
ignoreMinionTypes = true,
statDescriptionScope = "gem_stat_descriptions",
statMap = {
["support_cast_on_crit_spell_damage_+%_final"] = {
mod("Damage", "MORE", nil, ModFlag.Spell),
},
},
qualityStats = {
Default = {
{ "spell_critical_strike_chance_+%", 1 },
},
},
stats = {
"support_cast_on_crit_spell_damage_+%_final",
"spell_uncastable_if_triggerable",
"triggered_skill_uses_main_hand_or_averaged_attack_time_for_pvp_scaling",
"cast_spell_on_linked_attack_crit",
},
levels = {
[1] = { -19, storedUses = 1, cooldown = 0.15, levelRequirement = 38, manaMultiplier = 20, statInterpolation = { 1, }, },
[2] = { -19, storedUses = 1, cooldown = 0.15, levelRequirement = 40, manaMultiplier = 20, statInterpolation = { 1, }, },
[3] = { -18, storedUses = 1, cooldown = 0.15, levelRequirement = 42, manaMultiplier = 20, statInterpolation = { 1, }, },
[4] = { -18, storedUses = 1, cooldown = 0.15, levelRequirement = 44, manaMultiplier = 20, statInterpolation = { 1, }, },
[5] = { -17, storedUses = 1, cooldown = 0.15, levelRequirement = 46, manaMultiplier = 20, statInterpolation = { 1, }, },
[6] = { -17, storedUses = 1, cooldown = 0.15, levelRequirement = 48, manaMultiplier = 20, statInterpolation = { 1, }, },
[7] = { -16, storedUses = 1, cooldown = 0.15, levelRequirement = 50, manaMultiplier = 20, statInterpolation = { 1, }, },
[8] = { -16, storedUses = 1, cooldown = 0.15, levelRequirement = 52, manaMultiplier = 20, statInterpolation = { 1, }, },
[9] = { -15, storedUses = 1, cooldown = 0.15, levelRequirement = 54, manaMultiplier = 20, statInterpolation = { 1, }, },
[10] = { -15, storedUses = 1, cooldown = 0.15, levelRequirement = 56, manaMultiplier = 20, statInterpolation = { 1, }, },
[11] = { -14, storedUses = 1, cooldown = 0.15, levelRequirement = 58, manaMultiplier = 20, statInterpolation = { 1, }, },
[12] = { -14, storedUses = 1, cooldown = 0.15, levelRequirement = 60, manaMultiplier = 20, statInterpolation = { 1, }, },
[13] = { -13, storedUses = 1, cooldown = 0.15, levelRequirement = 62, manaMultiplier = 20, statInterpolation = { 1, }, },
[14] = { -13, storedUses = 1, cooldown = 0.15, levelRequirement = 64, manaMultiplier = 20, statInterpolation = { 1, }, },
[15] = { -12, storedUses = 1, cooldown = 0.15, levelRequirement = 65, manaMultiplier = 20, statInterpolation = { 1, }, },
[16] = { -12, storedUses = 1, cooldown = 0.15, levelRequirement = 66, manaMultiplier = 20, statInterpolation = { 1, }, },
[17] = { -11, storedUses = 1, cooldown = 0.15, levelRequirement = 67, manaMultiplier = 20, statInterpolation = { 1, }, },
[18] = { -11, storedUses = 1, cooldown = 0.15, levelRequirement = 68, manaMultiplier = 20, statInterpolation = { 1, }, },
[19] = { -10, storedUses = 1, cooldown = 0.15, levelRequirement = 69, manaMultiplier = 20, statInterpolation = { 1, }, },
[20] = { -10, storedUses = 1, cooldown = 0.15, levelRequirement = 70, manaMultiplier = 20, statInterpolation = { 1, }, },
[21] = { -9, storedUses = 1, cooldown = 0.15, levelRequirement = 72, manaMultiplier = 20, statInterpolation = { 1, }, },
[22] = { -9, storedUses = 1, cooldown = 0.15, levelRequirement = 74, manaMultiplier = 20, statInterpolation = { 1, }, },
[23] = { -8, storedUses = 1, cooldown = 0.15, levelRequirement = 76, manaMultiplier = 20, statInterpolation = { 1, }, },
[24] = { -8, storedUses = 1, cooldown = 0.15, levelRequirement = 78, manaMultiplier = 20, statInterpolation = { 1, }, },
[25] = { -7, storedUses = 1, cooldown = 0.15, levelRequirement = 80, manaMultiplier = 20, statInterpolation = { 1, }, },
[26] = { -7, storedUses = 1, cooldown = 0.15, levelRequirement = 82, manaMultiplier = 20, statInterpolation = { 1, }, },
[27] = { -6, storedUses = 1, cooldown = 0.15, levelRequirement = 84, manaMultiplier = 20, statInterpolation = { 1, }, },
[28] = { -6, storedUses = 1, cooldown = 0.15, levelRequirement = 86, manaMultiplier = 20, statInterpolation = { 1, }, },
[29] = { -5, storedUses = 1, cooldown = 0.15, levelRequirement = 88, manaMultiplier = 20, statInterpolation = { 1, }, },
[30] = { -5, storedUses = 1, cooldown = 0.15, levelRequirement = 90, manaMultiplier = 20, statInterpolation = { 1, }, },
[31] = { -5, storedUses = 1, cooldown = 0.15, levelRequirement = 91, manaMultiplier = 20, statInterpolation = { 1, }, },
[32] = { -4, storedUses = 1, cooldown = 0.15, levelRequirement = 92, manaMultiplier = 20, statInterpolation = { 1, }, },
[33] = { -4, storedUses = 1, cooldown = 0.15, levelRequirement = 93, manaMultiplier = 20, statInterpolation = { 1, }, },
[34] = { -4, storedUses = 1, cooldown = 0.15, levelRequirement = 94, manaMultiplier = 20, statInterpolation = { 1, }, },
[35] = { -3, storedUses = 1, cooldown = 0.15, levelRequirement = 95, manaMultiplier = 20, statInterpolation = { 1, }, },
[36] = { -3, storedUses = 1, cooldown = 0.15, levelRequirement = 96, manaMultiplier = 20, statInterpolation = { 1, }, },
[37] = { -3, storedUses = 1, cooldown = 0.15, levelRequirement = 97, manaMultiplier = 20, statInterpolation = { 1, }, },
[38] = { -3, storedUses = 1, cooldown = 0.15, levelRequirement = 98, manaMultiplier = 20, statInterpolation = { 1, }, },
[39] = { -3, storedUses = 1, cooldown = 0.15, levelRequirement = 99, manaMultiplier = 20, statInterpolation = { 1, }, },
[40] = { -2, storedUses = 1, cooldown = 0.15, levelRequirement = 100, manaMultiplier = 20, statInterpolation = { 1, }, },
},
}
skills["SupportAwakenedCastOnCriticalStrike"] = {
name = "Awakened Cast On Critical Strike",
description = "Must support both an attack skill and a spell skill to work. The attack skill will trigger a spell when it critically strikes an enemy. Cannot support totems, traps, or mines. Vaal skills, channelling skills, and skills with a reservation cannot be triggered.",
color = 2,
support = true,
requireSkillTypes = { SkillType.Attack, },
addSkillTypes = { },
excludeSkillTypes = { SkillType.Trapped, SkillType.RemoteMined, SkillType.SummonsTotem, SkillType.HasReservation, },
ignoreMinionTypes = true,
plusVersionOf = "SupportCastOnCriticalStrike",
statDescriptionScope = "gem_stat_descriptions",
statMap = {
["support_cast_on_crit_spell_damage_+%_final"] = {
},
},
qualityStats = {
Default = {
{ "attack_critical_strike_chance_+%", 1 },
},
},
constantStats = {
{ "cast_linked_spells_on_attack_crit_%", 100 },
},
stats = {
},
levels = {
[1] = { manaMultiplier = 20, levelRequirement = 72, },
[2] = { manaMultiplier = 20, levelRequirement = 74, },
[3] = { manaMultiplier = 20, levelRequirement = 76, },
[4] = { manaMultiplier = 20, levelRequirement = 78, },
[5] = { manaMultiplier = 20, levelRequirement = 80, },
[6] = { manaMultiplier = 20, levelRequirement = 82, },
[7] = { manaMultiplier = 20, levelRequirement = 84, },
[8] = { manaMultiplier = 20, levelRequirement = 86, },
[9] = { manaMultiplier = 20, levelRequirement = 88, },
[10] = { manaMultiplier = 20, levelRequirement = 90, },
[11] = { manaMultiplier = 20, levelRequirement = 91, },
[12] = { manaMultiplier = 20, levelRequirement = 92, },
[13] = { manaMultiplier = 20, levelRequirement = 93, },
[14] = { manaMultiplier = 20, levelRequirement = 94, },
[15] = { manaMultiplier = 20, levelRequirement = 95, },
[16] = { manaMultiplier = 20, levelRequirement = 96, },
[17] = { manaMultiplier = 20, levelRequirement = 97, },
[18] = { manaMultiplier = 20, levelRequirement = 98, },
[19] = { manaMultiplier = 20, levelRequirement = 99, },
[20] = { manaMultiplier = 20, levelRequirement = 100, },
},
}
skills["SupportCastOnCritTriggeredPlus"] = {
name = "Awakened Cast On Critical Strike",
description = "Must support both an attack skill and a spell skill to work. The attack skill will trigger a spell when it critically strikes an enemy. Cannot support totems, traps, or mines. Vaal skills, channelling skills, and skills with a reservation cannot be triggered.",
color = 2,
support = true,
requireSkillTypes = { SkillType.Spell, SkillType.Triggerable, SkillType.AND, },
addSkillTypes = { SkillType.Triggered, SkillType.Cooldown, },
excludeSkillTypes = { SkillType.Trapped, SkillType.RemoteMined, SkillType.SummonsTotem, SkillType.HasReservation, SkillType.InbuiltTrigger, },
isTrigger = true,
ignoreMinionTypes = true,
plusVersionOf = "SupportCastOnCritTriggered",
statDescriptionScope = "gem_stat_descriptions",
statMap = {
["support_cast_on_crit_spell_damage_+%_final"] = {
mod("Damage", "MORE", nil, ModFlag.Spell),
},
},
qualityStats = {
Default = {
{ "spell_critical_strike_chance_+%", 1 },
},
},
stats = {
"support_cast_on_crit_spell_damage_+%_final",
"base_spell_cooldown_speed_+%",
"spell_uncastable_if_triggerable",
"triggered_skill_uses_main_hand_or_averaged_attack_time_for_pvp_scaling",
"cast_spell_on_linked_attack_crit",
},
levels = {
[1] = { -9, 10, storedUses = 1, cooldown = 0.15, levelRequirement = 72, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[2] = { -9, 13, storedUses = 1, cooldown = 0.15, levelRequirement = 74, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[3] = { -8, 16, storedUses = 1, cooldown = 0.15, levelRequirement = 76, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[4] = { -8, 19, storedUses = 1, cooldown = 0.15, levelRequirement = 78, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[5] = { -7, 22, storedUses = 1, cooldown = 0.15, levelRequirement = 80, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[6] = { -7, 25, storedUses = 1, cooldown = 0.15, levelRequirement = 82, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[7] = { -6, 28, storedUses = 1, cooldown = 0.15, levelRequirement = 84, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[8] = { -6, 31, storedUses = 1, cooldown = 0.15, levelRequirement = 86, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[9] = { -5, 34, storedUses = 1, cooldown = 0.15, levelRequirement = 88, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[10] = { -5, 37, storedUses = 1, cooldown = 0.15, levelRequirement = 90, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[11] = { -5, 38, storedUses = 1, cooldown = 0.15, levelRequirement = 91, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[12] = { -4, 40, storedUses = 1, cooldown = 0.15, levelRequirement = 92, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[13] = { -4, 41, storedUses = 1, cooldown = 0.15, levelRequirement = 93, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[14] = { -4, 43, storedUses = 1, cooldown = 0.15, levelRequirement = 94, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[15] = { -3, 44, storedUses = 1, cooldown = 0.15, levelRequirement = 95, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[16] = { -3, 46, storedUses = 1, cooldown = 0.15, levelRequirement = 96, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[17] = { -3, 47, storedUses = 1, cooldown = 0.15, levelRequirement = 97, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[18] = { -3, 49, storedUses = 1, cooldown = 0.15, levelRequirement = 98, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[19] = { -3, 50, storedUses = 1, cooldown = 0.15, levelRequirement = 99, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
[20] = { -2, 52, storedUses = 1, cooldown = 0.15, levelRequirement = 100, manaMultiplier = 20, statInterpolation = { 1, 1, }, },
},
}
skills["SupportCastOnDeath"] = {
name = "Cast on Death",
description = "Each supported spell skill will be triggered when you die. Cannot support skills used by totems, traps, or mines. Vaal skills, channelling skills, and skills with a reservation cannot be triggered.",
color = 2,
support = true,
requireSkillTypes = { SkillType.Spell, SkillType.Triggerable, SkillType.AND, },
addSkillTypes = { SkillType.Triggered, },
excludeSkillTypes = { SkillType.Minion, SkillType.Trapped, SkillType.RemoteMined, SkillType.SummonsTotem, SkillType.Aura, SkillType.InbuiltTrigger, },
isTrigger = true,
statDescriptionScope = "gem_stat_descriptions",
statMap = {
["area_of_effect_+%_while_dead"] = {
mod("AreaOfEffect", "INC", nil),
},
["cast_on_death_damage_+%_final_while_dead"] = {
mod("Damage", "MORE", nil),
},
["no_cost"] = {
},
},
baseMods = {
skill("triggeredOnDeath", true),
},
qualityStats = {
Default = {
{ "area_of_effect_+%_while_dead", 3 },
},
},
constantStats = {
{ "cast_on_death_%", 100 },
},
stats = {
"cast_on_death_damage_+%_final_while_dead",
"spell_uncastable_if_triggerable",
"spell_only_castable_on_death",
"base_skill_show_average_damage_instead_of_dps",
"no_cost",
},
levels = {
[1] = { 0, PvPDamageMultiplier = -85, levelRequirement = 38, manaMultiplier = -100, statInterpolation = { 1, }, },
[2] = { 8, PvPDamageMultiplier = -85, levelRequirement = 40, manaMultiplier = -100, statInterpolation = { 1, }, },
[3] = { 16, PvPDamageMultiplier = -85, levelRequirement = 42, manaMultiplier = -100, statInterpolation = { 1, }, },
[4] = { 24, PvPDamageMultiplier = -85, levelRequirement = 44, manaMultiplier = -100, statInterpolation = { 1, }, },
[5] = { 32, PvPDamageMultiplier = -85, levelRequirement = 46, manaMultiplier = -100, statInterpolation = { 1, }, },
[6] = { 40, PvPDamageMultiplier = -85, levelRequirement = 48, manaMultiplier = -100, statInterpolation = { 1, }, },
[7] = { 48, PvPDamageMultiplier = -85, levelRequirement = 50, manaMultiplier = -100, statInterpolation = { 1, }, },
[8] = { 56, PvPDamageMultiplier = -85, levelRequirement = 52, manaMultiplier = -100, statInterpolation = { 1, }, },
[9] = { 64, PvPDamageMultiplier = -85, levelRequirement = 54, manaMultiplier = -100, statInterpolation = { 1, }, },
[10] = { 72, PvPDamageMultiplier = -85, levelRequirement = 56, manaMultiplier = -100, statInterpolation = { 1, }, },
[11] = { 80, PvPDamageMultiplier = -85, levelRequirement = 58, manaMultiplier = -100, statInterpolation = { 1, }, },
[12] = { 88, PvPDamageMultiplier = -85, levelRequirement = 60, manaMultiplier = -100, statInterpolation = { 1, }, },
[13] = { 96, PvPDamageMultiplier = -85, levelRequirement = 62, manaMultiplier = -100, statInterpolation = { 1, }, },
[14] = { 104, PvPDamageMultiplier = -85, levelRequirement = 64, manaMultiplier = -100, statInterpolation = { 1, }, },
[15] = { 112, PvPDamageMultiplier = -85, levelRequirement = 65, manaMultiplier = -100, statInterpolation = { 1, }, },
[16] = { 120, PvPDamageMultiplier = -85, levelRequirement = 66, manaMultiplier = -100, statInterpolation = { 1, }, },
[17] = { 128, PvPDamageMultiplier = -85, levelRequirement = 67, manaMultiplier = -100, statInterpolation = { 1, }, },
[18] = { 136, PvPDamageMultiplier = -85, levelRequirement = 68, manaMultiplier = -100, statInterpolation = { 1, }, },
[19] = { 144, PvPDamageMultiplier = -85, levelRequirement = 69, manaMultiplier = -100, statInterpolation = { 1, }, },
[20] = { 152, PvPDamageMultiplier = -85, levelRequirement = 70, manaMultiplier = -100, statInterpolation = { 1, }, },
[21] = { 160, PvPDamageMultiplier = -85, levelRequirement = 72, manaMultiplier = -100, statInterpolation = { 1, }, },
[22] = { 168, PvPDamageMultiplier = -85, levelRequirement = 74, manaMultiplier = -100, statInterpolation = { 1, }, },
[23] = { 176, PvPDamageMultiplier = -85, levelRequirement = 76, manaMultiplier = -100, statInterpolation = { 1, }, },
[24] = { 184, PvPDamageMultiplier = -85, levelRequirement = 78, manaMultiplier = -100, statInterpolation = { 1, }, },
[25] = { 192, PvPDamageMultiplier = -85, levelRequirement = 80, manaMultiplier = -100, statInterpolation = { 1, }, },
[26] = { 200, PvPDamageMultiplier = -85, levelRequirement = 82, manaMultiplier = -100, statInterpolation = { 1, }, },
[27] = { 208, PvPDamageMultiplier = -85, levelRequirement = 84, manaMultiplier = -100, statInterpolation = { 1, }, },
[28] = { 216, PvPDamageMultiplier = -85, levelRequirement = 86, manaMultiplier = -100, statInterpolation = { 1, }, },
[29] = { 224, PvPDamageMultiplier = -85, levelRequirement = 88, manaMultiplier = -100, statInterpolation = { 1, }, },
[30] = { 232, PvPDamageMultiplier = -85, levelRequirement = 90, manaMultiplier = -100, statInterpolation = { 1, }, },
[31] = { 236, PvPDamageMultiplier = -85, levelRequirement = 91, manaMultiplier = -100, statInterpolation = { 1, }, },
[32] = { 240, PvPDamageMultiplier = -85, levelRequirement = 92, manaMultiplier = -100, statInterpolation = { 1, }, },
[33] = { 244, PvPDamageMultiplier = -85, levelRequirement = 93, manaMultiplier = -100, statInterpolation = { 1, }, },
[34] = { 248, PvPDamageMultiplier = -85, levelRequirement = 94, manaMultiplier = -100, statInterpolation = { 1, }, },
[35] = { 252, PvPDamageMultiplier = -85, levelRequirement = 95, manaMultiplier = -100, statInterpolation = { 1, }, },
[36] = { 256, PvPDamageMultiplier = -85, levelRequirement = 96, manaMultiplier = -100, statInterpolation = { 1, }, },
[37] = { 260, PvPDamageMultiplier = -85, levelRequirement = 97, manaMultiplier = -100, statInterpolation = { 1, }, },
[38] = { 264, PvPDamageMultiplier = -85, levelRequirement = 98, manaMultiplier = -100, statInterpolation = { 1, }, },
[39] = { 268, PvPDamageMultiplier = -85, levelRequirement = 99, manaMultiplier = -100, statInterpolation = { 1, }, },
[40] = { 272, PvPDamageMultiplier = -85, levelRequirement = 100, manaMultiplier = -100, statInterpolation = { 1, }, },
},
}
skills["SupportChain"] = {
name = "Chain",
description = "Supports projectile skills, and any other skills that chain.",
color = 2,
support = true,
requireSkillTypes = { SkillType.Chains, SkillType.Projectile, SkillType.ThresholdJewelProjectile, SkillType.ThresholdJewelRangedAttack, SkillType.ThresholdJewelChaining, },
addSkillTypes = { },
excludeSkillTypes = { },
statDescriptionScope = "gem_stat_descriptions",
statMap = {
["support_chain_hit_damage_+%_final"] = {
mod("Damage", "MORE", nil, ModFlag.Hit),
},
},
qualityStats = {
Default = {
{ "chaining_range_+%", 0.5 },
},
},
constantStats = {
{ "number_of_chains", 2 },
{ "terrain_arrow_attachment_chance_reduction_+%", 100 },
},
stats = {
"support_chain_hit_damage_+%_final",
},
levels = {
[1] = { -30, PvPDamageMultiplier = -30, levelRequirement = 38, manaMultiplier = 50, statInterpolation = { 1, }, },
[2] = { -29, PvPDamageMultiplier = -30, levelRequirement = 40, manaMultiplier = 50, statInterpolation = { 1, }, },
[3] = { -28, PvPDamageMultiplier = -30, levelRequirement = 42, manaMultiplier = 50, statInterpolation = { 1, }, },
[4] = { -27, PvPDamageMultiplier = -30, levelRequirement = 44, manaMultiplier = 50, statInterpolation = { 1, }, },
[5] = { -26, PvPDamageMultiplier = -30, levelRequirement = 46, manaMultiplier = 50, statInterpolation = { 1, }, },
[6] = { -25, PvPDamageMultiplier = -30, levelRequirement = 48, manaMultiplier = 50, statInterpolation = { 1, }, },
[7] = { -24, PvPDamageMultiplier = -30, levelRequirement = 50, manaMultiplier = 50, statInterpolation = { 1, }, },
[8] = { -23, PvPDamageMultiplier = -30, levelRequirement = 52, manaMultiplier = 50, statInterpolation = { 1, }, },
[9] = { -22, PvPDamageMultiplier = -30, levelRequirement = 54, manaMultiplier = 50, statInterpolation = { 1, }, },
[10] = { -21, PvPDamageMultiplier = -30, levelRequirement = 56, manaMultiplier = 50, statInterpolation = { 1, }, },
[11] = { -20, PvPDamageMultiplier = -30, levelRequirement = 58, manaMultiplier = 50, statInterpolation = { 1, }, },
[12] = { -19, PvPDamageMultiplier = -30, levelRequirement = 60, manaMultiplier = 50, statInterpolation = { 1, }, },
[13] = { -18, PvPDamageMultiplier = -30, levelRequirement = 62, manaMultiplier = 50, statInterpolation = { 1, }, },
[14] = { -17, PvPDamageMultiplier = -30, levelRequirement = 64, manaMultiplier = 50, statInterpolation = { 1, }, },
[15] = { -16, PvPDamageMultiplier = -30, levelRequirement = 65, manaMultiplier = 50, statInterpolation = { 1, }, },
[16] = { -15, PvPDamageMultiplier = -30, levelRequirement = 66, manaMultiplier = 50, statInterpolation = { 1, }, },
[17] = { -14, PvPDamageMultiplier = -30, levelRequirement = 67, manaMultiplier = 50, statInterpolation = { 1, }, },
[18] = { -13, PvPDamageMultiplier = -30, levelRequirement = 68, manaMultiplier = 50, statInterpolation = { 1, }, },
[19] = { -12, PvPDamageMultiplier = -30, levelRequirement = 69, manaMultiplier = 50, statInterpolation = { 1, }, },
[20] = { -11, PvPDamageMultiplier = -30, levelRequirement = 70, manaMultiplier = 50, statInterpolation = { 1, }, },
[21] = { -10, PvPDamageMultiplier = -30, levelRequirement = 72, manaMultiplier = 50, statInterpolation = { 1, }, },
[22] = { -9, PvPDamageMultiplier = -30, levelRequirement = 74, manaMultiplier = 50, statInterpolation = { 1, }, },
[23] = { -8, PvPDamageMultiplier = -30, levelRequirement = 76, manaMultiplier = 50, statInterpolation = { 1, }, },
[24] = { -7, PvPDamageMultiplier = -30, levelRequirement = 78, manaMultiplier = 50, statInterpolation = { 1, }, },
[25] = { -6, PvPDamageMultiplier = -30, levelRequirement = 80, manaMultiplier = 50, statInterpolation = { 1, }, },
[26] = { -5, PvPDamageMultiplier = -30, levelRequirement = 82, manaMultiplier = 50, statInterpolation = { 1, }, },
[27] = { -4, PvPDamageMultiplier = -30, levelRequirement = 84, manaMultiplier = 50, statInterpolation = { 1, }, },
[28] = { -3, PvPDamageMultiplier = -30, levelRequirement = 86, manaMultiplier = 50, statInterpolation = { 1, }, },
[29] = { -2, PvPDamageMultiplier = -30, levelRequirement = 88, manaMultiplier = 50, statInterpolation = { 1, }, },
[30] = { -1, PvPDamageMultiplier = -30, levelRequirement = 90, manaMultiplier = 50, statInterpolation = { 1, }, },
[31] = { -1, PvPDamageMultiplier = -30, levelRequirement = 91, manaMultiplier = 50, statInterpolation = { 1, }, },
[32] = { 0, PvPDamageMultiplier = -30, levelRequirement = 92, manaMultiplier = 50, statInterpolation = { 1, }, },
[33] = { 0, PvPDamageMultiplier = -30, levelRequirement = 93, manaMultiplier = 50, statInterpolation = { 1, }, },
[34] = { 1, PvPDamageMultiplier = -30, levelRequirement = 94, manaMultiplier = 50, statInterpolation = { 1, }, },
[35] = { 1, PvPDamageMultiplier = -30, levelRequirement = 95, manaMultiplier = 50, statInterpolation = { 1, }, },
[36] = { 2, PvPDamageMultiplier = -30, levelRequirement = 96, manaMultiplier = 50, statInterpolation = { 1, }, },
[37] = { 2, PvPDamageMultiplier = -30, levelRequirement = 97, manaMultiplier = 50, statInterpolation = { 1, }, },
[38] = { 3, PvPDamageMultiplier = -30, levelRequirement = 98, manaMultiplier = 50, statInterpolation = { 1, }, },
[39] = { 3, PvPDamageMultiplier = -30, levelRequirement = 99, manaMultiplier = 50, statInterpolation = { 1, }, },
[40] = { 4, PvPDamageMultiplier = -30, levelRequirement = 100, manaMultiplier = 50, statInterpolation = { 1, }, },
},
}
skills["SupportAwakenedChain"] = {
name = "Awakened Chain",
description = "Supports projectile skills, and any other skills that chain.",
color = 2,
support = true,
requireSkillTypes = { SkillType.Chains, SkillType.Projectile, SkillType.ThresholdJewelProjectile, SkillType.ThresholdJewelRangedAttack, SkillType.ThresholdJewelChaining, },
addSkillTypes = { },
excludeSkillTypes = { },
plusVersionOf = "SupportChain",
statDescriptionScope = "gem_stat_descriptions",
statMap = {
["support_chain_hit_damage_+%_final"] = {
mod("Damage", "MORE", nil, ModFlag.Hit),
},
},
qualityStats = {
Default = {
{ "chaining_range_+%", 0.5 },
},
},
constantStats = {
{ "number_of_chains", 3 },
{ "terrain_arrow_attachment_chance_reduction_+%", 150 },
},
stats = {
"support_chain_hit_damage_+%_final",
},
levels = {
[1] = { -10, PvPDamageMultiplier = -30, levelRequirement = 72, manaMultiplier = 50, statInterpolation = { 1, }, },
[2] = { -9, PvPDamageMultiplier = -30, levelRequirement = 74, manaMultiplier = 50, statInterpolation = { 1, }, },
[3] = { -8, PvPDamageMultiplier = -30, levelRequirement = 76, manaMultiplier = 50, statInterpolation = { 1, }, },
[4] = { -7, PvPDamageMultiplier = -30, levelRequirement = 78, manaMultiplier = 50, statInterpolation = { 1, }, },
[5] = { -6, PvPDamageMultiplier = -30, levelRequirement = 80, manaMultiplier = 50, statInterpolation = { 1, }, },
[6] = { -5, PvPDamageMultiplier = -30, levelRequirement = 82, manaMultiplier = 50, statInterpolation = { 1, }, },
[7] = { -5, PvPDamageMultiplier = -30, levelRequirement = 84, manaMultiplier = 50, statInterpolation = { 1, }, },
[8] = { -4, PvPDamageMultiplier = -30, levelRequirement = 86, manaMultiplier = 50, statInterpolation = { 1, }, },
[9] = { -4, PvPDamageMultiplier = -30, levelRequirement = 88, manaMultiplier = 50, statInterpolation = { 1, }, },
[10] = { -3, PvPDamageMultiplier = -30, levelRequirement = 90, manaMultiplier = 50, statInterpolation = { 1, }, },
[11] = { -3, PvPDamageMultiplier = -30, levelRequirement = 91, manaMultiplier = 50, statInterpolation = { 1, }, },
[12] = { -2, PvPDamageMultiplier = -30, levelRequirement = 92, manaMultiplier = 50, statInterpolation = { 1, }, },
[13] = { -2, PvPDamageMultiplier = -30, levelRequirement = 93, manaMultiplier = 50, statInterpolation = { 1, }, },
[14] = { -1, PvPDamageMultiplier = -30, levelRequirement = 94, manaMultiplier = 50, statInterpolation = { 1, }, },
[15] = { -1, PvPDamageMultiplier = -30, levelRequirement = 95, manaMultiplier = 50, statInterpolation = { 1, }, },
[16] = { 0, PvPDamageMultiplier = -30, levelRequirement = 96, manaMultiplier = 50, statInterpolation = { 1, }, },
[17] = { 0, PvPDamageMultiplier = -30, levelRequirement = 97, manaMultiplier = 50, statInterpolation = { 1, }, },
[18] = { 1, PvPDamageMultiplier = -30, levelRequirement = 98, manaMultiplier = 50, statInterpolation = { 1, }, },
[19] = { 1, PvPDamageMultiplier = -30, levelRequirement = 99, manaMultiplier = 50, statInterpolation = { 1, }, },
[20] = { 2, PvPDamageMultiplier = -30, levelRequirement = 100, manaMultiplier = 50, statInterpolation = { 1, }, },
},
}
skills["SupportChanceToFlee"] = {
name = "Chance to Flee",
description = "Supports any skill that hits enemies.",
color = 2,
support = true,
requireSkillTypes = { SkillType.Attack, SkillType.Damage, },
addSkillTypes = { },
excludeSkillTypes = { },
statDescriptionScope = "gem_stat_descriptions",
qualityStats = {
Default = {
{ "global_hit_causes_monster_flee_%", 1 },
},
},
stats = {
"global_hit_causes_monster_flee_%",
},
levels = {
[1] = { 25, levelRequirement = 8, statInterpolation = { 1, }, },
[2] = { 26, levelRequirement = 10, statInterpolation = { 1, }, },
[3] = { 27, levelRequirement = 13, statInterpolation = { 1, }, },
[4] = { 28, levelRequirement = 17, statInterpolation = { 1, }, },
[5] = { 29, levelRequirement = 21, statInterpolation = { 1, }, },
[6] = { 30, levelRequirement = 25, statInterpolation = { 1, }, },
[7] = { 31, levelRequirement = 29, statInterpolation = { 1, }, },
[8] = { 32, levelRequirement = 33, statInterpolation = { 1, }, },
[9] = { 33, levelRequirement = 37, statInterpolation = { 1, }, },
[10] = { 34, levelRequirement = 40, statInterpolation = { 1, }, },
[11] = { 35, levelRequirement = 43, statInterpolation = { 1, }, },
[12] = { 36, levelRequirement = 46, statInterpolation = { 1, }, },